1
200000 1000000000
674906295 120359073 213474257 145494775 410761957 300512375 510626663 856961485 826505891 311342619 845927697 856771449 315704333 528392193 22252587 624420691 172333567 263236769 691578715 848890167 143123747 934244735 199404427 286319757 256063721 819162147 925935857 849833793 435865737 796020003 926542344 331401933 239327237 43876119 793637527 286027565 294492453 74747297 527487143 548246503 535404663 650986603 782038925 634474763 618939989 269078055 293271783 192854061 868703197 171681683 622529431 825336683 606422011 408819307 680035019 838582383 564794461 45321854 909779189 245452131 403128445 547777183 363850451 87056895 106873495 315533221 131424873 761459331 721140409 511747953 10824197 710318769 5662637 943091699 552480055 856522971 529343505 704292887 528476639 777636055 786299203 484977373 403006239 83308801 265420905 657731649 759356005 726218049 859058039 991757395 321222757 853667845 888405027 63938595 633110553 723513667 390759151 586478795 706686921 153100665 348060705 776743021 951295 690935981 59428553 412072755 175307405 884325743 889994690 189481553 868895123 810374611 853364395 606972671 483923061 920666231 330261739 324622721 528569053 200899973 729661109 433663009 200913857 784812455 842064895 727124527 740918877 358599447 676295561 989665033 322757429 214430863 225990109 173083407 512004885 67501145 778932809 183173803 190087697 782348609 128045033 416115537 41892997 156028831 744939161 20973689 271408663 918375503 833154051 548511911 854717617 285762489 492672663 769805925 53190027 697550027 477968015 55002949 12386333 280926715 821710569 376578273 389364525 880100423 391444589 266066907 165354951 625387061 47118511 357539037 240780351 350463187 605002499 143661979 656955699 818107579 486004107 379124685 380210821 107781 353946671 846881335 926112867 357216861 282332063 390790051 250247743 754055149 626494035 7749091 768366041 549031535 823119757 627159249 189591601 893756189 968598099 797654863 407812247 5761217 3919479 446134855 585966491 58655911 173111697 376882093 314688541 814699431 798551041 474297209 915101249 54657821 836077039 744463023 621790321 934987761 59604041 462172249 24471137 847914385 346655693 856200841 267253777 847821555 13360629 726865241 672270019 239159701 22889485 508685291 515940353 766137983 786961445 353555305 711857315 673212731 910715925 809477127 930950085 143106277 452553851 597943805 704078791 665929493 600465347 866318479 828864859 345269495 75988249 527709447 95884401 169439799 508086137 587847095 352976711 448690697 597351587 695763705 132018015 414299183 255848477 493781039 42333832 809170413 418993719 363602117 831359961 930218257 164017933 810354473 56734887 335298801 326491003 455634907 52217243 354528111 113262123 638041177 833075617 771972077 801621135 279537199 81458411 147021915 320924635 316716015 974678007 805644847 573415445 14169651 878116489 943848295 754148607 863894685 610822319 80451467 647119151 512954583 508249017 30072997 132698873 546699157 112815943 923881041 865883007 51582353 372883515 868441769 218775465 708448395 983828931 427584339 230304551 849880143 443137619 659617409 750872435 548658095 606634661 213805029 435569867 425209733 466205889 724693441 146950967 763453875 5135599 479673817 870277001 75418659 775405767 143173755 445261401 622552009 549071907 676084095 3109639 805133727 579721769 863937857 268195003 518116261 515009603 856591787 307164005 695709671 189720359 57667879 405804221 459566967 628124113 75920813 774276421 118212975 507867267 117163962 694494531 518286833 639282637 187529559 570532809 777703207 140703617 893267729 220104111 89176645 119180733 970239743 788904083 986066565 2294753 406239677 470898145 494000679 112382367 343448433 871813575 485526903 10780135 88151757 234359869 693357511 772580855 443381765 212827139 330317425 60212819 960059861 6135715 595528151 809248199 477453959 527109741 340908645 102375017 45127401 232924537 334034827 190577297 931245389 890941605 40190659 775055335 740801175 324785563 777640595 601848407 628185385 107102413 38247297 931231509 42919923 640626801 440116513 537589147 289643371 295529351 422294285 286611119 973418641 498065625 302314983 383292255 381175271 971055093 578811483 227199483 274453119 539376695 283073049 337946915 255379695 854432187 456683227 4272315 915725907 176695403 379727716 657552109 215853905 613947127 848119939 55386925 754275611 511456729 760750595 621989179 892457573 223134799 818804673 986982935 582510701 930242403 724604575 724034321 641163769 597426915 508199305 405548219 357766231 809405545 398151791 743561201 514473567 30088277 679725899 845465305 389122927 172145359 426829089 981543389 499186795 958607047 600609021 569210547 994594499 335047927 718476525 390096727 58209645 52561115 865190669 168148237 709583337 157569473 414707327 946711905 208362809 579255221 537533551 377914151 132456687 71646865 129729293 572625789 964775457 506879731 568787091 521474757 123968619 798909255 678707783 709385643 457905909 897259707 84164975 657331751 681899883 123707975 52044383 526955121 332079367 641428909 235037041 502706703 789775749 243824755 982416393 52147405 970466859 892152555 556196237 643155905 835531975 788326701 903127667 549585475 507334321 830006295 281020213 650294013 225588679 332064853 43518291 311420117 23630189 953402195 960403033 973491205 627170709 635215437 668204251 80439045 174176177 759179587 670357871 961762205 463446977 242964987 461078969 588159445 431647053 237009669 904119653 402005765 104603233 708115133 513977123 268081863 107887765 750770751 308542895 542424577 306767365 200713845 212618953 889919965 928039001 612300561 807541821 167689937 871584189 285306761 704793821 898360727 659331563 60851229 717883269 681743415 768947487 574264535 598001683 46751995 573383967 353442949 303139445 176103287 456452155 651815361 282300827 764245895 468921927 547423723 603081857 199095889 983636899 292324395 91414311 165594944 168083507 90310771 211156377 556705545 735435367 58388599 200061675 32437415 62061623 286800059 337578547 87646815 376679965 713241479 453730709 578865341 949396515 134409705 771510077 671937429 17769685 114820283 897188443 26725637 618265675 614481309 432144939 298083951 791557409 519521269 500444909 988991361 53332863 526315513 187556079 571675437 512105491 480627611 720701311 771357361 918223121 567863199 302055417 11141779 34042683 527632523 738884289 703101851 259926231 858315185 499792957 660202463 223643311 424590377 504603621 813112765 200323869 661827537 445539117 665261273 61832959 43975253 825262749 237505821 812778171 813422627 723766971 679010237 307873597 879238003 388787485 347246137 468383485 406047045 363125081 631819091 454814971 205427811 975015955 496819733 15512507 794146397 103134711 339296471 269010507 679985803 977185973 175033395 205376835 616455947 639109129 307729935 46699455 343636937 479525045 111651989 330642023 539117425 240073601 876178747 97748585 17808511 179310657 279381949 639911035 68293681 980821713 957159711 168140763 344699281 621451791 247619245 891356495 54527087 328449257 74859259 85543975 750850657 835127119 148045029 401518903 370568137 461306685 344525969 365774303 986509521 585883061 127590507 252738819 206825573 234555327 574344741 954257941 734641985 336977775 138788797 22152711 436389091 590258913 332629623 267208795 708678803 265392435 803217377 261203477 948679781 895392659 261939915 45276867 837405741 117070387 376143445 872925565 262086797 889633611 562522337 671889887 567102445 376698397 110896925 854839057 7359357 479280629 353586939 552509121 447302197 215479591 912152763 564988453 831883223 203236361 370877917 255223547 575908843 300408321 962611761 281459337 787279039 453942391 496575687 676278431 568361581 486881245 361468159 462955153 724225491 654702767 96736125 828183103 722450845 705338479 638320939 426540303 439382841 119210661 345979455 899421933 221219807 313464805 197568821 496769363 997665681 630794443 345227215 267415613 958725653 685388021 307436061 154825519 994054141 557039633 767571825 585312317 503071649 808073425 349131623 231962873 76651039 277517293 964255973 580841345 936014435 68728103 334053143 921485693 922077211 806903373 500293231 689046811 544486591 522634797 68900779 52110865 560134799 96871333 4392655 587400349 918145941 62337683 701577767 15232647 792263329 94511333 76422471 886076443 816567369 229491085 864360459 358669615 762862575 373984643 244992923 319214115 935410877 636276937 410013021 269819613 822658719 650786669 3353099 291232201 57811281 335787133 78721181 199685857 990572369 353291031 978910041 635979423 366259433 76025179 733556427 382507789 766413097 960201075 60244169 689820345 182537959 679281809 61617005 369905077 83227077 210715121 987396635 778685093 474339115 983220693 710831233 827448747 892187465 2174597 248265619 838470007 257011225 91897687 495347339 99770431 429176409 178941345 394897393 439297731 539009169 632484809 595193487 813211973 16037397 552168503 282971767 933374615 299584505 261228127 959241739 12737805 711643677 260820409 648641256 678154119 852942381 570552519 795870465 32285803 93015191 641536535 184360839 733082279 134364565 248316215 395272183 852237999 726888997 567064517 300684053 288032645 940176655 538348641 674620909 478824365 908449253 621814709 956820691 290996791 743186431 617940339 177551971 121467317 467743099 490351959 998216323 75221323 577989189 387985955 65548127 569974683 612478219 755658401 34135657 573511125 80284741 22976161 809822047 566015153 677369141 605261825 81389381 885863785 83522273 628571041 805852519 7612101 55663387 693628523 221432411 82853909 112903545 868920913 56879867 22449199 835677279 722179919 620490091 282954351 953764337 532415079 19326489 340783549 641256227 923841699 354872503 402957701 85368491 176071699 976368451 113100993 549339145 580556501 393258755 816742637 885112455 6857737 619545983 308961039 193677363 713354457 260339087 295322293 282357481 661333367 282079309 620120311 964389701 943519777 848426525 484507507 782301105 103049235 855365551 398146381 786854751 996535965 274102001 886069303 82261827 364831759 147223077 310727523 989832481 581887681 120862413 944646801 8332417 990508569 214689971 956978441 769529777 429462399 346900207 639213207 839007437 959210855 722165981 439960209 976409777 469741129 853070621 321163991 163380231 928729001 67163297 221067471 264154687 180066577 461730713 246041703 766881425 673025297 520275075 245112597 705395967 842282055 598867235 791358679 934751569 755774035 308408709 906369843 311987221 720741087 8968957 931936311 212389285 355434655 655921959 237286267 100677921 571581515 990343403 845605149 326429551 151524263 173988719 194395843 656582723 4758139 547498285 190909081 740210453 226944925 496228061 303877207 395463713 974696933 631613061 435776061 699000693 160068405 417130609 694047245 569373147 827137399 349326903 724571673 673699825 299359647 899858865 139631159 217561365 300305061 851363331 590546115 589303917 907623053 657059483 474176933 94610413 542217057 979513389 82967883 990869835 293758513 101530547 418458027 353106185 661879835 44496755 60396867 460081005 784453951 897938939 885645849 287307655 777653191 327842077 244729019 765647411 457881831 413761781 594188097 284252941 873556951 914752745 973008969 339927935 598505691 788503715 934344697 642123195 411731517 624592665 153389821 375564215 858328911 693954951 767799693 709940787 461945193 161815663 732250729 615293369 151743729 127615137 827902933 948521367 470554193 231646767 51971231 230620905 655628023 619684727 471024413 150034315 718667875 831055387 50534449 246360359 301586195 961652743 191741501 242597933 516073361 306222193 931968047 71527127 562784627 876046548 511285889 176698915 910424657 379239927 160266287 222691545 544814797 136049379 903254977 340599949 642999697 447814127 542256705 940983955 785906769 286779829 381428297 748465933 722941125 403767833 757636343 388179939 303483313 425374023 725766897 263365573 750537183 282266807 302061923 299213611 340579105 471837217 788905223 295049047 973017937 123136653 11910423 555202895 834846545 175148355 413883997 575083237 119957515 23914203 93881381 496744369 407997299 221194287 709707079 76569107 274831745 433565539 581560095 473462323 156948793 856610533 412878997 204679935 77392293 67354729 449749783 311340341 427476695 887749098 688278427 172138575 210907881 949712045 936015775 441741209 72450301 390522431 226179113 837204259 633203261 829667699 79627977 828010693 139581149 890577253 781790867 545796893 792631575 618881147 187714343 285953175 779084843 654522207 463361451 302107231 35738981 428218887 349040075 998086513 615672597 691293359 974576833 350702989 40704409 697142491 306323015 132864057 72773713 420519511 334208423 120565189 192864937 778851895 283842735 779723853 256156433 152253401 396587185 889800877 127512067 360966623 66190737 917995407 164484355 953216821 727753905 426627173 945853339 134666259 741150209 795680867 695932509 122604273 294658295 303135631 460455395 854076821 323874193 100152747 738157519 20597771 814829909 261299533 32951757 209987497 866382931 555332809 790895755 309770761 246756383 296368961 482073801 104663055 997527257 487062429 983892037 756223209 365146151 708110733 356666059 787100425 769460791 330766475 409213741 19938607 277887165 193142997 929651268 560249691 482157051 452640371 433244661 529804765 449290165 711911991 925659177 787670087 647138873 511521465 703794127 631079029 69239647 875887961 653721063 182626699 19802499 11959615 539591279 846442743 906474637 721969755 193754995 827813229 389948139 639637093 909893125 34736105 572451477 237259743 277230399 698360495 879493637 757280015 917772611 696107595 901619011 452811015 695744061 656073361 390555871 742589599 674240861 913671581 132311789 462781813 70703069 946103509 601825293 546335477 291762689 954999267 524801637 75245389 715418131 6643647 644274851 322083445 79251813 536030625 935019771 419189549 749402449 601225743 372647983 954929151 967739 592101333 338102915 109936699 923806857 926315271 650852037 905305849 268042161 324225539 251429197 132175895 508818733 339795051 731971321 117260607 784632189 249074733 529765421 313972451 768232749 173236347 670432729 662100793 644915151 403394771 5848691 489456449 196051709 983989755 29919995 879206341 34146137 991109883 294142963 812953683 62651791 372581419 966162029 320033351 128895311 462412837 15073021 194142141 395930707 62759117 882264771 76884639 262320481 968951377 583632485 727413661 857607487 362761253 7734033 529563441 607929281 174484995 18500477 981357209 942591169 133645043 66607333 192676575 55626529 543216703 706806291 503911377 641012685 179813499 74656341 219473161 668181173 461749891 636678271 729677031 807955411 421673597 495229935 712290195 366920237 258748115 839909263 585923581 860721353 258559803 936179401 582272735 469767611 396907441 337841813 839711157 244838685 470341497 54965361 259421133 774736913 310146591 42006373 457674035 546844611 337333879 746821373 280056257 526685795 212189597 345283151 873269781 725175341 605328887 139892475 755930779 632603233 981206577 138306087 443851905 965408331 616514621 810687873 418916031 150813245 474151513 886225471 946294039 98493585 724856329 230570527 916416783 704677035 552319259 443658855 117250809 842072561 808649887 202536165 996329197 500614363 831872501 625548017 181061577 187010013 852441023 267991145 776451641 332553343 430935787 122260657 441559465 207127111 398083501 832505785 316822357 707883977 268740223 932773625 768788797 226707871 922019111 784508011 887838503 646081387 413474227 122071449 566024099 579465433 245652853 963553423 796255501 15363225 680610825 837362915 892325505 937305447 130184275 417293493 539384553 396076803 667717505 164541867 544169463 275290939 796654087 71012851 798886689 489823453 839709857 111619395 26924711 390006469 638634835 848273369 190817709 132305621 847542375 335281019 932813235 972335865 385606007 421561223 574382241 764098081 408636505 757478055 986976445 411286345 913027125 552604259 506422575 703877233 738345077 934002583 575110633 379849639 538396623 266144429 502105759 797786617 639281801 107523485 141358037 541677187 35110665 424096487 35836371 651779945 753387449 345402511 884303783 814286545 547197733 577775395 956884523 187551217 222256997 168985273 517579007 830962179 277355489 436012531 968043913 154909001 132558405 964457715 715190782 539987467 338884997 272313447 119303763 891087773 721337563 496371849 869685065 618284377 23888077 202024469 412915559 601889699 871551527 789830481 949658111 98139363 168234751 833411341 556334121 354846347 654205359 972682141 448711619 769076247 751723995 648212961 641315449 162609671 403785073 587200573 44734137 498019561 714318245 87128995 372222139 405239371 762316787 410591365 315131263 675745225 501139741 980764133 460912591 353435143 409515059 189246023 152762683 276013483 450551175 349152953 832703771 662328941 826283445 164643281 466204557 716954627 963137185 969916081 653660797 709702959 133669499 460717051 234574487 969813181 389052595 976518367 282857559 258384001 48324359 709259793 721345275 170361937 646869113 722760917 504536973 874899731 337344601 527038955 27076573 268118957 527687481 405173923 212568449 855096343 248950775 550456791 366387419 629141575 816025781 160922847 879454229 137892159 905639903 506214567 357552667 947661323 44445485 496533147 904305065 390794943 558732951 953283503 833913917 732147057 274099043 626466149 432359199 213000519 913536797 667823807 79172707 172064105 130000539 10130257 528881117 575197705 318063861 752034347 679432751 469272931 468140181 884155121 834297793 130360503 137770017 24258245 549383619 261353299 319334803 334048087 354100013 110612357 384639267 316959709 812647873 679951787 499872857 741224469 460926727 281762595 992716541 198071621 141349197 343064411 252786215 590609725 349281965 713663683 812853553 601273169 364114949 254267863 359783615 633586017 562385921 900366873 575752641 471518931 48224783 621613329 896645733 999842195 953888615 213283157 333788973 310982427 673549835 902357883 815157723 28377957 728048577 151149865 917244539 882902523 106305307 322283015 850628193 162062059 44972657 449224903 369801513 596982727 282298081 313653797 620859321 817051315 809180503 346702819 716933947 846769489 908882817 220335049 474631205 952833489 223605975 435751085 275179315 295102441 913664409 480372581 984803945 927951831 914431441 294406615 947545107 707674979 341242959 587427307 595898821 208393431 471851433 887777427 943228253 798103055 854530881 929717963 558370813 876099429 690629697 179910805 453030163 608338111 910714517 912950777 343997265 437765263 280581625 758778381 782260661 752791239 138940651 74789351 718546053 628866537 798687669 948990893 164876873 14203897 317988711 570580359 13299417 330126725 677523671 574431399 820902477 881729189 314614183 589919817 955015183 808994295 365399359 628511919 833699271 330352031 961184207 200379939 177149033 261752909 873768785 429094901 10234165 339608631 451973251 213245315 780070059 145104923 98891757 384117035 908573083 913251393 132536547 499175771 28365847 845598069 441731705 461701509 21364346 255362573 585116305 265178913 665137261 218262761 811658449 406443187 369720279 8280687 116469167 382159555 819561967 583768461 683433821 471715047 37641777 912607415 598384351 399184053 698065759 786881775 295173883 609376979 801441929 819647161 472932675 264085993 611490305 150794019 856835855 50654123 108577381 795248325 280655997 991899601 934411159 615551677 152509817 697683229 947195331 787482031 530649777 395025501 583371361 38875339 214680221 314071903 653285673 626015431 195783807 839104513 425177377 325414627 774662493 303632675 815218069 116063713 366001929 640536495 936562457 677273875 192718617 679672214 464496779 89406799 594580977 383467737 426060813 268217841 942257077 752788081 887595021 708937185 119589209 699344751 852849215 78483595 76937107 585769955 958140573 760570089 379707363 212873701 830910061 596648055 171709843 75295387 676789565 957496891 840608433 485806381 815883229 153478083 812015897 335990223 929877357 505583143 742442343 98683577 828864593 295077125 939290117 106725679 846897459 434784129 540249637 787197049 817297929 133748555 528907963 404069101 113996559 250354075 611348365 39111907 537437127 73964587 345015837 148084155 484420097 153186885 90472641 459698917 197456079 804897205 603867533 974585037 686090125 961835985 127071075 74860529 416070881 593447545 345924843 103109075 292611509 185971987 792194453 346317821 245233215 207110541 456447641 724408065 873068795 421751645 505490425 304800119 884949421 11867265 84504445 633355525 742187105 214232703 508333491 13134163 850297963 202302309 357415669 889519381 688596841 98153674 324672610 914917635 939951165 222334159 98920675 41502945 261323285 68892437 199029801 620211321 989206883 116146639 118468525 743380123 886448869 610662575 556898731 653808677 46747807 888797685 720909361 255025911 527861983 155060073 689984521 19128571 3323189 731274071 257932753 370595621 817239425 26842007 638880487 543481453 563391717 452101765 429007473 933978327 590460111 232067081 809836643 53574253 56463347 612667537 273673331 140802623 946278733 69277201 528948515 714005867 143448351 561981707 624429753 232036881 625876985 48742789 995993157 670122075 908024747 844473353 78325411 958982013 730943063 629782705 663847791 350844591 424834395 426945051 463826965 110686261 861731431 761625195 598758081 109788761 747998831 458750547 228960111 734864493 402655919 285929477 509628637 306874827 540956587 910317635 898668949 854421717 66106927 209297231 318628069 918812661 368904271 67765243 286285289 561246367 316253799 63561885 243228285 510417483 77575197 773482513 64970315 366276989 183663453 89275583 657323459 75126975 487858521 225261973 383132959 660043681 554663311 871671049 379735901 352506305 791716035 936769561 24246087 464299455 577410561 289623883 221462635 327281735 106083229 92821423 905293347 34594567 851803701 795518937 800059023 333569471 205335467 275277033 392642967 645926701 27473453 507844997 876403691 521292829 419575599 116605657 756787715 403968607 788876395 448970653 190340385 262097361 183079655 233511697 431879755 121432403 54996977 49836537 907259731 25460689 485803033 805219747 2597329 142123321 469786175 336945895 606390821 984208267 912704647 598921505 960847991 263172037 415769947 677778745 65345461 566119155 160153199 481809565 26541213 286947109 710958019 987517507 379695273 752565881 230216345 114447785 944154917 596270607 855186043 167768021 336486945 512054547 572386881 346033239 230528885 757232053 8884487 171569731 604576703 537147439 870090541 569657145 393970539 343690181 942196069 26074719 793594789 324946369 122005407 327737697 753305449 67674229 201937945 874915193 759950455 176671803 254608471 478370401 360656981 254542453 470995491 157042531 27382611 2872973 58810007 437290571 591991693 790524151 343192329 407411313 23703007 40373803 353764897 80340913 742283507 13894575 837500107 558295413 863544379 883883783 928289081 869340583 129081067 240766667 511530985 52414911 807252233 870326675 504282273 193652155 487547991 558893313 439698793 986549025 162420587 980469441 40263575 437539841 874211993 431608195 598780617 555524591 614843139 774372353 232032737 501743883 355136401 565429759 649641485 310841595 369415667 471903047 488698305 114282475 962097571 755175083 934477239 73558933 765061343 290795269 3440119 179550771 544956847 657002551 577333449 659863439 188306149 493383213 121581509 627257847 513642777 507152855 212370629 801916223 734793643 53184047 693741295 73886661 140108739 572351801 741902253 792062833 39326033 510301951 98121653 623187121 795395597 291517587 11426819 601777531 365406329 445345551 735068377 512502351 526167771 359564949 352676551 172484911 275266629 36278097 834078623 759719597 408766351 113439859 674570623 286728413 711220823 966098741 84706249 198846047 64410121 7421405 559915049 252536665 186604243 838137521 566663573 842980471 861841069 28693765 139002697 448831475 182598743 658548787 127818697 887365769 432053851 988730013 937633249 864074367 862820361 648226989 621235111 681157795 97422457 754498519 951299955 644631373 598559113 466148757 597056749 368685403 554738914 748261479 21320705 409714993 430909689 500480217 559661027 468234175 633861121 33922685 639017997 110685563 344210683 960878317 259704133 191020899 195211953 289806029 88919193 654975999 542070449 582855363 745165913 860544091 276149847 483252869 137534757 766374157 70714815 662572493 445199073 419097397 918229203 92552539 463109047 816732025 638384709 953646075 872310043 274951943 65894025 865438079 366413517 49085075 485887715 817733057 273565135 488157535 330486875 885584291 255688555 786545711 571347647 667835409 994794553 528267859 270088105 430407931 557270291 738079391 229416825 281096797 265951263 777908849 592566359 557651255 411215815 345691313 314048819 464473749 344553921 170376399 224578247 965538953 762524681 915005373 559967889 455658797 122498531 411104507 69988825 429402533 524481243 488826257 616911537 373044503 8413125 277332747 831604465 855218617 756804031 60173951 374290743 233911237 172764459 619307405 827256303 990858363 446523061 747506011 902927431 883515687 464434773 817667479 843626295 924634653 819744835 399961975 421167745 661899699 56738821 116379831 536387499 969978189 525893479 572019875 189027591 872698455 625130367 710629635 400200365 915735361 906309541 211882289 243250555 161290887 766880387 870099723 561952285 423264169 56683777 335256053 548209663 586935347 621631827 115975647 932038237 650124471 685562873 651379777 807270711 902398927 205168307 806187285 192478803 84270879 220744079 952570853 504410689 710357069 725950947 234940093 230750557 768662033 942862665 716163379 811811523 220603679 92136615 795979111 1044829 859441983 120408359 284593407 198332125 887834679 202218815 104405545 769167033 992306395 49342379 802441371 452370225 450075141 543679085 433682067 68705871 911816089 803732437 156034519 560438497 43939197 75742069 994757813 263545217 678251689 379955497 475245829 222832527 929544721 685287959 377797925 138275379 676926397 858705323 226721019 361236831 979389363 632206999 223056115 663562439 515241735 923215833 67769093 627366639 191286483 198285237 663771569 883113503 668414267 221131959 581062905 908104037 49518695 194438835 438221169 573990811 528355209 682844103 437549865 707571297 404372957 971003221 416354499 923386143 502385059 801535755 757906021 900805637 293723943 100513755 306475197 36640011 119651259 160531203 294361601 375839987 526923451 452648713 839590639 675921987 10076805 947031221 954959309 866047053 264868231 537660959 761303403 289966633 619780401 708048287 188406813 392797109 721664767 871995103 860463811 338391709 17262451 998489031 892640705 314775375 568563989 504864141 603340297 442734595 895120249 796554667 455290893 922879417 277401657 739654889 33680591 481139517 995057145 106912335 835659985 743623193 236389217 29268021 691890981 453716395 384185379 637620533 181927521 765353487 928479739 173890869 370011553 160188721 233741225 112854111 354122637 118094269 584275963 554698793 71524691 613605423 403457215 126725711 161474985 779288517 494263761 250923477 862946765 220571017 280865301 975494150 256546439 946481483 509829747 433008505 285912353 937966753 399583453 158323463 30110325 276538861 143791951 737347287 504206817 159457113 662249673 214430037 758055499 611355601 279608409 823754803 178745119 346822161 810184205 888578927 167425367 162465175 454663169 128454221 160785517 46705579 65210713 590829147 583027563 376490081 578826045 542174313 470944221 618468237 593867743 76211607 132724443 265823697 17885051 629712455 986387969 302573973 146344275 434293031 481013369 55046153 440530095 746294313 306081771 649686053 787956195 277621645 838717843 582087595 451877707 11760339 62289199 455758371 611741765 273234891 711135233 839812571 785242175 382543749 631457755 789670125 283178923 558186339 720271377 259719735 315264257 408556035 531298947 691079781 10016195 686191701 334760085 237909733 744555903 289746061 177724473 910264559 27990723 380540199 240762081 558355077 323375659 601303013 114790031 658909549 51170651 416247511 918081223 126259257 778080251 824151887 182550935 418601793 251912893 692350697 610397847 611073955 72439901 914680971 199386083 673214027 803082909 571711329 695823141 620182247 700869445 629472221 275655815 219943663 744585003 262492861 567995841 646978211 887616293 206862853 905685265 939367437 328241433 26641409 680913469 576144381 332479727 320828485 946086805 838945545 553979801 562632879 331310317 708446867 749685779 134425185 673303717 232610757 58630239 491533511 158724771 863678603 313822343 330891417 290485589 992804513 4551067 867621071 237792431 930236037 432951991 138905007 51238707 439698049 853999103 628087237 214649061 282267045 529342363 823579879 454178387 333642951 881134783 189080367 420808085 309007752 782937763 791715841 734840649 582202195 316801929 101371147 626391955 202211413 653042623 626230593 174270243 51067017 492942483 777617373 452209711 320364205 517179747 996628327 143205749 50696009 398530703 228074665 552140093 303942577 965083265 670757301 365378131 593633529 453727915 59863277 587087117 173928707 733426825 931085807 469123147 309780341 595693213 171943595 471981683 163597509 407592815 285111381 723014769 3107109 323082901 303268969 193368767 601382809 402216357 539923883 920516697 49858279 386508613 582546727 753481669 239884961 10821661 120612145 676897297 476430366 392047585 964889189 518141909 431405951 957069385 412086441 952423983 933623981 402202649 245869097 241201091 952127063 334336025 741558871 27507137 118017781 320812063 990853873 693937375 181713865 446597121 930109691 794673243 167111641 240048293 483397057 254350589 983971063 171875059 860637657 932574737 964415161 962908895 515756061 174236781 375972739 207580257 207880881 637472625 478326649 532537981 867654147 483633155 936473999 704527419 276124613 426721681 845218939 616368561 565715959 260439313 995303869 698931957 88157145 700857345 576112287 53303597 771819769 515604839 696138031 276422017 442482733 763821265 747444553 954896933 110147215 224631639 598311817 585148241 643585155 877345431 19260505 385566793 869684409 512296373 583823083 901036119 960013599 920376929 198499891 146781643 167526391 976059345 146674679 431109379 65318595 643528645 537857465 104030559 946381133 162514303 717815759 716617289 9439405 758938321 818394189 912017459 790434367 132719889 62966293 408909211 472465059 65516571 689557967 640692735 403031243 59001175 618168043 673904361 849257703 529391795 594429089 867814639 453526901 665545123 499622131 521757351 105767481 577659433 343783337 410690999 657850175 562057673 84557137 455260105 230912987 813030035 164218949 360084363 930561963 31171099 112509861 914337211 885319057 488473217 125159511 44536347 3522233 772700009 855022607 979816053 359996315 19980035 548820549 327772059 965458671 424168199 174298421 37648997 562858683 634644911 409493229 103311033 424836939 265539269 760270391 528118913 581567541 796364437 705285041 120823467 953057619 247260405 363263161 718664757 317315017 232557639 349165685 545303841 882870021 42662509 648041689 986371449 938992571 104438229 802579355 29186127 791726821 773658233 643617597 569849021 142875851 83991253 85300741 568393955 989692405 503658223 10918659 821641457 715100219 686139735 983417619 157433363 985790391 448258593 147880912 77195145 874351055 500874733 777580713 471106961 283065901 559203039 495661511 70336629 681160647 854590889 679517991 871843723 462773721 434297981 71556999 793143851 210248431 137110043 273615217 632997047 795263419 949699787 437794867 872640409 723185773 443953497 412769513 270403141 378911065 256252445 22978415 756662835 123941921 857896947 677648751 674607591 368606385 766841667 356053337 533595115 960918079 233078011 823224679 884487121 136013383 426630545 841603735 703659315 409401229 971383811 435304371 748808371 698405663 443562711 200590921 777670907 999769421 638974749 228191155 699051967 92250295 705071465 362349073 483465399 818940735 765404891 828922187 870118567 961713427 992990743 763245073 341962329 158166949 396571727 671484123 398480799 410751667 915856949 780577003 457576017 705193283 43441931 720811847 933976917 569368221 816440723 782199745 192786325 598540121 663175969 673721841 42405121 702777425 363702405 722111031 427159443 339850153 931646243 81901243 620354639 182389199 32783325 955293293 299404351 950108791 54994467 297699845 119049589 980425629 513613547 810591491 227033099 982729347 161427891 794525361 379305251 633517753 465106817 891210015 641818087 889002769 564500453 953084965 97842315 130648743 583220723 44947553 379332423 946988513 580928843 661489215 421361503 16704873 248520977 57569515 917632541 137529141 469224183 131461473 899155923 270667137 931337263 252445537 522098907 465901009 860652667 106599537 600074903 520839665 464917791 487030497 758378097 633778933 855041513 98492109 101660893 317054011 310443057 337677585 704403541 763646565 677137363 55244375 369579609 713721439 842078263 411002385 560196213 846234209 507813707 641186163 330144571 360902371 293206149 65393795 205455685 872550827 44708325 507328771 11225653 447994053 335130861 601044361 821322165 522936711 341197231 550236777 59129977 160259979 525003711 992100549 650163001 929724853 102948157 15223685 958450107 665315123 685877711 356461657 702828997 373536375 162327969 766362811 526783017 610364993 837706349 863099625 142207941 981806737 571116653 567171819 160521339 768260535 182034283 273129875 958475825 963855685 482620341 934232952 424357853 264872215 562488605 832581117 549857399 241102417 590772231 106697287 263997957 704569443 556130389 773882951 166145165 258910715 777907319 127750581 447658787 361549851 372165219 242898707 168140001 236680453 912643735 245351591 592052201 63215941 733624091 102567299 121401957 653833391 643601531 424350335 51294089 516014943 93244621 210597689 489454735 697389243 484992177 552098589 481115575 221822063 421190733 333069401 926756685 492344173 78086221 130898149 38720163 407445235 925229291 370597761 736511763 331602821 132813027 155652791 670573311 322664943 153122427 564498903 969439443 128590917 450781313 388285433 391228927 208532197 903780685 288548603 33387005 19552625 781359035 486277767 761458001 415742423 167090229 676090639 560852103 162876233 972353445 496029385 554911533 221656389 848571523 339864245 238254815 606801553 748177357 15988637 374478911 586201141 53453323 959738129 455493623 488873097 474799689 539014247 146434491 52321319 914741021 385585089 409447237 706263795 29934503 871867143 165817173 599523611 956420237 758462699 613347511 268933139 464366331 442015713 134867773 77949847 80392107 478627117 988305601 452067497 690894297 756304855 610659367 93011609 501793355 973476268 978547797 776884729 967947343 63918665 816239425 622108581 605580477 393084939 324910309 964602307 762577651 997668635 326047809 441684157 789946837 798338153 13113953 764883529 38282451 495547055 9845079 29979747 309503205 627126123 4068671 884014159 114645893 485778405 677863223 373554585 312445371 322592815 598552173 810457365 875427607 662647329 80422673 580928479 799328943 186762843 172518237 643773021 59011615 869474627 264886935 610022715 739851407 320325133 1049605 451825771 425381293 174660527 729840123 949491755 715172525 903466987 685351123 510539775 446704977 271109191 690008047 461749 671449821 326412565 201873083 893348445 474478881 267414637 656824743 280529751 218046833 574839085 594429231 16067397 602521515 918450689 438706387 356207893 420967225 503579733 336199199 627015931 753287173 510475621 873851813 149323633 433706887 324571441 249037825 855027773 739487679 945825151 359229649 778744685 252601903 3245279 95233987 537590867 184679145 52510125 723905415 474485899 709555587 970472197 571598553 603013881 865194521 376893393 457916281 627037899 479204435 896012739 74083123 90372213 610839135 198027857 843959513 778334899 797852147 339410875 421076295 403036553 568976715 166084619 653289051 296627011 336481331 149736975 877703683 723675509 185980147 621902433 817518895 350642171 430217061 88643169 943425755 12691451 75014119 821806903 708488967 448960223 89012829 963339477 880383423 925570397 917141305 497943279 725327893 884598897 501765229 479195145 11857189 15990879 931906683 429976683 533432589 436325299 961733477 500674339 200330747 173671491 840922045 121528075 683737887 582876199 383200665 349227971 960540597 598948551 70600597 272262835 383011837 572026319 28728793 850600971 812285509 367617587 427511571 689770947 272204763 633475884 132987769 663422621 6214171 288521027 575341001 624729375 964624745 295782721 211917896 395258011 284418603 770189629 562177481 374443049 897230809 751634833 640426653 843241895 253679591 507824609 649131941 754065089 772599005 30380571 756809541 704030181 851197249 473719155 512153709 731410763 686585511 897474917 676068245 948597747 578995883 840411827 725151159 66210985 923655659 498492525 74215773 717873911 881230101 910843109 583341459 614059579 481764313 579463863 602435313 235468433 375308787 964980169 998968467 214227941 347033125 319797317 471229729 70709475 12815671 279175585 590690761 792899079 515607293 35022745 964082497 403127441 787050835 445870895 953075911 265171333 286744343 983564211 392766241 995520185 272630583 367402425 788198815 259910081 231219619 817962521 388149013 683389183 949607511 165112059 810464995 729802397 887008853 706885323 482189295 991478663 421578917 679131963 743018405 526859385 758051163 261292617 492905215 117248241 683328147 723492665 26942839 227065399 1565034 499316119 291082263 507284575 587518225 447449145 860566123 650533181 437661621 315494455 285773707 27248499 83310995 117417467 416021779 897809768 815559149 615732779 490543147 270699599 760270347 175647425 942880897 991265053 612880451 46146549 911894347 28833685 48026347 107632975 867218503 257458495 501520233 901048471 597829821 700571241 385489189 857430757 954778231 138924845 602219665 994520467 643004625 969305705 408127529 805256519 202508197 107332809 37725037 607499499 585707609 247702459 23008747 918225589 948009695 69633143 546578993 626556703 790848169 332223743 445454557 797808113 898560953 112106777 969032589 393351477 290332051 133646678 791273455 912516159 843404869 614541841 46552245 907259051 886774119 463969893 266522775 421480799 620533525 259061567 463901527 88523653 69722871 488666189 566837443 490935187 535824699 654996743 619573673 691983429 346911127 462813101 311907047 667691935 274842699 394422345 171046491 259919341 688026905 581217195 329684467 737413315 129470035 511036521 140472481 874369023 946152397 448710119 918943069 880034499 266371047 545091401 970362409 668966013 954715783 615304321 194326803 272627679 160364057 158702409 916323625 788342759 153404055 218444831 144191881 448611035 688970365 993876813 889251409 466834755 7788497 14364131 218835887 470199543 533986592 826929335 243912405 690353167 347410565 632205163 708511483 177812469 553466009 481780071 648995429 98987601 711647111 990720219 774009691 995986967 789970425 955592129 259832627 93762695 377986087 602406103 769499971 215538723 531630287 702499493 197549553 330005429 537183799 207452287 585030565 331471701 636620079 462955897 604936145 792366941 570643981 195127669 376705009 568498547 441533869 26421275 291484295 280593281 912379509 434501083 924081693 934790333 986336599 42543853 510958147 450761891 938939591 574807635 268473495 420847095 860776385 765098195 64348599 217864643 879144657 600573439 758989907 747723361 685993215 622678831 151961111 136009831 105671397 351110273 948765377 755717565 409679775 322665953 787899667 292413069 391502807 518708733 681925591 654877775 217647287 692761421 405553373 574046907 755382519 966994707 980852739 521893591 907176405 204070997 995792935 152530415 334332441 972732133 326823993 390368919 208682255 111558233 242028069 852970925 473908109 753181461 899633129 183478099 506071283 345640253 539465863 261727735 258416167 756303813 79357705 442772301 369665687 264945507 952305023 51677519 261166391 100371863 776232455 753563459 405763465 201808299 9845185 978923703 618252945 256087469 437424087 80087677 808358367 545643897 952578683 86769073 158622855 948052395 70371817 901486775 369259559 597390509 399772003 958096445 186570217 134245297 380998707 662534199 839842167 338176939 838721705 582990049 928699401 962910817 757209891 25216445 781495135 984425813 520876801 517585563 881757371 179012829 514782637 44881037 666330095 500902669 288880027 542831855 75152977 342361287 931743555 635670631 709005757 663397555 254470185 155900895 888954267 91919425 928880085 717076365 18274775 860625065 601788125 80066029 670139883 137737197 745274329 715204803 971223507 202041301 72390251 763921435 398918421 940519663 93830205 144991049 661259201 144026517 717161473 501979627 121221995 344536295 402104437 872524515 536710193 956223435 725377879 890210143 915932605 544757749 811968625 6116305 310402617 963856605 731454617 864717047 400383325 959437503 409970855 356937431 247690601 216547753 421679741 19042745 497153057 693648999 303797253 331027763 258680275 678233489 642286641 569687331 207850581 224360587 552058879 250207917 777906183 992740473 389199725 336956729 469381839 824389455 861403269 885366145 878288667 431231171 151940701 740714623 491595489 251613527 364925453 251403381 522879135 529204561 242427319 272780275 555747931 797779393 734177157 608565449 660842661 387153795 338905259 822123289 128474001 421766707 930061921 303354945 371909053 577969469 400289515 928096241 212577619 579629773 947343507 824554781 324663037 534185695 946172585 400770305 443766005 844165681 770338955 336117793 561872373 527565133 889676441 280298825 514753607 323993985 86794045 816844429 435907767 829346281 979895787 644901961 210801053 368125025 887134235 332288547 213034965 933452947 789825105 534282247 362729927 847412463 336957207 148472103 12089953 349999535 285428735 759087873 19554329 281608657 246130339 297201753 785761261 897117727 652311461 237684283 74467427 618037799 121331631 682858235 928113291 861096259 280081524 517259063 105478393 755874195 145598383 80665809 671478477 748538623 681517601 678554615 632537259 275239991 270554261 712623133 349883331 125636019 575893213 447834365 995296461 798621877 513594579 306660765 524668163 374238275 659623769 299637067 274855727 143447599 661114201 348770967 36713629 432917009 760894663 922219617 567842341 936806473 889697691 762585805 464890659 970102527 836932825 399327301 661372033 829365027 177981835 955808895 740597671 718137197 86689731 299435381 445594001 40415581 131689371 385749103 533218235 368713789 310647861 90253045 872780589 186101789 895361211 318437855 458325363 821455573 775806305 630329417 936821155 453795074 157475935 670594195 428766557 544070419 181849851 493315439 96652741 729804851 787453049 955719885 367387277 158535513 646318385 343489771 814895335 555025995 896446331 122047309 761195157 717933197 832152249 205653951 274247899 547607150 594076247 304509781 61827463 447082509 715976389 360313195 937775089 979925059 800616061 213066919 427187189 924968379 534464259 219742197 756556539 308265959 749882337 401063815 102220529 380571643 762095529 678042075 420230477 237058045 427514613 2700471 788559373 588695983 559119719 703680035 300611257 947349927 473566377 762763125 543784795 513737785 33558383 63156811 419946383 358814855 43251315 492088711 914986351 207308665 538799477 583317079 390816929 571369663 478353985 677285167 971777367 685190099 355754409 888613065 115739459 779929331 648025223 681379117 290592423 441398311 421322941 4535459 888498503 298904641 919925301 151395011 653605233 786469337 948680163 640892263 697668861 473219151 827768513 731588533 946134089 135583947 602905295 537111831 352030521 679524669 151509529 798641731 925845565 190859101 571348401 538645557 733029707 65385901 162026673 291316527 26698465 490762867 764650299 461821377 480326919 460660417 863146875 504517053 394595911 654282095 303155361 133038401 502063805 116644379 628803559 4073903 747953923 674957361 14263697 355916979 206711615 410736607 455374825 423396163 982643747 235688733 214378049 227558555 765905379 260795051 952495091 263927615 479392571 32775957 697863521 233055227 901086325 712299941 121556215 790866661 154842207 15243129 606114341 933167701 130329933 901115501 759880807 789546485 280277021 420159021 567338045 630009771 530115895 959167781 574697011 217046193 359081353 377634193 437064667 400880255 472961931 306302575 849148111 269170139 932593207 552591497 431555505 811539923 198970901 995944303 158431533 678333111 146260021 359531639 218215155 357060903 985248557 210131907 139206845 41773831 636702745 579254075 478021457 888907905 882171297 259128721 885682549 938044169 134600945 390448441 266968317 410427487 388471491 812055415 707935683 696400773 629129811 242500435 268182185 525981637 294091367 81982619 252591259 913757111 693368397 874464489 998372233 59343925 196916445 204075677 533932397 146107237 334392693 531395039 220293965 482432945 885837561 942418847 407375919 157753039 880994521 389527703 355526183 442817723 59213835 916260421 456738127 523321017 962627087 361119217 519791817 222102101 387065831 190156205 755459521 503547491 214074661 128643921 816692327 589592065 662694623 265460605 978258167 318729105 357718193 808464535 854636209 967355327 722443715 912715219 941852385 419355779 407586241 829989415 692564953 419980309 912974821 410477909 826514931 817034235 640150507 868850915 126268051 902074369 219642137 766411043 904927519 866297149 488246079 966987821 770936845 950559495 467096497 913962207 466926039 743101961 146442829 554298853 921038845 967369515 966913661 905785515 570785805 737890977 480539691 501737581 168057493 68373739 203598031 770637099 827269169 35032521 776449127 259516587 626398851 437148491 180789883 552323965 20041527 494880449 820489495 312369149 421059837 105194443 82292179 298981191 942171281 777296205 38272203 688325189 217532851 958641265 469068199 899070633 631722543 756149677 768110741 437162473 45275865 47567805 933710153 800848965 577725063 402736803 307885573 953569735 372966685 647278767 809569421 623164733 302813831 166308723 144804145 823537473 274143157 173005003 619290565 478311731 717853603 732826077 729479337 711585851 496492113 602225685 503399873 434788939 833822669 147069477 609043839 559405335 201973541 671772939 207712724 422175011 530895221 927047947 525983043 31198903 626447071 683249841 400780241 77382881 68174735 343505361 248851466 625343099 349434037 266686601 956141065 879691557 607114637 551056955 456244839 790809671 278077017 987881621 952873805 520924689 288360801 770869385 669501801 5261435 794570745 247530325 533559537 420106823 725874043 402985343 899295395 875939323 748123211 694113231 17311429 735132393 390902481 327921757 370901029 577681449 563864191 392014209 891474205 738251161 555616977 891803365 333539973 626813669 61156423 586550385 78763209 840740475 791398765 213898587 870243027 846634643 299266519 904582429 616827165 102554671 802522395 628195455 517463201 316602901 863518173 912839817 375075305 885885397 397952713 768878995 711536129 684255435 455868305 230242871 541176193 537862931 30411243 250815067 120376197 97495705 225354911 334501929 853306037 905050121 253188723 537831191 732901951 681913311 146097979 824221921 812235481 735790427 2863827 977549451 897133505 521287041 58522137 233378145 856595901 297606183 296215035 77393399 580483101 512150241 412122219 819854123 992373173 851743249 42152287 787165469 784984549 604353505 69905375 35930175 990750097 632632637 154689777 189416513 419870763 668961505 508767915 219905313 278694565 872823883 865194787 109057573 31013505 408664771 970521983 242967253 956638403 395518557 250877157 195840519 861002489 31749357 131039117 9344217 439783483 559630613 623457197 941181357 831648293 356976957 717821575 6907697 378538463 173780117 143902569 797875545 317688599 805845525 941716641 366419039 378372867 409406335 997409931 329358793 925317473 683586139 503047819 442469221 404251513 370695927 467408393 759608901 684275477 74585965 888671607 989227461 321182609 641073307 231948113 172340361 996662469 870197549 175839001 387602815 701301789 17381521 283277911 764964059 98011525 291662847 37394849 189741337 484056177 744588153 529752973 867594235 701272803 807289541 769728449 497715089 158280287 789095029 989470693 109898029 982398707 853571809 722922667 972895339 981312567 122360103 658876623 136121905 23508551 288631859 474808851 457509291 168517323 955175859 906373695 483597643 381454833 51289887 932555303 994596815 758155119 543261367 147576999 262872379 738451843 832932997 778811807 19645915 29852149 988469081 537768185 862424899 687315217 852002249 730461095 850362193 288827565 507944249 292348581 752404263 100266281 561481933 972772853 797033009 568767595 380755575 15006623 316891943 8558303 622880753 558472889 937713921 58592895 438450105 565183577 796036101 18524613 986828313 384032933 425794241 288912571 869396001 80774597 572534021 811366383 603220135 827929323 319240945 381543797 730386765 244094291 333226471 253074411 489568123 345614143 951296917 651486073 274020705 755969783 516063471 442418893 504871161 945391569 494169905 338760735 875193601 648961315 718346973 630454313 71931395 363249491 700224195 845632307 151486285 233391305 352993011 624247309 867943929 291992825 56120783 998961930 108450279 334295387 169704693 685013773 520190143 656035953 602890839 357185145 737290993 556974793 601735459 780220989 221221045 384140785 508532443 402775247 699244813 519436167 243948097 9696043 490155199 367184427 625914465 666798043 604602717 875876487 857902479 326505965 366617151 430169677 481779305 792463349 300054917 59574073 630555343 789628689 140960533 269784589 717157107 108823529 581745059 376185747 759068741 517732781 270403493 658279835 743432323 906531599 224237149 686460419 287142576 207170895 7723729 506655659 592900125 207616821 284867283 435011453 443111767 805270029 446367737 178119531 478192959 296856237 419153063 464228209 699922423 869749365 848509697 861363345 603123181 516251723 363088891 665204693 871379667 257450397 680278603 936354125 950018729 462423391 569985905 250679063 825757871 278207763 175499959 654144595 312136307 259260349 25315885 440652331 497816779 318909165 811232169 773485779 285416657 826606519 797652941 811746947 133140202 908766649 291034881 899989119 17848771 373231133 818251895 440861711 705275725 845770381 785013027 426155401 916975561 309008961 77342923 546425667 848419513 957682935 732476145 199731875 833635303 617778167 402545131 528498449 685428843 470907661 679633357 742161665 400588705 441358735 113456505 563612395 127115305 702532447 36047767 546852435 889595637 553799133 572330391 586850499 421503541 990755581 353938097 185637579 161037415 658865203 809529575 116892425 696827215 403562365 840207361 962801437 419111161 583954017 907679885 966517937 936522425 114447087 586907365 201230969 532049965 633059003 122256937 611511085 375786039 310060003 973245759 580378257 401973763 509731857 341187547 204803695 282854409 866612591 895139189 355948439 434273025 195297205 324604489 584209639 563799281 11859235 875278949 807270975 921980453 551765883 822641813 526048649 208223283 28918031 1048433 437294009 118409461 126669749 355310173 718653383 789593487 242663881 633917565 163593143 285070191 435382067 862567877 258829203 384045385 185824865 533916651 163377771 186530327 320776009 787819377 216675677 916889121 525939817 619438237 403552905 879039983 528443335 11177599 610208793 207796057 522003953 265053683 267535169 524910201 201529089 222133909 427159865 760936117 728765839 641128913 328307269 32149942 316799943 327655379 343563439 509367925 851831891 599911063 583542729 521949227 425577323 233717979 917215467 273940315 153979855 788727081 335190651 818164949 352026051 944870607 915002595 1402027 477981717 243681513 757866897 721275707 420650267 97256275 23037957 995458087 489956791 750730167 95307453 878360923 374968907 921436293 700496453 113853453 217944007 83448311 391537709 392046521 724028575 119570699 210951699 67781923 790974933 869013131 69927575 985110361 481668591 284173829 725549667 349596843 776923639 653886163 116692267 986670009 51497097 52013333 412554921 434603109 736442557 732695731 965451677 278644445 776276287 54187101 775142609 819058323 884977465 980418187 607086619 881840965 73918309 507020415 264676690 792685049 392268541 275108159 815058779 306533879 926875851 464230045 760072477 773468119 285758491 143617073 710409869 659846771 386456005 3675227 16686501 638560751 14521125 289502019 760576869 78359737 285744419 771057113 922716375 585261701 248492333 622977237 763725841 321597775 542495801 893027767 742756139 258035289 916277189 110984137 979905863 419296051 264991449 127048987 454075281 920259247 308486911 361931141 285901367 122507241 922252115 256211364 539036025 239740743 481313645 668106727 486382229 277742963 375516281 727484793 738119383 126797411 694442529 901797715 366006929 105648723 196641695 975426357 128212507 654336199 299116207 942927017 691631325 852516235 182343317 317463037 303887931 623481779 222641957 6778701 671487147 570537629 342658479 918776693 737653413 383846123 610649111 640704287 631604141 113040777 350529471 614730685 509444429 575657647 338333335 257233029 906507799 751684309 528162325 882770295 387596453 288362433 677497399 272317019 786157721 376559999 341101699 801712581 983913375 984116069 753535241 865877001 194346087 727119629 735301471 56612425 375836075 794370395 249649567 234196845 931483439 593785725 326221685 224784677 296678077 455746023 481193741 121487083 652647719 20298067 444030491 637390589 912130887 928448455 682154721 909880163 395397375 487593873 951438115 478534895 147551291 341232707 248853807 604173881 881914859 192739257 195317981 789845153 142803721 63040279 354740873 620571471 406618009 101561805 632602653 570387507 687703461 804748427 857328131 939905797 17411647 226450509 482571827 96919623 74128513 688497499 751120171 847370815 317223565 302205503 846604017 414213631 293161103 415570637 194265621 885174367 43226551 229712673 53323949 875541245 901860159 385587873 796066131 729766725 216808301 247854329 195112499 486532965 736297607 230613787 590732281 803291477 352190433 134842437 82103513 549902295 165123285 215376635 205003669 81052529 301976005 855176713 435916401 384447859 679464731 729387907 767301693 197568249 305503819 842834887 997590859 614586335 476388047 430077559 815985791 675757521 319083303 152241025 415923771 959597371 978456543 854793751 873998703 928348761 148799113 324718521 766994577 843214889 785356479 21267751 916107425 973899125 295902499 264351087 160663073 990741965 588637281 798241511 511742499 407710343 618500649 150827561 212523323 164379589 124306999 195307801 862729867 441724271 923531083 961591781 745832115 962050615 828659761 495252993 543906023 293011601 453265083 654086953 180083163 928587201 820184771 581571679 206849227 261957327 844268843 777122547 476327041 250476425 999463135 41356663 543812171 914973065 509241295 400710343 350205181 996483887 843474935 917414665 18771957 507095203 959405143 117096615 116328989 710170325 847479803 221619031 219478751 711961727 576440565 304835861 983426355 11996959 389374815 568730405 120861847 371358717 844281947 793710355 48169491 305357611 955867925 45709235 34645299 115623041 328608701 456740385 160282893 77652639 309551247 686914243 892608323 90749419 40436427 663470149 149628661 477664665 39317949 258019993 897777623 365276321 288757687 506387965 963907357 369552063 375169301 177314805 995703941 86919551 830708021 566847055 822945109 967186737 296426885 754792987 447494491 56842733 545247349 774732473 201189359 519399569 468833919 690056395 90546415 118483913 404269865 647647039 431959999 584026371 946169849 646688329 684019281 414792055 621219203 440999011 244634647 415544613 709344353 199065941 837626129 692296151 588977719 554665767 647488199 341956635 292256939 232258353 689697605 760789069 459456627 844571405 329322017 848516489 625865801 370612639 207900029 956735161 514138095 835039255 274364155 528729999 469018413 205025507 575035593 368833921 347589335 817669317 36836001 728328399 143522247 548940223 745426111 524105603 667987935 48085533 986714857 493112427 559406859 69712755 140777327 300730913 550433339 408904093 89692197 54658053 107687019 453084097 786158443 450574143 799115165 470982473 384001317 290235329 650950105 724913387 490117571 632301887 608527923 917260195 855157565 130423357 584430533 79828405 811884557 382328579 875715251 655366061 913110589 394373279 684698915 734268769 313889881 711142379 289581133 899626729 696509047 984376455 41679205 277446061 271042873 75293147 617653939 95522137 415840449 388769303 606114429 719783649 255432125 550825267 73206807 607484287 17386087 522473457 544527581 847391161 269222267 908460759 251172141 618843741 118193473 143763767 449655669 742248315 861949059 657674793 577243941 996114291 453067675 555637643 517599673 966961127 625000295 276012297 856247217 565182149 296278093 523979537 715030939 858025281 42806073 668275675 30748933 495588567 821471395 804570217 419134859 425221705 641820555 802221441 948997585 139818151 46606965 58028211 153842815 88071235 832909423 685012827 235440967 560376761 232776719 873458069 567270373 696646383 716413559 750933837 873651481 427559439 789891145 981504303 243786673 716079247 296016053 63495095 495492475 715273771 203142257 39822885 284750419 472180199 358983355 470839677 683856157 666049293 200156761 745069461 910211265 950654519 243849371 27551745 945043761 986180667 809555541 363967779 237121129 61156673 603370215 796973861 298730857 913853877 287348021 138958579 208843583 522495305 259950769 997673289 575940601 178793467 233503309 423883685 797129139 292815631 509642635 916150607 32006545 15686673 514150253 117910107 930163387 736336343 974390663 707510429 929543523 173369209 566045417 689089719 75585477 520995681 560121655 545702161 774610721 402953783 60624787 220191963 924820677 343067631 623365037 870249231 720730879 914644167 328308923 621474665 598844461 997647429 175835259 721644407 48657325 703930417 198028339 479181701 516396269 470726051 395008435 265155501 69972063 529295861 167794767 533802191 877806201 362459085 534695911 38726545 547413699 373914645 730341857 734997351 530651331 153616643 672353321 315517833 998981391 478445329 124612153 655459827 828391485 734862343 83741707 524359281 737354227 908179439 671513385 872848787 128934873 870866973 26354593 6657457 410925217 299870253 269345029 167105001 432466183 712691973 591447417 442544423 571389645 159254991 122965151 991122201 328257467 773840129 451623079 120254775 443901607 310830423 158230855 120742337 498509927 178433749 981464765 757909185 928545505 336425415 878571217 481122055 366812157 993158083 120253389 164581161 835292333 752986273 748224397 190118027 544891885 529758089 730533483 616220241 754750911 788981223 214485581 503851117 706721835 251631725 265656229 870206617 833582151 589405723 922391143 725648723 2274601 30065969 107186447 123138789 598338807 438547517 201583527 82861663 437255129 400145685 458842813 697399959 218341121 70263763 892514403 759284527 206887339 237757915 301225277 253047183 546283033 653505243 441987437 648722407 552377493 987964359 944536483 985207345 46656111 394721753 35712021 425372971 714702085 676019609 947773315 245910879 367127221 516065743 533063215 923820571 554342893 676777619 642996459 626842745 873488927 98435647 563428363 31970905 667152067 797351033 620426863 999882595 543043677 156636971 654240381 272068103 42199925 948252043 820566307 69194877 701496225 444740373 948910293 633748423 446388855 432984205 958217877 555701419 19303581 425728765 244941031 643240123 668515003 825265855 14094553 549085007 26962053 511337065 573910274 290253959 561951155 121841123 125663875 379776585 143250695 449917273 733917181 82520905 475125071 328966205 426135201 462959613 450386011 259568205 824462119 105407399 287364611 852077709 828838089 230822733 569845549 437095497 486577231 693089473 826065601 535194133 962646793 823240089 114711219 103025359 139536333 998430777 237704955 505311385 143345655 180667589 636349085 783998945 970301551 950904881 3063969 909702747 12069537 675501363 552439581 864023041 812154247 988772171 218624039 654069785 304134813 420806595 395940069 145230897 193212137 209196203 48394879 114975515 498124793 10247641 903357737 969970163 918463717 443550703 947049243 708209949 223748427 436137813 456996761 844077383 927652431 732896061 533636075 629420133 241600931 786147485 265414247 555239603 368937081 797705525 807124324 556151219 120379025 419698317 803124807 221608245 557821747 565165817 592974455 132861515 517533739 852256909 379168871 470310481 464457423 105349163 54820499 439712237 427796735 806308987 751474301 361593865 230989857 8217325 123421103 55998171 961775139 44615867 827457723 694726879 435947131 554879969 427452473 214069721 947098919 678444589 776085967 263540181 446621101 5516331 530100005 710263337 959154203 713640501 411624175 149973101 651565577 616466795 374821349 210097545 701210517 598649013 584356299 438503081 164211811 454956993 296782955 195684927 506668709 634996749 141494423 335268617 225665037 32788435 364762919 650884365 211075291 307799841 806009345 625534099 781428951 950087875 383795981 280252721 506167373 926141265 188023615 562111685 111195925 940463663 483372431 722733171 292953995 906621057 156345857 640457125 213633431 106395707 220088479 402846991 748083111 655755027 846463611 702331313 930745775 396669835 670681261 98798027 289113137 102764521 320803675 672763373 146203443 877574461 601001647 21588457 101373247 62954595 878291927 969054171 626665071 405228279 856007699 918370599 748556129 563325541 556578719 889919355 167434810 806665433 912964811 546142155 129401257 153959503 290028775 472389459 481937891 988139909 912528717 357383831 362163113 144020229 431998559 766065763 208570685 498266143 522088071 389146315 244650355 3702761 271431481 974960171 568149659 978633285 833338349 235462185 298433431 448855259 813526311 897998513 351914189 906880539 240523633 920394997 326417195 83309631 380782685 63301235 374405415 545113669 889407875 255478255 39246783 981148919 444533641 688371317 434814331 239565795 487293209 844419161 342867813 677596771 479490529 479940153 367688727 861752983 146725281 965993975 472158383 832914535 17314071 802378177 986120147 41371267 913735951 622764811 671057071 608612195 102689625 712563599 837837819 66776649 144318419 669870163 259779831 126501435 386398045 222647973 205005415 406680843 409223907 568828692 180301721 899452497 662619731 208158851 306960741 76942957 812727725 664658195 875759399 874093959 119340015 453307695 670276551 965407375 614211109 6354061 140933811 186437693 73829473 470327079 632645857 833437201 746520251 368020549 467380687 37459287 215920729 233654129 396324483 509359129 379734629 933903229 957897869 289709109 293736207 862024587 759077121 39082055 961274513 245251065 765938047 180635323 324840495 284740473 631960877 447148735 402511667 721626107 334726071 308901195 423590895 413218237 38077015 761128991 746409661 494056515 653786311 239401669 320396543 87990617 205617745 853734283 672695839 322156051 862216897 455120525 195116689 524650445 537055087 182815911 957296335 188887853 208195641 261504643 553858649 441543967 912030339 869147539 143656635 693670869 242699837 540904205 980513925 400245711 549882589 461514481 346859605 773354701 981890145 388420359 557332429 825344221 366955599 705142755 99588243 120920403 236364471 597237209 311655773 161731533 316718381 196036107 770629859 711815983 630849489 596638561 102282985 886859425 212785225 99210635 66066745 244075677 158822593 786685443 758731429 436365789 879596275 27641095 628343303 609558115 259924251 996271775 679883585 299254399 962138367 204794269 710659647 609505217 179062509 459888793 16819185 11955721 983044797 795979507 469438801 192663163 302846667 665901523 23250021 781483649 21517567 490804009 944821041 424916689 883325895 638599341 458235597 827290727 409954585 652765921 39961681 286146951 32689525 669948427 117777377 628529339 326718173 719370557 84241827 947004891 275387875 392033103 676794061 791520003 697228443 463151071 886591641 480955797 96888229 312793177 928888135 552064829 571378983 516806379 243624227 774866161 715272655 590327181 778362751 955245037 514749905 575780097 753665461 766981813 638759919 497980877 645883431 546233365 333834861 78270273 167725377 765994019 183793177 822795897 147474547 603947831 187913035 427418449 432769847 303278843 108835553 401616757 59296273 180106069 543700799 596069713 577348491 378685823 103461717 567650081 398653239 260817137 855469977 490038243 158295215 5441137 810306825 901032033 871676567 563667213 528308781 455015467 942565269 411621653 788961297 524390039 156617567 173844265 711574859 670407623 637203375 2947885 501287675 580088739 198766917 687139147 597708231 919092445 610866925 496804601 131288285 651141609 74190457 790644721 970511089 390254091 270155715 544894267 788430149 526793291 85801391 436847135 789528733 132053623 429174563 436777269 399849033 348364841 581795349 537680215 561901853 582872513 368718975 35659947 290806391 938632551 870407009 827768219 485031233 286630411 815056327 894172125 804897509 576814695 6325187 278682477 21046875 19606521 299358575 79123343 156191521 661274633 480175087 581769679 708678719 882607785 441420905 847210241 600042817 688595377 101911315 437215811 392040253 748944833 603659303 278899191 682012115 186367083 863383781 783951561 47610921 650946911 45943451 817524401 19525612 548305177 284815255 474854375 820432981 208041001 860326453 962418161 332997407 383135771 715016151 911792283 898800017 746641727 289908713 521380603 936320889 915033005 317258971 39523433 63511087 829800003 409822505 599003023 696915345 199740845 840623699 325350229 284008707 187632473 638470629 36801519 399311477 519372927 31366257 675550685 771108191 948474143 216673937 330693855 875824571 475419907 1379817 720203013 631452947 913153721 778722337 273584031 509574003 88866461 199193067 641947725 415911537 20069323 984628737 737564659 736196141 83901231 862158377 207136187 385589325 747363957 604815401 963118619 140120831 344735513 272037589 220099023 173284345 824586073 402220807 728190169 165522809 969749311 665174179 410034569 339585861 843829657 956022673 81882993 563951533 706921729 738632899 30264943 410179717 591968471 668298547 190923171 680978475 312957507 203706087 558411903 483142793 753880375 911925221 806788019 170819593 441621351 599302465 954983997 242300579 218692439 188362261 682956385 566447831 308456271 541232261 576704171 633248937 106247773 362962105 683926767 97983143 994707291 319530979 185768267 264059623 699397609 371883839 707588897 622815753 311914351 241881357 659957791 593576499 120034333 77852057 306313015 698737171 552513515 24252983 239799719 576094175 838065563 961060925 322387445 235393621 278643123 636744207 965898473 671683003 229058949 404341785 125457051 410310369 22602793 304998859 281563493 288967195 575269245 159292577 35178731 183610953 320522029 490922269 873497371 26999759 663399847 127825351 649301289 206133663 795680035 760402483 228587663 73138731 773950627 890061821 116527637 569548405 33607917 784764355 807497923 268524287 984420753 285102643 122919153 575240925 687367659 501154045 549322553 783208607 502539799 967893469 507332481 760221543 575876609 107960723 118720499 612701149 932832853 153197293 19464197 179432233 798819215 525119929 698932595 831955975 356611823 577813459 315862849 943124403 816909177 688470047 153401019 35822325 401071363 153799045 273317493 446747415 199231265 712232439 318993741 87879413 83840053 68798321 744221029 611170791 561648233 531734771 583515433 854948569 294466729 835474827 676311119 194289973 387726257 712409415 390539989 296237557 765119231 54838853 563844091 259867795 364618205 194729379 310864719 68016153 298935385 617861263 488242085 343129619 503593037 217372985 62411803 294188441 421614681 807667677 747169555 140416585 970760933 804977085 939782459 682623815 207502113 966101025 992667271 924115523 201419271 716320095 436316977 124230771 212007251 500959181 313591487 217245589 709836947 998822609 431613183 405639407 673099283 556569553 72943875 321260625 858490861 373044549 601714215 245129999 266010369 215623587 408133391 866571017 731337205 155887725 733978793 661374885 40842301 121117489 776614697 167900367 61118737 630395517 601533707 406162945 454532717 491949295 83692049 588708149 563862045 335875109 974416971 39870965 455600817 546825677 189600011 522598989 4129409 590274201 17383919 135241173 179065003 949238079 957147095 276402859 553287195 908331911 973833717 124077171 199139967 390053689 486753977 103995741 204546895 375264037 481695457 972931359 377348299 828327975 531115633 997357559 330697981 46555171 992590261 996300715 211828405 176570625 556449857 467635851 461950601 128106419 24484339 141372525 918817245 112328501 238591469 422268331 402595285 83513737 267608987 164839985 217830499 550145721 565308341 773198443 344257857 456214997 846257971 72682061 523961583 111625723 478941787 910774361 278225841 571005769 549255611 60194963 820970141 490757101 752279331 418744713 845754503 298902297 458586291 411422547 694761233 704540165 641010637 35935887 787586979 552420595 21836831 858071393 541490797 286631473 341848733 450019449 23679337 779252493 321880195 699700749 821001045 645477605 549971539 103149275 352646331 500810265 733706461 747557675 492100329 3155731 714599475 367342537 967962873 255773509 945463985 47934219 673698507 805005355 684028411 87740369 24107527 815240775 900267521 711639169 957522717 175937059 328121331 112832007 134597189 881114447 808442189 130286301 567942273 570812265 1647319 518442495 121577623 274675983 826274715 83735539 295772697 923294447 23929837 307248583 130539103 981861051 674457707 94704147 761862537 719314475 374181111 699450357 910765949 584074243 821537213 137220113 243731695 147331339 920815155 851291543 592884309 563331865 633853461 434523453 642854641 566874627 962537063 615910979 465868745 231730863 155912311 912242027 140943023 539166213 653261525 459841543 464460601 593275897 840098913 250131693 713642955 524151427 296528189 322595705 655463561 822672551 157793239 513596561 774079591 883090285 256198113 693209511 765606939 544363755 336721755 249265071 471039269 537185593 356745093 50385959 543785679 833876855 782690797 584758805 183932713 322426069 470486377 557694215 618653705 256075135 985206547 935168533 601286161 614054323 337135953 391899869 889288105 470742195 462114509 55907971 214465027 992715721 814355835 870380727 888205845 422381381 473473435 189601457 260901791 888448901 759569583 559533099 913978409 781464041 607554691 718301807 766187527 792579547 358761513 142033225 858106701 827852751 439499523 566476303 286370525 915551293 375785905 464443553 213102943 240550569 919308575 789456485 749424195 304645787 72870275 667432777 331047107 435857065 499551065 994518723 62968539 408430443 781067877 632966863 505692249 796339843 75022003 136507129 484591049 421222299 400138647 793034057 805257093 68176741 586490543 842521945 228157101 105196191 430574301 422980423 632669737 173410565 770833229 890514103 668570025 295658087 620540023 938937817 535122597 129874837 289098003 557541477 735511901 625318249 333904679 829777045 837251037 895416771 741204735 477941299 579340017 466989715 93570097 959975819 286820145 216915141 172205719 678972533 523023873 111140185 887215445 553610573 854840453 655319627 735467481 436844539 480588465 86106539 319653079 535258859 350903355 154995849 262302537 119705623 803496357 553934335 5754231 169245179 393321269 494296111 877980649 714384029 171189243 609549123 199887991 691092621 516254931 106144367 388309307 644533727 246398809 204637931 534300059 769297203 641339641 814663419 736731969 111261357 392111071 258301673 934326563 481898751 712830471 42022917 847842941 852746331 504656943 24968621 646835665 155797379 431204577 181279297 909346287 840478905 62404973 72872491 221019881 50650319 868290281 187704543 123583773 455265819 950461239 148793301 114947629 879459705 176371711 507728785 191892485 501145937 192753073 103031965 205787 394183313 248415879 542598795 860628779 933691823 88636799 503493365 353338043 761780649 803431267 191893117 607648659 233235205 594070465 13082061 652020745 23529171 63516147 707485337 266974907 160024999 206145049 21592729 49640843 322084513 100716059 132498065 709254311 21925989 169039529 965501259 679987585 855793189 281458235 134610585 331784153 673684115 501201939 406146645 384567983 901645041 274231 350719841 809223505 841234947 324409721 827617447 532591189 789820695 393026161 970090011 688824468 877026051 550069375 973899189 588975669 463444265 687414731 940761721 826395043 127102571 675781445 853713777 217028755 537860665 743642533 350737583 468523777 654950281 266400875 299586125 184651311 283052505 362206947 727916909 188511149 551047215 247956759 725075769 778675277 678499355 70827749 303125989 223340843 718074033 637564649 972032425 406602925 240717713 597469583 328255433 599892349 790649825 925597701 344220047 700491153 241864013 815892291 765336397 232851749 300701965 938457865 49853789 961917885 174520033 373701857 740715297 957744421 411699213 84902169 835195909 542946417 744518239 50544589 684619895 500088575 583253807 330308569 98383095 660712817 89920089 376104423 14217987 253178549 908961605 250529129 999469607 447534845 30774753 920422293 473619189 622012103 59421091 653432939 437807623 211046871 244478091 426459059 156739839 348490809 647377435 557501953 576853895 167353155 880374373 928597417 45070931 487154831 368697597 947880909 350345245 419157761 660825603 25580373 667165861 832545735 951069981 285675505 104850871 568393045 823609975 32478491 305722405 687379045 848229835 653417745 490480841 210223871 368077651 332237787 291023749 470121323 802332889 510718027 789135427 903694145 73517227 657239801 35571191 241298523 348196507 325273413 243429275 198167007 124837133 554797655 31111471 319292727 381680099 545358879 964301503 668252441 554931085 361741397 548131677 195734143 83182593 697490299 476452899 103982001 767860157 543464919 306689843 964309305 465259209 501051003 908298935 907102443 409460145 850891839 138826723 522532067 93532299 206037187 289619953 740295303 57727479 200172397 161473313 725034371 921524251 568483953 460491711 636499145 99895715 924388293 768773405 395097495 465536713 855270955 576746133 80671857 860615753 891124777 210120329 792084003 231316073 162439951 170263397 243168961 728091127 939367417 799141529 643686569 84159819 158200003 169335711 1479549 588728129 396466969 171354877 440957227 941157955 487788903 517366073 502242021 293051195 535145961 655044071 168298027 521525921 136910237 788931233 106727357 906647411 613448013 883165193 628007081 20341817 609200777 108145867 174000453 24799231 370541223 333368471 935250475 417543515 578436553 351379239 908786495 304358765 96195543 718739263 456645807 308235995 772052867 409929641 627598831 44418771 487806785 201652793 930472123 907150345 759087701 610961605 631692821 577343935 570144199 149727281 727679309 846069945 679296357 110587751 726926069 330956357 498466505 287189597 403015145 370638139 117467219 105228551 428809807 795531001 527249031 91418219 677437585 894013027 464847169 800774037 523168357 577320169 508117583 158786195 778734023 402307 113649875 762397057 933511675 455588267 256027669 897461633 241463949 994523755 417728039 384471999 87234641 762217807 263272161 930863723 85346915 928230765 404943075 117974975 874413865 163362917 720456851 903294721 243552591 442595165 939680549 55888759 168733383 316390915 396019089 986742133 591519183 863155595 62847891 230101845 544268269 951018423 814292663 511011449 273025769 643489739 33257293 960704077 957773273 659326359 389929837 424474433 962117147 185640559 873746933 40196561 613041745 964297779 796870033 643604349 168022889 811093063 596130223 422779857 941437335 542384795 495279495 888003937 180379989 596282533 699754777 259715779 773220459 332243557 577696303 848214939 172853473 52075357 345645913 406531989 433165327 126931359 586670317 360104801 506906511 16878785 984434701 431621051 812763205 797258975 100256163 517823075 564556641 514399137 876196699 836799781 795781969 761667893 887391921 159889107 104905943 469362001 91845091 748152905 66264053 41007155 563314427 81281381 524496119 749916065 426941127 552929301 988507505 744126441 465352673 41564489 999975231 226951395 342997417 365126141 254249351 89100525 522594631 689602609 786798515 954177517 759477421 547608049 180640889 312821327 481268623 256749649 887784149 227594763 642509937 519495783 995383051 736453537 804616603 661834839 81359785 235327251 268636187 494350925 273134719 953525491 41492171 964187001 349827499 899444567 291066187 475181847 222313109 679636699 797453571 341598567 856263907 781646759 191712291 767607479 289785231 743047785 517787811 923587669 269910993 970227031 644491589 714481565 289389103 956091695 235199119 435700979 682415991 724319799 69242323 300165821 829069753 740787007 961028137 824309363 94645076 910690971 214706543 311453577 918981613 909591339 798307153 357597319 409679727 699666771 648009277 646092787 61124879 306320389 468455531 256130401 652636233 206181299 900833501 386970733 425356767 232364381 999771737 514209205 235425505 220540811 475433583 269597159 547025313 45665609 831645819 181951155 56920251 846201647 847187609 504736213 707862549 584679513 803714229 583414287 738828761 611275631 999806843 449494569 123848061 300625311 679770471 836571127 176018109 605950367 239151033 734652245 425266845 903355053 511734645 459507489 226481257 985003921 98577009 937503305 201971893 950130581 890623041 246123197 340989533 904696723 985716553 532747897 823690119 582963433 142436269 496970367 517970079 877031037 63036511 875065303 998619991 444368315 482768409 12677269 868493741 295224221 301287513 324610773 100640997 737951133 779228265 868428725 783685259 552690373 614284887 666193507 220676469 538646689 835708413 189818641 649903805 493962825 353128955 846900213 108984519 429069657 198293689 251044439 182333505 989329657 951353191 481520509 416511261 883117783 166111999 63657405 317194139 36163113 608355645 703083885 819059003 749563565 405470639 546642419 243043787 513815979 590481569 82362551 67527265 98343151 343224876 605709355 304050263 376243151 96477491 875200715 162014803 972960299 887465049 894120473 396105023 971341159 473667347 410664861 26903377 390041973 567115929 610049515 446713091 842486215 181687527 2743199 86556189 666409055 525830089 259452503 584820393 712426689 317595599 870751169 589956603 478850811 66766673 920553103 545084847 544267429 559231341 212287865 53257387 782155739 831162127 331799617 91383833 781967431 149612517 60279989 738392687 88228883 315084135 247780259 168333929 439142647 725367765 171624937 917013003 61016881 574953785 840558949 779510689 84905095 453744739 36349445 218371265 709449033 687997929 820763835 46847299 695366987 527693103 199330431 417006671 21463277 434914137 477119315 975331665 753053205 147923035 66072901 815673083 432090417 119836137 619403107 281428045 239263797 88402569 19715275 461866887 846386595 396797053 750935965 392014135 649458047 627744475 743246339 547796787 163083351 544448119 55796015 248532373 307574851 683511027 315019869 103681473 805148639 569836983 384034767 60535653 186264917 668552435 211672525 268641653 181854031 667356321 239189933 880434987 142484485 348724095 590360773 40851727 185574453 179570711 465991547 240032745 535655463 464232375 224007223 228045776 692918949 479353209 576279147 134965025 143866891 612987197 587650965 191869823 687687475 271978155 925295153 270686421 428437637 63045683 403665615 403648601 483495661 348511757 681860861 986900871 301900005 502543163 483477081 143498531 981825897 817942147 917841283 147098681 662381311 953467767 938210597 708393757 792458421 481501551 275024625 61177451 999536931 436446347 633288355 232695305 594708325 264805041 597200125 881450019 770065445 835830933 40747721 979394091 171956365 981744813 667998167 746463199 593662293 509189691 949448709 885003331 403084731 595810885 59324467 801043107 387433095 110692509 903941451 714669461 66845445 463659737 376444735 921661425 295928843 18501469 848814091 121156575 2207481 457592397 918190769 616664523 329616053 736240285 496465979 968173417 222864045 765074691 15667385 201594547 892531159 882823935 721819209 112281841 784316335 569597915 857048587 307840939 197523265 574001575 144651049 444047289 700268565 991909433 497246677 885454389 866088261 977361971 300351053 448947587 910906479 166299133 162190797 667096145 203305655 779115209 852008357 731974803 35549133 748392845 732743717 417172101 211858151 304348681 89215397 9580457 693749701 272109509 327848331 618038735 696528809 362232597 860982079 325673481 997792869 674208781 315136821 414761395 809704271 685104015 835857381 377922419 793145411 75360835 427585235 901114931 107166889 564898201 716709257 215765547 374397551 593544907 569630871 684374993 249385225 484255189 722012315 30686959 722496121 203393157 367911221 732911503 573003331 706045287 677558287 410390791 163413111 202153173 351116765 330540783 180232361 418571247 934386007 92331567 418384633 506768285 682098241 478523379 888687371 782606223 100656739 981997229 41730831 7462205 22096531 735744795 436850365 905315561 760207785 918506819 861440591 26007193 501800839 470428013 813484943 932340511 844935703 305208623 660778185 326458641 496595021 501513831 826898387 826062803 857842977 300497977 519925517 642182283 709142167 192899599 429199965 389217063 907360439 212859549 439219761 403714915 42772119 559218403 446622335 562799039 112530255 85615905 62789573 726264449 22231809 838339047 736285705 528548537 556920279 891752711 532977115 250661187 475995909 358092445 504824655 892339643 819934147 229673485 728866053 950793101 814045269 918494471 162433825 731816165 973290245 406135417 141348435 963854783 465216805 294388645 640208595 950298329 633804301 304224525 393678683 318096061 45491747 835406717 395831861 425063099 91916241 549058313 860905005 715054057 694445701 423495181 54796699 771963433 980029887 226243631 252872027 22458147 450713597 957712731 841337301 988192583 93239241 117132483 495991799 48571087 234823865 213468645 56370743 768932537 763595877 955949957 540480915 846401487 934752111 11274415 766196369 969151391 260136577 916321721 395472961 191204227 891413839 507100475 253067063 45989275 138781585 590915869 849296531 826855375 597359115 219537291 754130169 198607567 168316295 265561081 288257947 781803283 853085655 320191521 797254955 602524125 4302037 622364425 521335531 779375669 155420003 716925439 166527389 289615849 275591275 181083539 3923605 17454737 985386465 804408997 54386851 586317969 444550589 758583129 773311275 853906959 943857411 850546201 659832591 916385787 841444541 735873179 890949055 708043533 997477117 850181337 318118961 66993349 438053853 526687259 400451555 520453231 875305599 597388267 954062299 719046165 551873037 633759516 202624937 600353685 569614011 641167565 18806369 638544779 648833219 614105441 343085987 365132899 896574309 248530819 997404819 268922699 256376813 134256937 428847331 780489530 627957931 369409167 365120453 335792115 977622525 369592121 340174075 614741245 513575235 259173107 756749257 948485799 695887849 676538577 504857085 461552909 67434079 603457583 894244079 380800267 21797663 771589555 946046587 753107787 725672365 895357513 219291145 989102399 262040467 520643107 208461191 895717405 654170467 235400129 271069291 618023397 160832951 285518563 676264115 567362143 458410545 355924375 691693031 728969247 333766781 577983792 762573843 440475001 754688841 542141263 155991757 883969423 947246421 620810453 282592821 542417225 780820063 201879789 851703791 276234839 911230515 263341067 763932205 561260083 294113699 904797423 5920419 516943643 302941065 847185305 50418061 360535831 116405191 72975449 934652085 609210617 682480711 650636479 262017639 669796697 970162173 152179371 628447355 271630231 549830115 216626497 486835535 921183963 427615737 628235755 165929671 496974101 677004875 682441567 593179987 543871997 650962923 144172185 991932649 665975829 330211315 299412445 202898951 403590051 332863108 344668597 346424501 635015609 447167437 795621881 939838847 347849519 483910394 827334341 491925115 199679397 739239241 143406459 367301705 979133057 934571771 130745287 421496079 828109815 280102491 335606431 258036089 972161021 239562427 289385791 755259329 845852501 723186037 917347883 618788001 568561797 986828013 359997999 866375779 424732893 432797577 401855329 775184341 844883321 628133567 499810329 898363211 985257525 406264329 937139713 86592931 919430845 697861607 483164927 225940805 314211197 894175461 468664397 798927137 79482033 327023765 195190115 779383721 203650903 549445777 347856135 906650589 511109177 174272891 366851655 397372485 383285479 171254270 989176691 146522091 496555191 667631565 594372395 855504235 319583691 838776479 288513363 655149535 444391873 429028155 139675669 747851759 171768361 274818663 913310951 662052039 424060569 506532855 474388867 915350305 58399391 276098501 578767601 758099001 514193219 722676403 710349433 377941205 194600019 724031405 718579379 706097731 827684713 148821155 998766715 743186779 464045285 587287951 314392049 409064315 875746543 760557431 438646151 517715847 490110583 354666337 97512685 278871279 81115703 256981345 827377183 159884969 698884013 165290897 540589669 65248821 241030689 404338451 205931337 88430741 406539685 846795539 894639519 493625179 66457617 370495425 826807429 988417949 521953797 220470105 73319005 414355703 140795367 431461659 247474643 378861713 680152811 461912659 382511327 391299095 685239817 990103891 11942841 763127491 241707261 364208245 773257191 678436945 948790099 890260765 157494581 64390151 593721179 443508913 745105081 311186869 859586861 863621033 999819725 800698031 619571623 690270329 183796501 44197587 858344821 885940393 113012607 771563915 228653573 355599807 343475517 619142337 851479695 878582351 953772751 413804525 948501267 150842611 971491317 767699215 185179 713065293 801009855 939325865 940322295 922910985 225823869 959553997 175493437 122419927 149544655 97490193 723500623 568910707 941771929 642627473 377895447 626782365 97438981 570393845 296704577 183816227 238172297 138118507 417786441 421702355 423680481 871506599 651945581 465071497 629574415 577475819 567689399 522486311 113550435 90401277 216117237 419432601 916937071 490457127 819397313 850957775 769315857 937933635 21779067 582710981 79623529 455489455 533540429 263255931 189006057 420776271 51872803 9503231 514802497 236131477 185783735 935694687 279780207 890651507 25665931 174626999 45863351 748037737 45713383 617135147 503942309 973486975 706972121 631158241 900109837 942462785 527530555 397752079 976259085 442288071 34731181 979867375 460643335 258878381 607532695 47392707 39385001 455485211 850599465 158517715 241508325 611350207 903782747 977799283 404149243 191411407 518846191 893610237 619876459 511270921 733272465 290370517 484451331 433222835 871193121 131118435 674925785 237405597 230943785 322935065 263566663 701102363 882472289 933495411 390568177 463039499 319190901 370220017 551268293 931924695 806563539 424864289 926632695 819143273 336275379 567246481 616276993 884119867 425169687 431342301 74952619 981976647 911768005 562133417 932054269 201987095 751502669 184163739 845085263 111197111 308500235 898251883 182243901 707596735 227939611 740702669 852908199 282545483 896033129 415536265 627765693 707265283 934804129 370556261 414644467 628284437 669065023 870530615 17667589 690596151 659537539 880238805 255781879 373856679 557882227 743850531 347047957 779692075 139981791 309541645 714225395 422448659 434591585 198768005 353705839 107163187 241898587 863767937 637596075 334614507 502874353 221977097 899824659 776308769 339257365 518797347 478326877 180451393 387727489 879771109 146648199 459817795 497397683 403310949 782218193 920799399 65524469 352263625 166772681 141861233 679396949 546999865 173075779 284237615 939698605 931592423 361518941 85445881 899686813 680871951 846562937 965055595 444627597 992115441 155939141 297395373 488546221 813510875 574884789 393745773 421532151 229653531 413349891 316055009 118254375 623651597 544311221 610496967 385983179 962656021 953693337 939999335 749744431 878657947 605927873 370604939 277280365 815020817 33357961 512843919 173404005 307356147 255596437 253639501 514948285 184653763 588089299 119105323 101905897 224712201 228137847 74877467 803757089 146038107 122848509 656911247 406487393 101286991 778234921 679715721 780099445 262499978 978482949 548319629 239077613 267039671 406889193 161025961 655469601 351793797 413200753 461690229 358782001 53879729 637034877 10431757 998077955 466798333 881912895 517842969 265305419 67332657 413726247 471540423 264839551 292139555 691112435 922405581 167023839 411126185 821641639 345788011 113303413 626285225 838370191 906500963 239906321 245650699 156600127 824792071 394620745 415573441 82449045 808134187 329752193 541139399 852265139 272569391 586334941 984195359 415330565 431964665 817816657 535176657 380608067 852789237 331995281 97074931 459035493 339954205 324172323 442956187 537278641 930093805 764335433 107676143 310470325 693831787 139711257 345988119 466325825 224122149 367972967 372776773 664818293 531174707 881265877 556041397 435626419 126750001 785998283 171712681 4929193 611553607 977217403 331282283 698502219 824306213 833765337 812926027 477231061 184858621 286150569 48237735 190971849 524162447 154378611 844746973 230455031 644410145 508375685 681205595 619852657 242986371 799389689 322251667 504184211 234089739 557845935 136295165 323269889 370814613 182486351 26388509 636394923 661515399 37009737 931630971 588867265 228465107 438939605 632404653 589425087 16692973 686539765 226508617 282295149 939310289 804635759 202769397 426336469 989760521 836761301 909717849 72904779 857382307 323195007 125844775 420757101 574249523 155188109 157225245 312307485 734251735 133676517 178535415 259985543 511927353 671448635 144092805 60948001 416183683 191229701 255396501 399244711 808124781 446313349 688713733 245697567 513447733 102570689 509060021 604049617 763757987 845368459 130402447 235745875 853135875 393823353 996652677 119568259 644728107 366718191 907770773 146397315 818178171 789824529 770574011 633668033 721456345 792228563 34373383 863702255 951167923 87356395 189508233 292121101 381372413 937407193 219577689 680074843 381291321 412824807 285258909 615099239 486604395 875224101 977871741 155477511 898302755 485473897 301518893 216004437 631300213 697384021 733649637 634467767 268528639 123759697 341355241 74289111 105601771 634478991 753431937 231983019 100797667 913334021 253346563 352989037 627404063 535266931 938436039 207790245 531567965 242360673 712816941 580138269 98851045 982296099 163961509 654479337 839740803 669578957 238775963 143850597 17196175 740198465 796239757 8324919 283995621 931490599 845699325 363977545 241958125 693904111 134703221 107825361 237872019 700815571 727322245 436391499 903231313 388303057 638394315 767510907 357399587 850934961 595026919 766750317 905697167 279292165 935753859 75972213 87048101 365229093 509962323 442033969 749580281 478121265 685617167 839531907 580111017 823236369 776714107 161777303 460321631 280083317 629082209 96623845 633993797 754409429 458914193 746416421 280346899 664039539 172801513 581682525 700569609 266498901 42431305 314125785 969279721 93338957 697519003 101883951 357477383 288430321 238923731 821447737 63479091 563614629 108021993 159907611 807695055 612122255 135357665 926000195 472707777 525913501 144392645 460348517 660357495 248729739 403337893 456684667 145127 408947161 472947359 58613965 916526991 96628685 643961299 8064995 636881269 784123769 936043115 956679573 679934761 292020147 632367003 402606077 867292863 798268957 570311835 693842561 555214549 788466209 874218415 729899211 77796757 311811051 250619169 670569425 842343337 893849463 646581827 997713103 365633867 312224131 478043247 30199369 814986037 232389273 256011271 30105865 340272561 374016521 863658357 775997735 990151051 302874345 48704557 2388223 459157275 561214235 406077863 391875635 959151421 255275079 505214055 872484527 510778457 502337759 827456247 223928745 688516445 193700631 916837095 799532191 705449151 706334707 772092885 906174545 786420605 269900347 208491105 578533325 623476765 594282365 56134967 651700071 36151727 302528275 370285061 700418493 171889863 402337565 531513483 623846065 625907843 652788099 716328327 74136177 813934989 541677813 990255043 405160559 116122383 270308331 150154005 497708651 894665667 993026983 72794453 590377317 773677283 826110257 146352997 988408491 493770041 655908951 972194350 321082067 71957009 976947889 420813223 377094839 916395075 169083043 810180551 690494587 920713003 986406483 95914383 708368013 751432113 351613617 768585739 910643361 430716739 64951413 228168011 457817267 971123415 229906207 908462445 752495621 515074027 708190203 67825041 244124199 718805895 837551891 152096995 328526827 622346549 814642757 998043027 960281709 351155217 467114541 419900891 296787987 91372981 639700279 10641151 435857287 577916743 804373137 822189129 573143231 29171321 638739251 496441867 739216887 893346941 159324893 828531871 148368051 979418389 789116697 370795367 28906175 78199685 82518069 339140557 325738799 78030747 246068301 690099781 402642785 122249391 311660093 537209671 143973367 466799261 161118895 581081177 5942239 301883597 862852373 817040127 655754059 392241453 625944229 20710865 58826425 117708083 95680351 67542375 630522349 888391389 420199691 746440547 855654645 59555251 580685885 126589809 47503137 669523391 763714377 390541377 147366929 344381085 704779089 794625165 362851495 978773607 929310013 409026585 14168593 635379907 862430397 213601967 85234883 397707747 314658123 184790817 468352375 889040249 329993509 59028553 706471989 651122119 703792723 701952521 847972677 540315793 183494055 460001357 566730303 434101797 519774649 613349381 707485949 820696155 768187369 63630891 675564709 833806735 338732383 901652163 160279713 997937067 851261963 543473623 845366183 549164825 268830629 259247225 236724401 994657745 292591791 317649859 482089991 344838737 954910063 645199319 942423091 694673055 656249591 732495585 411808009 937507659 157912095 707266065 221091493 722993259 480192647 813416609 20789869 322338971 434848661 849088215 635748877 666345473 542480253 65976569 203374711 113193807 651172405 397318235 44954857 605740729 534684799 162188887 268107239 292717307 727790305 677699407 855451197 225301599 62990507 18608557 63892479 819678643 168681721 421182693 898985355 902807369 607562151 983351409 292523139 921752581 649621601 82446544 34081493 117236297 404092307 443704465 50837427 216483589 611097465 293074755 190036125 941863601 110080273 790488193 32967763 802286151 274500901 59221743 518850531 258217551 407770949 839951667 291518883 81395673 443785415 369761027 531694637 140466555 205349325 892495385 226482533 6156369 426431039 855223093 657006969 137692417 750999759 143925539 209672157 302690493 192422897 189393845 593018445 672188473 859258601 210669253 362152907 414549683 302141631 141465397 666746279 826684657 501891905 838367729 808448115 405843521 839715337 348424425 36538123 47348091 615038839 100909593 39476629 426628093 298470835 905364097 994514555 78339243 975599533 18616109 264447347 730003189 939457055 395413551 668157049 19297745 359935111 194326945 378341585 201313983 581192237 700992167 729328135 436460737 54415651 710296679 918926575 826084713 522900801 735714583 635029157 73575885 626610471 339368689 415223183 223124361 349747003 617635637 401946713 583129029 969416881 657661231 9078005 787810861 432910465 941680435 531947425 481849339 881522279 911274903 961056739 514754283 14252527 644835263 721445251 947718723 236897641 532243735 666051479 587465681 992506093 963163663 669302141 851355373 215474521 930479393 224170967 45942133 963862361 690687443 498694547 752940749 973766747 732666795 635861221 246066407 447642007 492606780 814145607 27900213 374855949 151212835 328175489 314866615 462535815 640792833 654858395 861895157 537679509 665019005 295036141 563806203 145404813 855273551 219706897 452180833 827165329 859985707 889257709 976082499 877961867 933658841 696435371 974780489 800429351 263681823 406343105 387904927 748892129 689194193 906854633 625641983 267876599 656860361 543898667 538208677 725118067 585927915 567540177 422644311 543879459 265100061 233756527 952874085 422494625 369635415 600660705 351118243 351385421 576939405 94568781 45240945 218953041 263742151 88346653 164947123 334623641 767191051 7285769 482804441 629968351 9038445 533298185 29671643 204071077 699337479 162638435 907719475 87033395 625839101 427333027 42504683 596502423 685415287 654545309 527768463 838407595 315960999 350031471 671962167 667021327 472945353 282762619 819062399 329380395 79785501 375358573 201105039 693305391 443271407 382089789 218106645 637063187 932196497 178014243 350891077 157841049 177202271 194367653 538568929 645323847 611997367 28694673 545445679 883967087 122273799 894929911 95285753 420398633 357411775 224546103 222933913 337789781 446110555 623164405 444688621 211585945 810626909 196446747 332381275 519032681 960833613 498064605 100762319 118102779 521906111 96707515 770475201 66265425 434078029 549324661 869719857 929437489 952310683 216930587 811679907 733577771 925770577 981149951 289035813 19022747 220148769 605264317 712599631 195530141 178444743 847841595 716381245 844102173 600233731 945543587 181171863 269044167 195549347 396884075 591491211 918326039 938140789 444831567 583101647 650120525 977751637 954273619 488810657 428235631 228129063 566793667 151877319 939147597 770373587 506275123 154337425 574954113 922732619 589390463 473144531 707125613 527740043 182308301 161345773 66891317 725256595 202134409 736261059 497074123 847274097 292356453 213953735 797465833 57493299 357969247 28410603 348141325 567160821 197139131 384291761 667770753 125262299 525376261 110758429 169962067 322054669 584876307 681012157 760957277 527406269 751585791 168584105 477342527 28255271 440148525 75228541 446734433 598968717 185417803 52128865 916134387 286428215 829100619 409625603 275071215 460060793 400989293 455089561 588158227 492188335 681402929 380443873 878999015 379710007 300705125 760855329 498472381 789703295 290951967 892974121 509028525 698220025 255981241 67921741 345504151 321759517 242043609 569664109 843670817 440991597 187027049 683149039 385981119 389565559 363197855 608692927 930196905 907735753 157908213 414430039 399009243 749252863 732228659 549182643 156898593 329627325 744311139 577520215 880674315 363299243 634574809 157740119 401082609 244093563 939838769 972393029 388773619 117370857 233025105 895207999 144719607 569557431 646138467 822200813 927695025 609925549 338359773 72876413 115058071 849610401 121238395 249540773 584922601 932126057 242124097 775857059 987476913 410938347 140408187 941794367 373152191 873780239 807011263 383585989 406089385 295227079 873018853 587152139 748580307 103193359 561824533 551261553 191295585 491576041 210404027 235310557 271843911 768699997 458126217 996452539 184191801 432962689 772368511 634233861 785770941 738023019 24380381 399125045 145679381 680063041 348785201 217261397 122051927 791910443 777428817 894003187 983324759 945579357 411515735 921846307 263888567 535254287 265944999 468299395 142916575 815845251 21054959 719950651 423833601 128597767 441972515 650689273 748957457 536217833 647768189 48646131 90758099 287798407 180336261 908419305 64502991 228190273 762691075 650043933 121857875 249124481 840514319 563364961 455869049 971899065 599918595 411017737 387115041 119902309 961006213 866509813 314241011 91833351 494549119 899863179 959898719 504798759 776278823 892807353 346002333 381032027 523922425 638699763 309555887 561508921 431729081 493444667 2265179 853747815 343272819 536035093 175127091 734784397 671448443 789024401 145758607 334610271 552784493 463533891 58756751 264094613 527427631 330455625 748770585 213407987 988501229 284456523 221552097 695244353 140825113 372793463 73475933 696921429 882438513 883643269 306705615 209127941 200523257 191760559 279162685 147950391 846820605 662628031 818197625 667794387 903650067 588703999 348581913 516017101 666067219 853236811 151752833 415174941 60095783 835533309 186667989 928006343 161214389 291699965 136120073 406584275 341754999 99601079 828341971 750323799 851846501 23471141 500825779 426299496 887921607 928796867 508692467 187470639 488304421 616652695 763290787 892900305 443185751 954272301 275824281 163669123 830671479 510620067 947210359 461791101 972912617 662965649 388062375 49331715 179343195 798038813 706778197 611277151 975179457 839883257 220103293 460138465 966167127 577609047 381008093 435440615 495039391 183068407 111721213 69216465 240034409 932644385 863383345 25120777 897658311 483057313 111691661 945310721 23821077 21044685 719471347 196302647 299514105 917666693 70741003 157556007 526654557 362246447 614940741 624167777 261611897 644142265 562854619 817539701 975044805 460796825 344675275 290079995 154974725 799007181 398163165 642165913 885061961 883148507 745342115 353099513 510676965 221844689 515263861 724941513 230039409 216345927 798760563 891667655 898121941 441109083 501927557 372712117 301181757 925082547 961580891 489713757 139838235 713654651 537722989 661979281 632441647 154085739 184738301 377048617 629078393 101406147 821614609 833036555 764182087 117507653 813960059 504110879 790816047 140639043 595977937 236658521 94895113 34912915 159265143 417049777 422649855 801631889 209677459 692145451 566605433 891552549 465580051 18511569 29936683 749764285 370814899 489977013 347989525 159371599 477337587 471215599 791709815 926397273 440083737 209414309 721767905 320498913 514189367 898182913 493399589 903463029 266038307 800674865 396753247 562524717 931011711 563420533 966859507 125967527 220943029 125769995 816339089 272531977 788957425 744256829 529132841 987738879 719827759 220847457 783764471 849817537 457977389 356057807 876109699 209225487 491199605 54138345 440582295 121368365 107106647 502593817 442266951 813377257 279164905 28175315 697508335 461276313 197053965 548143503 973976629 599031071 664514923 585177809 364073989 16535773 824710261 50648611 153731217 917851841 522384735 6728471 766848343 125344581 790980909 939885895 508152091 491569509 114151591 626818389 458140393 993827753 390413147 187466219 292524311 923158299 247365795 414705341 715806781 971250773 996755615 112505731 984513603 325573237 40100663 75247361 673184597 191393825 660179739 599905281 774648039 8589445 820268739 935930453 136500403 53059163 534228337 565764565 453547967 682272477 253623341 420214119 804020057 563991253 375871173 247054837 759363089 874491279 733912273 449066863 998868167 10720227 752076469 6100943 722742175 200871213 149991063 894789657 462850307 995445845 355409767 945936727 268964521 207812297 868079581 556416411 705808011 442290559 339765626 687547135 860705265 423957493 549550983 433802917 613071461 480246067 988716049 587521975 401899707 259932355 659088629 972611177 145077263 225132479 710159567 952693491 925856455 853722053 637498890 900459161 76624781 857876475 748619223 554920101 498079831 346275341 338294571 607502697 548162401 265985333 767117767 951724863 738572335 501819693 465228085 625091465 612097165 332212031 834583493 79519153 52064143 928518969 192209805 240820267 303735953 90324589 561536879 915568497 519936571 402654399 999965715 583883011 632859507 334193041 401492203 610391661 126195825 387504851 730649901 481848897 860380595 173367291 775583961 179860249 708979449 783338759 575966137 65691799 787288657 499523965 311999579 582931045 809322257 779773293 888898329 731829047 321452753 198618219 281618707 15194053 239116411 692382871 626756913 467239381 630381879 202660759 245869347 510165293 569231225 303761305 585001059 199405215 270269441 444026961 675687215 153075465 384178895 744562689 984635279 345318477 457828403 791506029 566089813 301582417 668747197 149765603 561126425 117628427 648947535 843513915 358147643 930138739 772308487 20781009 22263779 400307087 188409685 450158733 961079041 24250212 765104621 853473501 372184909 907678985 756099787 590072505 712735049 394415509 800386611 29880987 252711739 803179819 861985967 524912267 210317365 786893813 324709401 164926233 76730127 983096615 767613575 446491737 903822697 329353211 532114785 902005483 274164905 445675185 783896657 541571829 488073987 540485013 230215245 708485925 957277293 227470841 676659857 128224687 789310889 752379191 303916449 331134293 685925693 574362033 635647563 534502491 754409593 972901331 571764383 466759055 798297721 656496909 798074109 360738633 613505817 961551065 950407431 445781095 445134341 17011643 881311401 352307021 146440105 491815487 201514779 782263530 489217089 261735411 821509589 604083639 575504587 794305139 585819551 295075505 533781521 262299233 472840065 201693787 903093155 601140839 865208785 466237383 702371031 240045625 26160429 387440009 486981583 784991633 337617785 620968641 393928819 702782767 528390367 467811349 750518133 904427487 21713109 644574899 584778569 912078706 88208149 983397201 424210739 267273157 317621415 911073579 355658811 682658745 8300755 403646219 83436591 783224885 623439409 269474879 628188841 598303535 329473949 540343195 15121929 290956961 361198903 382678141 763055735 834788235 887388017 759362511 995772643 932591353 362690555 391429883 888583175 916857597 425001681 116519161 681429345 715661235 325779259 191391047 661411385 796133433 825689283 41470701 456149665 27711933 399532093 441602935 458378353 701167727 645237447 472558075 323874377 151166601 790435523 77429273 203900561 332081488 630759647 500705015 733694583 96145421 8718605 509879363 415852793 967607057 127224203 980821811 409644497 699800247 248507357 58444165 297669259 155853409 300993487 710916735 600819575 122370427 811811959 371745775 346610349 369129077 538449711 289322285 800618251 40810955 116499099 710969879 181513021 70321917 672481705 804022801 70734513 209455511 732184203 528032525 493248159 638685739 870363585 251833469 309147911 461732693 477025547 534561889 214967219 35110579 922278009 29622849 37579059 389118963 506324315 237855273 118211037 799145925 146079571 336665519 867251411 316979429 179766079 690311925 691140351 464485651 731553359 927607707 579940365 685175835 65647351 389338069 592140665 603119311 395439603 678205783 61478273 427403273 986228549 437326431 128544815 808492973 779376957 747995827 913580624 859751331 6064493 820915363 997373569 399392477 166449075 283534851 336299039 912221783 667243311 584730417 203718741 688474641 296525651 510874647 771679503 152559127 686159567 492465951 957914119 140130171 323036833 613687363 741263295 920619353 194594061 452727805 513545855 247428047 836328095 466325591 53109077 868639499 626134315 840678365 830026011 72885821 285795535 709501605 634116977 762579105 548853997 587626833 268814783 458784887 698484531 613557251 146495541 506033165 351240339 495854953 704446155 233489073 297837133 790106045 9915971 594713535 174791393 408388539 14533923 512339865 681387805 227145129 724508861 37426347 131052311 99481687 458217001 705433701 634959657 688217625 108798791 209739331 448333559 395019727 324549565 352644295 372053615 928747485 3593215 588900985 829715653 806823733 873676355 468909293 523367283 699599433 423809931 386976191 92361025 657367579 93003933 289411469 598507833 929846575 761711883 100937477 500167085 916512915 743800875 777099223 365690687 805388509 591141919 970801087 717651917 739710767 178797777 322320767 673192841 792852523 54391023 692034015 446942691 167972609 749120751 710282419 927619735 388685413 653314583 271779799 377159341 91949979 595678571 249159721 646962543 833550179 687890619 589375127 615093617 694629647 234509729 249938193 229964177 259861875 373829759 699210131 906438129 879023599 557902201 264544543 86861565 359470439 610945409 880846525 130127469 5589325 535500625 239319169 45488185 529843347 848210023 382830215 933967271 925465787 371893773 306714605 173017155 103387847 710456401 343580641 815131361 452266059 595578637 352420499 784498335 133772375 682019553 975611455 789088223 418180239 250110005 822252071 766419279 288772629 450787897 242704275 139443939 644262041 213102567 111210713 555289813 714253649 855484157 137192527 900857005 597625851 752404227 128595803 210129459 402863069 774184523 600381285 94182015 190182599 236653805 473192671 949870827 984148493 350912969 488846405 863428635 500679055 992050053 735862551 240845053 430860979 283747221 790895843 825028549 437139301 976047921 103237175 131074799 757475103 318750805 908313009 821524031 347232731 316511951 634351343 121398207 138522915 202499369 616306591 617003719 555040005 3740097 667101299 56254195 161259283 820001205 4829219 605894947 338210161 403061227 794764913 164133513 715220417 817743895 605361963 808215957 770547763 628385711 851395871 889657605 366985853 801417971 137994539 603723997 985849053 520614893 501208877 817770345 763994907 365873005 510688531 937217085 535761281 965777417 81650639 210613047 960029675 498211621 560481881 793338745 592953011 703850981 98216115 282836593 325481919 324141117 817119979 7006417 174051201 871731681 999967247 504136087 510238187 318146903 31394109 960964871 859485567 296629473 907960979 141054383 234654273 109751701 522726975 220098399 704989887 605257287 418724211 474106935 130306833 457428633 659794279 985389979 467300309 596596723 447019615 763343667 696441647 75328135 496821411 309594617 653793231 280132681 95009161 927546151 144577003 159772157 868181095 700556095 86561857 517507627 488845731 322599697 179993369 83417121 853351845 522963118 88408383 27802361 81757151 849348213 647448841 99251859 249613261 227090439 415767895 645841559 754166769 452884309 991322767 49889141 739479765 508571535 53840799 9821541 156925961 408739377 11310331 192439145 839127339 485875203 645236645 690288199 774933209 337071119 19638817 94097 370630595 869103273 634267517 260349599 350909333 907034223 491951185 467690385 465586189 243820355 416713147 810907725 287659501 5850961 77706335 418388359 862790141 244700687 540157293 120882101 73519123 596864313 206846875 242332697 473869831 605897685 162139177 487891385 132943033 769955627 696416729 391827559 735166231 54840785 343027197 310986681 757421331 682826917 870152043 827317267 306338469 499770313 579690879 492042137 888344785 82424235 334405409 261476671 914860193 869704701 419325885 521100219 271085093 73988799 577864269 277322893 548916091 204768561 473029709 62230783 93039043 121360611 880973507 272743200 642987047 776804517 527777597 128485065 988540121 274746263 424125139 843409049 152233493 404918301 171912483 995665147 686067485 16628449 716886865 212683035 579068731 622363097 445666061 325905397 778740927 522846015 972759439 798606151 528344583 952803483 656790161 398263961 547969139 994095031 274574685 933975615 459538797 436858279 802287551 369562701 62692201 161278407 173987085 52533669 136164063 284010685 393420583 671781615 896276307 975793011 756065139 267786651 942118989 360518687 628793823 859461347 928760931 598106941 34831841 93766341 467910189 176644241 69414775 975679753 272779597 326939687 235841575 294505025 856689517 409195859 473980415 462971077 134993215 224784819 554833559 141218741 675250049 562450985 894066701 845647353 444911089 557192673 413728773 618640705 291330649 236731731 689594033 248703749 682111887 64000311 594439107 179186567 947150443 357303187 877557115 203401933 761203919 542677173 840416161 477939625 744082597 977823789 759166081 321643697 582042847 473650651 720023027 336086345 340298875 866948321 527597651 197426839 376918903 318410413 438059913 261587081 519942109 820150771 548093443 803482843 546935491 216355757 602885557 322470413 814710081 774938147 30143265 641085029 757427577 802450397 221149261 253730549 645819285 411736755 846404547 78945427 625439945 155184831 959826845 155851489 206395981 798328167 19263609 374172489 579670117 122693205 222073467 939734007 877088091 322050175 731231317 428606695 155368063 188042529 24134201 665166551 527500079 713435839 624100073 172408401 662210507 552694819 76107431 702557861 113292477 300415335 64423493 282301673 9524601 355138785 333437977 797556991 955574135 265389625 841646847 698207375 382506811 800982361 958179167 284065803 370089295 89489785 779392039 384810407 152784197 484604433 389643213 271859815 558259383 545378279 357449039 419378963 33638471 329380359 176579891 988045113 431481503 913424581 463113865 977135667 244066675 823170751 826411493 679463969 154214011 296880087 700275303 270510315 379574907 296311867 927774389 615015233 525593149 939306333 284161531 112990107 932510099 936872701 258036977 189187387 36325463 469321243 500919511 723705641 714847595 386284037 809695345 222215475 19735481 3216721 660872973 501595377 21685557 21593817 594583427 318692551 36913623 902909633 789390639 777627355 769050275 596086135 114073337 412298269 864166051 799741615 144229455 872542533 25510889 436671077 960974887 801328597 281725583 20776411 344130047 889827091 742715831 17751201 112584925 787976975 30501515 613959049 207454289 839850917 568992575 929751983 321581423 493285747 684472843 340405625 546921943 915631327 956937781 76548497 983105711 617817373 787963649 459286511 743850915 946425635 317471943 541740745 34470893 766391473 945503711 922194345 206365511 109933905 957068203 916720729 586414331 423611731 821523351 117545453 290605269 738283213 766649875 284687811 750179373 859527841 556478361 452644477 853901535 517607799 156619693 123522313 894701141 784034497 347896793 324913561 340416121 539820469 416510639 158993067 242272963 637362771 288627401 905483267 802305329 524114533 529428937 739732911 332017993 164434553 159567193 668711167 478856475 507123433 429097517 124308883 923203643 15479509 330638079 944982093 726173897 126470437 810660239 540144219 454108779 808028041 409699753 951000625 720142157 313916795 38963743 690280073 617318185 855734073 578386379 886466411 263963707 765438155 952166031 753277727 980021831 379967747 986081365 23785789 98547105 516580985 634607633 358555039 403351067 225862797 114791613 224829291 13367827 144422503 441638489 565620235 436713841 631523831 870325489 999408181 467263651 527708917 259607447 266417891 276891551 70840291 677948773 812739677 675123941 352281863 845641341 967649069 160573559 352848755 702262539 264280871 444806375 541103103 126753853 101682279 322175561 446432331 865016147 837050451 403029309 273217469 154406027 621609111 513571305 31304329 58110001 636735525 138243833 987871909 346674071 411476539 853058215 186825427 873026071 896255837 993862575 340980121 438760979 186445911 61676631 97859143 939853303 456862013 390900589 491724281 480546611 914705005 603806025 411611275 770593603 913187209 448318665 35409321 825569959 512972927 129695313 860972479 364370923 163898497 972043985 22738697 581805729 537125647 968284863 310192261 91415139 909524201 975960857 628660989 917858259 958432029 398476903 89688065 241210781 194941953 338892213 882955495 797363569 237095983 651181977 314187217 79169289 527291275 481765171 253777063 327352619 614351939 779476265 222187547 715874461 725809611 416273065 162816161 55019827 959750111 535091815 486118783 391013063 771907969 271272869 438076855 802690107 615874049 241844007 592330013 768614011 560264177 297179197 185194313 951538039 298729005 589972411 656726683 152994089 257852635 153332991 762720059 106051735 410452581 863881969 625088539 177195207 99736705 374052097 521815023 805237197 230876971 270838305 358572091 936225219 261914535 431490001 617428037 689435083 159236481 828877081 107563039 270881041 396023181 183092613 928863137 761632197 821826281 805955627 320248171 784601635 388751349 175469739 809004005 436026219 420525411 47215147 480104509 520824553 562876707 930233945 61075313 253383919 124164981 50714219 663490875 199431639 246767065 949269533 436730151 745068805 873403933 250780859 332557701 247043551 444417365 299338253 710018669 769720539 893737183 407971181 113137853 420869235 773684573 968739001 210610977 438347815 391852477 802777941 989017863 491767685 444492851 782036785 847966631 175100699 300581689 889830341 150108929 394774917 871924887 978563339 87707871 761011301 542875733 301648013 510713809 13267303 442912715 67747927 273401901 433751355 228694163 425762303 954301717 772156061 158860691 737368485 829788019 185043789 93445109 29951727 25751795 245984535 41690159 961363979 999739153 274549967 140511995 275121839 445039115 760966987 561696865 29071129 49895915 796358255 959534251 238637839 247676799 272692263 780314989 714829023 607538529 613369187 618475651 252726883 528760563 434379039 344787219 578287603 950930265 935894363 427303559 911398267 467625093 806019107 979633047 807170405 834357295 983281291 821125947 321282473 63087833 964950953 870998969 698619591 380537547 41383329 304770973 140240065 961590547 83824287 443290299 873848363 827718795 483878355 487622961 214661397 31497939 255904377 298969696 32131105 201971539 785295571 174800375 868789621 216844859 240005417 830847211 188225983 613393283 917434063 598603893 919786293 661203437 354581791 851731227 279011989 409410559 223660669 739482539 806271525 761491211 622294865 504618549 274281653 52064809 144695053 511921945 360199833 963760441 833981229 629236219 43420849 756298209 808678449 36524741 859313505 169897621 44994213 293442731 823169947 492790667 526859805 573967661 745078737 618137029 811517487 787043595 46441221 742177289 827405695 216463189 745238457 945761769 597594809 305935453 100763391 443291323 489009039 562597055 981355885 726275233 329975223 726562401 44264479 591902597 167639033 979763565 993640381 232129557 618532635 540168537 86296437 483903687 558350065 267879393 904041981 350768353 315436375 159697929 907390611 661749607 793058603 819116317 36056575 149885993 575529819 727840177 513830283 986244289 53595095 917740193 425050129 806302097 553611419 686737939 381842159 520340157 567894185 27061363 529929995 174433079 691079945 938368371 666258897 997207993 639368657 513002257 492956731 992295361 536605975 581266065 180452803 732736665 905331201 73403263 814082419 377598031 723679157 103277233 878978263 98507965 200898667 894968129 80957191 929772163 541099097 423952787 311727007 301277705 762426561 813696597 623465929 428793983 835863793 166713721 530636591 662634719 428855607 552456511 165627145 518415079 267545583 284149031 851478805 883122719 761263229 9044225 53267609 505362137 805126217 106817501 846327141 898461997 486479301 922146075 913747661 328793083 908734829 742206815 437422257 908559337 311939267 267787667 940722805 845561963 613860175 946322925 656054283 280334009 111468455 869802727 80207079 435789007 429560417 790452809 694934277 978588795 161281827 399164445 551746543 915507271 953155989 458932151 830962097 564604049 570848873 781067955 293041635 343904375 949546587 511273463 273415331 384432351 758388525 506419373 208043413 247638397 773000359 528395595 383500521 686198215 288951196 17250445 820150869 708153853 611970795 673367671 498922519 865026601 433983601 431630677 844770805 721421595 635746839 683606205 380921407 326096233 37918933 357605510 214113993 2231927 177929121 43620827 662739443 177028457 988548857 255426597 445766563 908461619 251558263 294551575 756808263 708650633 982082461 928009393 47578579 65734897 458585613 896431667 138339017 401127341 60402919 440990507 60404013 568505811 920786517 473962351 9476493 970056247 846797193 556663577 996180481 548328059 798076863 283313037 172208935 683053063 785757497 287253625 7422755 417731341 209538623 222489809 687828133 344818049 875757607 903279055 694474211 959708199 348524103 512532475 617899931 231535495 627892485 506618909 100929045 180829423 967233737 788524621 902657053 453051769 19454727 909849317 445863433 102779141 894906167 654486923 799191225 846476091 576635867 999518761 843988115 106054283 850957185 319395829 256632451 568463661 907858871 502484075 498559235 353981987 51162139 578042447 96207631 259629107 391126861 206633133 791116589 131070703 644934647 459088857 430956651 37490095 924703691 283094127 475024737 624199315 615052421 965830229 385268525 961543553 226365671 232812983 932944499 203242285 405252539 937857543 126198371 485071373 646004945 823724803 463850931 806188387 437080071 207658927 678381987 21771317 40088637 715595607 7180021 928905813 772725341 376477329 595648251 613902169 782982745 162861109 781863561 966740389 277339181 342173293 166003457 659558237 609838811 169839007 751641411 242756981 349355885 445494149 850411715 851455651 915585011 321710103 154289269 441459303 43518091 800075933 700448215 98600459 480992341 998620319 615048687 369720223 589392507 695256309 664006731 58139897 630647600 803071161 942079491 391968955 532687023 829831759 822737077 983025999 592144953 81794661 777771397 258284513 999238423 663501551 871772195 777365869 565485471 588651561 355252677 985216433 626543143 952119189 362299947 499557431 351211541 878949635 251634839 541657421 261136081 183409541 322163419 180984077 578609871 833659511 188499021 597137495 656577159 524017791 862761161 913282003 364785020 639702665 591830455 601258225 102882619 207556295 988178181 459342059 29846609 414442935 309945383 624242623 603874653 995954459 130466079 413713205 582056959 861159171 302270833 296959967 202786785 645201603 911426349 908485141 91176887 555470323 259992039 616038647 278693945 117830523 591550399 474763117 899727147 239565447 587588697 33766695 361301591 212909449 329543653 930520989 220318861 172552001 437265435 760186641 277439147 772517294 603395381 145066889 483437201 39953697 199608061 7733719 306870825 490771757 132792767 999249553 777385575 519574443 645390673 987981595 732628035 519298501 960239637 619359899 648371137 223316707 265583084 838650111 750375659 388742073 16502599 732114435 177310417 45006151 419336220 849546279 869143185 276287949 543321835 104732593 146968651 704338907 943674294 357863347 501048873 400356675 160639761 535429891 931051871 971907105 889785613 499865411 77205285 159010777 462540875 204159453 956440511 524550683 991789807 421002493 192502135 740246487 295806891 827134111 255704479 207326793 179696817 109858689 970611599 832761337 720460993 113775661 141659053 372946865 190777379 247632371 220314723 52665221 408726947 71164905 770446623 983356369 168057241 831498225 459127649 268509243 688759521 265661875 750896551 210048175 602653667 969926049 420164733 744724063 509680013 499940847 814383475 280698569 341734997 329557409 259273255 261741233 265449785 345423231 734135609 41482019 51960511 616652055 394700627 307620469 403415031 751780803 598405673 702481215 792129397 172028323 629607795 876383083 543285849 994510495 514638837 744679199 782933831 628879719 585205881 634362325 40182641 120226419 460073169 299645253 725396873 990253317 199383767 272956020 534631121 119306277 615341933 906510003 442228237 258103201 209799037 158905489 30261899 963562257 371618043 327706347 445850401 322643161 418827231 337945573 450923313 943430943 275918127 871579117 871690653 896223955 543624687 380413111 889589205 832567469 209309751 594465341 235886287 669538863 446574623 650441159 791218697 814431391 113853641 122385119 370407561 731155981 123706721 803113561 377115103 892257877 991516181 269662033 869103391 232547349 163079973 910100013 239629801 289397171 750855631 760446871 398912353 628637795 264779103 827113861 824823609 489113371 462036519 806222387 860818083 174432155 449459839 660205349 212174177 471503213 568862159 868827175 557734071 86608097 469652859 963195469 209666163 672407565 84446713 42038517 334933997 54347219 30374849 393721025 981082369 712845533 12281431 935922845 41244951 959295639 975478597 875048641 407065117 682040893 93042973 72566693 367885193 421411277 535385209 862824207 26751835 565190929 883027707 952080651 305597205 627786903 313274959 859080943 355388617 258271929 321799461 916218963 773852171 667091095 384314423 245115425 322647803 39780121 875387721 924556161 400865599 451027439 649639461 466213607 106057987 23930003 164351901 150292243 244772353 402039619 19741835 509943301 544463987 839659527 939764945 585943053 867979811 607836083 573766235 998430907 790115167 740091097 127875609 98682353 538395641 214021855 181999877 760136397 546980437 269842667 193891107 94578879 239610453 796349677 892942461 96990331 291440745 109690525 328195109 580070141 793950855 511342205 713831221 608156297 886572845 958206675 32579023 483442603 206498915 909277361 920315423 389505591 69290165 475336431 782758229 798714441 180631097 554201901 237606571 795779911 223679887 199104209 55540837 743064795 177394909 939612175 221605583 353094651 864687823 840352477 560488757 264260069 172895647 13874685 382754041 216091929 29118985 420134389 972589175 685181029 443298387 180601365 494351899 430445533 906839883 238037881 491156825 795675103 485190473 299822077 250274731 482743309 999528745 928728397 80406417 656418389 477112149 936697301 977167767 881704425 731919543 561849297 311637327 116137031 859781575 623384129 673616467 308222005 357556611 419493865 930055493 364462779 866486899 68374623 648091857 134190129 516046755 466640119 542517415 245499697 927084969 989428691 167101059 50688415 451107749 517889243 143942949 725090729 943123517 807806657 226209625 826992323 586474141 8868857 690125553 189360807 123966847 196948937 724936647 820663901 449459743 31317299 888703165 122055471 372754755 391219723 543266495 896016302 447854649 304876009 359666109 646868671 453456857 394592557 811239859 606190205 853945217 491196415 857273249 45801307 575376917 947043665 234058387 293659401 659228421 464724951 513906331 628814213 421161289 565924117 722174931 595441681 198003803 663309905 569476957 453556285 672881989 803963293 621195365 37256925 32046481 529935569 882202907 479890185 353584219 31786125 796552635 220096809 14043965 841776953 209800069 215679465 368481119 544933893 444961733 221772091 113079919 615717353 335211725 908526429 533410209 250282149 588480761 267507667 256021687 299321285 135262631 714540137 874173173 360593299 272042565 56094773 484909611 811485229 92375363 422666897 389207981 882130543 751669019 647351329 159660377 700143365 978072915 294668243 627174041 147750749 115460977 746629081 223533911 610699951 10460169 932254387 755154699 638133499 921049525 786887713 378518453 450593803 402077209 285427251 7427287 327262831 113857755 799492153 1838211 122204797 8607921 707330005 103840847 139494231 339190357 1273829 902231 614786023 839955847 271735193 882888771 330432985 84569621 279693669 572228161 273053865 634689229 692634629 243210759 420782229 60921483 267426173 417498067 992181159 556728113 129578519 656686955 349007021 393359531 623606635 973452573 266166849 932977641 629179733 656620737 703056325 938017767 854209783 821577909 214128733 773218470 522581949 289674973 466792955 188113457 445457501 857505707 633585751 21971865 121367507 241106193 613465587 78427641 409515107 763006865 572463895 636476277 56691865 207810349 847894225 662104115 546406985 159541879 867257851 13589867 940995985 146682757 895279157 231402065 282713555 550844659 716079335 899456301 278867645 732684521 860701249 17745989 350041921 278971925 350721595 780554477 667028639 551689389 799377303 135562369 276536663 820328303 248610523 276821343 569220663 568598689 492241753 940159989 948047189 474029843 610121769 522180019 102743819 160464153 131328299 89341973 647622397 921335187 346851333 852555675 207660825 912556261 227084587 715227859 12830867 386343935 454287571 574240075 977434341 160368473 248935935 409051807 48091863 148527597 327246709 581029235 49567603 847634501 616742599 492579951 242888971 118866285 958333771 865718597 756337217 765576701 741599013 289188785 660328179 363949329 314806841 841647219 896613203 243906385 734506811 913436759 1723089 315151851 914559647 443672881 755851049 105735061 475344811 233693399 568372067 359762317 90294627 597669935 74695369 601966233 978229655 169045023 540711919 91482121 923788257 345493663 535153075 516378801 757740707 616190373 570791479 485667825 907816449 543227955 495789031 850222255 142378733 298325335 526114939 767255639 116684321 190351135 414121963 746077667 245406491 714774951 428112765 236738765 844750117 801167891 531017917 467744799 795863117 284890507 278684799 94509925 496549485 558580289 927772129 409571255 226589221 682624625 124472133 133050033 226630109 59560795 933478745 911582075 357271237 989235277 990812177 192319427 400489431 589457813 428432807 259103935 423405777 702708113 972119459 261121069 789227323 299979679 743116749 428996437 39589735 838120237 111533885 967036419 992123757 656479402 869347149 979260301 93895859 271477397 841608865 839921619 882447439 642977901 435398695 971085369 319727937 914960827 700922899 651723953 163116097 730458901 372377825 776786605 29238601 274667281 92898389 673748015 213478951 374383957 825740921 795947195 279297893 300941705 794798757 62515295 484322657 614919775 354059381 443585715 131278137 493338771 773192395 602549203 880031699 435247079 982751443 791166823 8920291 620078627 85269763 499597213 760693215 922648093 174196759 255987245 127484167 269031595 576832531 589964112 523721829 695822259 413621059 775407313 182384841 608709405 933408059 958417661 140484809 495509466 936108505 687079337 163582409 801356009 210511423 606613301 355331309 189749833 161037787 629900679 769651753 712426499 928840031 945115403 539554097 333105965 137790409 933876667 53352587 137038045 569087325 251756051 924525177 466673977 882689193 607876633 323747857 137354345 817620861 989025883 283437607 934570911 883901945 589287665 991805021 177368599 609831809 870715511 939187227 552580627 648243135 68075799 517970323 49372637 237991 155649403 699634361 324285637 820018297 109067739 878753873 997517353 778194101 471808757 413122787 936958055 561373483 569969935 501356989 635975149 459038189 791165177 849348601 682303021 978405719 78545673 695640439 766921887 304955151 916111899 595257823 712422343 332122367 776018581 328495009 275672621 571570781 677473129 842433269 383658343 63764645 54415627 803939037 488897803 901791897 727748217 109362719 665850303 280543049 978967609 779455053 643571755 686866695 115395417 548215999 915646979 250355825 647381105 558373269 984948991 718446441 979066525 662264501 94723553 410296347 610028167 397781715 680126327 605709309 919736665 658442341 15969681 263325901 750836171 859790509 232768519 332541835 464604955 243106993 906717631 444984709 335946257 372976707 700034465 265270607 996941305 591080185 654818721 937390023 127003049 553416503 452395959 565598479 659496577 652752673 410853 486448533 17335655 744354219 430936121 707327755 724917705 352477067 727112131 308873073 176283 808057409 587354523 271444999 297510751 642962199 880685799 23539293 992566553 379211805 844218063 18874179 393927513 582041385 575731079 269460953 984560435 898365149 90740551 727896707 924217925 805706147 338342739 690622443 545617337 281411239 495628531 639776775 302023993 112072421 996834429 130237201 986075645 478769691 848983113 394592913 607623109 823095251 740445113 640779345 760621523 914396251 735439927 99856741 97099257 34588621 249669685 27952937 536934797 791931657 497921583 52056131 425977963 554808503 686137767 156244893 226865659 84816455 43343911 135417709 48329257 862426867 619339841 541955631 919532143 787077816 668683405 947171751 842463433 611781985 333449393 666561505 642089149 532951421 129578581 503319601 611191387 653481829 492310061 51809845 767405367 94529081 4581105 38479055 716696431 410669793 421530725 238952237 286972589 408566029 488275027 414621121 973094171 184027189 917354891 98594121 739581553 938999451 70770923 770301897 152780015 798918725 666165331 268540303 896947801 206181381 962295213 696244779 942019325 641972849 914930157 905105789 619007665 478284525 89157643 507737254 355615701 630045343 324046347 194571031 117409871 130522485 999523319 703527297 936280205 600287531 514768609 398060255 697372805 142747713 760993249 734579577 2648245 536499965 527453469 471594455 802467619 472152177 675389119 249466321 728245343 662225779 463572469 242467713 422221437 947954085 513694205 388445773 513293341 708198001 866023705 957752799 278273379 419307011 933514643 893750061 775796991 902227031 258127549 86668659 358459177 880755245 654596081 396014901 956076699 692668937 14307729 848476991 973197727 111002945 578417159 59576229 520762625 523364585 148887751 658640579 57549081 997848803 778982729 575664703 869757123 395804887 732949521 959772675 438949991 390915895 817185705 191804743 994558195 517449271 999550883 533355907 226037469 802996955 334211991 970419069 446775587 821928939 461635115 992319553 518272587 487632117 554988553 720573475 671327589 522720083 637749471 513064385 683927813 615117605 991011949 687759613 777418827 83753043 66280817 187336709 618270683 942544269 597518007 706509387 56434919 804693837 180462607 95955343 422664737 798943951 18117975 310804177 456308937 733439777 149989743 605297503 894094247 846181903 86621507 33205711 633032199 222481201 150916289 38874363 121228481 157388011 865995241 75433737 540943153 370816867 843960249 651805283 580431937 1262473 645812541 299370173 775950681 922372117 151101573 81960471 35099509 288901257 499604911 99028915 912961555 468141611 136823771 530942747 537981493 502981389 348015157 909313319 91182957 52151557 795211501 719135985 428924623 703737015 166552125 866024159 959213563 315899015 451963753 94287261 610856469 698264489 908694971 962874653 423202511 24590099 627724165 197681563 835182427 948273797 762409249 854211743 527784827 606729097 311909361 334214643 152005747 581222511 748538207 431941805 919985169 133402445 702544863 143673381 676681133 713298693 556993003 846004483 594038051 935179841 924110595 707922483 61857755 277119597 788873395 169546215 263299011 247175877 539671435 9452701 13654609 987740999 291871273 145464857 487811971 598713789 9556527 722789993 569849057 772749493 552045379 185701597 965734005 594206345 299714587 475682581 134933467 927893081 359187823 895145459 365454637 917763341 516623619 982793893 63110673 556343893 488950433 760606111 699558073 136023979 686641947 619971995 272827095 778106701 290577227 740125345 809735853 368646467 144488211 387456249 124672267 983243873 774204511 839650363 494017307 484068153 408265247 21124161 715864025 36658993 917332301 105239089 296779927 511803759 825309677 517700981 482519353 209440739 672260617 785546435 816844847 843118151 717426355 141559063 50030447 460086039 918989573 155139251 730625399 596090527 992764195 872630823 677595727 174467055 53597491 29310789 280192641 136360415 766461547 272333355 681613353 972797967 545736197 337776185 651647457 887325669 800311361 784618785 708990415 878897045 924174187 480283091 392214693 501536021 75503317 351406989 737701015 539029287 370383833 544970451 226409569 1269841 757922521 498094705 246552141 80860643 981088321 355643515 398603561 454456057 355442561 568678223 507372361 857492335 940903955 12170895 110209931 264597233 524637307 680149033 823296087 292304875 365620035 136854863 947732637 55708313 159768572 476376449 361197775 635414011 122641987 795604863 330291181 835924693 843309241 549198935 776399485 708888253 18238469 338480223 155163023 884199175 404450781 929287217 449775545 362926549 902139387 531770801 672968727 887973135 558526239 311067405 9058641 739108711 903506965 591057849 593297555 804242259 317445295 887411569 555754647 118732819 513632966 970493239 759684761 128908463 457383745 878023771 708238175 133201657 197576451 496836975 901557815 150154377 995384323 375944527 378979833 221151679 371837498 43729952 489288195 482992835 586309803 446358607 205981497 326545031 123531871 693242255 947794187 601082303 26788713 742741469 105366639 118307823 759797219 94793341 57773797 524731485 435931889 782935803 857752943 160788763 131391417 562669611 191115679 317568513 557657201 823057195 625455755 344860079 144926035 994911837 782313423 988864141 703537055 281675373 499745427 734787531 612016291 245176145 431146627 147049057 680001197 165551431 510027481 597369871 456211993 161121231 917949777 52814945 186908745 921283767 768338737 442576289 631549609 738043667 803005001 558746093 683634089 821779009 945508333 905096225 842879941 880599267 674471931 837817577 701973629 539434983 155178973 255628211 256654685 261734273 178557821 871312823 643307255 865208875 532415571 752850165 412294117 684835245 286205535 313722679 712721867 29287439 596034339 438301965 498367569 980305065 56882865 585912525 883812905 1635605 446746783 524333977 440281101 111934009 133479689 837333083 745703363 747010367 36280727 405142719 989579537 715842205 870045303 344674881 734357195 773201677 828396381 871313695 431150539 699511447 886531723 808223587 396293109 661776773 3493829 430475739 291058991 82393451 507482459 926183713 261554289 760421413 431863073 512968343 858893487 93351641 510407031 147882849 479270897 495607539 38292033 882805617 49833021 931832613 904115697 909756545 808971943 87367277 752256121 818241805 88041545 179672847 72025689 725508451 2253639 145289623 573364633 776687759 335641033 384028633 759704773 34742123 477372161 59537907 36665845 671640983 215824939 889951047 431457733 186246267 222302599 356593025 210358365 435440199 843036513 120394137 750957675 603761907 328924941 739124935 797059109 291980609 377176545 850370449 780554313 558800823 134280769 356974789 432011549 994984871 446292121 112346227 534107503 180829225 145265241 544156923 762322329 80277277 285934845 26531329 348085363 613528617 176177927 792683375 526252137 264675777 155660543 231082105 91739749 177644059 29140089 522057887 198924001 445578297 290994447 898235553 135465687 888435937 873541989 426405263 835851473 995090341 802478115 95209403 368404955 359964123 7002875 635919809 503256717 777782183 530962857 373107079 501074947 638265581 750317805 353557814 294469861 32490081 454885781 97402951 583106657 422908025 386944879 492868211 209562413 589075573 879150167 49533631 2349703 482852191 948596017 825130615 152690485 134541573 879418085 500746799 86997127 260389121 597816677 733553859 730816849 31670709 2128045 366061145 776170739 974315845 38216125 265586013 623443537 538026659 603316643 540609409 718966493 478212745 106386541 471747779 928626057 422365813 423754809 242940007 260137431 313991601 293383717 919634427 177811147 760559179 918157663 110472783 780867571 804386845 279981079 667435139 920074855 868907975 657580681 610124025 490414019 353073585 984947191 340004959 68746543 752376075 326661033 562986663 53254233 323992783 309087219 568975377 177343095 997807803 160599345 686505501 535605575 868286551 776050369 329359515 16780817 604834805 664115217 789465243 906210975 536841645 689471891 949293949 832909901 324451423 677192127 793127909 98915059 382832307 681202711 501156541 399916541 765640729 579868713 191325243 689930071 783548873 859779203 38113499 70542965 719877059 405305795 11912799 895704409 31280083 848202119 391061719 380450695 655012483 936571261 627818389 36260109 453992497 749345877 75259957 177130371 173048315 639301323 856832413 559075077 440936647 551887521 963137271 595349307 363448905 45824417 843163835 57400915 494012407 93755035 192469921 920418819 232463377 102481515 380531117 132832905 529392801 123097845 674728753 138151853 722433143 438629921 823011259 68367291 712568873 717497057 148243753 785889929 755662107 225369137 251216033 698708087 812431473 540815379 92786063 630209899 431399455 660267153 48519847 110195665 209047515 306321595 296571107 129126819 536013861 902781359 777490569 446003549 442754373 985741707 390694437 882941699 550724687 374910077 160897933 286480681 700790295 727593399 220145883 740214753 524488255 785702001 295446899 790258121 670817327 357431533 141004547 524666121 32906777 310553465 624212607 800887887 681211889 297368419 563964193 319732179 83938427 724112393 788124529 387467343 660795455 177987531 83301431 924104203 943355019 794201875 706156427 958090199 915320953 27865427 421945287 458041353 47124457 124559367 241141905 247646077 750281859 733811121 468495827 806087321 935387831 929423065 918363843 382074447 370824381 421517589 770292445 932334867 252578711 374328829 351198437 52472801 450544139 93194801 168795623 352840003 584786347 964023903 226039351 605811783 642404815 303897145 78724721 534095233 701329559 257796983 346788987 991378959 494274027 298705629 477154945 679907481 993618553 556513075 154314229 939788367 502169791 854294095 307449493 864497123 435488247 405010439 956580709 654989461 154464557 829525313 9815473 175471917 206304817 556273381 348127759 325935351 165319833 495298791 119044439 991960265 41057481 536624447 927181235 405719043 596068069 317796593 804794249 144136075 550278625 821100805 173792915 982913231 299923571 509720976 288060617 225262787 132574747 995367085 318018419 711441641 780728867 651530617 380983833 297794629 857291419 230004005 525814675 270004327 64686425 438184925 108627195 651514467 479165695 554104287 228656309 383218647 491125751 204991085 937733999 516946925 687640429 521250001 810960157 109150799 586202205 378792283 722266619 536280629 6103685 24162921 900420493 32522589 475997551 267619675 496082845 398845199 100290409 385922459 157782339 471957783 607916173 3308957 431661017 812153035 75564987 539156953 490580997 432519693 484582299 933063123 983411891 760297021 667277725 649173779 707879445 24701775 637935867 315400751 388996265 557238967 861386675 803877823 723413555 517951091 230170509 511566691 383267519 174687753 953555227 573197003 88306081 60349833 398095541 459255971 603769461 572022407 447998843 676137899 609708065 922071329 555145301 326803359 515295185 532059905 543618291 990581839 86575095 687463505 351877837 105450635 93203283 636732105 708810277 11926315 647265765 330280105 667967233 846275093 729358843 404103603 396766259 480175411 140696875 465431097 22869585 317116275 192104783 748352017 410450111 965260245 29591435 748625303 572958883 42506837 444906317 326762675 771471339 189207299 663033159 507817939 63700565 42790127 87909497 995962093 816826971 206673203 768502563 415155327 751552585 48297969 738312661 411409039 652226863 481898835 348245089 192063915 84152291 936812173 380489955 687206893 766428679 803381463 236236993 680369645 491592453 729455221 16478117 266509783 181443849 933963183 703682181 333935701 161347087 438515675 122333851 860572063 854437079 258208849 873649263 710387829 46334437 221970803 755592395 709142299 900576399 771525035 834463683 244949599 697267177 461262445 398106037 94328471 124234709 284617521 369119809 335186085 827114491 601464443 957377369 204330731 456687821 887014613 494064685 69541977 737195647 467151825 971502139 415623011 282829845 903528713 35804231 654162189 409764439 350489887 492401501 746191831 530972883 518865085 235951571 784051921 959961827 521237911 54508097 445984917 849914535 151143781 226316433 315563067 179693575 739959531 715893993 484090479 17938355 740155123 960264387 70523995 847697957 884176207 436174295 455059129 168253081 147182553 849348397 160900291 637962269 424524147 54983693 196770115 929995901 450148615 842959119 948726661 842300243 302080649 148111629 569414753 866573565 493598705 872509483 695447347 654545318 381099075 529436887 243907299 981741631 481528969 494303429 33831647 67015037 65006293 142701551 767838237 714359523 196393281 484785565 814920219 936370615 820336879 317711193 669378017 709853707 875780361 582060023 912047353 854860213 175369667 832502419 630674047 553105241 722085717 407011219 253685771 630567259 220975363 932570529 174825161 43367663 882273815 536405683 432361571 288388363 240156387 691809541 919064595 695137135 593233345 534474779 263277973 673946021 618542611 290147777 367567405 716319229 622931269 504404747 586555823 918424717 847867845 995684183 8541035 556441655 706768403 482277191 733693253 482897316 724714413 376868807 5338783 686322755 734004255 601351439 774759273 94893901 835835899 258385303 393872665 914952897 409178587 506774821 728226221 985481321 4204385 281916357 744678571 679053011 341692983 881984205 727676963 974939737 312874769 803245015 262162347 498362907 437335721 129169351 576450909 432001793 769438911 366275531 341406437 625070781 595776799 959269461 439205487 873237187 357167771 521227301 647920047 114813271 375159309 693752123 113507559 965987967 43857751 68804583 978708443 908002574 366253667 384346555 370109145 462203291 849430565 208385171 273430457 527425411 466096023 38360979 588114135 554556915 333307577 338167849 318793757 975381721 549205399 503210761 124250613 631962095 440463683 763276079 313648727 70544305 129453783 892508895 274566593 380585069 815360629 649692325 897295417 674365229 723691591 153772629 549525071 389115599 842001281 508021259 484877337 788662513 496026973 843866925 265070643 584335097 998660123 810767205 403922627 326151451 648952839 828842923 353876091 487921997 577661555 88800055 359231885 348421713 685502137 823661711 914847931 512081069 95426363 111045759 517977673 466795955 864370789 243202331 761825031 69803129 321415591 900128449 942635847 792631009 263173755 443612435 210264045 551297685 131575143 380807167 785892699 307765249 35459313 933317815 275129473 813213537 4681901 406134457 16437205 945971125 199206453 504981707 176582743 28756417 681393195 712569845 906900617 821599515 658684219 421162639 72927613 215706391 653770005 959391539 444842441 156246487 496487795 696041413 839078537 474914629 755916569 182481011 548231779 367443981 625905873 933102257 405432457 101587115 889270381 44656697 687401903 984333405 310215113 377299475 336129297 982575659 605427139 764640137 689836411 291502567 120536903 340333869 608149045 463959339 861445195 308138977 273061913 880564305 959005891 967868867 465162883 1131911 251410869 785693509 930137181 667219901 446863405 125596695 880332561 685114279 87686713 586007607 552808855 480732361 145444341 938467559 467062125 697171049 408089731 341279159 27495835 563281561 162729743 741379963 572502957 186828593 282772425 866935627 11965115 504692945 787628267 322094991 156945505 816405985 607632827 763462387 467212741 966849425 184550783 224597865 178835609 681051353 422925451 742276399 241552913 251722617 331637561 529727945 943592939 924835581 922274539 538065257 249177453 396408751 529550605 461846515 188421733 270490029 51830799 69024243 720057899 381449685 974489197 215500711 92818589 313909965 442657191 362986493 845657375 432297993 920636745 92305191 332880803 199025343 452568039 226385829 744428443 653756655 899470871 310099255 262440711 157509731 686592893 723101165 797953391 863309739 743190469 29855513 899825375 544528669 9398175 240811095 309167341 989167579 137888711 255508107 617723323 749020367 586656765 299343587 861007595 511740325 869279757 295357907 613509291 36613081 975074505 761944599 387181749 918473641 326238477 873150899 420610373 300519199 151426231 996798705 331623457 405501193 965806517 223774057 126073752 61158915 760632567 163995383 856763265 391120233 282061177 199287485 569095225 565985893 51465019 268664871 661303205 759995623 732103241 576519147 838868021 28119721 109172151 112413445 533316065 240954409 539374235 99647929 871942947 843743663 288131353 605687443 841744901 384497741 597363037 815652201 436796691 835373787 999101079 238796371 843851875 447025401 607270915 750668985 491342999 429897231 953711585 172986439 477758929 726578253 788948607 72062958 468318401 598565291 368106283 829747953 296821659 716108011 348114241 915030477 718999841 118376595 207283493 989631313 972732313 467561973 485382461 109803411 308858829 352236073 151383297 963855085 27993111 809064719 83686373 657778435 564666197 986284109 873362033 750028227 138177517 791296087 991640875 840697953 184938187 782850915 821256615 65418839 805676647 627884147 859209089 932063341 948010945 765454925 420193623 786139565 590116701 301240963 194061271 647078505 486196809 378442859 713150641 761698627 489274651 556390441 968014753 467481 788520693 724379041 967885673 570861853 425832569 238195591 1402065 503070143 277953239 861085777 648981421 769171387 782022341 134375231 196909529 109786649 669847937 192688987 883167283 651797027 420219857 83010675 335763369 4655725 979918085 158967331 43512875 685825493 496416753 671738567 716026293 9551485 78255093 263384201 891491145 219572945 742624757 196601433 96722415 90373769 383133027 716403441 191529403 519359389 48798001 107799503 820149961 24376659 227555553 404855869 800754743 962839351 869697911 647890505 496347955 128525853 269357185 368441293 389560815 608920867 712414485 392399721 133425313 181282986 641383125 956300165 238019217 528925027 240781027 830778705 310189829 143008575 536497391 910480327 473757779 949775481 780303919 258907301 280810705 158082201 383985249 347924851 40911333 574205799 533548235 548681859 708255479 112194043 828844349 149903341 213407865 388209071 297751307 629592721 405866215 449415463 614178325 297935127 670173635 282791763 814735809 242695919 793740949 450736737 46379515 650600273 657197041 574847187 945571389 726566973 972055155 591314027 151815809 32024447 866832313 933192499 864909905 822895523 197204336 993457283 640298427 113495809 863906893 894000631 578559057 50075325 740343045 107757169 745232439 148794299 262997851 919125789 230704911 42513839 78120221 28710513 405540105 237849103 383661849 41735977 939752411 444417819 806138925 500689225 941135811 153965789 603397687 587220765 404672649 973574181 365645605 9449017 450635383 524956043 915742185 26188923 908472169 552757357 185210235 63575301 665399225 71673845 202839517 322769221 300561229 707841045 726454045 151090157 973085335 91418755 675657801 507191291 731016075 248087999 292359295 600723381 18562725 610074131 476573663 18205091 328647663 74869901 245998739 593486747 844169719 718278663 990002125 960943035 818268367 532305953 149829833 619444583 979292955 584789059 621345737 171696713 501927165 328954015 895321365 844703573 427426597 96498473 130249219 781195723 437711305 152356517 566802921 413804075 43802537 881603483 573318445 139158341 329488647 474468697 435904567 232101675 598551733 699410169 723256953 77713465 737017607 975819355 388511087 525693973 514143965 40988455 84432283 966047401 671456925 725806029 437557127 192911659 316530997 393244805 541067971 650479383 86286105 119721041 827908333 589253423 670361419 742500343 388410021 789909635 212064335 468014345 264025237 270853989 838509365 151858399 718911599 38106227 950690447 184699289 697014255 285912463 54571393 99027743 14088151 464746213 893401773 402355231 682355953 969085933 873632067 98586903 241924365 955887711 200500731 205892417 207432713 825613633 383716879 48858537 444814533 171332063 377364551 372434463 261004843 141376717 352621555 729737787 366540333 9362153 214853097 413057627 345719495 303673941 289827205 863106217 760366843 717548415 16035759 854605847 839687123 82066459 965495251 747508571 187083103 263583779 187558123 828806133 415122365 708228829 928185459 186360623 331919885 453765079 165700977 658631449 928141689 36410849 444561267 92617609 662459443 575412251 932308881 849911073 180170873 632485097 987873129 674715211 652289415 438396149 256685087 394156083 179300525 358495285 177488741 737342933 716990011 211776227 497050733 994569967 561477769 11469959 406303479 266785547 434358013 361872619 482205771 626793591 108045567 268516643 381536309 749337933 707600131 331258507 486508043 416368749 341681025 512374729 503320493 291338367 638682109 358037447 19765377 698486003 105529345 27438267 303581813 405416195 967272989 124682017 617226495 297115309 500812527 368497853 648455197 509172665 580374039 498642331 930037077 458632889 571315519 863768335 446489781 953039877 70701339 280297143 348661205 786990781 945759331 296698229 800876755 109453769 60681435 549181047 103796051 511875801 477001291 164955695 812242311 25887589 614267784 587325275 365603105 251711407 623892333 700017663 899175521 614073277 30970841 914293353 183705871 562196577 459499703 10843689 973462903 565182515 136439547 232879903 550967153 498512529 506242973 221935725 104877913 312220839 510717600 7186305 756546327 276146787 378942479 935590159 212918041 505679229 125238013 148990993 694201685 7180917 562857603 226942671 206979143 694598037 38787267 958719953 905022971 723521005 551198695 205489391 802948345 947560531 105870627 371456067 344496987 691917931 233785775 92249907 550946239 911375257 96425423 46633321 431933003 483891727 616732621 809753563 73592235 181245895 302943481 439756741 18437655 488381825 810905777 957275563 602956367 543101889 585958229 810348121 436113045 413166557 204581713 917756387 546211261 760931049 955582483 329446565 251193367 969879239 507303707 351782981 685779589 768386335 800071399 690980525 207917421 556249699 255000065 185154325 30539197 757638855 155920895 92979444 274526187 607979343 360049273 120888083 537916661 38574275 5370385 759732859 44086627 557044913 183298417 518319489 608601663 75177075 929542733 486138563 364141603 187919401 672907357 936145955 490597933 974114747 831068261 909466575 951343363 967178201 472153391 191106361 51139025 921506557 822991501 11570209 328826193 250146915 729625177 514809735 722334397 416336665 365696373 77064889 672180959 701361387 339560139 95455821 636757251 45304691 297293903 896703773 876798977 553211151 817846265 417018191 689013045 877769707 145070285 567463757 935016839 851867893 661059541 893865675 123946085 910144229 354050851 610168265 373008581 231053629 333805777 866592137 124188197 893578563 53486593 86659989 629761419 156118281 879355869 479893189 101724295 596478053 225740441 334921267 463718957 667023867 787587183 423370309 850928157 260822063 218603679 651329447 126060925 590169141 99806325 798440523 335609337 48292099 65730113 153718383 364413643 252439129 410692193 952414101 726678957 430460865 930132533 892873101 819805161 549034379 227527977 373325163 734110027 276873165 157404589 165956231 282223403 561145193 579819067 634546057 209889127 825115913 417531479 810819421 459207523 955852312 696542091 84054069 87610639 614545877 959434857 347332751 731868641 173637691 148465547 930319919 608296919 265273621 510805651 817338659 988711031 117904113 309825837 872815803 488030161 160858665 311311879 28106391 539908473 839743965 211788257 882685337 189099919 13955829 479997561 94308079 956446137 849777443 357739419 118005005 322928163 656552923 876936217 404620973 205909639 995279201 676858061 676470231 670413601 83479483 363667353 2255059 545843127 996044221 410181735 229300537 687938199 447552507 192914475 402194659 618059161 589262293 93215199 516707575 206723353 621960822 886129539 588843231 791207679 138505167 684833059 918313809 695460281 791145367 331487697 128957769 83520317 478113867 701898407 28889352 584794123 837294649 419588039 858788129 880505381 644470891 543142749 981239139 110064669 139831743 525243033 329466861 720495623 157527507 486576821 363142175 881322115 296464397 961043445 287033771 147690935 237723297 639844515 918867841 263106641 76775813 983103505 422004447 29115013 600043387 425967513 563907657 183426325 859618057 558138783 701368971 4628549 365417345 788376713 145157563 610727139 791745017 885359565 397074993 293461319 103695443 877010661 839714709 430106703 637887033 943822417 357090259 383575135 21385751 423127197 163594783 770783847 885065769 255429467 634336755 659851997 94492527 775491109 800744981 127635135 927633581 869108637 243411859 377451669 207841145 346780271 816605885 187568491 412580647 329997899 24821299 146912215 219609049 102984939 278041049 512512761 920169336 22469397 618960857 901396855 744676531 212180879 229501351 931315839 692788227 905650221 942298883 734706373 885464743 539141321 897499885 133105547 825081255 489780805 124045493 49539989 528256213 702028173 122704109 47171123 580042699 439069329 975186033 34073145 356224739 678888267 836256103 76791045 759990858 990695105 255450681 59978113 43526899 293693945 579627677 28136727 292066191 689561863 701643919 882263231 357440931 625655301 535158611 632971767 34957941 554913301 202873461 457340359 507262999 288591459 103272649 797962683 304267873 22643487 755788653 912545001 688104947 161921157 792469187 566335729 480477493 783314389 37073271 15677177 757275991 666790491 180574593 28362415 985508177 330381417 33495833 809104201 230626531 43255897 993523653 742517893 193334681 893309839 997214545 24578984 860123581 861507441 10178769 986022531 743873901 603758197 450877347 254500971 989073799 417446165 684576363 95886655 376380081 263814355 813249553 465997923 737155679 463395639 511669967 832667591 503833031 526720213 885416221 785353955 901378281 574448199 646245571 439899057 291538831 299262255 545709513 661230523 23679561 65869113 762451335 427805453 218832237 44947221 955084183 596116797 405303837 614977919 16793823 687096427 21429571 679297591 409321609 667697213 971449995 751552779 433780491 151248609 350748529 288044233 961154335 755425293 444868147 499368525 255784653 193079295 330928859 9201017 96845919 232361085 786474039 367290937 294716265 868577751 454073571 453165949 512340935 568481761 931929147 771931201 360306335 483896569 161726825 247980165 165066077 731164937 613013085 285401175 108099763 161640571 722701521 415090373 470177183 262869831 606934851 849352427 198195301 50174445 802587131 122880747 781532561 737410161 215347211 778404593 50587895 543211873 125055563 743941677 772777653 808892627 266585179 983707099 904919597 189022055 112588707 224270397 493057805 710833987 381939283 39133083 785394247 704367381 612397155 284556105 875425049 452669203 58919573 846747809 60586503 15105531 954004847 958288391 13301215 818197523 988197443 231290851 172323505 523085867 643101225 847910823 498569949 169508503 316147969 903289039 894458887 701493303 83978865 746589147 516599321 647388527 16084205 728900439 255711815 423126833 39198379 128558295 626891281 63250415 96056493 824083441 172304953 928833707 228723641 774440267 808055241 8733159 55116641 785456011 33378585 519124663 674740475 323170921 942299331 778387883 918606507 642603929 157333165 319044583 514089045 190771683 118603009 568683021 583356589 21059597 133820725 709156171 20977705 481560045 686094085 329360987 553658377 440598361 964399477 795924601 931922775 88013621 486770129 316414061 776219105 97905261 919467181 830684545 832770371 44185843 333767397 300595857 251273177 393710781 69490847 687142645 439071693 720527059 609646663 91759001 731281935 969724987 813612431 289759207 705987929 558358283 99988085 156078809 886333737 590247257 360986173 825451497 202755785 32505419 25368181 836710433 672267847 851039497 171252717 53078287 784293245 262479813 836240325 587050437 273370891 837868731 138323551 133969895 432506201 150321451 525571177 753376407 509663127 734495331 912321493 775544197 416129215 919156401 127421155 550131687 634055823 62671985 998007571 814799227 395514511 526895367 633902133 876095367 799612177 884078555 272461145 849603035 560063021 565790047 933847007 316456395 901034691 138514447 432926827 726122295 686808443 262628717 238296551 554790789 699709893 903528193 51971721 457171617 24966361 851451745 390930125 35266565 969572023 637101347 105116277 54112683 405678891 184688109 331488145 168716061 272743105 599869799 5509491 251125351 333798353 88503875 819864503 313652001 453798783 99045693 640446787 684932969 24999599 894097431 759444801 888244451 427591445 805100697 997197353 72512447 173952551 953767831 24285875 670491059 56018983 364270573 242953445 469628669 80319769 272580987 472149771 627534691 849226195 518427179 679436985 504311605 881272043 412684527 951934923 272883273 688005567 56382659 554467689 361716987 697692537 53618601 123972345 393280305 762926091 551398825 314946869 84876637 150890283 514529241 333770517 528707441 504841049 961932623 657475295 925252079 122032863 789099569 99830559 720667867 661364939 671689383 923669931 553207491 610908663 306952675 639533725 654034879 51373059 248746785 741494105 784875117 47172695 64844963 154629005 646124273 473039141 867710129 352635949 787934203 103142497 209385633 477530227 984314305 361616591 605371849 715620071 599096577 93176055 783354511 915316817 823625219 582987815 315839835 568264905 506641811 379599737 845658017 372890281 828020231 779668685 919217369 391202199 85255231 266107851 926505351 252643196 690286753 489785059 715871795 877650321 67199001 448788557 920278131 483578191 179790113 124672267 541948381 390414715 974411445 725968867 694886679 652338465 736354139 239509607 269712585 665744533 851333153 336519663 550913701 116995187 721727903 858703003 814290537 40161441 671467251 647663699 775498449 413465419 411395777 265790405 345859757 615307235 30732345 419447663 849741259 190357031 435924497 912903819 363979785 565861658 494520201 178014245 729663559 391292427 973100899 353630221 143857007 922111373 146477297 967899099 202005875 11422331 873033481 943259629 404927569 443174137 717622023 587347567 295408901 467570037 654720465 441346125 87942815 540670369 13760729 569963587 162225455 898090875 296285971 591956943 942972621 731153481 514583549 535204923 502423199 836814739 470487709 168474007 811498445 799136817 889165953 140911033 853911179 924658493 737983169 597486915 217295121 719112987 696259323 392932511 661081763 508389497 90522707 27693817 443435657 242667339 879767161 641802573 428011289 403625933 9755813 51389273 579874475 928833923 147570321 72383143 502161567 394395191 898462087 542004101 45543013 394604289 290314579 827869709 939279977 294630717 272475467 543440159 834780457 449444235 978791247 213998435 396367911 438627549 113434821 546360905 468912877 7683939 621068699 204405515 193116683 986532763 322824007 73892263 191477279 926242633 735427013 998493669 524481225 883003001 776314017 828428887 990776243 524397183 556171747 419476821 677705617 671872759 772139813 572748287 235644187 94312647 655865989 214607165 478366741 650365211 603257255 523983551 684967497 184919655 414648509 967815165 656419975 841074533 872632185 99608377 61767085 533690395 484166171 849798265 356111771 734331093 126526059 564676239 670087739 434036009 616045237 631902227 695339649 699870449 843882705 465543779 387095397 392676177 869338395 80727723 7502571 803695543 449534843 988367577 601130269 788501205 141392989 651211941 125975307 803761579 357819 977861263 725828563 438141049 615348753 651119329 297636757 545753551 358468965 861281451 486795899 620444031 14834247 48101059 495651257 619951525 344295115 290219213 732687495 757302695 822778769 973878317 38156585 993097519 61070013 983512343 935277545 783272243 28845825 178936703 57999385 155333871 832720527 769749547 931190035 288177893 842391593 29769117 388859705 849303525 311228945 897829163 982157045 532321281 329218841 592853481 8514491 819590039 321072535 652856761 176257795 825535049 471056487 359126083 781438289 67803651 776907249 308805625 237966639 816799739 524158242 49470223 423695917 926199725 227033715 779162249 414161385 128477 560326367 158647599 150564099 823411607 711287533 16480399 915574311 941793585 842046381 68056579 671990531 778374979 83089843 69287339 828758359 243264951 284702239 707444591 524421089 159150259 779886485 851165695 441455979 775411121 726847815 177742805 907023307 932514409 310978023 487040045 599969497 463091683 754148023 849970709 241033079 252916071 462382715 394271065 674418831 367275917 467115137 506021779 549373973 286702383 582012833 961461025 552891395 756543601 457123639 173970479 453861721 837913537 67436075 875006891 85138211 145299155 857708523 206874189 232355185 907774883 268872045 252778391 188063841 243077491 466971695 895495887 536459539 741244883 182754615 628044807 710964403 722632085 932154901 332977941 132577135 10917333 429033437 171098781 320962951 745158393 8504879 952673027 545309753 284934059 371151409 145273723 903724241 229908961 206188943 731309818 460776865 840509911 961898883 637465923 103536387 479953681 737619911 633580509 688049753 59403099 276860837 597783833 655735053 539967945 417062121 185773837 849040787 51543481 320783083 46441115 746580579 454948813 183167367 730439789 485355777 537056497 591880229 735038447 271709431 720150877 998204597 195482717 409011415 154963849 11737769 803676085 351787323 340301115 260699137 397861313 223521733 798346367 331916867 49416463 613734433 271990443 964064127 773769721 954609407 279466841 753569097 233410463 924875033 740491117 805641153 864889577 503501363 827347477 689175181 321491849 84131351 472483267 639989721 418561267 886701975 410650423 303298911 541344619 590005645 45140593 243733849 224130809 931252187 918925761 339354513 50207851 504977005 331031737 837556309 43227739 291726387 155374901 668321143 756334631 764127783 737605721 486993243 467556603 591768141 192011667 343562723 812433605 309489839 58037143 620286335 404507455 284043871 692144481 619125797 117677797 942670967 122718005 267313235 260740101 364927769 253630879 531553809 149451689 313402993 71721075 843888107 253449391 940062639 312086989 748737015 115507893 625035277 226102547 668475093 910428449 407983057 158297583 706177707 90605095 849416513 551862105 273602597 895176125 507455409 527668873 388276605 281054373 731815035 236161029 771323758 232341349 446725121 754923161 573175361 25780559 798311085 63217753 500167873 429489017 525482483 597277091 942712135 959974341 32275789 92293145 190601903 733160925 524626235 516219816 233988963 932753453 153972297 361336197 799893581 699779825 670876681 838694699 484645349 791246633 672462869 935820641 654773545 392910745 310612241 589926191 957700769 216703959 979494819 889888493 255520089 205082423 532909441 985416501 560415207 864514523 814217317 3272683 256346987 685323693 542998799 11602749 648541835 692474201 70153803 464641183 79384693 729468763 28427755 571092427 84297181 444410609 564617673 977446345 764150277 779495715 566878407 897353187 399722417 787006917 271678417 761303213 578549809 831268971 952167639 669585667 269047895 511910263 946151893 106540809 149076871 363367697 601505739 388937519 189048995 9280041 666298821 932773669 92042013 535903607 46534101 333195497 622570471 33573501 227492373 763878335 601699457 33570433 405757865 271174449 910909427 497592213 989854135 896821785 70145993 564952977 571533941 454010253 537721113 610636565 926224925 125512181 447917443 197405833 990267375 546943485 51726381 732802845 511746359 312625559 633866949 77362633 168766025 485218561 874695807 251881549 180331387 794890175 323263773 205553717 721254449 829081503 290826211 471753675 831406039 884305329 549707937 458492717 676919005 774457685 72406187 47000377 571355069 439963949 553769441 314476693 998052349 938150951 594682279 238634677 650985251 553035383 654138861 834311375 364306883 79819927 579035177 655212771 168702071 36578381 969331291 896739003 613667555 966401959 625901575 938889959 393497773 172269559 298728763 9471421 290305165 453524185 162282381 763668575 934009143 971551025 63455517 95058871 58696819 976634413 177042833 156710257 134598663 896462913 721312535 638774537 314021063 340496937 879564645 272851133 405125004 682741737 709021369 923106967 96438845 582457291 578402521 76747109 504565949 661804903 235625491 108179907 431397891 657766553 964944959 858467085 54707465 722520707 999262139 269543533 57191889 397544081 581099629 905293779 460717667 494391160 653721793 367789817 560907219 562984503 730080431 641514589 443940667 324200719 152473271 127643207 595665599 896855181 874240219 135958985 790796935 178528903 440382381 579820987 937311173 66067221 301094723 687079869 692017075 33016735 812185145 121035575 455014551 962200017 914699959 477488217 486792375 1640093 272025451 152719131 114031463 582487363 965780107 187958335 132729347 859032643 7022805 963697739 98026217 434487915 664246415 644153489 319156871 61493713 671394441 470642217 372280397 395612367 860180247 10049779 114220983 268649737 368337689 534511765 538975557 460897901 81596147 558244227 103367045 437915183 470989719 255584243 539966469 174634955 395932023 979466983 817677409 333166083 18689427 88269605 421335357 521250279 672441971 707349567 243434305 747843017 795481891 619379083 808183839 208393285 75540539 774903085 57382291 168179519 545142999 289112841 833986141 806980327 3522975 649519571 272380747 75582125 974059457 464272385 785757739 114773583 947759091 528573651 753264345 410424527 805209459 463885651 720082489 681228669 393394441 986879823 85406515 692219115 418325503 145232483 242849721 559814135 990509871 454182635 39783367 602500803 188503543 224793361 953890909 609376187 982980413 506975173 123058313 118333591 950773357 791128001 241123929 807879503 378281601 453173891 830398953 832294185 100022003 442403669 638495325 420742065 414330573 30026309 794847453 998734269 343719835 227532589 573384603 604235877 533350005 757044397 138882771 680078867 696056055 458411309 11221959 125079405 461905993 715251165 291822527 421145197 483899417 267947959 522259215 377089867 38261661 960670329 44233235 928018831 57745045 468876203 495503913 425460993 641732675 585593247 796597951 361466041 843032185 145374317 743345735 393327121 20604043 577426165 164161849 715930541 235550297 428635615 761492759 125149309 917152583 196078235 393873775 88489135 308592455 305035873 411403983 894713541 913658315 129034547 251537363 306689153 744307925 342210263 905996319 645172719 151008233 955631071 711923547 478282851 56328981 446258337 193299513 272500089 766778865 845462081 957738869 629633559 279902361 90947491 901841 845064039 878595767 891120251 365227541 754098655 56245877 354529855 924183063 819337275 649006987 359938353 60629421 493867135 121852983 280894807 317721277 941016823 927705663 451714433 247691055 969363767 849644019 434955851 651268085 897407261 995639079 584992529 403296779 851930059 872887867 33963261 381014387 819707567 232551701 991687681 706223157 798355067 56026659 642132947 486285159 349466157 81167705 680903923 508297247 275987467 352973625 513272747 552090755 98835101 912116167 656288009 84657851 531589049 346885009 54713831 433544699 531848573 907269295 467617765 379009402 692609869 845395389 944683115 998385533 495960275 962373861 241640875 710856783 787720451 976742097 627708825 860983103 778402077 361233337 998364921 407995307 376145825 13686875 783459922 910816241 478532447 563632895 466753781 249016448 356616297 458376815 713882617 172762823 554786587 3333383 47064383 436856897 19930395 852161441 574183535 814239601 115887699 761632933 556080633 790743263 96164857 769080063 657446421 968200225 896973193 756750633 977700805 927350477 948243397 145499679 450211279 146977673 75628477 814974567 948876741 878054141 485341123 871035151 387041535 719809245 166193781 782347951 624775581 762464481 155169717 995076709 601768327 229030349 142549423 583681237 635788139 485416041 409101787 89329967 17402823 569783947 531294193 86052393 109516245 238857737 443807479 711515393 945525409 140506057 81127481 865502847 802988027 944523443 727304267 187045359 682985851 252719803 366510603 514170919 384861567 718850521 33527195 283811463 252973107 641938193 937979753 234631669 564827267 346984811 597874473 58741215 701385003 59333373 794865365 80287035 887036329 384821725 975355827 567159685 972039495 61172017 724036945 86356937 352957973 831269409 283625087 456656271 95595497 216869089 710694493 767456241 557050725 512804265 728662351 355875981 792814835 691567549 951887871 44664455 104410047 826918503 603630691 699294607 17038021 397870071 324721333 565578971 543660995 907851467 673735805 486020651 880293443 903363139 400083845 253962433 954272403 453615049 807113953 13472878 820537549 395589583 838448621 232344203 904465873 469273811 334310223 668773105 951876679 518083153 162529777 99142409 851194783 924481497 870730249 192617153 244385555 371857915 382899731 777743757 231598241 137030479 380213715 270392687 228875793 508367227 74928981 444002795 603953653 58159657 594052077 756853009 497540773 239338503 27313465 217790069 86645569 249401811 767218203 729540151 362318001 135574863 8986049 170239995 661931685 993063493 501754525 424207345 589606037 881699719 276359021 523360209 135107267 258602989 25789493 728914901 108348213 889154397 91421507 105259975 377875645 1376191 366793255 792267763 526654451 205677063 44357313 435090479 444681269 872741677 268822066 127233245 33048238 120209717 457232363 849529821 431821647 325350953 300162205 894662051 694717389 7837467 915827013 182948899 634068649 171877667 430852645 135690203 685441069 34514535 354667469 34926289 10558825 619824913 563185165 608256917 660779827 451188303 539599620 936290875 426616111 467988321 630298649 373492067 865302721 95301253 321394419 48458033 456784413 312482821 964462729 422682709 551301943 509244215 394499607 354412295 685700309 67620723 567005217 57293313 694796665 111209755 169410419 791095181 672022649 628811417 329166369 968961143 421345001 688201057 775071879 285801751 52007595 651920107 442957387 111880777 817167207 527915451 276478809 630487157 812915087 880366171 443295971 206045321 980952407 380042845 139836519 355769595 815171011 997411161 106320553 422912713 400142747 749592565 892404917 807891065 609070701 22726363 760873183 932296475 659822995 958935483 620225989 537969987 745266477 711283279 591765833 961465361 251334947 516438875 924443545 421052969 721764901 936267689 808143911 365825725 518870701 498628363 360592563 207246975 851029495 11842393 550611517 680970929 932392721 926071161 523650581 69169685 80924103 194418261 815008971 329408511 516026802 419924445 721186623 361380671 74717491 104363531 177903509 55766841 608225395 35526627 394738231 543233743 826131041 944947311 827443417 105898353 301366709 743207873 689131899 94848533 235505137 445454321 202805087 60298809 907031131 397583399 765818383 493008099 750109445 842445703 669330019 836186531 189622725 169498695 184622967 216498573 541636415 469026463 562170795 454297665 42064343 431096787 739099569 774507747 335417025 327935277 381030777 817857317 294132467 560469759 146978625 262955577 277569069 200778147 557420170 595088353 151191033 324627067 134891303 575278945 210152103 503528177 736681513 689826439 604077133 329569145 49499881 776443563 160529869 606657165 266454543 753817513 488117713 170859949 304020615 161707753 792828357 806456933 193035395 611416665 227055333 84136263 619312257 747257711 494248239 690367725 729322055 246249001 93855853 16383225 164546525 103752719 663899949 890064661 184264345 412656941 813293513 602864629 788067865 167896857 80353633 989757009 697449791 949986291 715749597 755404271 575662905 379903839 241821167 273152661 147795579 507935119 751076875 18181909 80840639 66394679 225550197 988289613 45157645 928485779 830699573 233171999 310700717 231938413 702501145 10393712 706311735 858314769 132864187 767792185 858954629 11049815 341649017 624140911 17999293 505112477 485147007 798337305 360406089 437736135 451564987 874680381 351477215 320278853 837298407 141350639 846124411 308600589 543736191 388315209 903263583 149287581 526339025 510347373 468316187 574899709 244937449 467148165 454659457 402875833 516581279 841559749 570018735 819291111 928914839 198921063 532165125 144416039 202362933 880131499 300147765 674433951 251210157 521571805 256957231 78667771 990192117 417557839 950330929 958025845 88166351 290837851 182219711 537336265 656917953 633709667 38977701 970671677 654764829 478099155 869549305 454435487 810318073 88768539 167148819 872224071 189093687 39082421 604769947 631203089 746428801 326654501 55865725 475424359 430876229 143791605 368716525 538749491 907028921 788730551 158199397 214590189 935408867 1537031 804283563 160033171 174363269 559360131 541976781 536913069 649520693 163347671 254360859 383917381 664247623 2541239 410568757 21519351 342211037 783023581 896725503 933143005 651067361 253159689 819905187 830934431 852635647 138216199 125476757 647496809 883896499 48100777 32370837 541906677 513651003 939757257 662463141 893127295 557936799 703219019 546321167 181925837 250533043 988284437 772459115 211510317 491137803 651764509 93903251 525655671 630501385 585529437 535858349 558138889 295443413 742606037 188891683 620446151 279199583 244253585 182977451 823210785 931619679 492340387 194524993 422188303 503821655 416084007 683507753 649638155 427720845 259782459 150151663 262405149 149707539 618740493 472042855 71059413 315305153 825248717 96825775 577374537 388855863 817287605 391402281 50216981 823779805 799270411 378657409 550350689 409586403 532167701 272511919 298788571 442988097 244083751 773649643 408866231 452390841 801558683 143957947 795911095 128864977 547992787 242363883 235164191 459266521 933680699 235677841 215302847 332007661 318367555 197585157 424969451 523560683 946399335 214697969 456177281 896803961 58875175 375552059 109678315 466448139 369076495 318898205 542431763 211035095 463871152 98331153 819118961 784309469 353456297 635494873 812581125 582180327 904866965 933823363 21423185 269568389 2983971 423431269 828838247 607542797 345690627 565845017 673444317 465253027 397564143 4063621 160133071 281751595 990121645 362251731 699672293 278166103 447327491 209524089 82394957 902571169 984208069 441497395 295972027 294066503 446877901 220434691 851333489 708718163 429381887 56096057 260519221 788711059 147451203 281559399 745923665 506972835 907188875 572197737 273247903 713936863 745127377 174733413 841567357 942463345 775999771 888383431 954395087 40908617 598978159 753537089 216017159 38186273 620037345 245403345 203466263 318296951 380327309 506419131 485358463 233049747 916154001 414919563 566628679 980804487 837019675 298206229 591281659 585255211 283982171 223764343 151044531 573793055 780485517 184050451 588270347 871635147 965438193 45936791 154725419 789703775 25128915 830828789 975175617 796282835 123372935 555724651 596697603 389870569 474748771 481335423 655089071 45467431 909086667 29498617 719212299 633271519 803223339 189087983 18194151 464197161 621803251 201779391 491909527 479162085 727109279 552549389 515745785 177902265 113254577 900210883 468511351 97232409 210706865 441603095 905845243 662578491 643515187 386361219 877307647 578318625 311144659 18273231 509034109 913998993 213821231 373925891 479546111 658244893 884067573 155550327 841506705 933581339 806684629 958540741 16386763 906210735 475767691 288191955 140470729 699943869 363753689 556772043 190723379 377969401 112860295 193123363 861483063 273303001 762137705 465067415 733397387 791984029 669944921 313316907 840921709 980050767 945359163 816547627 152955299 368088765 807764471 429174059 812318333 19152771 881491071 605251335 523893711 443730429 760387279 996940517 517821177 215309397 148804585 700854577 599768289 17243003 867521749 942227869 245992691 966172201 753432487 305681959 944760871 102497757 697209467 215771155 258370045 29343201 567182959 403117295 596377465 226025027 868901553 269510027 53484585 584188125 107500913 347619079 471390501 20240463 473729259 337119685 465588745 430211841 382461537 352781939 162378237 664213027 375817499 219699459 324740783 943272111 8173935 494603701 625297749 256036963 224824243 388442633 292193197 205699783 38294349 874932687 846873855 553695789 940247973 940725783 624312085 283890861 83577645 44086337 53379915 217032999 983954017 621395697 12555643 1572419 59625153 461594385 651134219 90682737 731345371 773364951 755844589 700290537 245662269 904614079 624206739 783555501 486587013 239850635 603348479 22547587 84656721 643021899 841756853 651803901 59432271 46216017 13301187 920813937 547428913 491686713 603719873 635094275 439135151 540498153 763603915 847388311 729061259 66635661 332517513 754324449 666766227 884898199 175686441 661844055 336689813 139246533 830775649 478016059 519743855 669656091 62116209 549149075 685770751 785192165 947685147 394970927 332294707 416645559 936049329 848484267 373035773 5362799 294796807 257238627 301969749 272906287 114194301 834027137 583467837 451876451 980766457 37430775 121787075 398300099 77889255 819817595 544723189 767697223 477046081 801094285 177548529 305145653 428377219 479342199 735093973 820145689 388217523 894110535 867252943 216488905 287148127 545858519 604233233 752024671 118109599 116641223 168911827 231433535 678740239 882624639 262106201 789869079 36689111 411237937 317963755 721265115 866135975 246949073 360920031 509759429 918946225 220592931 533811595 575385693 326238645 679635887 837265749 724729453 125733881 213028803 229425061 239126023 77017421 580756089 371686381 350068621 765437447 767425969 191290793 483563165 774446851 584076563 799275355 744412967 32823463 313700623 997071757 211274335 828661221 968377821 333120463 379468737 181202225 398112895 685464511 925730833 995726727 655965117 648839675 978298459 456807793 97962275 566914867 103760115 234946557 204515855 325373203 284776053 837494719 144230559 804953945 75029703 768344533 722414267 609824967 392907285 391273705 453633297 449481765 625304017 787030565 393888799 552288585 439771065 127448129 247182111 85693451 615354577 279463035 13182749 244354891 941829221 205664155 373603817 992632311 953666315 124699885 37918491 571761665 247509917 215617351 131323153 693117793 430840895 923878921 344163831 716914971 200805215 358351897 829190329 346715705 454167223 31468261 426569747 511630027 487900717 188019041 118801283 487208687 319847711 12493583 402408019 717390789 608822029 177959155 947138707 569873527 609694927 588917405 312130073 297324855 778297214 111636769 914460551 734156353 850928513 931836649 509792583 314525399 485699461 154352827 430909573 73208387 742445945 290210981 520254013 52187861 779922335 715955475 779119661 74420971 497595257 909548997 208589279 378819557 595437265 556082685 621248417 466957613 228468927 725042573 276226445 414031671 949700767 488655307 48673923 54830715 609558801 323742355 683642667 588163196 287222535 555369805 681421045 938802885 60736689 224644069 914707227 2039785 892965517 786211797 159927195 598630529 594359903 164868889 869641277 415100463 253261363 562046263 385582483 811139229 288068445 236121663 408010741 115697277 56716153 480047045 29160067 528848013 720343407 615100903 283532837 238208139 866396261 405820495 417775755 10068545 521962197 899098919 183588653 101693061 973423991 324476967 360431181 79049775 311130193 437990799 12349937 466471713 486486447 1641249 624764651 223184709 115448103 831930161 312943571 520461197 639293587 432068495 440407559 219068151 748214039 784807069 33302707 717597569 470978081 289753665 531224517 302595381 258520677 433882857 780287221 835201321 758858461 911520907 640882371 207352437 754477009 115811749 963429241 108388155 438660553 9554493 697300519 862316965 662126237 926572771 42527139 87319783 406330983 361136043 657868177 666954809 41738381 301869363 481401173 997418975 796533945 270558629 680186659 402316835 454315489 588668331 285158639 162752597 863585089 455522687 813328767 9532371 545620827 917550555 744720725 736111869 846462207 922251529 403905991 608853053 830644799 489726421 774202345 71822599 143716729 237795991 575854493 654469331 436640847 148733483 162398347 363515941 933779117 95854329 88809765 969340807 17396681 551977455 782655391 673247883 762301727 605665155 426274045 691531467 743604595 827197107 922900487 287509225 876193747 342779397 75896395 401722767 870319247 696038537 631063843 719321201 281596999 143277779 527357103 63255367 476955357 383449089 477437655 512580309 126124671 925148349 101157451 185428453 965166751 106705969 216130437 568173641 106689787 523879191 374464449 99253723 523207321 457115305 25907213 388851069 761091777 344149425 824481845 938738201 15235083 763432315 569977811 252473251 31376721 873151199 56244037 296995347 19130039 549080889 912987319 618118253 429582507 536851313 899315991 431669179 407671521 278902517 888484125 870532623 857008981 679264955 3094091 783226243 34852169 530375745 133214183 996269369 124088397 725172367 898516483 45125723 379554099 385246511 992189045 121730845 811394327 345164093 724373473 770580919 354651231 146384467 975519403 967388015 219027381 652782999 967203847 595254153 622156559 534305979 393964779 532233309 219647145 348701425 309651735 111812675 436233223 127754235 501365269 981748893 617246965 501276957 323658293 504575703 404478599 187714085 790219661 226940769 146813979 771745899 162191103 251129013 631266387 262250443 456688437 67417175 869190171 166274989 69000603 195493329 425335211 64373759 389063021 262194101 909495163 161757751 395814057 425365149 952293713 706659411 953289497 754382891 394266425 872909275 741599051 475976201 244076169 721910489 380592025 445343467 452913371 457709801 670985507 828632971 218742035 523861029 468313809 911038889 999710303 809577523 692755541 252172049 900257073 216027973 296241443 382448277 265240649 441634573 280315263 205789967 853513127 308080077 55495025 396248161 388053403 584683849 336659911 516382325 652435383 849817039 619059995 303289919 356204503 103536439 768791243 877926585 776373535 475849693 368908291 503250403 126890239 397912491 169521841 730367945 595619365 526399243 823544463 677336445 984185747 830528501 71555097 165309465 408318859 537236199 988864413 475580351 957070489 324936679 866940967 625961115 818719889 319291269 84616335 865216987 798295951 172809687 873097337 16397503 791699705 366638969 178599755 867814277 357977209 928921233 376400179 549512825 946236679 131484625 698454061 339102445 797349339 439541101 359239929 63201851 512798075 160390689 321808413 419757765 338877619 944171063 740659947 762366711 565860759 258584189 752477305 352911937 704701573 874925895 79959211 548319261 858895135 582839667 945851173 323219729 464146259 605909865 425406555 418961315 359647827 642997783 396607617 547725671 971075997 33851893 356864669 344446455 9760247 344935421 902149491 330601973 838213225 123970743 546858131 146007565 44905291 730222387 630915927 198406639 980248887 534654983 793367519 691924821 402491921 815528015 159369749 98532101 554580999 199393969 106193573 465338821 426590349 535051359 657507851 336063849 325926237 494163981 655217541 789532107 919546751 414983929 752905243 756263885 12062781 308009961 281482145 942240347 253396523 366230571 252252075 710556516 79359013 351565975 985840795 293098725 641222737 428367499 579119257 441535457 17789209 837135083 526716565 568553823 549340211 152674599 302731591 430007667 718084507 690340405 942746161 159127607 121844373 163760021 533018265 6080717 204540589 257374793 429747857 347604065 658306743 652653539 390138865 937789731 358180815 841003385 627724121 23211855 949878875 110153895 165861169 601232933 267098887 17110165 585193641 701710065 20518853 566687983 389776057 151900165 754863315 373116143 669571363 615819195 61950389 58419793 301472109 925474679 273691193 694137435 879798249 303027359 667102575 516576989 682220205 986110888 826865335 835759403 447338141 412500751 160916147 783782691 122162269 228563025 882931281 769336879 309160289 273144061 783100357 994411577 92645087 503825313 349301129 609317561 669324503 389869273 136112483 701296045 238343443 576573511 917263201 296869021 966790691 941038999 800561877 855908757 533311581 810434937 531826011 633589293 381365989 128355497 169446871 279882369 663154847 319736039 285994359 136148025 708256061 367808511 908120751 583124353 784280121 409677509 695101499 660636691 211251153 429024783 575537695 775285291 711416847 485552065 428749479 741341582 835784129 365252551 101461351 249916559 423508355 733548305 518008379 190803199 92755633 287984283 273122377 695011135 35568757 973676133 670447867 4404531 645086911 160725115 33223431 399618891 877982537 956343793 509694313 771676543 242996369 84476893 483157093 696124489 754990303 763444323 960783495 829482931 215578949 59300271 618930085 827659337 116877979 548092145 539875287 608431651 483484289 586958181 808138373 275285469 320392287 56959819 808764251 717437343 675961445 317148913 263371597 677065751 469653131 528206757 731664277 37562235 523161491 431944387 98461369 527651975 46111747 162452655 155537285 268868999 914158893 848312273 257328655 398866243 630918185 263594395 634699441 857625109 901811415 401880457 39000847 864067803 821918429 502990875 912591127 416741883 551739055 726595549 929080829 572246625 808312963 848256611 811126589 461346439 611917659 936545091 531766681 682285927 926004733 567661345 925749793 609759115 828752379 475669161 229589287 174399487 107486379 229541259 163160903 15422299 914478129 940019587 722228839 147458747 728813169 84505427 527990449 872065735 880822303 291982787 503081883 390443181 9758129 842346663 128757473 662839587 786304103 444266971 939559301 147821927 944264011 501687869 124288727 147217983 992045099 414738107 817491305 363550971 428544675 902610245 463092761 268547695 383180047 269675991 429048585 859738107 613390233 503638899 357137061 655284355 216927025 693783841 333565093 687345529 336048273 788759287 426875137 384357327 999828279 406648075 620625151 227075335 988735085 408175745 286015019 436922404 55571521 946069125 983782235 564892855 509205133 949540681 30783911 680987605 479013361 500828421 179624313 999618331 614562005 733277435 3814775 419718065 863667305 140004985 318596507 661759813 48979367 724194253 986223645 862675213 246993485 843008851 571333765 646299847 303039971 826833519 18946715 268698553 452531899 219528329 613046647 367474099 823983853 804371475 292216435 537325065 968055641 587429769 361712181 747362459 985316007 870016109 534792615 53806799 32853575 921230919 319675133 65597073 831164785 913021867 8852151 740941659 784108583 594370869 298231959 362881833 875891759 4765317 794325161 579456385 141506075 790648645 113551425 848350321 798374977 100923943 196559099 508330897 804583365 665947111 777969085 558407933 135847819 113646661 33401265 330441309 988614983 88299791 104621901 779462623 857653871 592808723 244128077 743131449 822540613 34404655 426667445 804539049 46429647 162775361 906625233 688823799 490872541 661674807 618063413 43000175 125996811 370744835 137147839 867769063 247946677 197194909 834854033 461311167 842387461 898513673 53342745 971146973 534422509 968184655 184140041 821173677 648166691 283902595 341490271 95440169 9846823 506230209 64153185 688178123 375014211 197076777 137091991 582982557 951106949 470226149 667035097 435942701 539217863 574117927 294582079 356376207 555202985 205458987 29241139 462020705 738674325 756397875 672710493 634952395 228626615 992298887 903559857 840895611 878390281 505719421 967868015 939528103 314946893 481706859 65202967 335295759 389267723 854330551 430215033 846916341 600551057 781626057 927054247 848131627 328147705 810057493 6047229 87130373 238696995 432380179 5653537 452844643 615161783 145373509 54478333 522531499 381849125 651681849 995863239 961840843 211125157 773904253 549411323 416151863 96176953 38284975 97334877 645717233 563323305 744890991 560277751 721950333 215726211 413132135 895117859 870333163 859978527 586997577 742647415 941925583 147671457 633317841 585496539 494094151 291318767 384106945 504420473 174927099 241507513 936327139 759906761 493550875 700528759 398845959 316607363 356806233 178381417 38496779 997172397 51133941 674000793 497643727 785856147 725575351 428125143 917297981 587843017 28918249 946458299 811183431 895705901 935107687 516739235 562527465 493791969 403363723 584334779 358971685 139167059 619425853 898828527 158700805 969284663 102207465 970062587 503039129 810676615 738257289 171364191 457064959 952165001 767239833 31340383 171266135 855905483 89814047 626706705 909215947 325306653 78535083 496674377 898579855 972243615 460405841 486798251 19127003 275706805 781103023 571285915 699706353 803418889 454830317 624890187 815185439 209332881 955955643 587496885 447809973 325816969 131937611 364986007 78912779 900991091 758432093 224642939 241246599 427150367 701619513 480451247 178977425 810120863 949755563 572990029 802426525 905824079 274529033 714199349 982017571 837393109 154567733 477386767 268383911 851594779 240467855 976818251 286968755 440078679 522538763 75039011 762074583 164315397 41874973 718890645 127884209 202433769 910381763 811270761 810187489 186775823 280031875 842980657 886360849 139343563 70986603 21852485 966365429 709411771 874877717 981152197 16826181 8803521 555049369 469964185 60571589 951454475 501009571 292609137 473416767 310381835 897503325 921587141 127986051 833532799 752102527 187868631 636029039 156638829 194804553 423664301 915398883 521989149 287338109 117220121 524436169 277668901 64832109 952732595 381234965 636473955 942294767 295411673 520167615 967926777 936324191 724453047 976948683 587348053 342662821 40460347 463723587 331907115 480091695 273171485 391033143 435695735 164143859 32157917 778862021 446806907 871270255 659987653 78738957 312211399 6812585 96753381 826817081 477277995 211596847 527713811 458631549 633768905 278585625 430155763 437236497 261870335 904638725 589271529 755479865 473974397 912357401 720646185 508047423 772924215 630171905 597520039 404982133 508155497 896594933 310626345 786380851 924673687 982473141 188132657 683848415 647728269 681947781 180741397 967486947 568147551 856438067 649539817 826494125 472321641 406215045 402723983 314149565 578783825 781320205 842849199 561038481 527822851 491168125 534535355 369473203 791341745 508049237 883093991 652111033 881372121 529661961 442356791 18003003 216120895 64635547 177209971 497639387 983745263 905731473 227328041 949531715 833155133 286197 412553395 744398631 921814215 714536545 256741937 797391935 863570543 113729011 326694539 287594063 514140515 683253585 640179825 366563873 571641111 627729319 412107357 606670727 461046597 237438383 319890317 525895771 417165555 815734947 13463305 975227263 786735983 719826253 987591843 407838173 475244361 658794745 950412275 708110185 99707233 784610943 179883351 416799259 977106395 693567291 743268603 869437689 415501601 360422933 648375757 45010183 994505449 528910971 82192005 837487197 244885805 961027427 430619813 896704275 97585973 504296011 779074931 451807307 530603657 343384123 868573441 482320175 452478977 422247613 686070565 184564723 745046201 786321643 905168003 312187601 781825297 812647011 379430783 623420681 519853499 631154251 367883597 679336423 314599079 257946703 757301475 630857661 444272147 770571689 451513857 255072995 17999235 805436435 680644145 990206657 372268227 762744535 567297475 443760315 976221415 845522371 831806669 178144583 510343499 129744937 490073649 379086557 872353429 338438125 224886937 657821441 990043569 953867377 512371569 85255485 510509265 42848165 780408309 432690211 852967027 829267711 377422883 817937997 942454877 193708669 55549893 730654557 486477975 849226149 233589609 118694143 975285367 977871495 286378857 602909155 223334299 288788151 756997861 794411715 188651749 470280277 33397957 705989987 289628035 408441095 465836731 40034189 564510697 762196219 995682875 210190355 915440849 674942437 297797513 406642639 365788227 486572039 401526957 727171235 223764615 90417445 285205621 921417339 715856693 842376589 855767931 921173063 918536231 113511191 751795485 260726529 449289347 885458975 692512391 395396781 704197043 676931213 1598887 37608789 859821677 779814609 557664311 965415947 559868845 974072541 965186227 929814505 67666357 677425969 523733865 239211281 833344789 395544531 550447461 111938479 843530143 585790291 462756735 724844787 290924913 358468549 684684123 484600343 984506349 143478729 905722975 501618527 96795839 184307589 652719289 826442005 29214941 825870759 416844389 188229259 203196291 473748579 901565987 146765595 279245621 80179835 253679737 377907497 831957695 360344115 951624889 106384155 384056887 517799001 364660217 395093095 175835637 333680965 220962845 699268231 446997921 475413461 130158281 437307387 348796711 173801069 134520945 494250831 876818363 759246845 57423177 997175829 15288023 666203387 355817047 752354279 95625025 911001703 26558559 238046055 978051079 189035715 728124657 54638913 516021113 521187105 775095655 150990629 673913911 564644885 529484257 43572943 126457893 167091391 791434313 194640127 666090861 743973829 35581771 938698881 523199363 539906133 192888163 263711527 433475111 627184421 422104015 376606923 964852827 993583985 717667735 891998287 456849769 39647747 413333135 702408351 310377961 231804969 908756043 951426987 38069941 943747767 621574957 483527023 230983667 456012043 108641629 725833451 348685325 842725903 116737995 300699435 978590393 250699053 634550063 783207489 967549939 195101533 165169419 562013255 248348415 890775581 144427173 234260063 747862377 368992885 552123919 828153781 704087557 667766257 905679137 514513529 672786929 9450919 734257787 861642471 461054863 876254521 670173317 335709759 178235275 888274887 5977199 234150349 226483165 860621573 694548273 949060579 114102461 728946215 510643853 622442717 971118513 750552811 190233609 474939929 139562117 34860183 542213111 314263301 269779023 438654713 947436141 256885777 239221351 956999529 667046991 650674103 311139191 697127365 639538753 220106109 508215399 451625841 296484279 949372649 458204011 225533023 278557671 273160847 831015683 53343233 59690193 709930761 881735407 486740567 935578175 563069947 386010941 601826537 229904577 15140107 237586243 507276227 67808941 634569967 241433243 588880507 682802471 889357409 992246315 656166707 909963027 382097185 588187421 207163275 648587299 744055037 347540455 991232439 986295249 521632451 651872069 800379243 317076571 344870223 763248953 4035301 272419275 220939395 901853203 312668651 140422383 457472075 607712613 326563021 990580835 352532887 646993163 235154270 128060803 939164515 385845803 696034303 81242489 126989743 246918705 183967383 70685237 486883977 411846095 335628689 961980273 352792831 330042371 813808871 380178347 272802349 693234961 980711187 287471915 176373303 878094213 977196575 75781379 378707779 290645811 441657495 560274443 955058313 409947705 153141905 161820131 108505405 55911929 981051567 764087283 159652775 596589089 197886739 212226155 776699405 40520611 771513451 150609219 244672963 116123581 399617777 293580605 982557733 402021621 303638369 513829599 260330897 708528147 940653059 804274043 628283509 557485359 667754913 79498793 255217217 540655777 349228181 207165129 149161585 439950355 543719357 606065921 391048581 815325549 364064127 831416645 327596043 323419621 56550087 923357643 622607761 596959989 401503757 500084117 284649395 486310757 539452497 804772201 335798037 325436989 772476951 268476633 924245085 625486805 652136045 571868475 65949507 391645383 597722089 829794995 892537725 905344761 778482093 906597157 102727629 240386197 927024219 919493957 397439231 690357521 948732195 345905545 226947815 96598057 951883451 193182513 329857371 915372769 339446881 958063943 84736321 365696133 887014619 502806937 715310975 783564201 680221049 365497283 658773005 255007017 301823759 956439585 682830561 527305515 30120701 13796061 866064125 641213467 632494119 309140713 622195567 290288043 325480447 834852601 270775877 475256281 935463287 969025681 815832987 515802603 632344081 235160825 930950293 664366953 391064271 604421695 498189915 620221225 610278213 528874045 594281247 378890313 73180803 848903571 777059101 927070507 837119533 347405993 334962069 983893117 850064741 539322031 217265109 438887475 678778843 242274463 565371947 467902599 651642565 61405239 8696053 327084287 529631713 988521215 703519633 74001769 743751285 689938249 239452525 359048917 887698513 143706925 423099129 705602725 124662985 559591307 955090097 738317175 600512445 447956747 786038807 982605371 473455763 671920925 789836467 599720229 973949239 855926009 331129115 906227377 777640739 589677729 725468133 115585697 865134673 562527195 60997303 47727365 214208075 495430457 961321784 904662319 99765023 539841809 504330269 917344955 846905951 114658951 581018143 696647823 257516079 918356095 710373633 106330583 593060401 205664429 477841547 639902469 635306133 943839367 342332307 684544727 931484433 165538895 879326959 300744017 103363555 95877131 456453253 506751679 613752019 652837515 305137213 454325 730492459 750101099 916507913 965201681 822033863 451020039 763961829 845679349 68754945 522136969 844209875 717222349 357046463 116930019 466724315 833243217 186785395 501468107 726910995 754581881 34037007 442558401 740437649 590802827 857998613 75706383 857258875 273704213 101253257 242645443 907150073 493565415 445149177 821404599 757523005 453527073 342076285 349100427 587262595 434608933 114150835 708071081 312361485 619046049 762280127 60220221 806933797 735081353 423493457 398270273 450755355 388741399 773456799 969100663 400753997 901141749 70485607 690750567 843572761 242641543 354616817 716582751 480506861 172950341 975876873 834554745 565056571 949902447 60827141 869400213 51135099 358399907 547452869 705403483 5715761 525164241 438337199 739468603 679408357 453899565 464526769 215230829 999089965 904643123 706017087 381133811 986647967 656616615 557758555 742192021 39802081 859702165 29349769 633183713 552908187 113913681 114526167 23437871 715036545 109199479 381481437 656150179 31618635 61372653 804691129 839358243 446241979 807932639 685460751 179929695 183829919 198323647 536431119 720169679 780336839 562622795 870307439 165659571 641342987 864781447 211923823 930545685 467385425 494069441 927030737 439778757 228017793 76872329 908925671 101208155 203933839 833794751 519797639 353672757 322643571 509198213 247683853 876770175 5713199 705475913 919922273 267303717 273608657 859385789 372821743 146342883 666783849 195645153 669907889 440444217 49967375 972477941 697725987 114193515 611377897 598939271 525292363 896521103 671836959 771437933 727132855 885070457 796821989 436796865 623261567 879025101 325622643 123502569 831645505 322276847 998785805 921340559 792432416 31676945 685729787 844959655 659192527 687064365 770236563 827517297 775026051 967845633 159890733 315212143 811012855 685761303 171248937 231338859 296921205 169913789 895201783 933717629 143053769 969264909 377632259 283741697 541675081 159821799 650438603 640268439 510697941 322871539 802305233 802031921 622339027 215885217 145098399 991635967 813362737 54479659 560570823 366066559 357997157 67986319 686463713 897552757 298830957 883992725 806892947 344761837 636967887 337289423 441115012 243595835 458073753 969910421 971571051 875366397 136464995 924509959 716431869 507844629 142587211 943006989 149342975 505513391 185538293 778487383 581822011 102683971 357983635 575285341 131015809 817313673 522478295 619642721 24386735 568475783 684308225 545814889 321468069 818468489 544597977 759622471 375464013 630105893 590577067 740609427 51073179 7823925 192864335 194045355 502243975 825800925 607646241 551516347 706769429 19075211 221862665 654048433 969791823 197689843 3484021 616948037 509513543 920523791 140046169 943292151 12884757 126531879 819163959 129889297 394469087 438584259 460711189 153968035 724842701 927502267 755471229 733008515 500092435 916947241 528263817 608762453 356800489 519653747 460452567 195245693 970388627 708660291 850315915 534510895 412297819 730830991 820506711 355586143 562138259 103831955 79321197 874304723 496024725 755513297 709829519 522017039 887195843 469132825 467424255 310949475 178059143 64027773 383832721 386247145 29396053 778001243 754650005 761269633 290887333 162229333 70766573 357763797 872637179 726597463 835101695 940127313 757326305 409360791 370168505 222389807 264404713 46104209 782242961 352529267 268110251 546599177 246814853 383164127 214849741 253195277 685498651 993353223 443504377 894842349 242622819 665262147 852532189 630913865 896438257 783641523 476597049 366535171 134483941 490888255 247452619 308755529 515477989 91209879 357813343 773746573 537846557 308751669 105131205 114931085 444105285 728694103 126292187 498968911 591525021 906664965 961764225 62341147 587415273 513798417 470066595 821943945 84973175 580129299 609718575 867977587 933877791 728515945 527741989 799930109 433747261 942101311 167724931 415485333 607493305 377965187 496797269 406018799 685413889 696969709 977808555 796821255 58911243 393156863 53072035 500214559 378069589 99970303 883487069 359137479 631910885 575204863 634906629 887419601 338747979 857809877 622581451 120803929 469086363 790522661 812518889 204319685 890518645 700321875 960935587 666910143 975060223 353098899 683379779 427681341 933367781 741861083 203636507 386479483 19749473 429993195 569636741 93745405 276935725 27231309 482846947 86771343 555964563 297691985 815516319 662726469 427217247 167143949 290487085 647721597 331832809 172760931 261479175 740825817 613239821 261831165 475193773 774759749 102966581 191374663 361414315 131951097 702042443 961273469 393653905 268144493 83696071 999600029 410655229 802988391 849109671 401696881 400125583 150591987 301907825 749284743 454864371 782134375 658576437 931302201 744183001 518979165 45501575 739381927 599740411 302555833 382445703 542976185 175328541 515937449 367505371 643054881 835452937 666675361 555320495 441215827 662807441 761873243 422307517 870154643 113834639 178077917 918717505 730656233 62314213 258504053 229845247 51491107 166149759 853095093 645148491 505464795 193040461 808323705 669096695 133350769 148044105 114456549 187943009 499948811 241993591 5573225 727631729 181035677 427776737 531004083 230589589 474197983 549321369 86078917 708264899 949961037 398243257 329164257 576889723 186234165 950656101 551365523 92079039 880769187 717494467 738400431 624057121 617484399 166504969 563070289 146601909 629986365 1627505 150637279 472177179 99616115 92000571 161996549 377306745 326963775 134982579 606882485 25074045 832693917 351395883 164651309 162854235 882173773 570984957 62594289 975630549 51057877 628955019 174908109 146113583 195052679 273945921 385211093 206041143 465111929 412109453 109272423 640390469 311075727 142818031 781538341 319723063 28790381 941716197 677290748 677126513 348254855 925718779 753364769 482890723 599400977 555171011 959509009 894782467 352086033 106479575 426270349 739622607 887300427 125596891 999626147 330924751 814783823 85696117 281058729 675039503 347691895 489750619 180572473 696816165 400781795 990806599 922781239 149881137 488202877 246942457 383737041 805427929 931898353 197201725 722389627 980563531 281922235 322055397 165902577 447214139 855697433 415888331 954284853 772146667 463828243 677435091 941412503 759016479 427836797 478799587 570310569 688803879 452738795 206297073 963049799 730253527 341228991 92126199 301510551 235780493 778256929 314515445 954121475 829735729 542825729 50975991 399380801 518633267 451106071 766059791 426587725 816012933 336614373 601476183 421387115 636760231 816790705 653544947 153890343 872489121 123236237 52873993 779531605 968348159 687702609 640132047 295486481 892215255 714445725 290485887 344921793 666335177 612408281 684058713 257015825 908638971 478541877 471920299 251717619 604533019 894892457 651121091 407955109 557474143 112511479 179610109 21340587 761232259 363549349 38786747 996223187 384325331 503647237 692019049 195158829 976585495 616288301 528447095 831707161 911230889 40439297 770075233 817504825 296500839 627602981 857073831 598817403 914896053 787301901 582919381 257798931 561830019 149085935 680486269 481508475 365487433 935035083 104481593 497078395 720692993 213664619 968583085 818393883 565238581 420051295 502194815 659391411 920201713 251944701 768127591 763614685 633239243 770553705 163020825 228091005 600777187 283692423 203238237 988651715 403215071 600253193 364715513 53902109 826179053 339665257 780958401 272437325 961123523 442934501 588746383 840943189 701890975 825445255 942234439 557225857 326551623 505464863 484377807 107533157 236372745 152077635 446320671 931077597 214292927 542924373 673143851 760557583 409218753 344632445 924829947 69762917 125792251 532867499 328445589 377866389 575138775 314654105 463695885 99735707 307933261 54146757 601464445 165407675 166282205 176229751 594805257 220050561 623649417 206976193 578618585 761897667 666053349 181412731 439849503 837539481 385565441 285177157 333159703 676974955 283707263 388921223 523721217 464869605 71507589 345807985 66786601 272304123 301635777 245071355 958715363 535050727 213211241 739502311 505857925 742851887 602610235 995932605 784797299 165292193 310786685 971775945 658659609 791780429 549662207 328697897 83917543 747856019 640030485 163484347 338430809 518558485 864985247 739140391 820030193 386980801 509020417 34824667 168739383 508083147 5364013 546806547 375620799 2469551 241683349 252572623 466872867 416241967 192120635 540198101 593219335 482468443 446899361 78236599 827277331 136462469 800954587 987698123 936328953 33516617 407978105 313474869 76095349 982145933 476999325 515013081 783103559 24802939 696352749 435269227 77172797 610681481 145300887 663564641 517531941 359343475 577092689 634903035 460725979 866978363 780174169 494334275 731834947 472845361 505363319 92190471 269307461 834682857 173468661 34220259 101517523 393111099 60812207 146903347 225611241 398659919 504059901 909745697 664647303 35176849 124942283 359304863 314256827 920918707 91428995 46868321 242770835 523539123 7302431 175612907 320602667 79801557 101269785 203846533 83965095 211432613 632491387 488013885 467421231 828328697 991264209 58906093 6817525 65883881 936823603 836413749 850262325 999449823 304946493 255136381 938163249 917321601 189174553 308874999 821374769 540857545 748527217 9530775 538225288 685135599 723504253 836175393 149356693 377431419 241176315 420477979 879527091 76727349 49211697 23564759 614071889 141277237 349978863 791945069 876235745 681299157 57551753 840354237 776987611 655076539 381846751 678743407 640300481 913211601 898628183 76318195 752515361 757286221 995842013 395008641 399554697 714642601 838016235 880405275 542064789 265412269 551306107 92551559 777570025 282583395 785020183 203373143 779956525 643921951 374236619 776058849 126782995 663627389 893235503 256760649 777378391 581845859 693364065 455542131 374443963 655431163 431002629 957780499 923526153 435962043 382293835 152476831 207939601 882404447 752337641 29878617 278011567 178429163 182262045 610566727 702663623 496558763 903689645 683704889 963211585 639954739 568447209 33460683 332764687 751898209 85200037 290044505 967708461 442456919 192583489 617778957 998866589 476379011 181238947 599089625 488013929 603874711 956012857 104710259 467807649 990194835 842765559 543149915 887032163 554111159 55450719 756322523 394738637 864077969 676526453 953010689 278962957 684231671 777740999 667424679 670314069 324921089 845544045 64130925 20944605 888616729 291597061 557912765 539939559 803951079 184554675 83525059 235967681 26371679 177691175 724116089 642737593 77683137 822424471 760148897 969708333 479931535 920286657 20816835 797133693 177550227 635122925 339862061 380310291 508205285 715624935 738353145 713864033 18879711 368877317 538375943 356781539 23552295 659004711 54559487 542521627 653626791 508465331 526407761 696562065 367305621 282813589 519788853 67029211 874603629 594701639 373317293 641968785 557015795 843437509 352412033 266898259 786052657 858205845 980836159 524360143 954394753 194277573 535733567 629395895 654337657 219957485 510849445 871284419 707516417 613024299 177932375 612267959 942811459 203376419 491595269 360577883 26482103 294425861 313986343 597838213 459020053 63618695 241365757 327728139 365047395 135248105 324991121 310527443 827713261 652600045 361146803 484616133 697848135 774834661 775667707 111616469 543183439 747552933 496863175 798198779 225157159 341995663 696613187 795258171 192917821 844348035 299522907 121855645 30446917 893959669 659310795 216984119 586865209 101746137 929770771 292978208 158256991 431045549 44904311 336885114 801631301 409810551 372020237 269324147 316179901 147427269 722198185 905931835 546416355 810729647 498157551 911035915 3214363 205337811 610316355 321262631 164282899 672719189 628706007 829328345 839807679 464126949 554488997 25985905 132059739 136403897 775816043 616170829 51930217 886923409 750278835 891607757 814436025 349363631 618117323 229682011 501551709 248772325 552656333 887217003 890572977 113148297 123676313 920977781 760257115 192936311 758504919 723048189 177422917 698568215 637886711 168666507 689250469 911543127 892566835 486006197 915608055 829252779 67225737 245079059 723534847 531294229 637512385 510330949 376378057 372376347 648753261 932178427 953853355 465354183 242767333 261215201 93845565 700392883 619962953 459929269 921881447 210150141 733094017 719462457 957945429 350931273 256886845 944063543 134539129 39233735 316507381 922368385 475329425 402172719 538359531 647492847 552801443 789398715 10466341 212528231 457743095 655154485 73400181 145060307 248895523 738964713 159181683 561967137 725268997 581703597 389063037 549838415 48845761 183485923 867006143 554659935 209088703 610388845 425359143 161725531 925226937 485862073 176866925 383674197 675920809 107746240 219233553 625833575 343051473 86142721 68682589 794929075 852902337 155961471 394891873 698621283 812043849 680393931 274192627 916475049 250386059 760887801 750447799 943361731 195916261 786683561 75459345 191835631 786246151 269419775 598773301 888653431 958708709 23807917 485921815 320164785 997207227 414431461 961841533 927798517 619171597 470022503 174068459 577529509 787496871 384585595 462689201 576223019 789424285 866002413 871859433 338605563 128197195 384722709 829817971 415440525 488858199 746460623 146134009 152007525 257455277 445814403 224275943 108061965 533759103 973850655 339636857 739311895 994461515 736480537 387704493 963333917 39179733 665191023 820220747 163427777 474407721 562308263 884856293 370543533 959179675 760379601 59198419 134459029 687839177 94440833 9490741 82878001 301286805 8789463 910960627 277483845 960430381 992771703 985467069 678465179 76513797 515298451 348134925 315332613 178714583 829995229 264448801 453556059 394838440 508601495 939161857 205923205 58703049 199551621 295431551 215817575 41979335 401893365 493394483 129994999 919136131 407341501 856367483 206284333 364353569 945225535 813797251 61164045 22205963 171093341 171580729 286736801 400033015 900601223 427679573 805102843 945267423 211308723 5013849 648167989 840339211 428089439 70733963 650719857 333276421 525206929 514232061 555621593 693616031 337398745 862866053 50175393 313126907 373787723 796491719 648584449 221995127 748142727 154519847 859235389 155847109 480509361 130482137 350843551 613164501 573560187 193755347 205873785 782726373 947156247 372955093 764385317 154125433 841239623 708499049 730209029 626554461 597864527 913640671 54025861 546155429 158044413 584350541 491405587 725805997 371895721 888135829 297911087 490362651 896496687 336125281 532010583 100434139 491540471 156367645 909640727 921839903 898560239 30561029 344142081 144275557 918175885 541460247 473713071 868160627 233678545 481183517 157471171 975514961 440793917 829694885 641777383 409641045 251099619 126075657 450420687 460010269 812733527 498484329 76883252 615569549 502858425 378181805 455666905 697945549 117015215 255185799 846179975 852486999 593328741 975495787 330727185 935997413 510550421 409675165 892529489 997056377 187927161 135827237 588750633 283641953 756046043 267524049 669698691 11632179 997997833 581327931 321714771 177361609 296874197 507874243 514355091 19529033 409163427 74441103 740968003 482985757 993815637 932033939 660900463 567945467 788059 947433351 912532777 716870111 130792619 870828007 226756491 691885067 661763523 270886145 349265335 155293711 737971627 683339745 474277335 892510141 426747631 233870687 433690399 609252147 957730725 873773855 974614729 859827155 340938349 126349447 179612949 258337097 513035117 175612357 649747535 429529227 122912081 52436695 224097737 917727957 917588051 288223351 544297693 24772779 5025071 510413617 815228397 383270105 168150059 549167701 609743205 972059509 638047253 171563769 532355765 830650583 767852357 648241409 599147351 35742377 365801111 260608529 519310289 877494481 844110965 575233181 389928105 762171529 649444809 561635035 570511219 541702473 964006667 64977867 808686025 724939735 352450361 934664247 418055757 992288577 139416795 36309421 426595753 585479639 128083197 479992711 494330769 940961337 575860789 419274215 216146879 106899531 437552035 231906481 320636147 559007799 844127213 26876567 819500537 718098801 235778111 486298643 891527843 403383737 930816851 218543203 690685645 863877137 465750117 45167247 269521749 517443523 18237499 789182059 601042215 130419047 286060067 678344587 357414967 975967191 788435189 308066385 413946495 711480121 293090831 491249381 354737919 606639095 801774677 879438391 720117445 100102599 707639607 566878975 191656927 48294565 911083949 870875839 254251625 869785557 148424497 635521725 682711429 616528611 411869389 537364749 83539039 603430563 945957389 681602945 809422631 71056435 999308295 873763007 686751767 910892021 857577051 379724589 816030837 598062741 394855471 809492475 38862215 466572811 811413297 836920353 844609441 321664143 119686805 603039585 167034141 584540583 389445661 58081601 648320349 940556063 229264141 692581907 820149709 165665293 894335285 306951661 437783773 582273481 940611561 997126067 631588105 122599165 451996423 375603721 32325585 792598673 447180793 960625763 520734913 464251065 808691881 282487799 874531437 469896693 248434831 745305285 715063147 204941317 134800811 322821783 248040287 154019065 507523967 727540733 509166581 179771425 820993565 846105421 571205085 398401821 22380315 515928491 302254547 231582417 116980885 326382587 458491799 848356967 735445043 935692271 437541621 852810837 265761315 477494017 358979775 158574423 798858779 351813999 144920017 763566447 263355993 882542403 246576137 125985517 784341155 434264397 344444245 317321059 558304583 450858531 807668901 923083949 945248797 51380519 455360245 714201585 689594755 878765953 364610117 932610203 683746141 264873249 35373217 198587229 258288669 839974337 542336795 391931701 743726517 400298463 77324495 928430183 798590631 715784643 287773147 21775743 493300469 964279423 109784173 302248017 862278961 186008811 946472373 808132859 785588081 189156519 488187631 540548319 625233 500712219 810322011 708298155 624826873 272288887 490678343 359198801 780867351 260501173 996539393 113880079 400679393 668217489 971048677 582367083 923625237 689919129 36517207 892071212 297154809 204440601 232917437 81539437 719063133 205798441 117324175 102583429 412381589 179291821 390380609 576706073 188477313 959619915 62734427 424199191 989900933 661550193 46205539 615694259 783886225 217753693 875198957 466132583 755985181 579651593 414761621 105055995 931746339 522319425 593895161 905297527 812739885 478468245 372182471 717529395 248634695 905366619 239940783 948614601 142096649 566438839 463661933 858004511 575889807 434750605 941671107 41252959 631384449 60908945 380154233 699794431 367941645 814872377 445231971 437430459 925096425 74524869 90499677 590541207 74502739 555641151 719548229 326597599 623675409 174057589 286738697 547427367 681687667 597634051 574371737 699587405 913313357 588152389 603133681 680630131 627104511 135233381 336993299 892465413 845790575 160467541 670701575 102895545 745391369 487088585 688667873 755903883 957884103 204216133 307757757 311250881 29862435 509887505 337210553 821629923 26368039 211207227 265350659 27410119 320567391 335143325 391478477 816924555 482441699 747018967 268279117 586557585 61690959 784276561 652379851 299750023 882355403 398034237 935027341 225053537 54827269 248074383 528768233 23679321 859891763 178524683 784965173 923467765 310117395 356217143 496740311 833556739 201493485 681378917 128269111 161510293 698150285 565855149 672115399 915845895 859560009 668096495 33623299 863100413 132290049 36214739 206043501 613772133 87674905 476272329 464742285 365187443 448271491 367446025 976580087 252514467 435845809 106237333 604805447 611660471 502856869 356445491 668775707 977220543 911797731 806344565 532498209 855189773 748774009 617225905 738444811 684223549 133230591 640917515 326526097 718874677 279284369 829053031 901694581 690972193 154895831 685804409 153749893 557639795 78605825 605063351 19292303 917952489 742063297 597652067 394594417 955304071 385411159 452359299 908610825 77482137 21267081 206444519 594624581 484046259 826411943 620476715 412272407 649032115 764745605 308222891 953741943 412448187 158144643 472789137 129700967 663162679 7143047 25233871 663427317 403599071 739313149 242246427 469428015 441617323 729892063 447018229 602174515 453150689 587053481 771635623 429249567 952374287 794027105 9177663 898723617 619175429 85598613 163377047 486693995 322387427 706403677 146474831 195051317 260485387 323338837 4082897 159653827 753201451 197340839 84057673 181640797 408103735 206857981 842744755 407871577 860641387 197674894 145569229 747708173 327672649 614840091 576964895 6640863 191117473 315871208 87333627 116175927 934527619 211281091 977405049 214043271 759776081 394144261 363698553 240329547 814598313 747084425 930790307 498907397 47601277 341523639 431160679 618939967 89862653 302543739 654855423 326521993 726938789 865343311 381968231 406111105 992093501 794210095 904524653 560532423 847782607 388232097 949437085 754138629 671060399 737366963 57836111 609719789 67070587 153260029 142886567 125284667 258468627 132355995 8748939 357447345 530348969 368914231 408237483 815027993 339347373 675972091 564311935 582483011 825722077 23882911 967531590 752306701 133229117 254774369 380547853 193055061 189180699 823180809 255390625 897104139 266584583 45935843 593149851 357114651 247081953 285660101 118611801 804887939 817907403 921268751 476830471 635529029 844351795 704837287 78982545 484558699 420158667 716269819 23959475 966732293 407751059 562612737 95315181 232122673 268896971 713021749 950174853 467077647 948334081 27636129 138960011 943321033 788903435 551107283 124282585 71387281 616196611 302625759 359222289 503077027 95599695 818968675 951217815 888102209 207764889 951063945 862843805 178347445 854675925 264132859 727358493 571389521 753855811 947375601 335865813 796896109 251985765 404768299 474988623 613497455 323650565 345678059 62067161 787431615 485205563 312287747 752432269 618356433 593689443 231106761 44411723 483687709 40972829 771889945 603218107 43089191 34732379 218468443 592666703 473540217 165101389 134076029 499296059 207755171 212253297 388522739 286172035 55850819 134263435 629867455 312123629 853896953 870530983 225779301 857102859 167028335 665320729 289453813 540557621 204432985 194563199 361096451 178054027 780096367 425646267 470556847 912834549 36197237 259654905 607302557 49031715 767893043 231552433 708985341 728030093 912602239 349105051 107427207 775410805 79548721 586093757 895541877 490572513 604821547 341762403 680610449 552868259 243306327 671453987 429729319 931178323 886543273 222014423 916804365 893985103 218323481 654518947 390218659 235556547 218547371 139925237 21332943 979621789 799553383 21055361 828131327 446833045 967312739 795688769 745827881 184285995 683934647 834672253 98342603 421075113 130048645 378168253 646191083 404837151 540567031 100978905 158890009 16206691 582496065 448736235 345764201 421009177 193990555 749813337 231274107 826178981 20725577 831480269 465233779 279846715 940895893 446968637 522426625 265792465 894687951 613201893 824262493 970462247 820709717 387128903 601203521 632233671 516794503 849445171 351316727 842839807 745903825 916876987 788515147 625135593 660471713 429444925 252103317 487209317 647221879 441448027 699583921 126307101 671948241 318066177 351017223 596119933 508308537 698187109 605965701 64377537 306015557 805182979 526213025 566674919 924640909 998002847 721799257 289369527 367147187 975966791 844528691 951441859 337168993 280666443 720056383 16098659 330215755 652943947 543170833 895089335 469587241 932048681 889655753 168115111 493211839 988915731 285057291 554684643 625762007 685487227 588139017 441758949 27772739 224048159 901354357 88158443 342211037 560163845 820762769 643202557 754072455 707897205 887198239 285073389 504401707 241613063 89098099 732623955 400346813 494468501 863250781 546832269 986710581 538091331 813672257 31444423 106976919 367943295 764384769 394129391 186907885 384556285 704476941 208417981 303293769 404086969 237508953 141265331 658727365 467289333 511645289 246209047 172281731 997625153 8053565 480962555 6753197 520569967 330402663 356184373 132955255 466278299 420503035 638615657 138029083 84011819 592756377 607651323 769481689 21034441 122492005 335806751 434224893 241399147 312019217 470702795 583835607 847938125 624871887 306723519 958265541 280614899 916952673 182268037 634943271 789013033 785241099 992924269 644685417 298604547 92418203 42376845 588720379 961781471 911194985 365295561 468883287 743419231 758815825 446569669 712093441 305441903 587491515 65718515 795474819 563569223 898183317 78135693 262053231 779132255 837446997 452949649 849166687 301406589 70024953 304107465 65628917 730022573 714958089 955578307 16592859 861020229 131936145 861282009 749981893 466076127 846198823 135810091 639001197 11976799 604589291 90092195 411244691 77005043 437916033 264602605 800611587 477233167 875036187 899889027 956245647 107993197 185594987 918582183 445583377 418818579 218387123 999545441 613171051 791062351 379922103 607488639 561622151 558052787 410593477 847375515 510018649 698089243 394770101 598437909 85863387 771899051 334860517 220744723 351013133 229550547 227808569 179309193 487970811 58079555 650540065 522489647 418913207 555082231 201650067 761642627 712663899 654014007 468762637 123424973 294006537 869159565 758195095 603723551 413935341 395552461 825611451 278397519 452332087 13925139 751096213 263254529 391594529 451614405 37452479 983217051 964332783 381910927 6674527 975143755 683042539 778014819 282118951 53851919 132540263 477281407 968810827 987257761 96159677 755850855 718635399 460469133 758037585 694630631 874020901 682128931 278598025 86058515 308423155 592709241 252115675 697860169 218547013 521365619 617603521 281294635 923932409 564090805 383523515 737012391 582848375 725108403 451975253 556506095 836227503 474181539 511613473 131055747 426817555 914312581 90005945 535007523 40940963 208873763 19579327 865519325 93711589 313651211 154175199 102886407 37780201 72202647 375085257 173771579 17302085 435182057 402114871 703801949 602217493 792655589 231759087 601074587 721470209 962315069 163090103 767085673 923538485 478285163 633971811 537700483 293790315 243504301 625457101 610299115 508061919 653157899 944822743 416504561 438722135 159502681 288185197 977348903 613695521 158559275 817598591 608556137 76027669 975799011 683785991 637130973 803547793 551930793 394684939 659676397 241808249 620137837 89240721 548128847 748749629 386282727 983670445 256084735 709669075 523411353 206626425 652424769 812740539 745397963 91236119 320643489 271401207 400909963 981923251 825286131 913824280 303091377 577414781 143759955 20611127 38329313 359047089 459340071 758758637 538262657 712470159 807605019 501783907 35630017 268370019 711716897 844953925 177836697 365212543 711303799 906767309 589448907 823278653 151372195 164376759 252295645 855490561 838358893 876538697 456601633 833351217 623198443 356897619 337227693 502267715 307077499 987813417 394859365 865013169 848877503 734221225 951631341 348272379 427934373 516382525 936103609 67593391 700701793 873049295 289272575 593073499 324148589 497373655 940446911 503347611 339590545 810524757 863081923 104640785 281279189 116990411 112486555 603411305 903482513 158005835 190687133 412937555 274994783 841187179 909852653 139322763 527266083 447278919 428204655 883442641 656927757 933584263 275614935 391443441 219171211 548028505 634009 417095871 690014815 849957233 575620601 126312721 298045067 562289425 296533759 440655051 689950811 157705469 849277051 508004825 954361699 142802821 429783299 238372651 894423935 535499901 376501241 841186237 444104661 793220165 727632517 84892559 467296719 601116865 481866391 349619887 251890723 816553571 672994793 482261035 890366925 689193245 973133561 57057055 540739857 175117679 952385551 294113709 396720763 900543329 702807101 465132545 1390049 202859391 319386203 990792523 555481947 602899425 259686409 741490887 497777235 9430307 276623535 859593911 152136815 222699373 639492733 531511651 931877545 952839021 64098669 334537247 969008185 962686809 546241595 236754501 731795365 895283183 903866741 178463289 485303227 475979637 409661031 456514147 179311755 900759737 819493929 22552117 442083445 468248085 842979487 554872107 616787739 833518177 586879343 33108933 935743595 133902857 330797319 995408527 179903385 867893751 56189861 350525213 75725857 787799205 901141059 710048517 566444741 750299405 90846125 181730029 212956821 579394489 509738355 755414907 742803939 922442165 575779051 417335399 825947979 334190489 839935033 447310181 677526707 407145601 597713729 463758141 99935301 312107285 156801207 894074549 112913783 755287683 301265169 210611107 82379269 801627009 783631247 934085085 712282355 775717197 85185851 614889031 269093771 973941421 760355299 106270669 368835687 915504369 978537763 618808417 56870493 936679149 83711831 930578937 240930709 874345473 944243881 910641565 105237627 577490705 787087371 711880787 534675137 269613455 679544369 532138545 134485093 606497389 169143967 523837261 208779435 395028781 58827421 699397325 218545439 746382547 449692217 124583895 277032599 280194285 192400205 533489827 716023339 100429971 287221881 578950503 869151301 434207073 971284517 518708069 156510605 255298175 903852931 652382699 922078199 670922139 144792455 73201479 159738819 441409003 746000885 624402901 926164593 625377069 672662611 517174521 910801871 88355497 301413619 806160923 391330547 567523881 604256749 747213229 857511223 662266633 771915297 834153003 795937089 661683489 809619511 315875095 12596731 218050013 469899167 683533305 106817435 846178601 572654481 970813799 398511771 674841721 136223247 285427703 317765315 631303631 253727455 908131151 71245853 163231407 494654611 325910295 643222013 410965287 754439553 588833793 979678719 131130063 719335117 812453577 291504393 27581891 769835357 377523505 283475013 75367851 471726303 367226625 1372201 662805173 824123599 698555661 701490033 146585239 400764781 743024689 748108321 636997009 833816255 970920013 851985029 677386597 733447061 789326667 309379123 493410917 54008971 136695325 918977283 87765605 399458557 516668863 3307037 170281925 951287829 515536947 80240877 757915755 619564485 752993153 191195173 788292291 177785283 505700543 972455109 963934919 589046415 892726019 26227981 408625395 817194099 759507059 582754187 178214219 365234813 217183543 217258517 721116259 985295239 620987009 440446149 284923981 161929523 336849293 332543 266870183 822717157 592539805 231807089 686138009 599062735 707986937 280754191 724942289 860590315 961783543 563564307 420517255 522587127 712995053 670501893 432045173 257206907 653142593 161191853 973083875 217091017 571515227 33635363 308151713 20142329 433223087 419902401 938594565 814142955 951640245 922839597 292808171 13209159 138633967 494692177 785353913 252800637 302086891 164258915 59746401 689206983 716302905 900125919 61845847 527420449 980424817 565476233 231214743 968436057 225888825 364438381 738889899 708208123 438698041 527447775 500228769 430585183 575914019 207238267 706464013 282865065 176654259 149283879 865509645 442693823 87752619 209912847 753024329 580692817 724805845 222846885 879955185 733348823 45413633 934893735 446253239 496123281 878257165 726257689 695646171 229324169 972429529 578949959 571791141 895223183 214213199 110502597 372603361 596958011 122162785 366645105 981274853 783209707 757378316 265742701 981238673 591023819 74709839 551936295 94934731 90206663 262451767 256660051 360718337 644702875 429634515 971137771 700965415 350872263 664266817 832709173 350617279 753624465 711179937 643017150 842905805 873030921 566694941 129558619 550889441 327165705 787965673 430662437 608961807 578787379 179269437 940267137 741195253 501056235 509317213 487184157 72774589 430115939 476246417 439784173 21874193 683008405 711564591 420324909 109189673 784898111 710434189 526536799 73600451 907645931 298933265 864901971 293240359 250375399 652819491 556775451 567883553 775814989 318618679 499696659 308539913 881321469 267855045 643591137 417138363 505998239 175932241 421887087 658979999 148658597 296090981 803096051 756668321 153439043 233398673 493522153 729453883 704453757 559806579 403752725 625684329 158045465 2069931 66313859 56315825 733544875 311993059 901857417 297829923 194639493 681966287 597167807 493907539 880157389 389580327 364702733 337139807 742857576 535645871 310331807 85410801 707229705 371641393 159076839 476632883 931350565 853051261 169072547 294231005 913916415 834503537 503681753 295700015 258946973 394973165 91065297 613278699 539586001 329442523 854300705 582605155 590421299 117045039 889088935 844364909 422845729 182688737 360791943 792426341 470960839 686807285 544962347 727665203 960141331 805097589 504206151 410552645 41255613 444423025 263050459 843454097 93463365 903600903 220083751 272861845 472549877 677898583 878673851 707073367 308723677 872262795 12655465 552391527 635084243 313507287 326648653 703413977 776178555 207298675 392228555 841793099 43671097 177580195 600334739 613705703 234592833 351648433 116732051 410694231 792594313 372679151 948595469 429095893 67196113 554027447 230351747 892878619 923179683 116235369 371032769 824222835 700457037 502110325 327590107 56042153 994003177 123389257 339120685 739655187 261583447 877241439 612328029 299786131 147340353 765510203 686996823 278934923 264797971 703031655 385080909 691963627 226154249 852035955 626297533 925540393 599708961 143829501 445798251 887964739 360516642 840743845 786970467 702835647 404508065 350928149 823353595 399619499 915522803 18932737 915750603 767703201 871554617 438862883 754127547 459775417 194255707 660347451 135120631 544181663 260792073 248674579 866463475 664805245 31695293 203780737 951237737 344297997 633199797 516201565 961941599 842059401 560960761 882776457 771167779 963242427 716716635 554867950 158331461 916578543 571317363 354236547 6091685 558826749 253622175 574136383 778792551 393674049 9933835 323665187 446397173 870333091 539173029 927213113 58045189 728586385 323981861 225221527 536442001 785969665 506154509 771037013 490272993 905130097 822387619 267976341 485835647 844073705 980255481 59113603 137400125 529448691 804690405 545567565 715483453 478982571 613331723 468955443 851510237 493016745 87136463 82583923 638504911 397530393 176705125 437749081 982222083 571801255 709263555 223535927 609020343 23434887 179294633 979775847 784885615 204089979 86228129 928868683 61125701 305339333 943379451 501032525 601207907 985266745 398631885 928972001 522505743 473299239 452954363 874513791 251105697 70290547 242151465 27918763 737196037 149170559 568757449 485484271 150597997 976618555 263152149 636892637 700682841 244707869 884528139 618305295 676226697 38582051 350883957 690105383 883404299 393604821 206665697 96339665 351607347 599253309 648148649 523608509 785993887 230780919 702537197 408806821 887668275 40718619 350289047 888225869 372936727 170518101 462847059 77330815 546388165 98884561 736920219 69538317 708806391 684327235 399098801 397524689 629394095 354274029 594624413 672462253 802331709 154038419 412944173 81170061 448876337 392604291 26336507 449167969 932366699 70262421 358309991 657175587 688510479 999933733 401952407 69542359 868065927 463346717 976231809 130296199 489867657 781264871 463075543 441363525 464321041 308972667 167867165 991481643 595006563 894340695 218240665 814678619 446675721 647012225 407102045 29396481 756323803 292659849 846201663 456885069 882188533 297032581 364225763 360216441 896761273 549923601 155906223 277261003 536962003 384873299 382419665 598387593 172432953 186960637 353439047 873246471 250156583 538345537 556371659 135522463 417757217 274743777 278591977 629393075 534596339 429882913 501329393 924687789 78729907 292671441 846279673 49597185 437567417 84889411 928905701 439009833 750785967 944663387 148032857 106640805 743962747 741180539 306505417 485459937 268991319 297857427 175620715 87016143 875597755 228146457 200293182 122106793 340483181 386998797 750152719 654455089 357967995 313270513 867245161 575468051 797329973 691134679 25413543 761471487 209160763 965318229 289688043 111614641 157580913 96373895 802867993 165125353 250846465 77697043 679498723 986492787 904063329 422599211 229635779 630333473 568644939 102632835 911715575 183381197 59005895 443328857 990880135 339640921 100353565 42909299 191894599 689987505 738007269 211505183 996051147 178647749 743251193 969869109 28334965 187657105 826560639 2120977 863585389 222661909 5391843 572549789 10214051 178696797 552495319 812228931 604179663 536089466 293503319 40095227 818594931 435335817 657354411 385456709 171580119 998408875 169690717 205669667 689048585 800763143 94600001 263506983 78458337 148437459 768439413 346518631 94516483 393933129 880575067 46547327 423966677 713959081 210461087 555115157 673110919 613454655 477117497 188463451 344650001 979327325 843013729 350533893 738325044 87421279 683693981 94564689 473302137 982050979 76961721 633011077 613608495 926571671 778574795 769387375 845935981 529719211 343808301 995508327 82353431 630720601 558542979 833399371 935382993 628483623 681406139 469119 482682639 759352475 650544647 560291573 508464135 505486921 42549991 344671007 619705529 20941771 834264859 69446909 374225135 173181125 549846707 73795095 645581625 421574877 294131967 427350649 857169389 473553097 513555871 764477883 242738223 566741827 870771063 475321337 11581155 213675533 715081649 889157339 582394301 724621039 269036739 832702093 841675313 485482173 408283497 941239497 996960389 217705041 630408613 2232779 690046139 651292559 450557383 609788761 663921065 634299997 684726113 388957123 622673891 941254577 107471441 502589661 642386123 95545988 488369079 455508231 345287049 903221467 287582981 630230053 237217293 621148859 316686571 381035175 367872529 417135417 877750375 933496453 207535123 266112879 911474621 431551033 69974107 763242881 209177465 40154573 358572027 86377365 368120175 510506445 778223051 627395811 655003581 78151249 233395563 311298207 307303365 998840309 82725443 921741073 261909301 980820704 813832835 552806527 390817023 330985411 282942501 888848957 405738593 240673487 651183077 391796135 251524065 16641735 724694609 511300891 601678407 4380145 135979189 143571207 915974571 649610007 988029481 876781787 603601511 190493331 563070097 372214803 222094879 921485635 949331347 243186479 8704705 840082317 21508509 162341565 802763649 194443357 601209069 749371979 970240473 410711595 235833469 464148853 634230929 939235831 576450329 841777375 434544305 815997509 691969105 463877425 876850833 869259811 659905915 637577757 815805131 619913767 155015355 470327135 166215493 474477427 704722933 764374967 831179817 489340585 655193053 437708275 55583981 746345721 265328361 415260129 814626637 712930585 674954329 484343133 858422861 718512711 94572343 54160203 950998841 288151881 264945491 937914515 995104933 884143983 740879427 587393319 996694383 969027469 386779753 622614275 776444857 480752387 760706029 104607527 26931695 913587381 604071361 39042209 34331079 774108693 909032601 286788991 774172991 481982997 645984761 304427485 421202839 653030967 585378601 760132831 246270045 427502975 109355575 226512301 526184037 312030075 147929341 107498105 778788557 899772737 172562971 449734527 805942775 491151987 152104441 107926529 983253137 43759155 153580489 845555015 2282127 370568753 716628095 237408165 719192107 720005027 735759327 205719927 176549099 416652871 297952623 741938715 704830621 316146019 821187969 252760831 912899667 12513991 575651885 199797909 442069353 518922695 829693523 560105299 315275907 130568771 67048091 383299265 457098383 458169761 586911861 303597159 724934593 686428621 169788697 470733525 500733589 778333249 530888329 605855911 17479373 308555513 965326475 360629121 743500409 868777849 638482353 308445451 352008939 147370965 998413393 918430199 679193025 962779549 372360079 776976641 345812443 351589109 999797841 247067115 332629611 92981119 397536325 481259645 942577633 893585771 221603047 476418957 475055867 792724079 202205815 136737777 332806077 990747849 898209019 725964175 620475507 924613185 58513731 616623695 132724913 300271395 876917227 708856099 353790037 332569413 696888911 92244743 702808705 844791559 986685337 563853309 50925729 886396493 905769403 917767693 934479725 713407369 156959851 410805837 95613405 923991727 113669161 714333651 831780407 117133883 427640127 185113797 508930313 152519223 367260347 317205323 568174115 746239793 117736823 999124119 784196517 420729147 966740757 614240231 857762033 819946745 190978809 158091639 414843317 416828557 105532757 528339351 454865125 484612775 575562787 280865685 302848445 131877757 58231841 535286479 89451199 631725519 779685847 19228579 693249211 234197471 217424023 671916159 798199235 850655871 334109561 978266325 606307891 975026179 417848925 330509341 111436719 75891019 560938731 623920859 483017767 337984701 311045523 542182807 543248075 620133191 393021071 765041127 62838551 138178397 238531803 185876833 401435091 616738817 764239173 525975211 844473353 859696567 348930393 55903341 409280013 580960143 204372079 567501403 164876925 233813019 472481451 597335085 105465147 854916223 411671027 278446247 611832947 816077661 470890743 548947601 472459675 413784549 912468015 477641665 786327151 528451791 380134619 249654797 590484979 191017301 104082439 335280731 339161973 528880191 113609597 355506067 506696069 4183773 829508315 229644201 894886659 902711301 474051197 241168533 616246801 287444755 454084239 550405467 788726557 497605871 826757117 646717187 67576281 988532997 925954947 639941539 930635845 45644879 571516577 985249105 318640033 260486729 471376029 428603187 669519227 319756281 18839943 611285617 697198761 538331885 46044985 670061375 14459973 949301309 633159253 487454165 607394997 589320071 116420415 636069239 917293731 534373359 367323433 646353775 76062213 31752487 737868045 743477773 235813141 882832993 430647465 876759471 306872155 892921181 326202247 389285813 594436769 918015843 590878709 140410761 397395449 770487871 941493261 214927261 766414533 527353671 971513007 14746735 771464101 219933275 355066499 194305915 386813829 299098337 365257979 231541329 115796635 455167175 944860491 761993601 518466403 946720643 652399991 428170147 994923937 300719379 894927173 119328861 852119393 663760125 58323785 875063639 588350455 678070607 75978709 3585349 11756289 654027169 897068047 231224543 263596385 822203921 604296413 73010153 291076675 566201411 253218799 253508653 742717471 639590505 688227517 674918525 715990957 618573365 255585673 85531057 72491763 564245991 288029785 709804463 487984189 924827463 417289215 993419359 984151329 297195681 200414995 875398325 168735609 933142989 399230707 998306729 74543209 945653031 266507979 427170623 175653215 472673431 591119497 58003841 802888463 834545291 445001701 538606465 61228659 79208697 791714143 411310679 938106323 35836511 287431489 648146985 578449335 781656771 452629659 15805217 636766711 323871923 626989635 224346733 528830125 203143751 262136285 99973453 932130623 846565917 384454349 972855807 977436502 600334939 940004167 604048077 898158059 202045357 292378433 679316237 128822327 750240843 529651579 105993239 729872063 674161397 935880831 547862605 8949837 789591535 942933915 428767769 843403001 642544647 566511081 223641839 284404511 349858707 322229065 594594375 294341217 557865845 888346981 705492133 570954923 137661455 909766313 598990483 17511731 527752271 64574801 256742819 15899511 68300975 496561243 612697965 686706231 804956715 903054479 428122263 996768897 155149131 63463295 369041355 71936681 375634201 999338115 940646585 45650765 883047471 840321467 963674395 612643407 282224043 570585871 783835573 209244125 119936563 45074223 15276881 414921577 414500083 909828757 855012799 461616819 955520677 761090687 578967773 226392763 936868995 985450997 569113483 120338127 758647127 782177481 807423669 368714629 424129645 992525971 763333195 447019447 451804317 669683123 374191175 253657993 450770243 832418895 619151277 39146857 262352199 980656475 878704007 297938187 23578135 118533005 665389031 236064363 855849129 675269735 961832165 506891467 594488443 132954415 306252713 462129595 488366227 798380535 696149335 963411981 547253377 393011861 82275877 615070941 759752025 436180397 668559947 543454353 66226363 228405667 738096909 452693971 750932429 878885291 224492469 786880665 596980795 456063163 131493013 870832927 514411327 478272147 938825223 927395049 891059859 997817021 172972909 146550211 174572929 112590729 518529073 356257985 70873557 141748493 909915335 95481153 599852775 598798893 495303593 557549541 221658773 721671053 902028375 734071707 165124675 724880031 754760797 725170837 280030689 495605917 676755021 898175313 953222373 234927493 632221887 736952723 451894093 811479841 24548187 794370409 276508319 363201535 157925317 815327267 499863787 596875385 721332403 719795041 530718661 599656879 38695133 306797061 533102925 298123 802064393 955748157 915897641 761077945 114285563 235370365 502923141 547834291 892256651 869896575 671774235 143896507 502423953 45008715 699643175 183952601 663249393 108820265 79745647 477691867 878545041 751201457 683895361 361584475 632433767 732502461 840894581 561776825 493215851 196886387 369992551 892249885 64800419 140947261 563334911 127900279 168036117 301444049 473737131 254058111 514578131 427809321 541409635 524384695 120398075 782851725 885278369 250881637 299931567 752134023 838433645 918908827 352309013 64517355 470735447 912802863 972252771 37731029 315546995 631905733 697681619 944871595 585145185 121066435 428853925 659331609 362299463 464367193 699050533 533904913 590105811 527949695 132160165 771853265 36922169 273173493 110945151 471906781 642725435 401514565 20408597 440240385 582789661 204610495 422386131 62361425 205014957 861099385 771784489 177466155 929612099 988936023 493096593 216414769 328213437 41361149 661974671 96015441 637266815 118497503 93023149 73539261 911139193 196008755 935967613 863105269 860682785 642225913 246600091 445507001 502210679 427893499 576652965 678601751 457162493 627078855 877890887 854019685 65739461 120212919 863843637 146202941 115815523 3844077 317615657 894253187 294189815 553298765 116642019 438139493 603374887 520739977 518548527 984762967 761014305 712104475 491241439 178447381 273655961 656553793 79364557 647311521 115283921 420638469 131568349 39786315 571827341 949519157 136077301 928722085 789228061 395029867 443314955 612300171 308077397 338489351 750292505 267100707 184032147 200842545 805956127 706775255 267926977 782462937 589733417 59930461 709492041 445114551 892202569 583964593 841268515 930987341 635704475 583717143 364124365 999481059 113454141 657060635 379325263 316705159 431001691 360360081 317273653 543032081 8230187 199937173 487042709 167930405 330213089 603626381 29721615 73294633 510893253 11832357 170988489 818988365 527127069 124087375 95054193 994565001 633219901 991971401 532104253 647850911 557764223 322346393 290089963 118669589 879437637 112097287 805543361 211700797 594245371 704918185 425452941 510616365 157127185 909650653 676171943 88191689 328314627 394695493 739241197 984883637 765818705 361706703 358305219 668796261 711879303 706724783 16583449 89292047 110314807 623386719 64870503 523475637 828490237 193174695 172897191 687367194 557888119 438048911 766759523 107070423 300816979 926793583 517129895 75369021 62821953 533733601 167584265 966790769 757551355 26764233 153160873 106944855 484261447 392826199 212278317 587319971 54891499 828012539 366869187 822628809 896369339 334260849 438246433 737673487 822466961 586948289 448007301 395257975 304796241 429371701 441427893 980521687 432897251 276026721 327080961 862838467 598492729 234665761 654509885 572107165 593942861 873490331 651106247 365653645 287327781 435370553 804821896 165193091 11016391 770856883 802311917 409474617 530953799 627753217 445668331 948451629 941549505 898558055 275437315 943967911 664707411 802793079 636593209 996241851 475484459 492131583 86400027 137011515 971120249 810769437 760519359 385632973 314296953 141113 145966279 44966871 777537387 802625529 665073235 691404937 267896219 247073111 548358167 793270493 54969949 540467851 935817799 260650383 465629447 593930267 197711265 990162733 437236733 427569365 518830699 401367299 699031979 104329417 989902197 829136425 338090369 714831447 261466899 218403971 562587387 883415331 472216101 785454007 906400923 250817815 956281103 173018675 933119209 898308455 658415299 792932917 591370617 7256979 758560691 994511031 797515751 382358619 319694049 19355781 717427921 779027151 231944911 536044847 565369573 903851841 486670993 708138507 931152851 307708493 3696823 352862525 445430103 358097881 400325733 277616809 899680819 275381775 913903677 488331523 709325615 613732453 599365999 618563777 909928991 915375255 225505455 840208163 755666653 124614057 926491455 347132723 134057037 534584551 597783525 699775169 341494615 813908197 127401451 696878947 832692205 931176063 506813485 471712635 794420747 334756315 202826755 308034865 476113075 139640677 447625305 814532983 442340589 949619407 549647001 519715073 995907789 816971287 703116221 818337107 506646639 357215361 190841153 884505525 228641521 209287065 473613865 105121845 333424001 723852341 798595081 336031405 488663631 388717423 971378673 399993277 727958423 48007083 140276613 363194317 999851675 404282263 693046247 372924943 18769571 946595109 227010247 620786039 258102789 907926677 76283739 104833993 638825239 806423911 581904737 689907851 543113535 72403305 901278751 579248655 261989347 227482545 967917925 157580397 966344571 117788569 561107079 40845957 500505213 43572167 639235429 978132223 780530795 704755493 96067429 476640587 911118547 202418665 594541683 539161761 384947779 908166285 901246985 269861123 66482521 394882265 565746209 100312631 490234803 172825303 648342085 838203087 945918207 86306779 615896705 339730209 326565359 22545793 602483309 411049041 752873275 115895983 493807143 490008389 536358565 498891919 928428883 554262443 805142011 506347415 128613921 329064191 284085259 88699011 336469063 243432321 320766385 595940695 251232771 277202231 61330641 165285983 54745885 813652209 965952339 550864689 765700063 452192075 631063595 285134245 726252069 34165153 475076177 947514083 746255433 562719007 913212359 617118807 956003889 928181169 678545563 831465651 5498447 443478803 787840987 145015543 698711701 165321155 893989541 189011299 539742597 298522123 94719767 254419077 432363299 370370297 930951007 651036211 222915069 227697511 675691183 938093191 174601771 7088887 664556095 393470693 210006603 414685965 157727825 648216827 684977281 679432667 15255859 561109437 289752445 154348379 871192627 973731941 323383157 30111819 893337775 45935483 252546343 940872499 106077959 623848903 375947995 876108645 1303973 178713441 103203165 378700793 396670971 566303395 5919491 344105167 27825541 912466739 397579949 82260879 697884357 440444155 437192385 704454825 84193349 871059761 570060331 65270359 420509077 72657233 638244709 396402069 543947859 693531167 771920747 742223153 535779613 607433895 759534275 101077687 92657313 879580477 26443899 569849727 855088273 509378173 21147947 741825453 60810405 41422413 193333745 796370215 344538529 477018329 9407345 190947485 225844813 653468563 176859355 363871879 20365439 71290425 855052517 771531813 590444047 771235279 985648335 657575555 217397725 820995489 707849051 503393643 821442263 971492933 650416091 735131771 622059247 663026835 717255973 234782735 721252893 336106675 604539029 268782163 81117541 207646993 916460817 653540915 137061327 371494753 300549131 682195051 180549489 119724957 305361015 862518907 232056931 495122189 189340627 607945641 328571845 221744441 913286437 252077573 258484423 911129337 126151163 217276265 563152277 331983207 474805101 767560823 975472237 226526439 21934873 483955091 318492305 883164199 490719779 481071087 22063435 313729819 136814651 959207557 143077611 47356927 229806233 110530835 304239567 913701461 981848823 667833635 616374103 899585005 287632543 960844035 274322157 319423449 154384221 157203149 705037061 320579445 890472071 154662753 944097815 696346471 939788797 320054631 340882855 276925593 786595109 781215825 635879741 86082883 795727853 852845907 762400623 45250523 443521483 519704689 913062101 242043435 276040891 413249393 370152721 167554621 317316681 791553255 552250829 958210919 806670973 414392101 478173115 507276609 926338801 920225617 137293209 587507891 458698691 629125201 93426467 580934889 69853847 367961557 551956521 808079445 307252639 880923989 369659259 481058231 317340301 203669267 157673459 598170383 805235105 380316949 856006001 144020139 86924963 398882349 14094309 778291231 843048415 73822963 834743355 733393737 410233645 136146629 340167027 223295821 294863593 247084239 727499147 116075925 469963003 977140991 189645965 774339797 180883921 502676749 562511759 873959949 422123871 893790585 743607721 547177341 214430247 911968909 10340605 521655733 765231663 901222745 703356341 242875015 5594625 147311795 489217285 399613967 376053687 264810559 150495781 700020145 2713071 974477665 656756569 18243869 601069261 771531853 992324843 371592515 469279491 222279417 901570603 389896031 9520323 225371685 625679991 47618553 34044111 466807899 393752111 949568987 464793961 768111849 161015741 576603417 682890083 981035241 849502869 102541839 944932627 86706747 510421551 789368419 313790293 617487497 645075727 568637953 945869969 859780671 830571454 949260827 768977845 528798617 698104785 112980015 737632567 976538005 861764831 24867073 234548757 9280041 33439115 233432477 552014037 959836509 408093823 990466649 455749255 826973715 75515247 612036045 824343999 172255037 316477459 832071649 399432605 587860675 269648687 80850113 993337541 258881365 573512077 126340577 455212137 338361709 431191295 635360507 720623931 204694089 134837087 808907029 9176701 919239409 149900175 466325373 825533683 835065655 771566201 89604291 31042027 499945651 980202513 238406599 619535421 248726981 912121423 950019245 210892613 623342227 251170871 790078943 63669227 83486737 471796947 93140243 520483741 766289141 846954037 45985347 35352913 823171777 917399671 276539575 847075461 894546107 106914491 419897337 114619455 140710645 869055531 357658845 655757839 827308357 228819707 719369343 662244105 694047311 104814435 989901125 270463181 888047735 836481703 249699801 918454401 949465841 717783569 435790897 460800977 68820147 783655411 189963913 239171063 169727871 83015335 609749605 737242285 264276185 919205775 594757009 690766141 138590999 491095575 825785633 984549747 9518669 869053101 958144625 233527463 531926367 320791505 3795495 792565429 944180977 218243841 472650543 702228743 602519669 899040713 731447227 494192007 54268709 940435643 79447115 467730349 654607615 732971633 946505887 391421815 695992781 942987917 641761988 932359275 376261661 308313273 66487827 551038105 578427977 2737065 387641889 531409301 117581171 121696279 144609241 965392255 540869759 418027459 15577699 754486269 531733791 819741305 660233267 316163387 624959691 655089931 671509001 555653363 274815429 693333587 261757413 828867423 219325461 601774643 792346647 799543369 724187785 732604565 301930543 974004735 395979195 271676525 770935821 814144597 51527435 149356725 485315797 189488040 915495841 34714477 551375856 450930147 277619565 942116001 810438679 338413937 219398183 541140323 838835267 568506953 975629905 234929357 536752825 457646313 755990065 549368065 369303043 937301337 604839129 884638761 299247097 241914917 744169247 753534841 645904055 876459875 323567783 92536363 525418399 122283443 594581207 29054079 214543453 114900795 296951263 648037569 672972775 115568295 204462519 825421379 638123385 276298289 14244127 111248479 328500119 271310997 17697441 213673847 897421583 79794713 750579597 996767223 568344049 429480331 644320505 905923407 583970461 845130051 460679881 430752505 971024053 144746013 212749985 83089787 110457381 760097923 660671733 323748699 402258981 921653599 185018875 125857325 292821549 338647849 950379187 464321931 872808707 678032607 43085799 100395031 745939381 525231881 104036645 257898109 826941075 858664115 616543687 671397485 545251901 703420531 709281263 531807649 238294167 247134057 95468929 381702365 613414347 229192251 17258287 286696173 505177423 428117527 418089843 58407839 896582365 82909617 629985163 986137295 540157309 837977675 115830401 896655711 166878327 457980585 795023907 546017339 117035619 776079899 227967499 83782995 807689245 877556083 41750083 606490273 125951941 345016853 406734324 573134635 946433485 810905315 362043663 112505335 349787621 371570511 732604575 35933465 260434441 231964235 436176935 484981419 900459393 914557271 783943919 915400143 258067927 376121723 899318021 35954609 451937247 577261635 232140865 130925697 292068023 542129861 555008327 434317433 518803137 965845665 403087485 973537503 306341035 914328829 510063379 693481721 792780903 269193095 793824257 162577179 714764851 122530677 754415881 754281887 908683667 58977923 5957041 689534953 450712659 290932219 188397643 740872031 83362697 721171371 999770861 901863543 291079311 972476135 970639995 48875435 578762761 193185167 89895833 362688635 456510693 57793287 724671419 571610741 612000597 517631807 951676951 85969447 175523801 171749805 631385775 588178989 349558833 142971473 351326023 542857769 885492845 115274927 687262837 398428103 735392221 393773269 646961805 771037623 174279713 315258969 201590963 304781493 109725725 73999195 906522059 71046785 470234363 914088833 432634249 991034087 371003185 199672057 64991585 359802041 719023483 577864057 389917593 215313619 234076635 713219903 555440691 588239635 537381025 824804881 122562565 383167847 274717535 885946429 222819235 712395967 898119155 398224795 59567727 490721815 377692029 525492873 71955857 635652463 713326959 287283437 960313081 860147923 881704569 211485491 241378913 606682455 123598233 613844307 229738567 799779857 521707283 252529613 219588339 917727013 521214835 13290659 842277753 954550463 352538253 43700327 182364331 666486287 127878783 300720943 863092783 28968017 265642155 968694679 229931883 677187013 829743807 160956359 108939919 450366137 20739501 818905709 692478869 449554043 609209525 569428927 251224377 786309223 49597527 246073467 598283273 718215905 849862497 996581095 763405137 416373327 395384297 296625107 741956649 312826921 331608137 64032147 927055477 76364773 294619685 846321415 884939739 705616389 560266603 980527763 174335691 52707093 9226063 496352553 469941629 344938153 846411083 605446459 606031601 282844247 243622951 764026825 468824049 643548355 335755499 596884827 91570189 896607385 677278703 761306365 971381915 927518089 281115087 121193799 164080063 944560975 568611435 406990677 897598813 694751405 772422643 165784527 426670121 766935147 172772827 882010083 392977561 66012253 785444831 555149383 12255725 411747935 128039171 353965625 845433135 481844559 960964243 105144449 888771631 125994523 871255843 645464169 521063555 596691635 272432529 268538059 211325581 261693203 663962623 284576005 250280565 633594429 916419801 491738621 492930861 813472057 98613717 457969951 386323305 233353245 87321841 328420197 782433965 816781567 605380461 464721481 211565121 814147843 600986839 819169493 232298546 908120917 399922179 352605845 282996829 291380775 270969871 714680481 284025695 961463217 434439005 229079701 350563745 235579701 795630747 699681689 479070293 214971905 715302333 133620571 813957231 500654691 881502973 471745809 750894003 342151863 136498657 940764795 545583015 242452577 110401591 731512539 812600991 848925385 7175441 778598403 18544301 84869729 110891467 21940039 83255479 45919141 833477385 647711367 721541475 741204503 504008633 480028455 207518753 751506751 632728591 366869273 489227817 562700209 567881351 686015439 102573949 389745673 912895205 655167819 139101155 401175015 478696755 361063185 224761837 455871219 250357961 713682223 879551985 943140325 19320131 716021565 6197011 682986867 947318657 936858455 611675193 690534239 82979509 772721959 553577233 837073783 518286671 417031895 79097111 942178441 203561485 23744031 407050379 937714547 782906611 702376253 584384883 702813203 337151565 129387511 92149919 726749271 520317871 920010397 373907627 405626673 975383799 495908611 604676851 100918681 155908423 130731401 74078883 680644497 572449805 889894933 321066919 786317607 439904251 146367765 411630011 890089833 924015119 257127037 169847645 558172021 716610189 402073807 784613079 808572267 153829891 221560847 20129079 90068853 675155009 913601739 590183255 65012421 716787047 685652251 848771289 775315607 357062361 75440539 269974305 251717933 996423743 666531957 387689569 462966479 290412179 473926739 643128979 768521427 931845391 516342637 15321717 936221839 120986677 84013697 458909839 786215016 959494357 444875223 390986291 494304457 398044929 371492411 920946809 646000419 256751381 713624067 181303617 63253743 798641845 696814607 426232883 923771567 633931217 392098501 932615615 834877681 109485465 745043217 305301023 432534339 478638473 345182573 549506127 926819139 754942569 398281941 181845789 799720337 272352579 147798991 5216789 745414359 602913898 473497449 428109967 957552839 690516607 422712379 512976559 249601309 921892705 324220771 758891611 871871131 145350461 383318917 801764931 343188491 492062601 556971985 939697375 574661949 70986241 623777533 822281071 34634767 415374251 402627655 371725055 586820961 956526031 259791479 897540441 890435613 12183299 150581465 536113691 661011509 193761829 272064579 578481057 373064613 403616087 578443797 929363991 694385519 401369863 954082101 354568297 855376541 396554471 577611537 437454163 795260735 141688567 829085343 697926229 440790387 471363703 533188955 598559413 649992793 604176119 207250001 957985923 31345435 660086087 226550025 966122393 261501931 937560711 824139933 748746905 781099271 687970587 775959211 579866087 956533675 110641581 87635543 398094517 756900135 813585971 170182481 774035453 566181835 420582119 821161679 141320573 821372911 359210321 468539537 210491583 301951737 646144827 828569561 759070225 839436369 884376505 585079929 381895053 126450795 329049127 50118599 399101971 745960895 860824363 497125279 759501387 209036241 20532143 819569001 156441511 574646315 37609961 993805075 856680795 442714461 431898709 143699473 175417195 685706245 538742455 923557989 193427359 47675331 601526043 936376723 413991557 851545665 706129621 281284523 781359221 456789043 273181059 105277505 530490515 110881873 981487111 549377397 608542661 922414175 361006989 317061355 543513531 355119653 120515725 357930195 861133293 697645177 245033407 816324837 478979741 224104499 787391785 772909403 98183121 250847541 970160409 91884031 816886875 41669993 13370655 380018973 983701203 506426819 435371803 502731915 877310103 763642171 234572847 506181291 875782355 166102997 408132041 411607389 282155381 361080219 496956061 230856981 888054837 460898717 864336293 670400455 73809811 26970361 665986345 714134513 760299993 623446991 462005681 91808665 710132759 727330377 569973013 369057103 401766691 803853723 223968623 301002023 410250913 176066813 325883941 239073729 580838901 10056371 77701345 501408065 376999763 359354119 577773721 486597209 909889713 845003083 627054728 617664315 851068111 312487639 363595573 711705767 763786295 65148433 669711207 6949093 553701431 282779491 288778551 22384833 116072937 27825723 340329729 907740307 724305199 464518681 869608039 168292663 244071341 446994299 767136597 440823061 614428117 415112939 252698883 882379547 628237281 225435647 295764201 177952703 40356047 702959183 303141325 108458495 144981351 791047293 106955963 902312545 913036091 655502131 833442823 686847477 50362277 753509925 594363471 706602319 187893439 880306955 257532277 14738319 58367095 593049257 670716839 804624729 714843517 382416329 86647895 875247583 579496517 524869181 573802309 546881491 55724051 847501791 266415473 603229303 314565101 201187217 91018281 956144781 827963301 76409917 537842179 277110633 966048467 127214039 82818521 609689563 264596439 12659799 915460047 858683719 175408855 357842625 300903507 167315087 751291079 778057247 680828185 560400163 192308829 573971075 209750045 93443065 64169243 33577991 797846177 119153295 620716615 559055309 544005173 587997675 221656563 160251135 550539179 407426461 343421943 189528017 283221023 106536121 222089969 915494525 551477239 833608927 162772813 238965315 824658397 345404211 605116983 960567919 769620935 56635751 564477611 835840849 132039153 808514221 261910121 992572743 152658911 811428551 753491701 959638449 590998877 469305081 659413157 553427963 391438719 780709649 490575245 733822613 926653347 607443559 511116433 861160953 613326443 54131415 88350805 689555371 351559877 919861193 21837899 564760885 801606371 645650219 738556845 46094633 472980291 481878643 303066233 891264545 578900393 68168095 784324217 199838143 955120675 271511095 846221371 234476463 218883073 129271367 43781659 147023007 38351587 898633061 828132661 429822287 395967915 280601521 283847283 881765245 323460487 817042639 275907973 512028917 356133611 6850801 790307299 289241225 14907025 821122507 264396239 715286291 875735169 555553689 793687377 195756149 293580547 531234349 955270967 942850715 767134639 122414523 372894235 749588083 319078495 507555891 71278429 591036157 400425017 825057259 335810597 857080887 132215463 689551047 59656803 203526701 975630431 327415095 544476623 175361521 971070043 77886257 366551275 42450589 5081827 729056563 719562749 652151891 692157057 967560517 820008983 768613183 79888649 318330867 16334353 924607121 931423895 810357587 894430089 131785603 429294737 48001029 933482987 908962393 677159075 638755887 237547365 149644125 289599423 576268925 660242927 168656353 195559715 777783081 757705801 695570751 739400531 539941103 324638973 210367963 203091738 377503253 756181339 812653083 529096335 861700969 115729529 529194357 665157133 43475267 752660027 391259491 606943031 174863487 811630149 241757285 455276027 966553479 142166795 635630855 608931723 625308485 451548867 586382043 662588775 436141617 844059245 886687611 746659407 325537609 285252819 539903369 169975633 996678421 638171523 902906289 799762115 116791455 166338521 514104227 505381695 253208195 436089329 897991449 804627625 158543835 600516533 965251289 407000879 116033871 630983125 400158633 970337349 111187467 89149643 412778845 765018535 327088329 283462101 438736847 654212695 975787717 267929085 971719649 533322149 493611717 91056401 249435775 169089059 582313495 708111531 752103833 561666221 806871443 596827946 42262825 450698089 780296855 435759289 432119861 496907969 333749767 763162693 638708675 598991467 259178323 451960455 310056935 156392547 741023091 448472321 959901883 205182445 783465953 319933179 403919713 765589141 831027109 992960643 976882437 548515631 545608271 262009715 421366743 590122711 911212789 261739113 424918547 926479859 702418227 689037265 852539641 110281519 991210033 262492377 804763605 673679485 673544093 160398457 273543929 397150749 202930859 66268275 394893503 763415439 511309085 413115981 33582731 129437345 686488119 472180313 860885955 295556199 130060233 161770669 571748575 55979583 946709799 578412589 252259411 364423883 124689455 138640765 123045799 373483257 686452811 128806929 113638497 930148605 500049765 14652191 640545557 226929489 888638197 983316649 561166429 876917693 61130491 316834421 62372827 190636617 559377145 226655507 530923323 944301133 355448065 451951327 967335213 255870307 702450857 809409781 40696429 875284593 360720397 440745535 188971707 837958305 194637525 559178351 31248869 304510569 89804591 210905337 507497145 232751235 905502417 946877987 329297427 997057271 142047223 982128111 808313301 736786959 821522541 782303539 254931435 47383391 156119163 6241923 75721541 308991171 951791611 58036033 742282975 548114273 44277579 388566165 296309433 555343523 401799247 496078447 398889697 428139329 159648121 519283849 777988197 459087411 936739003 887306593 377347681 348397503 669346965 891870015 90820857 579435121 885668111 80964407 25541203 568715805 384101045 69670429 58528167 190786273 948445599 411441553 862447145 24241695 164781161 233886975 811529249 108274051 353969467 243944085 2456533 52040709 595810499 317197901 288227481 917267165 662816055 11092707 793356745 199557777 182317909 336489189 355417538 944351215 364554083 240064927 511631605 431109383 585029169 963838505 49003215 282139193 690604051 157799527 163408077 48037161 653572583 216462847 683435375 314590145 931495447 824532833 837929795 318466357 184032141 51712197 428164567 644769541 675141827 951494955 390400711 632743409 683307187 785209693 524295351 552930569 919699431 159877867 534428237 672789151 680683883 410092845 786700609 125547343 796965847 139402305 231137609 642876159 988257863 26255377 325362983 772763097 576699235 992390479 958993831 827670355 313807961 670902897 84073117 715075881 968874463 932997815 586596831 503957087 314985779 251264299 903769683 281830465 362355995 904134045 31107807 734690147 577099495 325139363 821891963 252711585 741618539 589012895 729547293 760433185 422249479 601306553 724208071 830324303 339985825 713723619 652142981 889322205 729595301 442953681 332862315 427742153 776156427 131939337 921119119 344196183 571195731 951456461 705231639 25338899 158502785 876127793 841546027 913446867 895302947 634733071 361127421 270322865 340203857 342255875 988538313 855547665 125704615 551698295 215057871 592696225 748207437 578107547 177621341 858623571 924408817 723150183 731460801 316126055 867891913 101290909 844712025 8127581 492734355 562920131 981840259 454427397 113709463 150240045 918068653 813495407 498969759 416980205 552100679 579197947 434028039 96084713 766782669 418026061 427117481 886010823 568245185 972074575 488020715 129390327 881067 528426551 748548543 690748337 331702561 759575167 346930071 709169143 546355385 315849967 727571061 501855119 847863321 79189905 456014813 817637131 705146601 188152761 517736413 847695555 128252379 208781571 807381005 729626581 750282155 14812757 914206345 626314541 564795931 754386137 235974393 357853815 314489075 734710533 996888971 363002671 492480777 550075285 501500405 985731477 262297395 250564749 807971959 271552431 67681623 98273849 730785491 927042125 959282525 758369839 862805851 124671499 714723383 387426375 919848419 942588997 234696417 944421801 443184331 923605543 444459869 778951105 140909049 488497565 821243315 838191425 815762393 606532707 371863801 125386537 277821541 690786551 542911045 92631481 890106103 351265187 485125053 661389183 364187899 962101109 176907657 29709905 350563225 410910025 512122075 704732745 194532363 877716155 224999663 498140875 934135021 53624117 819808263 335053189 666095207 596716775 244029037 462353259 670187305 490001355 949244273 763902903 531551589 881404575 171862641 895636721 874344411 240847851 360305099 766941153 478481105 430215937 725805037 397650079 339036439 949924089 743182921 694766469 361386243 167135667 96720471 952225849 94972785 682033367 574381211 252111013 820348615 204666581 9519005 202241023 731438071 53234663 809141491 949455811 383792501 468364553 275074611 419492021 77726781 474031369 871253507 757748193 674521817 162166643 722235659 63975835 669517399 89422753 605893887 217431679 254029643 636155313 436163479 942696563 229756115 359794063 446285717 546645411 517800345 936103913 958987207 853010817 573138630 251960119 101860349 305851339 529779989 974796985 766563855 88870789 797295041 650124667 19601123 746231803 396053395 68762951 772497249 264712131 94801879 326084539 399580541 378564021 234423651 138727218 730887983 285462011 563745687 629562331 228841849 732371195 503500633 303784095 771686761 789997679 221069335 177043003 587616015 650137167 145658565 772943919 768053891 725348835 448807653 468378049 452791019 780522163 956232059 452517121 640942447 944271255 341665815 528425419 960401475 846800809 88214477 522454203 871279519 1653581 399405627 330032187 411420359 804927281 60876939 625512315 73678595 356046665 436182631 959173493 369121961 921114577 618400007 770499047 247620113 83725387 822812203 481286747 818099355 50614919 437623573 42693407 150318519 883967895 596344727 353360973 296026577 479325911 829348103 32900293 170640743 297418477 932867393 791824175 982073851 84663493 156370861 849816829 163708183 72874641 486011959 746743651 181861197 607406799 150966873 60445797 896681781 638390593 564852751 254596555 127468661 512743927 790144735 885752355 819659445 756993605 888471769 517276103 368820393 720080323 446558097 308723157 804385545 679631193 97507109 863429945 816202649 231496755 208386367 981481889 271777315 796079811 29672457 331249285 290593143 28796873 472030011 955085351 89221747 826185541 981389589 354703501 500505847 167840645 411372891 64076425 905330925 765526047 878168667 934189235 674168137 836529899 608564203 226176105 414039299 186084115 324057195 906143447 740395551 375133695 621791169 320298987 212718247 49133155 774790747 556320605 196602797 716094271 793070639 57103277 917559369 323288275 882757563 67580709 226816673 324043183 255650565 995241685 418861789 597174693 176719005 545743253 52010545 406479569 688958103 665282307 874270677 909139095 902702993 689225353 163342349 621332647 306467765 532886617 67768611 27757553 416732589 641512553 425753705 67274161 976364979 983835513 734592313 950311023 95624833 494631955 323996661 655235317 282727521 377927045 19133191 101253975 394868767 729617129 476052451 535527409 150827539 353098785 116812289 938482281 781471001 87473361 444298725 774186155 521576857 972781931 277449753 51410921 233155201 303012393 846759981 712280993 232651335 526938633 128079295 475856023 898011113 164051923 835299695 245409751 915440621 844011803 897655273 795112375 586129251 809829685 373891803 963052239 764448991 608802369 517553157 93883657 470058369 392477227 459495973 19239563 714682861 593479587 619615239 570677967 403174227 134669597 815965051 558144909 9829483 936464349 440906335 934690763 682376815 284573417 580435859 755661015 2087977 943648787 572227587 110139201 231812837 14147315 266485149 511989225 89553275 410237416 261304929 607629555 919561543 963761947 137537357 335124169 175872305 58528125 997705069 699206433 783910567 801006021 779149521 740707317 498708127 93467509 757419927 659374733 216797335 438168019 781965023 857525875 962572183 707870961 811379669 500078715 484265771 946998439 109364905 441851329 662892137 436362643 357992853 247146667 132844785 28786721 995681757 622005219 947407335 472574333 286239435 868272991 637597437 138960547 234315441 553132891 363810661 772105043 615612905 687925595 52867809 693088017 675389397 642222891 688396981 903024691 490408927 554482143 804215983 843354829 911016571 568892629 263245351 684569539 157165089 657897135 586001657 922784697 627925591 948408921 405541517 580950561 937078435 148724233 249346257 108652597 483237271 137312829 518482747 749866483 769286609 88019637 674172873 86571813 899325681 733418367 862654467 32680537 743892131 897913841 592983027 462874603 275053463 681507235 906180405 312171767 846551687 645670783 380456419 660691047 228348727 369021101 123746211 195207659 979796849 378872737 223100071 865887995 845530631 570270491 884936865 934992857 31016915 773485339 223878611 469413005 170987703 104406001 917261313 494425061 749420703 324491565 519176569 945768571 867963515 109621937 28606483 395316143 673112901 549606299 611085869 796156073 409696001 395685211 911906219 988662105 592679865 64322213 60235517 262805879 670525567 807736437 739093529 311901061 498608749 106014479 15065981 795858889 57185191 124595455 414436145 509469013 506198099 795621401 111742399 935014145 411400615 188296825 486546755 320355435 333144283 295525253 871146583 853655295 498652213 102636775 298719521 362120427 986493435 125036949 416352339 292173351 838771073 638886603 772237345 790204787 12984865 345892109 307411783 169136985 592566845 13941033 513417231 470471465 343389759 5691695 586217287 581964793 119805339 267309439 787894083 282437037 495823819 426052539 198280929 336358377 872055631 148272079 155689609 772121377 354532019 56376563 738002217 174954379 436145545 410884255 116171065 153151527 206009195 440489371 907013043 964422079 29530877 459163887 290449695 150433249 709883621 137561331 587518093 89792489 192252633 766815295 999805075 136030195 398174355 557990589 951233101 345577 444092627 748715157 253953121 483068539 446626917 346553149 529754113 217682467 455431451 304192623 811924449 280557599 280724687 76091187 432699199 870462841 333838437 430044369 949431521 900777983 875446979 951910881 47210005 288830795 151543775 286348095 592478643 392183741 591894451 929184523 15290137 130949501 521030463 711636919 10901803 368802683 958498191 206512371 893281625 417661551 629206709 695253181 307351193 142434267 165855947 777925719 177953387 342161159 997788917 484107601 327795153 42240001 426138713 359849085 835030109 868480675 135096621 528812793 95265573 704177035 969474475 136068903 967321029 557536549 128743699 628855221 957519205 583393951 545067187 718030485 381350321 760530161 152507609 604754949 324740067 839928285 828742113 378082697 955108791 97453289 44427565 894452461 8624755 120184935 88983081 543277383 287430631 374669421 923388229 721022449 610834791 50672095 568267005 912854415 874164945 79591777 589049041 989719823 293083023 820981351 924147277 473217187 68712843 812778171 553996803 955758795 609696317 268448419 598545549 929648455 958507939 4055457 340277135 412704295 138074437 26137521 265658543 487445179 78135599 531247407 482129573 907705509 474295545 371107639 797560357 498173123 25629375 491776179 94265591 276070981 184683049 638877013 613483745 283308447 865250661 142633105 90788535 186772877 358561319 829881005 328554323 462947347 658675377 929170859 621521049 758707579 714342087 693293665 228073071 541505885 296567481 986162531 900329933 490421653 722174555 991097875 32653735 992149317 942873613 479091097 676777477 773125593 130891187 757456869 608428781 788043271 547705277 806384305 109247859 387247307 673832995 655524987 920348337 458597993 763118431 315585931 623853259 850783597 457539963 708566773 121132521 529843627 819734787 714197389 262083901 113628993 653896719 416607475 922383875 145160593 782681915 123416211 901085819 283609161 830125743 471868571 278649585 792667739 862824729 415010565 427765433 290588935 36774575 596705421 45910313 95160525 694409263 931961281 751048357 68239483 369803231 209057261 577769881 913727015 538627213 313027113 213734261 583539243 943149203 729224281 663513013 625417771 904768201 468174371 513684187 121523733 666063771 742814199 213622127 359679773 787165683 298497037 599915269 831771837 570915403 169310565 872749367 42767293 779056541 299184841 503059625 630481703 670550643 670955465 965734915 974051149 992200153 984727997 958288631 171162833 556087911 880777923 287167297 315432849 186558265 724145349 496974241 266471359 26121975 827291253 163641061 245249227 692617423 953776201 736533723 506115697 682478455 984596865 114736991 338981305 63350317 148089127 326583637 548875757 290315703 518575371 386462629 630090657 922494821 783633603 860858945 934316979 892827659 348934833 22715685 782330949 800489737 964910845 466969425 543316419 65267011 260921496 260114899 70528485 885489195 384468537 927658169 552094883 566127795 151993187 386329119 272805187 256974429 539405657 192014121 847078737 126581805 643010095 75856639 384245665 809206705 696372159 902232531 351170385 127764481 470093477 776127969 321259203 37388473 491449163 98999403 9717925 925080321 877669089 949663417 737871595 731982983 415635039 666591007 777421775 935774337 113058695 555900921 212337881 365969581 259104735 792581797 841624017 363769425 829171131 143722641 368865743 473894717 910810925 995988527 509696557 740042949 527020315 292896247 548328335 86781129 240144427 744446827 977010915 288460463 601137101 655491609 393036893 416313955 721981241 480946319 720767609 458020703 129527409 788432233 886798587 334734239 258924347 704330315 204360173 553101993 448287785 91156189 124064423 925198987 525192083 361615825 181409989 12659421 871749783 726771171 313241383 147707323 85003809 5307605 813829375 448944845 878250973 136615535 400327357 746496065 232987975 46064519 370279199 195531213 691250335 988333299 5075497 372588975 251780075 52561049 359640103 860290479 420654077 852474977 271867053 103755289 717661035 761176381 502225305 344783555 480525207 961464361 501343245 939672077 445736875 483482407 919673207 562913245 884871059 295079489 224340105 435232415 582343947 606063751 22800961 969061453 743917713 504367381 516661475 353530721 993513071 983345679 10164989 225852389 551402419 223115677 513945695 116389991 135715129 242437363 7029545 70548731 719973021 360491849 497020095 783331903 541771081 983548129 198918859 850576987 663889773 542094345 698567745 802034173 921016579 619949583 5404257 710450011 325072073 330229841 831300523 583875893 885212487 410424110 232561903 933370829 610742223 929917715 999368255 21085685 583363961 706034031 717594103 460724225 60824613 958983615 785678779 21956305 588140411 282250373 22335867 159719115 729746411 344045129 212659303 184891101 147651503 138364577 932624381 836698491 922610627 469933347 171188991 221328295 898237685 944984181 272587901 758650341 211466449 108996415 226817225 311573317 44814513 88793397 360028801 220043867 542479027 892952591 137860999 883080773 60664003 662661777 11746823 864184747 954352527 412660099 112689015 313665469 42217871 212589243 356574613 959689005 491624965 519213583 7880545 82673467 34948087 852554853 592505897 839587503 900353333 87703717 296621697 22872277 968478555 550070467 620512583 672647299 299943109 191314615 439293597 436563225 673688991 421577605 673706225 448709501 285198551 307370549 540729333 811253533 134544163 891352285 478550441 373855981 791815177 609685909 845641037 203551855 712879821 45163389 944686705 324883111 941044095 140011971 122738149 93252901 729961979 154628249 853266121 956909821 94671581 904433207 66922369 910604237 591042191 433800161 761157303 796387005 799097921 125923553 601910881 67423101 831050989 88098695 934710969 403152703 195221585 111993393 398918471 983915971 638553591 256374335 850138581 712105041 449746477 701402907 280742263 413424309 679850765 551267129 758398345 589935685 195220343 258003217 448714929 646790883 356458517 202154535 807694809 264903151 220223571 639436803 174756663 958120797 511357803 888449339 869546823 449418913 163456863 498623079 584805837 281385913 367620599 372984103 780563157 387946539 217276353 503303467 754279347 166521351 792594711 693981471 216408581 505381601 245849367 110320577 728017581 465205975 235312813 519414483 562411737 344905107 763856775 39363615 369928443 790724927 412769053 148996215 83425233 230893459 463377841 746329779 310646623 184917711 182570313 321736889 818879475 807508149 53869239 264317555 452556573 916456343 707380883 148800207 728924349 245273931 16395837 496030411 744586741 714100781 672605403 909069929 529300019 733222949 315773537 85485491 398687787 114618273 771182725 543552443 122008279 878783639 868488647 131787675 367968895 625790853 529359473 559800179 750901675 501860977 931796371 680943987 884490802 370909161 665340421 399740103 241153073 319293959 604739941 643205295 780286219 51094883 6482717 546687849 584979051 662513705 315157343 241854271 720993095 63568643 804992545 620214663 135474907 726548521 781665315 331515289 987769259 505877083 266908655 581541335 263345281 338669021 28564691 244450475 536382839 875844477 409716713 741681033 304221923 946478481 561479443 887994857 7423597 173161723 895209461 610301519 77904895 335459357 443467009 153509701 7702225 57847783 801769585 320943197 211073115 855697613 35974979 257578289 906516323 595176401 405342783 480418403 848723189 540915577 92816633 22483613 839526245 601504975 595515077 736949651 697559377 403341935 985716163 791120125 596311195 849112945 112029663 574447519 236103537 593948289 707419593 43631171 185002821 717232841 445952501 376387259 408311255 615714051 399908775 578743007 260084775 731501161 371438053 273762197 982263683 165671365 425152641 777554375 903720065 75205219 208190227 750581605 108867067 316347675 19744763 302920297 313345557 979196233 241498975 147476951 545665343 563268565 379142707 851605177 957310759 822560301 706346285 86674721 181888463 660371783 85627343 415473961 629557881 877680289 860454239 254671859 605577903 522610499 223829999 814925481 855779145 798478519 583431511 893173119 168692065 841324057 513685557 689702061 607480157 66883841 411968245 677409655 427838439 870285467 67994307 618126631 503125239 617704593 90622619 925345295 428936387 567074845 956832829 541400201 946324693 940416763 70568239 379174391 314740983 774520943 806944705 916089795 277460543 699417677 925266445 618520673 171337221 434053093 610551541 248669771 170028273 778914074 446283037 147372289 610610671 618134353 689953783 482561039 746642737 802145399 853393085 939313671 420543797 672217091 555533677 517617027 107616191 120952819 963533777 205929509 634851549 35246029 706845815 2888599 336991199 848350625 756999611 986159757 847336549 749513987 270175929 913700289 538767697 788868627 762085979 893876467 932332497 865607799 371622993 430796783 554055769 723605085 793329683 605861767 759507363 993020281 998380003 385558163 670719927 758028301 159577545 124608251 716707037 249480157 33909907 861882019 400838317 84025143 837331163 120073857 524557057 304905203 396012033 480641935 950317311 213697133 41035565 561318349 964583441 390965901 408454223 740949319 564975341 719191235 859253023 395887509 332057229 760395009 776244767 610265151 89464121 962969031 569847701 93753081 530910075 241621275 309745811 9424743 126073127 444861325 955083761 268501181 111556697 735613745 38486349 504775733 574227575 768831143 721168403 698514447 16752429 791384085 438111345 351274135 879248237 38673961 616753247 51391775 904631413 661353239 859667101 681993985 78820041 603350433 209969589 241832607 106276661 63758859 510394615 334696037 880221645 627317539 672364409 824226755 227672815 170801473 509747999 413409843 481961533 696114499 765534093 656848955 977050020 765282701 469225783 986183777 697347161 375773455 535478355 443051065 505867737 623153727 477345249 132674397 198186725 473793565 530882731 293565039 942088331 876707627 870295615 456181273 804389665 967913595 577558521 395552271 548243777 49182881 719576565 714877451 403755215 538090685 705328157 12078285 969400825 864086901 735957793 74044193 28276275 71609847 365376891 327563993 94793529 513981689 72724073 475279313 731500045 163024311 585222389 849511143 268475903 728261883 877284589 573809927 682342817 60377619 3503595 583454245 693338063 72495571 319370319 661014587 618032815 755283865 266934337 397088329 662647979 334364751 834319025 912355675 289910137 25042783 153738839 396409733 944405 169340865 922819765 250410205 216290499 853767923 456685331 586101383 377331215 141655549 423360383 35432367 424860109 537599083 766751187 185995909 372018459 83655507 187797165 735443267 567561819 9080407 515360889 971900719 486366777 28368023 689438309 187534223 895156907 866882502 721741673 805099191 903203311 859524379 92682055 935540481 4105093 910522961 696658820 283057103 142125883 34521775 531210357 629149325 379005477 538145283 306969133 654023595 563644833 308550565 835105169 567333797 427406417 273511259 312576839 123875323 233530147 575782609 869628093 248546361 35179083 250168753 461570863 103707889 291007555 438636421 346792605 952436927 261120723 677330509 602955981 421432641 200854531 300440465 345308751 939793445 760028971 449937757 345750399 385069595 848920037 945872711 296713593 398599647 682806039 892124017 910177575 522513201 974710763 665170813 753720379 526387165 833515735 694769561 621933609 700103861 541716629 781937023 622046519 727033493 937393453 136963435 208102759 984740187 804578537 394034979 957858191 970871029 423156061 577726199 876272195 568912979 824401509 636982459 52142821 207655025 317189415 666245837 387520157 765432143 989471501 987650839 617949531 419625209 339298511 276562435 877995737 92979329 822010725 213261707 88893845 264811779 829849365 430297641 656602071 486370973 439673451 863430631 19948723 572458876 625101115 52809041 962810109 622187731 881889187 76829309 34322517 606876123 488581893 759386637 614403111 785995477 530824461 64859171 560154273 591250959 412013747 73130861 202930109 613476567 255636783 793510437 105801783 932276873 727503111 632105735 282711709 966539657 527516937 998616155 748606523 240889917 314376005 642987243 488150569 584714269 492156955 674848529 819656267 697885853 849286959 960520107 189645383 418834501 178737259 587086787 728253069 206160283 684592387 71978585 809642325 98411059 614811767 306988497 969746847 670474153 607003527 342730887 350459445 295090843 76862275 567872255 435173543 377943991 724984829 742737991 117023821 652636333 636652625 923634933 238427461 85619513 81588261 94649899 272985977 394399261 524138915 255834251 163105691 909202977 759708737 987127621 974117409 2798873 38739387 672525071 79785035 668898529 558819093 23688999 128408355 727364695 822830491 611976275 675639929 402070121 765261281 631510499 179083747 656092935 259048131 560283307 184037315 256379437 486791271 645228555 944891457 299483357 528451385 500360935 918534735 247673375 469343979 496944817 435412641 711216135 293859707 936726619 127735485 18315441 749574701 319095143 573413 103336763 89279117 717225687 927225390 483920083 590475121 826650687 404269935 699921833 358289395 296925871 383078983 991690233 21368951 32788427 427432735 48117509 832794027 85673653 133145383 744875029 723396993 390352157 737523543 192059263 531529785 756510777 692904305 313254809 549203 850420167 742144253 816561609 898555551 249834253 187940937 480714103 824738093 527591387 288155501 933905173 8992861 481629061 925290317 374564639 657932499 77692395 133443215 512482071 276296057 49763955 862023843 670299269 209439365 525368073 672791233 688843773 30641265 652682023 462894315 206303259 660521221 28435655 719892711 254671997 332534859 101398387 316061511 10424529 52269975 603013433 833334371 773131721 305639557 835843499 833557849 795418653 427402235 341142253 69390101 227009423 41382179 902130337 906310467 511204845 930676853 185313015 511063903 953235973 813708455 761825701 935895465 219706037 352085443 389703401 377890855 493824475 843330579 160402059 776852395 586211685 787132717 502340821 806315211 756846149 872602857 459088803 222968041 836595059 83364463 484262735 274396975 864415473 27479851 88102335 324323721 377920205 446549969 555870052 713351603 657066517 479864155 180261941 183227435 329785319 436558351 465759915 656064315 563229281 354897529 69733585 174949279 370920369 627620975 752383285 560249129 20095753 447366155 434736105 641853055 349693857 283173040 611235217 330681693 292627901 343992847 404962895 665173491 369981861 818635545 83415763 443636283 176132783 371718409 634599251 213867251 90078769 979327591 80441999 888988323 338778769 423112187 676214985 181620893 741782071 964786653 382563539 750090745 431864981 982610535 804566785 860827799 960156455 891329855 18246195 293097503 901074543 732210255 18817743 606414593 574383863 982914765 171113923 528673143 119704143 276686901 538252675 691802751 433903637 23725387 111504657 84623073 745199849 726352667 879384305 774579759 383561589 935871993 847575601 305068992 907053931 568082561 665960809 543447989 413068934 762571417 916560311 323087863 337037195 760919149 763226047 788757813 291898177 895744879 396541105 102355431 748560761 324489565 120264517 934796623 127107601 438886203 913588917 648378483 772312039 666657877 31935945 524762915 584786411 324753729 944017873 386094843 704281097 41276119 843956643 644495447 178049599 142890817 902183579 375093603 646031 297402597 511908257 783335693 132965635 406570877 749513249 705333771 280327851 649315073 162135317 920062947 232870053 411765945 82852345 186394073 246913553 700639277 777339859 108295165 590328345 264091701 744214577 396508715 989146351 92181995 239724075 61322495 317822159 294730675 977184607 459606243 603489531 304150075 679221489 15904521 426898109 691332983 17530003 157451877 498546791 317445539 735892855 662970555 242991185 625499201 840772957 88898451 997895137 740569889 548810637 498645307 97703039 285516117 910863827 389604813 289927327 153254969 744870789 563945001 578483897 347234419 98923651 632073977 462651473 537039087 723647539 216478121 776923889 957359583 565334147 830322547 121274153 737249217 382001897 224844889 351660951 361554009 275122531 542597155 478383067 943563187 699500407 249060191 239637407 982612259 251807027 528607847 91855767 352645701 195800111 803112537 82109563 600864767 715993225 395772961 58082831 543890301 627180005 101283181 736975387 307928369 460033653 747834293 724702069 369546715 928773611 176911675 589760757 657000827 316717703 33579013 431296637 354908767 281640465 999169765 588963319 970729501 345326293 16967283 714042453 144732813 110273707 551938063 154922645 688304345 702173679 629223135 259474101 493429353 608807561 22463191 320307391 513436657 520021223 487825837 165096905 765814897 306637053 352914401 206199019 128269353 60846413 680278461 600982087 77190569 513609693 54782033 844711431 880465603 833704247 736077941 140862303 943667603 432661365 375317959 300071815 278863741 193098037 198167473 290680003 742688305 394793117 671122021 894430557 279115423 880287833 925866969 54077605 537988099 679972513 231717581 602142713 227833573 40492597 627928011 710306745 680413711 212275543 403969569 893357135 826069909 959917787 974616809 192340271 294751701 677556497 48418309 917348305 19461743 874808027 157485849 217801401 585514325 491078303 936135831 549024369 594971063 951851339 364116665 586719883 870879507 120677717 687798909 193833633 378617901 21092795 499012267 450690900 245480465 898198787 469821143 46572369 930735381 849147453 9024085 582720073 957211089 678038525 929621319 323276789 969673263 194333027 498741651 293549337 181834837 73623317 408013807 2921087 324073917 836439615 185613005 877016569 106017823 751164313 307575153 505600865 99014787 534083171 397855969 498365849 241622065 8054113 925570799 132597643 554529729 757148129 650845491 992321323 114737677 648835259 486578189 312939121 600836409 452426571 972156323 106676833 124171699 752217209 787593449 710809093 991804207 26484147 423322775 70404975 186903975 226891759 325788713 463830713 817603683 797298347 903698155 976848645 520785645 322183917 445224173 113045885 437973529 852202053 189076999 445795413 479351555 741778375 169599191 158976967 702656017 602841875 49289161 983582483 156911085 149281103 898495497 819305861 933949069 429938727 205323411 384878957 145206317 508462293 414276391 538180905 419397201 113838355 933687627 811850265 4921029 214408235 709719887 25418665 651573405 221242857 515391309 903389257 532068663 832342437 317645863 5596787 772175157 383344957 418412161 730689451 976026499 34579989 237411791 275786619 407410265 749698589 472708421 83698293 320959023 46793931 589117159 798441779 740872907 789454877 553962621 874063191 419158073 118742425 648961685 929522315 820740559 82962255 216225675 110756739 365553445 864217811 753323131 864559865 890252581 518143045 720006223 853167277 314112247 943189835 596695735 413555819 416839439 446928913 864960813 210989317 252797485 501875793 337163757 182280021 744430673 621796423 196359429 892990781 331919307 13303225 307274561 59092135 662245933 856311541 401534779 717779591 125743955 333350867 847652435 568995799 910464097 907024559 54186417 719426711 461708485 750400881 133169477 228494547 265537331 274477703 998554311 57985437 407638183 700757479 194465465 33580559 993223525 768705553 617460577 21850699 135131129 533313287 584993233 720006781 990105655 379633499 863155937 200681429 695723579 926865185 213592623 643750285 125584747 438810361 242868007 929584617 714198385 601221385 541485047 8533811 653223749 887378431 201696407 612079293 998611487 675991567 782421447 732053985 579468421 525787131 293934609 39727363 486602051 66030087 544109765 730235529 734404205 359990529 804145913 830218217 793558113 994164033 262218897 445093021 725850305 328462245 828597553 348291365 429728123 113492113 912936269 446383117 655428545 955034357 11962651 955898599 206147345 210544967 526908827 298743117 913826353 677073541 255054743 355779553 818678313 234651959 308642973 158384463 764298065 115953769 180027913 163525959 589890115 645006001 27911159 231135619 76462307 431865135 347882065 66142921 289322335 226936969 630421959 741446623 212013355 465322477 324117715 49870489 357771777 939506191 102376115 737307345 656725737 190365233 705222257 565106025 800823085 152027927 793289179 144470349 577226591 272190481 15050379 870718573 485201505 33825779 62295777 954738883 265340497 774855195 157063429 959178069 942613409 8262513 943721959 452229417 307520001 474914149 64606273 535337555 326049135 445767401 664703375 318954733 869606189 488330109 988152607 458978329 869360331 806034985 231115517 387182339 623246621 804751993 602728707 829607899 365544251 386394499 829167567 270665949 291136909 154550503 538716109 362854729 878979775 349578187 916912683 655493227 856819907 912935389 120340961 647902357 439018455 68270675 542329521 372955681 81809279 275511529 198235681 190841971 319152519 301237483 172458115 556715761 603491589 826039329 816078829 682054161 870321491 581501413 370360643 939512397 880348437 279402005 495620907 141028645 152841017 182323221 924077331 493151271 829110257 140255189 333767735 898801121 410830781 479170765 668295319 84232157 154386525 778414327 303502841 179869939 323863009 375931869 664927469 480422297 585398171 727732619 235856335 155869585 490124583 151738775 628367803 86143895 594877801 972509217 68045211 927888747 414464399 766859471 814867233 88290009 310419981 936027599 531069891 787290805 138593695 523094743 744700865 696369997 306938953 741218853 552129827 844922909 75835477 143362431 788901565 884368761 939301723 978694453 339047715 293331161 582342455 684076315 484887479 61893433 360823051 709686159 157842849 209873561 827179587 415879803 592206545 882956039 459787157 16928841 878209793 793559441 225955837 524057329 32361647 528178515 191420351 36768499 799373859 606631535 219434343 888051283 660674672 171934481 354246857 906035615 800066157 373294697 319255555 347315949 1215415 23573427 914688631 143351517 884010939 366649137 905378259 943669141 755597479 824425259 11069193 859780547 676811381 932332277 417200473 463370653 995859427 131211753 968065859 563754977 406369657 293518955 688425365 878429397 356040329 974337763 625727077 512332105 717519401 948675267 665368589 798247825 247683645 405808519 192356913 730085517 299223147 81750447 974348991 672161441 989988131 141406663 347499243 694117055 653924509 853348707 902684207 956947289 63072217 775373337 920040787 776365425 98874273 334228109 450852705 962209161 903164293 257958251 110799531 39432373 186540253 149387877 672305107 724168069 343982023 9529137 615631031 865542939 604681261 833675927 65516425 145310239 880866497 893949789 397611449 45523385 233362937 835159897 414280451 564877477 600724757 374053473 900270703 39734815 674143519 562546521 975518023 68366063 447526887 826661677 956016159 773623903 134802691 159132111 49087445 231402827 958097621 426102581 861145739 141108491 615363973 249289319 258784429 299064459 470573573 395935339 194290675 564283701 889620747 897656151 196067925 716279811 353344023 84261697 183199001 513306223 249541233 508162383 706610123 864888707 44725805 837062311 352468287 629641419 883689247 248972673 846008467 528531295 78163433 353897491 785933865 729207005 585014003 642228639 206873775 675295337 432551789 426332531 895101977 382824883 336982607 954645469 144075937 881536497 259141467 517131065 693471183 954625249 589476377 896177899 141206891 27551689 574133975 603346523 562760333 226080889 277768109 2839547 234906767 301972037 618964351 521971271 608527893 500140813 393876211 346107073 97725965 69002295 680997753 221423345 190709931 342379951 752660041 334321005 516650603 325074671 749150565 522406603 809490705 130257393 245558419 193049777 642555047 430360639 782099557 270428871 427338885 148833253 652126003 252579775 582015558 532648059 256163355 428750421 292793551 326946847 10933769 605747787 327696713 196607093 643639465 47036265 82074155 380557741 199110521 316029571 11822641 727718269 311824563 650233973 998268767 433688099 871484003 279059231 230136321 332984677 508027737 819733099 371265451 448614291 44073003 674359115 650353723 199410819 602541115 834564283 998391507 743079567 983257779 276148413 725169377 279894947 150674303 820756313 882703127 78580779 254226523 307838373 709995123 72219 734047173 675325623 111273275 524311029 624401927 733930165 919617015 90608061 263288367 412735943 349849725 131581953 770610969 840318239 601159403 66466521 89536609 710320633 7231141 295469795 16622449 937886871 244836693 214752323 667495033 791725377 923547119 267000745 634612083 653550925 679755699 944925515 825398557 249781777 450432289 504249319 970318335 206800371 824450825 454067141 50244973 275005787 295613821 857823665 457256569 117473213 806416601 955646465 975667977 289847953 331825859 693613461 296148675 113717849 169338661 125869267 444837399 505752995 456723253 336714919 615776575 221577213 650316911 562041227 306340153 287438597 700344725 868880507 893542093 816318811 37561271 746119677 961363341 562516393 205518119 213827871 70764241 399684513 350732419 6276217 599861943 858902783 21686189 234045737 318203691 834095237 253660881 204977619 671053019 654710013 168488805 610585511 985023551 500272695 380219687 877491035 336661145 134321169 537791255 313643567 553234159 816203115 729931907 884958437 115732241 773242671 275501567 98547407 852433051 685095759 762523241 715124417 916544489 617366983 273006051 965380125 517443367 984548761 67477723 466510787 582205763 268822991 505082115 376945447 892798197 207896697 986872923 629271869 562444221 913827765 602221603 63615875 974333669 237583523 532732395 777739007 860157051 164245101 188664963 266118463 763907675 488415559 588194571 27565915 128909601 778904425 293977063 626514673 211416375 610884119 159751617 625005861 603181519 899930777 224859791 60260263 895067101 537694533 455074955 578121135 11162917 939429489 895270205 341670135 820711727 945312131 288220783 784284871 536974409 252756451 40703285 613395183 270742157 738930693 941332715 536311493 757592285 112583777 854666295 790582821 617470941 66489467 910557699 710058103 888938239 281971165 822666373 274834857 913119611 498495767 388668985 103642417 224238419 818495175 12453091 337074955 268979279 198079117 471033487 234132163 461862141 775886355 896561809 281589857 536029111 33119757 78122631 773528447 791569307 851502899 113166675 92369979 776270741 107540297 66584611 485455929 246582611 392495129 735170921 325974953 748390479 547886195 207527907 512108099 517013189 723398453 461343125 711928385 701187777 135875647 157233357 416017261 822434067 68191099 336816411 683485203 106322003 881241565 645815391 721106953 855360993 646602333 453797819 792605617 829023971 480497407 180768413 692346605 134887245 907408845 411523513 292932651 850341589 715547607 220671497 345149285 364366845 677337147 43010005 323611927 215886091 380161305 56622501 416383303 129380111 932774555 854661457 97367685 844054757 500794357 697450227 988301541 132748329 832902751 204802545 386206471 671639109 176092701 260497909 859122959 496876395 98569081 341835253 260707759 862298001 933930949 100761901 956918553 210573175 995033689 71666721 429612557 125888935 301406619 92813213 479769299 771273071 840226805 321836981 441180727 62693355 914248405 62951621 735962769 402307319 146209723 207187571 795667133 441949245 489270053 75581097 306593059 549347885 789856159 526737055 271325873 699979009 292376249 19598285 981560797 492165047 937681425 905852665 757664677 14966551 769890887 234583343 586107023 895975093 337207301 433818307 776967083 660112869 780781823 361726035 583931277 101831369 676927215 238959041 298990421 732789065 732325525 76697915 143761319 636547093 965558971 544136242 28969909 555601317 398799159 642018921 811847217 101878075 654975969 197318877 284556381 606514653 60493723 696007901 731544317 217616221 266471759 159792894 577315167 25678163 472924913 351783453 472891993 974001183 346290299 407106653 334988109 160559591 461779693 834146857 516132125 777442207 595667793 21787957 317675833 946284031 483180477 239420289 906977943 518194819 588777033 701496399 243006645 712677495 486888471 258332969 816391321 807622635 707263059 24818407 967704531 479132343 912195883 748289187 464201591 939774841 613144799 551638211 878666021 686759069 655810221 125003763 101047299 300365135 804067809 701926437 488318397 20650635 268734157 857503127 439922059 871273489 895733195 658048971 761540909 629687655 115301437 869009553 314920935 258420957 432446861 169047805 603975047 881203855 872928815 826982503 930467685 945015129 408447131 137120119 328752477 907262437 509970517 92583193 523808471 872654757 603453671 44616575 367712705 535818701 235065059 127292711 455477137 411142241 172405475 441673173 992223303 919170345 606925961 855113623 672796517 938758835 579542401 513283005 254209789 52293979 727531131 545227239 454792355 683249213 121329201 165306103 691163767 35202115 12637287 294433307 487250975 72033053 306656999 433090503 741700039 22409285 711733379 481086645 537810217 833950199 644683285 419881197 209686655 432581697 363722623 570581687 979884947 6778863 811384493 585878443 636153011 361108379 343258767 175556515 212383665 993953957 903612447 857569733 597312753 239336501 351752033 210372475 323433557 506626619 96754783 604142459 37065805 414735983 567428139 837832897 529213135 291894611 305098719 136496015 669504601 592956717 709483421 981419637 304419571 681289487 20293009 67346757 388070185 224685009 672592619 345382941 300952849 522050833 738100453 399714397 279353675 784824379 211870661 139853751 14758397 919037821 860512721 787187995 74872787 862988495 128449629 46261191 337461511 716459249 551471811 18803775 804863061 88847981 98009445 111093583 276322307 179523730 395344045 680527117 278842079 256834171 505408527 982079953 820714305 709138435 660865285 510814019 525225989 674092245 979947535 114041679 108411797 12905315 291188665 413056809 251048155 904267235 683226517 650714187 951930959 730700116 585434429 200072571 149084399 246451843 931424083 127069639 783230275 95976699 183778947 621599103 557876823 438554137 416079485 871211331 303311553 312282105 99787517 601101045 835893665 398631557 500652227 578043589 802874269 398194285 916908187 992729633 269515747 535976491 583680087 964264651 774613287 221993725 320435665 528316355 58968747 113411565 158215147 907947097 662271795 11439305 336159633 33273119 461677581 126653227 255323315 364503793 605035537 374158195 998313805 388121589 410515101 285517769 354456159 195419797 344729237 600638749 17573621 376901767 104637289 845126185 149530913 504047047 665471505 243159657 168355581 966697881 247453703 81340715 334682029 624416649 715780181 670878331 953228375 83865707 489326727 202189875 560709937 662691165 693363635 634277105 12404341 846402753 181940089 553480993 642188131 841064259 246840575 72421873 872272711 92987097 2817523 793401945 566931059 717574081 32096649 325773851 430765891 273567611 160155011 829808317 260367125 52096469 475372325 681961105 186247511 289859555 16620095 91145135 943955065 208937731 962293797 624769781 75369205 603687385 495481015 917972751 772602449 505130829 400738137 633659241 433053715 846928280 654940667 724724543 147371215 843196725 544563219 913098897 663427871 353777641 693920673 996176677 899685031 960570813 514136103 355172747 344321805 708570633 919239095 482596383 924430599 80136295 287356391 886678525 863288655 708606909 90182867 815942671 737452967 84956469 989283875 904307719 617523159 539626309 928615429 341352283 292590259 698798247 7827503 370898507 847632661 577744227 985562335 113561311 628376801 64362435 913348059 980225003 46909949 567106907 359841649 498245635 866341727 317066759 800102777 302852233 911507457 730442477 688990801 663217317 818608101 609561977 287520733 793850439 339346707 227905117 79775375 61697321 54206623 872753815 694869081 100680649 845964707 281617515 59881405 389122673 954181699 114610277 674964157 456178223 651721381 816011865 150911979 132195293 150887425 1144933 825625437 993662747 169546123 643402219 572080047 127478607 474147723 52663447 52568841 253780141 760795719 580245345 727170585 44629805 779827987 592190337 268178197 963590029 782750027 167684477 339115195 389854293 134192973 728299555 465848145 400031447 823318407 908853635 521650599 999247915 143563625 410737149 295182865 482081327 737655919 127339829 154973039 116282511 365165337 825645845 999112741 617541049 234644469 301154001 120320291 250820581 111986833 774128105 184312545 288209939 888796809 995570975 670902361 465036045 934693505 902055293 691612181 594849891 732942113 805097819 629679905 554761581 368449051 548025683 473724437 338110537 741417259 523447115 361799181 9986275 170449681 221447533 436331441 793203687 56273051 13801263 956110895 874098129 664376215 922979405 105903165 289316831 783314913 339370443 425538329 368757531 108693597 118883061 271858569 187845973 809996275 590028383 238443229 813710883 303438997 596934885 163407337 124827623 467196991 363043501 924126733 109808841 454505969 506856995 3707951 581431227 195569337 883572985 68864443 971637619 820715173 682133805 544207275 233575793 980006353 162241539 517028217 892366589 226294625 12592905 853838383 970688043 897571453 29278479 950512473 660920527 523517783 359618357 42144271 980438923 239759403 804749277 204339181 291099335 332494395 397410741 609570843 1596339 806785231 84616879 602775111 239993159 89522747 590751499 682417575 358738757 705579739 73093193 617833977 258921781 71773709 426338361 644932741 515203941 416119615 485224939 812684567 86871023 720163555 413660863 913547525 276887473 715617135 313018201 404088879 550813527 77929067 608844451 275357689 117454415 194534749 549924563 723065941 411190737 736051931 467529829 168845493 848307679 997900667 607721243 12108571 675187775 154260195 484093189 809193227 626646403 327945915 533896565 819536531 312925187 929861045 549803527 187956555 61202141 629862029 553577889 288257358 520964349 766528261 342266733 53068361 762162705 541796069 389676003 381372515 529204113 185265411 215698363 758235989 812222909 563670069 719589625 668850525 465765535 134059105 541623791 29575745 536636167 672672111 681298475 571861585 153663371 725575761 217468811 553610593 333278605 91641347 33685813 631405009 505729591 416608391 935026325 172027271 297676149 144382437 140877919 203756273 49574147 982494515 56155021 226693123 651390815 787083655 629813349 126151487 253298899 884098311 47970675 192804009 557384813 560079835 189428365 795287247 922189577 167756085 462929357 215429577 748438083 20339281 948480663 943856691 76242821 49912177 657422489 865958455 447333119 410078943 524358343 37055103 591340203 609492971 944371291 453186371 446312263 658925555 116094941 543262529 155869531 306116437 203847189 723532481 294838843 45111423 924268315 1724045 924134139 190739683 316706121 416443649 993737083 368750585 519626821 399632119 36285799 843165765 641970169 98519255 53125933 865042511 996903835 277088141 358121223 272139181 902057127 742416275 665398259 312784885 505187297 665294821 844573881 772049357 525760085 418952969 521935595 893529565 179675735 38109709 242104801 67487705 268332163 176130441 322707385 912975225 640708287 476940441 97532511 850256769 410750263 820641767 653102209 849552569 316334429 744618653 72041623 69315831 625098479 857231731 669315555 93967377 50433777 6953383 632464235 500026605 543572143 840197121 634881279 93279859 836024511 966003661 760609851 144566423 306950137 234847713 219101563 103803217 48054407 31953821 815115499 921469861 765510863 906061799 645688185 606638747 354850443 863815725 732575197 187664969 624189875 423723365 603071383 278593733 715123087 3132171 101859313 25883957 934356391 900796457 991937273 223022785 435380435 511802445 137290891 27596189 715763245 429419659 12973379 715904001 245419033 816672385 173378955 497080113 302967109 659944793 376571541 228228725 743673253 678922429 650774357 160845859 793608053 711469029 436953999 610703507 528941113 246874769 641627339 69678375 290486715 666024963 502252887 472090441 978278675 575432717 291251023 645845355 339816349 607443461 325390223 849841675 994493433 481282503 961636545 17107109 505859865 272934075 195458133 570819273 154584365 831760079 89735043 518657287 581970611 666838391 731200589 49704951 991386479 378759861 437247611 516682047 832263533 261046285 55029915 158761607 199856641 383205775 694862087 66777731 402422471 793767631 82528477 831661547 619524773 16706541 287621897 583240835 799988423 230360717 640596281 614702101 477261215 506981087 236448487 130648435 839407597 927334555 476867663 430995829 909703089 893708283 47257469 742164481 247419705 152624329 27014977 61755135 848112155 311947089 338435635 853220195 314676785 595317097 161343411 245031461 759038623 891641201 136128231 638843209 333732563 326100303 816995267 68098265 821531007 924192625 53148669 277357031 879866275 493034957 38242839 851549579 551011199 950802657 901020759 756305387 323293091 824061619 792117197 857164593 486706145 334424531 674342229 184308875 188496981 406735445 143342219 939282233 68472421 977475289 92454105 43064697 83286971 941002627 149795953 447986069 70395213 247945475 950915913 535653091 239679061 69658001 696354337 419139771 870104411 951136231 17654659 526851455 866785577 178652239 438895805 429750681 435458003 334883733 261995243 265996413 616898487 914626065 621603817 123926435 52351093 996864671 538292065 98533775 865392127 809714599 893269443 611932875 875370885 372431383 758516041 966581481 625389189 281736805 458828017 10602369 612491715 506413455 583363971 982436665 435064395 664736795 301266067 500908219 132956787 201650457 150387061 780723125 54443901 765712157 523398219 304396263 78457173 915067719 737038077 305786383 961088031 555181627 444883515 280001785 870865067 732943147 417092221 543325813 306555057 594457289 45362949 280495201 591283513 56850007 999980249 407541661 586020747 68132503 774515659 979122453 996603455 84539101 25291123 245471927 582821935 27663353 755856433 108089475 249170303 742233423 299927595 931800951 448132253 867661249 423147605 287298207 574887229 345756351 209326439 949186573 882468699 169218879 537920221 886665177 450696249 671067327 262225923 725099305 721675623 588986437 995753705 539734311 326067639 647123297 99504999 496703491 419254341 108540199 1032731 10111991 155315063 912686391 250256753 564357703 426738679 179929781 370656405 624395837 587473339 225825107 263099011 993494571 822928639 442571843 284858107 733003883 683503431 532325191 436519811 721860703 114467423 382921123 671977579 332122481 801466203 72859941 281140687 44511253 144608665 850969893 760476811 967404229 186804667 946509695 321699657 659485441 418272941 963787675 245012859 821550676 341655207 802352487 432074837 71826259 367513121 1978969 190144475 361946259 843769569 580522607 368740821 679575997 412007667 616799537 637892307 101201525 699243949 849167531 965338923 187542385 216071849 785990259 820683775 507234665 838146763 20749481 429582391 646591521 243303233 107905265 999242115 137982819 727900285 375650173 788199773 39297025 575834431 637195775 550327299 517800661 173549447 395558073 670740349 262597569 915540389 321407343 45841053 897616561 8638251 52835439 668977147 498820245 526303221 579164049 857474807 519219815 408064295 779853619 990288569 626539053 842411567 92585785 154054961 986141677 188869057 378178579 182599703 692752057 785733337 744476599 42135533 141232559 377205179 681436835 371753721 66833137 122974451 578885343 834133581 52510885 336910421 702948597 544873153 499586561 875185661 987949313 999975923 15092799 445706577 758020509 233752399 675959711 750204411 97363697 47762179 90861677 681617651 455367081 398539527 594970618 864490865 637389823 709192731 519516579 678371835 119505069 142021321 588689351 46506845 261819901 674730081 273685203 139402155 168926397 207525371 226464311 450614595 443381057 268067189 490456941 719630279 297204327 801262201 644747001 347277605 888331927 397374841 325818213 503882383 559722689 571616939 84414019 406700419 981150039 969818895 104163629 471644871 951085913 74980207 873440967 657126243 292090703 42667353 959015351 921240495 631013955 313593897 723305395 72178245 848660689 183675899 533036661 822791433 211710483 729228473 131644093 936212009 633166513 381587219 68502871 926670105 212757463 792838019 890321941 24643475 405932095 284056903 888356561 391596191 903016229 881646441 974692975 821409671 700535631 184830903 469468117 447193311 808895499 21877195 790348025 162465155 872514609 528800261 616472021 504277399 146392351 256095373 421555049 732328843 407627193 589079635 970401985 196512015 324599151 129908753 982792175 428669985 57807671 482048835 545151757 575484421 808559249 702045495 212885311 246469701 505859199 648535545 85793195 755705275 733722259 390911331 284144777 218815356 505536995 908600851 209013261 123668467 879383051 296627317 90231165 629035977 165463091 962570679 435237 624195825 790668807 868446929 688320595 184879017 422054593 750749573 347534947 369519989 983057949 758749016 872751031 557456419 393470817 287686815 431282107 828795075 224554077 459894639 657611999 686099125 273982565 617878183 964443039 629943963 461259095 938171123 312483707 47877987 689891997 767321023 714690559 112802113 530324513 843923015 399175613 286905007 319422811 950252683 943871825 723242867 95244875 580495953 745356889 50584987 454575219 896802857 578203267 713657977 110503909 486618735 870980735 628538281 317991991 242440767 562298119 719370255 257449861 465713283 815445473 347156697 334547831 813583597 501707475 166870651 620133947 935043827 27588273 602061745 712255365 32544981 187585621 755969663 43339159 515024027 702044579 501277487 986753079 163836185 928828035 853025625 290201519 306791139 260571111 880882905 373950425 929622875 850589897 33439953 988872467 118464425 59366703 968454829 926758209 87344575 249339679 611469091 306642645 802746193 238783917 565758255 104794561 548864739 455227893 9578773 745903237 830948541 968885781 468848481 119459625 462089197 103719995 100089321 549897785 994969421 779355543 861825221 641830349 766368893 323275109 774139741 393514625 521969379 718433765 737689949 277057661 292460723 173947747 860794295 17904239 293202405 72103731 495975339 28728461 466471223 984750251 428035513 517496213 651822385 370123823 13381295 217477581 78421285 842074667 985595043 985679365 980749867 186307599 275059695 958582417 820792865 643802967 366181943 554505295 379301555 593092229 400615273 82815913 820050511 512249889 378693305 15272329 240965933 804022207 787237795 823436393 415680589 241776891 446258409 718825283 608785529 820774515 989250459 696560800 21114689 350050517 771930635 30680975 362013693 529211857 662374613 706416805 241864907 443160355 18932701 266111231 130356631 229796235 331813715 598306629 550953741 564760535 754457767 798158501 807824809 811515349 666169751 621979093 408106665 141271905 502339365 545477139 874041111 403136351 424235169 954444325 669310147 741954231 593691293 856211803 719504195 570234203 733810679 194414729 667621625 93816135 630002897 649243407 322472461 343700349 455275927 678153681 735631729 487057157 474881537 711522369 486904795 883420147 995602439 838770513 933953739 272219235 446097135 496074883 672799625 146827123 782028357 139173595 320550441 837801041 159828189 881335783 390909055 299745069 52420053 827132095 796408109 966920771 968124305 656384255 111829147 809310421 139288761 734835663 467014649 740271659 491460935 713380573 923890751 773153435 428144499 539757919 308468527 578444411 339620549 318903059 687656529 946513201 150317829 238008129 640145907 643663907 273265995 632265139 374928431 193183689 403588849 968579013 227129315 534975641 743671963 405327 192990139 310359061 327895865 786032061 120210213 236070347 859897593 353198331 157351257 162383433 582078557 407323773 440507993 603495469 389479207 414674501 369578987 422399253 215859553 447735767 629946529 810583727 605354083 622842177 576118483 104820653 628651977 66521627 718955423 820952261 854805109 177126529 809783793 965580223 565678995 201245211 873552759 544011363 679087513 716254999 323355561 381567361 975898435 90264875 567968455 473963509 932273813 318862999 783362267 476093859 859611611 952039709 656478901 214334579 383302825 791816975 788525291 403767129 306639581 329679937 428700895 582302029 436901273 234465554 705932731 642947153 570297419 516824939 980493163 629471859 368760229 593067957 3364779 284132033 731762853 709539819 969113849 381472345 260167569 107482761 708621215 753084249 374054129 510845845 320302251 955179503 936563867 616538013 930252537 527312717 847326893 712211641 64737829 216567979 437422219 134534533 695743897 238646347 236180959 834015273 251484037 588562555 260779933 846761301 129806307 678688393 692027141 570111803 414468977 766069203 327151255 927622811 813971639 748485305 47160099 522112955 412730121 815893413 202271931 718935915 858389371 548975625 179893179 578859521 203940845 917043041 47061961 345045593 722304523 481834031 937709263 254927065 221315651 876573437 966275587 528262771 995314895 910638427 590001889 572067227 188797101 630395623 751431211 722913613 498586789 336678975 519533297 206252563 147050057 922868753 522909573 367303931 60957937 489593871 189759621 700598425 672784059 958321137 473795539 429478411 422146963 510083706 862517147 780141051 385741863 224882805 724695381 126180755 454780655 896374709 169497273 625984907 665622829 660700691 713614029 67447585 367990247 630916719 629588701 920090909 845885167 174012343 223164285 915350219 93676507 25193437 856477579 779964673 886261519 863118553 694601513 106678047 51777199 138434991 155005637 843209227 868372399 756698471 594080275 901921587 407920325 622659607 804811021 245161867 626570609 364155351 39547641 186832021 123814141 201422279 90377573 200583509 709008759 759145751 482908449 222637915 982696635 871269363 29216589 536193979 719502693 386213529 988151373 275539475 971886559 132342347 58614987 229346189 253258587 925055059 507544765 536694227 311974605 314266881 308736093 696409629 487312377 315507891 137669939 914739241 78755943 983195849 793035017 740127039 733027429 959690925 549180147 432287531 16399 297846995 105498189 89845573 5473857 180823987 628405181 561760617 962857381 626467025 140676141 700308735 306012587 878952373 175227347 331947507 808884619 150619381 965626667 756198847 15808327 417027881 281919993 592217183 937882791 607708659 505580617 990082393 860022329 425936637 997252975 693915837 746530391 433309945 35642121 461018143 966402079 145298085 285633529 192783773 361286781 340386237 335267693 52905185 245697311 320899601 290514391 171811349 623953791 703678065 234851829 10311409 58698201 516950455 298689483 316813237 394928699 667432899 6772647 783260706 125303151 689288325 641005337 509297293 16933907 492025576 183494657 959999177 672312709 796030959 211419009 383993139 884973803 833466259 165054727 73487283 882923577 143301093 240958278 383996599 821235493 205350389 897453371 719326261 399360049 504614109 91093291 829834411 790969251 759213247 921363361 751552031 287530123 119847365 105526895 496241441 373291461 536440099 950048181 467335109 562831597 316794385 29542615 715874473 757392749 22183123 86644607 226445303 295780215 425818547 215085219 175566425 648855297 895001089 789725567 548537865 975707339 493851419 904692375 274952641 381106527 498399585 8834231 765529547 374482955 716171581 928520179 614988019 620963819 854447139 913454759 305961361 294699739 390807947 437729913 797723265 184992389 207812089 42038099 318602283 476525401 931051511 994653805 910814077 779335569 548070167 647374143 385240301 16645675 814460147 991582351 558795129 244428271 692998701 876021609 142970279 906130033 315026287 582136353 870594181 969985797 972767341 773220181 637876909 924925389 408849631 273922791 306154295 221346993 480156553 764821253 648638159 474821729 234454325 579094817 917048479 433315669 460832693 81342715 485623649 289995983 336299235 256942995 754949199 170753493 175812513 954315321 749809203 138785849 830374105 221550973 159390297 862931859 722780287 459204159 878894489 995407427 3966091 345442467 969384271 113675377 834728449 849248531 990283875 508719883 506565099 588792643 262915651 497246927 751833179 769659699 893155813 789721911 214613355 773383717 887555783 508214159 229874237 104717731 685002737 676270055 82299387 930970757 982530285 55840791 685057753 738051559 475254487 188530365 377074959 823098921 82084167 177267781 989555169 87448061 702581609 445656539 904132249 371005779 766029033 820069499 325557129 145828969 777398523 552699365 588043019 106918593 485944673 581808543 782450305 86448171 725270879 307012089 748562263 220924859 912508099 674152207 636022267 780459721 716390115 83062717 142324461 363814909 226326945 191093933 131458475 480377923 522933855 422919505 525300161 401022925 739390221 370958557 802076609 740419865 900590881 187162967 277521989 930727915 635813529 502706304 436361455 748036689 109376765 125578993 721080169 312548251 175040599 766074107 39794791 207801193 643208771 156552641 264605859 604151453 629784283 694345771 71511517 51374181 286611908 640182249 815798753 117836085 278304563 873763957 894687105 506706887 866087127 839218701 854301591 11595811 873400563 353593017 186754565 987334289 620117835 346917195 207225013 887044777 436158509 679093851 977221275 269526597 131104625 852762953 731069105 570367627 489546611 821349693 352294135 271072485 981014557 428311079 357197689 107150857 908273113 856302527 37054281 345141491 435197087 341351047 788077441 444619749 341217517 419203781 772998211 484339567 961552585 398641547 318626233 828237667 206345411 790202289 445800727 869586399 767226609 204127445 933077399 644388931 392697327 715600995 632308089 909232705 554667491 413688457 293296905 437503177 312099711 795166527 918744473 878221081 336319735 397081413 965130371 139204533 627995399 821784357 393329193 299345257 239894009 347187247 640660215 154027083 54531739 124651387 361014365 635379891 544513855 518359271 884242901 183862345 484364489 68202525 265675237 387357945 951281051 745801103 286199571 290724343 707535525 843554163 107233523 23162557 362750557 612870857 966346014 751272977 314281923 361760347 367397433 446983937 650498393 189281719 141827821 807142365 143013937 645986873 5109483 471734085 686511329 782761469 273656301 536326429 933484165 690680045 314763959 224353679 477670851 931951033 835136021 638482447 682840013 177035483 460807637 700493917 639194967 150083473 985145299 163234681 566240671 713006821 811748593 2968755 759575915 966559909 182547995 266025117 853639177 803390571 427330881 991716371 84446289 509616279 95225949 490560315 498867105 792211281 478462579 787161727 320183517 744269193 810420879 814620565 415644533 802723321 728596671 873145465 160654431 956959261 365826335 985043055 47012123 114661699 982681809 519358211 879642795 848815479 256716545 869163785 219945121 994669715 264493535 878693791 931898899 649089845 827436965 612215591 734639773 104099273 687827865 396881997 721584999 324673917 364336897 871123721 169863197 421783881 77954097 517138323 900158969 483842287 532658051 861207409 162824887 852943861 50261083 871861871 123160989 508051117 7412255 302459811 803741817 530577199 639883077 989308005 698473635 916989529 997300295 221835103 346315769 845464791 542952613 889261431 637304287 974392853 523218923 199546087 42113607 551031631 871346861 859858471 437144227 229702789 285975425 315638015 303969011 357006717 530663947 482298231 526705855 249931463 100123127 534585063 659946515 588319423 245038069 665558249 217949831 977028737 126015681 682283107 477577271 99004151 8030235 220372095 532382411 744302035 989883855 727309747 469790831 544220811 103357103 270292152 53133533 321797983 402548119 207514009 889949777 379144793 602813029 648268445 954862737 142574151 9494279 44025689 459312109 8057795 807496813 135137193 641752121 678205997 254644115 816955571 225127381 926424749 929562745 107553251 495983269 466694453 654374187 398426603 247735577 65578873 360453821 758509513 731903785 811796989 602063429 343806913 811418447 659493641 689580519 326309983 245482901 443589035 789774799 886106999 335770247 303656125 903219501 956068647 985368125 166541791 831643965 637401809 245158739 253684343 110477375 545598499 622252017 767734971 367149185 552678927 535864517 409346205 315234129 364569043 556779011 901728481 706416139 219571701 376797293 808875533 472808211 849660221 580885065 478472051 84849359 378304449 168828001 351615531 914853559 685516255 60730639 483434003 143914559 911277883 460125489 707141335 457433071 16544191 711747885 926272229 189506125 472618655 726095343 942296181 697358063 90042203 247391215 394986631 826111851 276757173 741272621 279898085 836375653 220891575 515619629 812460062 245485705 196507321 989832189 859201677 542544263 985771093 583220283 896427853 608372507 467852401 611872241 136930379 187491847 556627255 783082713 795915315 477420819 714546205 489141019 66549121 587719699 925054175 389155181 579378035 291485923 254632577 423153421 893074195 842056289 652818511 147600065 844501553 71780731 654164189 345706457 535747683 662784033 862793991 111328553 689490955 702551630 469486323 781624337 336508243 944411911 167031053 924984181 426736935 231384913 256607495 363036871 28743235 599377217 449308895 248427257 748655653 237121779 42432473 957035405 77280789 688535941 217858435 194068871 889620519 429077029 94132909 34827893 369749039 81469701 170218103 84982639 412442831 433035869 815667523 752971793 263530607 832362351 928157631 266201475 335925311 740054919 656816093 188911987 815683895 541738233 640984029 825123607 826130713 383326747 745360191 287530029 563697517 201001043 759840211 284471291 895516801 960282889 479362729 200516689 179218543 579533487 610782497 999672963 18917909 900295617 522944479 48604273 319206431 927218625 422424013 530207617 338595323 650804279 854349601 558811039 961389281 821410231 97816663 554287173 984735443 291825373 437816625 299798895 638315927 401179975 16695231 504613537 162179007 64539811 566598483 525179887 192167331 497294243 828144009 953740523 630414433 235312895 362169671 996821427 328421 947526265 298651065 2979823 359285981 842330591 425213265 383133133 403575745 716521471 723368653 559663363 452629457 365381047 112799281 838481359 267031831 201788645 205666249 572044793 909629027 94923127 305143081 728728525 371901515 220279903 709922349 464265505 21945393 391601301 524981757 587160661 918305087 644054043 783463422 467641167 722813281 206884606 345259757 557486715 430521427 986679375 890872767 357392339 822613139 695549225 731604667 894440913 584375915 190817709 942028397 949061759 967408875 689935365 399538859 837149291 231599337 734339939 48358287 507016103 484616199 577487619 223659645 975324375 61326765 335190311 557215011 414487581 565978123 220378647 413671541 919105577 928303387 358173993 638092205 817010993 656776603 480164275 775212371 755360245 81870867 295852059 241275953 306413751 601760215 632556745 541398617 33747529 898398203 859296049 523671597 706140415 23839839 894138059 96395083 881427897 92682927 63287321 844160419 23831261 458031449 677301161 78358121 266529625 246320791 785361161 682310937 355663777 706422119 642134487 153282167 812548279 195290769 935008947 407717263 988245791 697404327 17819719 719915189 308545513 266621953 816105029 384920197 985138087 671143869 737713769 836385509 433576829 283315911 689866101 59422209 944873997 211284429 769419315 9181515 424474759 865760583 292591731 594104961 390510499 187100791 558465555 683235495 689559707 933209699 775886323 269870345 455602743 991774429 755133693 953248829 827157447 654815099 679542563 233287965 898144801 721549473 899914849 850165709 5419168 651357299 64011193 128120507 581049391 333754853 90053685 340331417 71594039 134340525 17448933 251636837 331979699 438726475 566351079 164058725 172518943 305480201 417182799 203737889 841750657 806679029 595154283 741516657 481658983 305770731 214726217 663779951 747321577 955000199 867356467 292866175 730997669 472565811 797001061 32924241 248835519 449912865 614252079 997404115 637528809 904648773 883971553 676664135 605022805 290103395 762724051 972876335 824120259 709535235 127235179 712878165 603901563 166817139 910506001 536083153 648439369 775091919 32438329 344983807 626703491 766174451 205648731 378856831 312175881 970634377 8587003 153381699 460084545 169417985 742228131 678568059 801944857 400554387 773308131 887736229 475436039 117942337 62005337 637423237 888963593 670403283 45703333 550208807 579865765 186766294 214057329 923189471 930990569 41355175 432561520 936150345 450098029 724564323 624676701 516421453 752523599 78912497 524626681 751981585 263717173 272530693 249869 419638799 678132043 142982679 907729775 405703167 707476297 273765731 974566903 44528103 794850159 76379895 337988487 456858643 599725439 620651421 490414089 672015385 135905227 214359027 820611185 343811539 803014185 42050903 204786615 418331237 705588469 128588015 651714527 7084861 148112919 966939311 593559795 457752847 384343037 947993165 872428547 376272597 412158621 2218571 343905837 461814997 216011893 180252399 367469457 194480541 932351371 790865737 863050329 980686079 45791853 266235445 201708473 967586071 291135283 247462223 893219561 657747787 898132091 972273153 13838893 625515333 421081195 882139261 925268943 586447355 437388207 292746425 808497953 38129321 495764095 506109813 837671803 346397137 320109979 643939131 507678531 56032323 697006407 476389721 564825315 913311249 177126993 317582571 996902345 379800473 472701199 530631629 667032949 775784061 499489891 821042089 260735077 204216489 441863855 397675247 73074467 136825683 472830177 181914585 505259333 233582071 545526643 456783205 350090851 356302681 146013537 858514011 634902303 475973765 610586419 341068367 86595107 975604177 121129459 250197141 166241059 849692631 716462651 147595599 733060567 559896699 44363561 408068197 559867139 638872041 704632675 548029575 886925169 635135897 19405333 174998061 633293555 196370243 590564857 568640153 836780899 230583791 333166153 481138897 872066979 571173605 107537359 83139751 748827293 821280957 461280727 692482995 976005189 683495505 675796281 86113877 38522003 692292549 21214033 196563125 137849483 579840903 597161735 108617665 513940791 872539979 479540681 34590263 814791849 213828365 846863501 738609041 88077051 138505231 630144721 254644507 590820687 891811809 688193947 593264869 207825615 848767829 996707451 293533383 271522223 968561031 553711749 679087967 902136361 154850525 995124057 103222553 801667453 602781697 704245277 32484129 976670967 773574889 652490877 888374387 749908199 443044305 106416563 221765839 460180395 359583293 151583097 942477755 618823843 872795641 529215257 672902535 167162683 338754073 827520609 37264463 284450787 413000187 999082659 881104111 733839637 520802369 268493763 514245649 289066581 36376535 259084067 636601639 370176813 845861108 914925235 392007525 685125167 871064885 434894313 271247057 60674037 156431607 369098947 391416621 870929953 33003949 881012423 292642575 485889631 278082955 78641669 855147723 754964829 350129195 881135121 271716227 285959131 928500849 410956043 560438815 262216087 908784523 453615769 606526031 128753245 257671659 926946537 921243533 499555071 285546577 760856495 822464535 518835799 230629053 627652397 223383541 673080391 277847423 757750055 532977145 620608699 698262057 996304875 704122043 990322337 727852695 795814225 702890395 564850425 71489005 982449589 15743425 185655233 709088153 842586879 724428061 431231237 198149711 289020829 100580711 443553239 499280139 459827591 163144481 252494673 547363857 365431095 500145297 866815381 109676013 766814901 139994825 260352719 220956274 730010257 526126753 796904495 433684415 879436511 709340599 249003247 215682871 351457343 186375031 391372115 902593157 152552151 554061327 840376229 95582881 798766933 569368951 315397431 93269187 306260973 117985903 207330147 752137585 590157665 564869505 213621901 116233591 487280629 745437181 730381083 375409897 200067703 646588155 96818307 544452645 926079295 578089049 852850239 966157005 507570475 564091841 405979343 842017999 555166367 377901989 378578111 606719325 170263691 259172923 160737185 58194933 359225701 729862787 283396879 223480157 820576813 685736263 266235819 996058269 858297701 465807381 928670753 3234317 670442015 105741385 181397537 630232647 581172463 241169919 414232933 116508463 43645685 154638113 54956723 552153843 317402839 400635999 103984849 214094087 698779587 430126643 85634963 221804325 570582639 963001819 44297939 929845333 63206423 850180193 596133235 213868513 990486405 419787667 496503391 356797021 605133831 855272203 809286023 563860645 908117105 889935145 968859877 735329503 353095713 967981077 552718207 252076917 864849921 799003327 369074267 168918045 369057147 198693857 190998925 731205331 502852487 842451703 86469935 783937243 930681251 114153807 233678947 927434689 62033623 587670261 937838165 492846169 979815087 138727875 876916533 376524223 662330433 280836183 116030271 842614873 365012781 12354845 194663859 930700499 650962585 965336387 896344029 854308127 513130035 170869697 92163087 279977851 317331249 722207321 934250659 650236267 989405521 750082704 943819517 741493949 800473561 109741755 588941443 382950017 500073623 331433199 108653997 105552919 128111843 251201035 453928175 1816097 241902747 408457915 407195601 196824973 591260451 494139499 325206489 500105359 336472683 654504535 343838619 551305121 300925931 431591551 831280049 105491081 991488413 815162025 189888957 725000021 769536267 895316837 785961323 215855959 473744449 248598799 116251499 730461739 63075541 671302851 857023097 891694773 583000807 156313451 230661205 65572387 73284637 488004793 760121549 456614121 425186981 811024931 681296047 553538499 575872053 531329001 776273111 168733877 818356491 29064213 756989735 936967177 989859053 239922549 358214539 207205721 598000683 144905379 180259059 162334331 291882649 672701183 969491035 859212951 482982037 481788337 297954755 949141783 28932105 386298027 14992697 957621937 744594783 395314593 723714507 963912801 775425167 333398295 592818837 313056875 973011481 860754773 975233467 611538779 367427585 935662953 382682979 92926727 399643861 204606509 858475715 808077703 576245931 879595841 272619797 273240643 175468581 918889995 199968923 301651175 324351845 626912961 413471645 586058343 144299289 610074452 305742191 203788797 553508218 726839435 506885995 884090927 647159623 639408873 554004469 184274889 12675779 88473537 416978293 148055265 205963967 238614059 705868125 479352273 804621711 247303685 888879401 825274429 310773267 428214523 991752537 161550867 434264239 915148667 412406395 296449671 848183381 115063741 201046557 821532437 410146167 125303489 753216987 620376191 919121175 398980433 586167385 796907989 798819769 488808189 777495613 222748009 733885547 297230621 107193663 967989719 601892291 732916687 279313173 784616195 611457251 311424767 159060609 876918557 750516845 579952473 852262479 390059413 227943825 852221273 663870035 989873193 913677571 595358781 778032227 623498715 192748551 488675087 352204645 155811835 463699293 776581535 719038527 287775003 827618901 254530435 352757481 695488025 871883721 814978845 127173977 638629143 557126417 276358807 984693905 4598401 747809561 909074653 29800349 396637711 424757069 342342315 592771729 577246649 882914977 672373119 791197059 530773189 527003287 669691041 620897689 214501055 584202289 173719589 433687547 80666749 802546947 952899551 833786587 267341079 694483997 663700593 656263285 127108855 341600547 602792515 963390985 498901187 759555383 124484741 378762981 540967540 402098697 461998127 161674071 486371909 89949903 458693891 410004925 440190395 712123207 533772425 267570037 61338783 510287543 320377103 201186285 424910857 811087599 398439599 756323221 902613331 949501251 800453703 672461033 273291041 639937427 168384131 761114987 829776483 215020869 951622353 495238819 815646535 255872581 102076521 83020583 183861327 884279309 751066957 213469581 206616893 689577623 781944643 434950523 245310493 300245357 584485085 247104665 642003011 414651549 561719923 586996121 388058955 233982905 547270947 184563511 489637915 870226149 482769369 738399541 210676701 307620291 891287107 54570843 914938119 790887555 711492569 61078655 709185621 813382875 177980635 341806455 686429643 340798729 958504275 27899433 371157941 762286805 979308561 323491453 52638119 901302921 266782635 438188901 878598015 645742081 827046275 365360093 486216287 765678999 605939395 297725415 557061045 357698353 568969047 37676939 747744819 186825025 115397371 523289567 345876183 438769081 56837165 454765049 482944999 604637979 226298167 945687039 215157739 702228331 554334505 496509465 548429499 809515319 630918361 552975225 51505775 559084183 684449769 800682331 697058417 753916457 179323329 239934977 454824553 783323153 448704657 198729653 904154443 878101759 982686291 743958983 898963031 125258537 630712773 69900693 511627789 936485197 157065583 949395837 742371133 943105459 820536485 258895853 293170169 201530663 632209531 899395159 74707613 10318335 733301971 421241907 80086223 618550043 586412883 450258949 379124345 612812001 502094449 72443477 926166737 848048703 751774303 724462777 617461587 286409129 108410913 869482183 613852865 156364833 684461181 878373 509858347 363749419 872789765 365799035 444295139 899679445 921094929 146796157 533784711 264375991 39352511 582973667 343401977 282507503 202877947 164352623 111150693 365146145 951397747 430591471 25524035 667554685 806417823 219296049 590189643 845961657 376677825 450954259 295070851 827601941 630174943 741182325 294951223 169685331 964879051 756206657 303372027 360837317 537656091 939534953 259563693 666740033 478163507 329373163 972396143 23398947 987457591 836317123 218162863 183444563 406742555 746672385 702125857 893799229 435866773 825386933 208212415 332634587 804034341 391598583 737471951 245623720 902214421 560148205 49238239 399013805 780769395 442122175 160192959 910620021 342355227 852230305 473268111 572814361 435006377 177491403 879041203 260741943 182192263 771386497 440134101 983851507 892756199 228186123 463984875 414407677 786515389 876478143 52952625 288230029 871651023 251167989 235652905 85098333 872168863 463811597 796197283 34528183 31589507 528521591 140766385 48106343 473886607 486608287 326672303 340558275 46140837 204303107 508565315 192556203 693319533 646261029 720558167 840294789 24939095 746831247 357037857 637076031 484291483 825014483 517416477 637813839 607165755 545281929 802227983 120263603 644906751 815275863 435437571 470432241 285823861 159769573 621142605 351308055 739863287 83854311 394940811 606656701 527810213 93023765 786107039 699193089 171445605 691677747 641296055 882976135 503600363 971083787 570622533 964506241 615546031 964455021 22141447 965266849 115255533 378046519 513117697 492126503 534368691 240390985 389047937 73686747 435515851 474186125 418306327 760804617 54467539 50837495 758515107 932353929 44844329 796474751 217363783 10943671 21539571 142215721 243387249 822947451 883178789 59286015 430693589 485361987 268989301 941940753 889481327 831012611 281701477 205454717 861875329 697264701 414605371 910359139 657123227 561236215 7940615 478160109 620980109 224890811 388946085 525148239 945182329 247442595 763031473 546011073 813270973 742648397 213744791 439067527 345292041 479699677 215034242 429474283 584958289 196144901 459340913 252535871 819876305 142197495 975235615 489094621 186316045 295217525 593585431 906567975 904304081 420650177 831878311 628927111 801605169 925971885 400292843 738673 562732681 216812175 37408447 902976349 248777343 172328003 655236813 709970639 729466367 317789489 266885253 663350352 425471547 304060487 325477921 837135731 942107313 417078779 28229279 549040595 231951397 910225227 945200329 933462545 24784803 546784957 416451629 3031257 157794175 650325857 661029413 861946841 339556951 236095947 212460753 489232593 191564301 803350299 998022169 121721983 992411855 473984503 835988141 466254255 73701393 709216651 424986373 671337009 103671693 876806799 272495715 565249507 958557769 515616835 634216397 423056293 188801939 864269675 80804117 645006947 482952699 760201557 26678227 938609163 667812961 504758489 71622247 437517469 447883497 713589075 922192633 39534871 642647037 51643307 416916599 850420869 663306065 336728399 935322015 61734135 159033573 149117237 208441835 774239883 844175867 594330331 637256871 517163105 686927389 53658951 122942435 277573541 19408931 81212937 338873207 811126407 246008105 554437685 307863041 432623425 861009807 729501035 884709869 460893975 588006407 40294097 647295591 585471315 404765313 368519187 654900843 383645255 920462139 400164459 599792057 578942029 172272569 67462035 967310295 73379527 48859589 101616341 716205845 501461279 707433081 692442621 449044879 216720329 738770219 411523171 302801441 551619389 690287747 823486435 359245173 554851585 834709357 460271591 664044285 822748313 659049499 715243609 815282669 629580445 176921867 528732337 302408266 553457573 684315651 852801773 754521049 677442899 215554315 270200979 680093485 843368787 709642105 567689651 923656347 702187605 652638955 695231969 37483333 334268691 575861827 717345085 749770259 134159185 185541807 509479277 989301429 924859609 912759971 550587549 522453157 434403453 283047129 567427719 792736289 495670039 136295769 831658853 603252529 618200201 398580843 795906817 287242919 916625087 988744103 132364201 927183131 801198249 283272423 980257073 130929133 114656577 219334481 122630647 797328453 516025483 779256911 310011363 386224659 788401809 959364759 720813411 469591311 976625765 411241253 727148141 822781883 891158817 354454075 360082817 199547485 317831399 52182633 18617505 584140807 670104547 793666433 156019807 548297105 317035333 151934369 164203215 371861145 130772039 28809259 451673233 643368587 493804335 435930827 486068683 655424917 325815875 945754231 138354985 297898415 641704663 36097131 20662429 149514649 694675013 909295915 164274107 269288925 931129583 803161475 170136561 597003723 707669823 685642121 620784725 471963771 580346537 544760725 970940735 326096843 355691687 359357263 916341133 847539045 637944249 318993059 488464803 982171579 228302443 934303429 603553393 938464003 422893647 470919471 214993005 851193917 876283135 611509927 282071189 847897651 994757407 632933435 104239985 682614899 36643157 644398651 901329933 934724697 881626967 56813383 818484991 409121793 628249823 468709699 114308455 472109909 877811885 780138585 493116395 309823751 804403085 919301629 938816953 44510091 127160657 160225775 287238021 584329765 600851923 326687025 647711889 415349725 604411381 976119053 415706017 326264961 459551907 945388571 603174405 460059563 768134605 281977141 10813585 533534139 643003247 4758145 243533987 497781977 782440585 779998825 344722723 588506613 726965287 257347235 465681793 201589705 122839131 255432491 723821743 953348563 803434815 731561797 35445805 426196315 504269815 673641085 747364611 250342003 301511593 635992487 925534909 759441651 436321931 86766049 197805681 800790905 631672023 414727053 138645439 177469041 471966157 555309911 108455373 110266121 40429753 234548023 884674633 892526137 976699887 39023461 164754537 294223811 432025541 407129447 171852777 27603245 456076703 562720521 903101973 602136777 610051817 272044385 257384629 650581679 410465299 321308615 206082851 879292349 844510105 122024677 317599549 805820063 88520443 18495395 130242151 805059777 715875781 757238325 509239441 235168607 324231817 368568603 595376947 305351289 840944097 555723285 889450567 545956309 297576305 137400625 452270935 613203459 553774303 452161477 209803375 388749663 725101283 422766443 827673381 16702725 698163761 632916745 286539161 829867487 748605585 363344329 668909937 536747423 840303049 120136737 655081691 327270843 171963565 993325773 217870733 782978163 293027351 235724239 633128389 626129361 761713643 868295543 973475657 148141219 684556303 8636759 934525543 431025027 783739 404717387 431820023 336694225 559541027 186707577 207401303 657713333 42339087 235635789 388509549 660291617 561541445 855844217 817742757 346110409 231149273 746087675 384260087 249065521 784168677 125952791 177463011 199570337 504942989 677219929 799687275 284389159 33709817 699662485 854678819 83405725 769000027 112886249 475246363 822028963 44300527 371007927 711368437 293722017 177747701 881437101 88987351 655511239 906631353 942305981 826960751 292269581 849188749 249648165 69907699 928964149 244784333 532307563 127127073 990220229 195788503 913149527 969454911 576584719 482638873 287518209 62010653 271083563 337045507 733047233 462539791 221438455 898362385 930697025 518274805 152344351 468849349 733818985 577562163 106397713 96747687 503453807 507500219 879259397 82990923 69485261 556118783 17413371 134507595 850545739 354919937 946004159 794437195 755435505 255557187 680660443 852086259 224769047 600172247 346108845 553131253 708104535 724890707 892000337 778765069 874596247 597745619 184716211 209699579 752186113 661493759 724733055 857873293 166411019 213452293 136595249 821426321 81577329 872623771 78332679 854537699 174906679 278892287 262382347 30276711 275356073 754349561 828197645 833486597 121430875 20725971 80062114 693234095 524392745 733301351 36517423 63760993 595080505 440915475 515625947 312216603 851098615 339146941 196851347 202140651 12531989 767462353 311471379 676696031 212895377 980625993 400311513 501114899 799168943 892436895 235957037 473267627 256308733 663131357 968155171 613920719 649314379 916826511 726903183 641407665 778500537 395844301 547132435 13612685 502309033 141114419 645428247 782212773 527038409 430009067 749876939 750555713 624845067 536763037 630617383 178199477 239485615 595223685 223444205 7621981 256427573 531931745 46664101 57908375 501508461 512767347 442180509 450742993 81492839 279158157 180449007 471121021 966583685 60221955 130002553 251076115 787111013 943984309 739323623 995355925 298393847 179719431 668873639 244979473 956864367 240734443 489408497 574412437 778246217 740246483 189448647 449717309 149763399 845340609 879852783 508320685 661443193 993256505 386660859 105503373 235810097 377303881 256255811 734023567 317979915 43346569 170002405 132192111 992838893 390542357 979015373 13532655 312025091 297139607 610911145 969380567 922652863 817829177 838920689 996628733 73846751 687281843 455796709 686992695 940735847 280570947 351751567 200864619 967587747 703985583 368870335 969345409 753138727 630302023 186859787 379933803 66002641 400690911 977140949 768502565 876782787 514471639 222890567 421505457 744084841 220732693 452713805 762260505 364162939 663398919 492532643 368404845 550313457 632253857 115706823 306242761 432364305 844079205 219357187 167108177 408434535 323973207 726643559 987446829 182480585 125264389 94691529 798570385 90523473 109067655 709391307 113418677 77539939 937870203 116317653 92505307 804598701 826021381 975628567 707266385 371939363 356801493 800416651 51669605 890522367 606098209 913372143 684351349 826981065 389158567 937567947 701257953 257462859 769176239 856834931 150181139 689491351 836508165 878068475 216770941 900442895 464191231 929756997 457767323 880912977 977276029 2224631 385865199 330205517 570224869 613857671 88376577 932772663 937504035 239676455 777257063 654061963 908207025 233686747 423854007 437283597 635753867 706835561 848509335 274157769 922542391 594156131 573326511 950548755 77009347 874254369 171376819 325361799 183004103 508013505 637901659 549516555 428766817 881653551 749581163 177714891 501328437 367497497 787052459 688819001 644240499 649533943 47882225 968636435 489546705 796385547 771662867 926181981 95111053 521704283 744004343 576654691 683749999 298677945 686728581 720571835 466250179 725250747 277353393 937356351 753036895 139497925 86805363 749138195 45773731 783493115 363275215 727356581 372594293 871345745 268437453 556902055 82499 306847613 919818115 978335001 365901827 546354431 286950663 698164027 793118515 828598305 222036863 120268955 926444249 136138993 643234323 508056079 11658371 918226763 979072759 113551025 993001801 45893067 693628003 457116389 62971593 957354715 686529435 185959771 640468007 789420973 740512745 867572225 281349395 204713781 887352221 703741209 527662787 240203577 129982741 947223077 825829623 33515323 494547889 139874031 48420593 375442833 948433627 634298511 86730371 285547087 348560133 456655457 593185027 873956439 276905133 639985925 704218701 70348369 962030929 60963693 889738697 51588525 257788027 833778121 983505765 928802211 343889089 92187287 47558293 873172533 939109049 59386267 247960923 931743019 679877641 109911777 700790075 937439507 530943067 366699965 672138821 3468871 276968029 70896077 425643021 187196391 792668877 969936371 335545523 950729433 466545005 382256475 921823707 730448081 380900871 918883965 80076213 163140935 694477677 335243281 320055289 585390711 360955511 240301085 692566753 271904879 911527179 705289965 377326647 73249273 700872467 716780567 64495687 490184627 454817149 759269237 284665062 642999035 246084935 625974315 675733625 206790391 712448627 26442663 730699487 795591579 991984395 427083421 818155143 47932573 478263841 411264519 594219883 262626431 625804495 679767597 528897543 668931975 656915253 182621079 243048545 224580805 397852547 406550557 206063369 947139349 621597413 458253785 286460435 846168083 792883867 835650609 7431199 368522539 317876963 10984655 688827729 541261449 122085383 841290921 255719515 246034985 562358109 960914683 189016431 669731017 527902781 65733191 229902669 247674611 516377865 30470493 692552253 519173109 834064939 765054543 545035531 867208939 643650327 889431419 331223055 873739697 228882245 329421955 306391589 426054641 828317497 345140051 863510965 772649499 908124541 453606688 880282029 219437161 12116387 851688809 552838275 211056089 172911429 120613615 193213237 364841781 202387717 970655937 250896457 352715787 260789133 912888111 25710799 453387701 578762897 632335577 431403355 960703571 949821385 673270177 445676301 102982093 999834617 856798133 716550793 459851475 970197995 151550087 194405633 744969181 306095985 922656212 859633447 305257005 655714915 366572197 146034237 872673481 925475751 748313663 931865861 964744067 677709863 543024955 125630163 959148019 792326611 123759731 913450615 345392249 615619749 779416075 222114133 834109757 387454881 981039729 896058959 397496111 596608465 189229913 295192789 894304519 6266183 328175807 328757725 65257029 549323293 879986661 47467749 40950323 897995125 863837787 545020659 470675681 463896697 221050611 258828695 907057703 208713053 424207561 876864997 71806627 696246361 250989123 782900605 857673921 118910129 547809803 916801923 916826541 363413423 215824407 397422505 956722787 882586021 33129123 739759905 123167395 482377965 737041203 293334957 422650867 997553385 531652499 48822417 595599523 946406147 127712983 442071451 48313039 830585775 35206749 896383523 667186515 166099303 204277959 401659909 425406681 752382891 812723969 4464297 145539795 178750983 224495427 295547901 808976501 23406349 467284997 875751799 140658117 136648023 558198029 818569495 72434821 11341447 585108071 426529887 487279435 729649735 831598953 18679649 611482219 831494987 64661421 230634929 854845191 122181707 70779927 732087663 353025031 943570189 772298197 474381889 690629403 582700887 669472089 907921491 729599933 870556667 520088931 412107615 461808683 897725911 205073907 990502815 124864621 38356173 140904793 726900957 942235989 155542211 295907111 703818599 241837435 151391919 497645881 372807951 551427135 516756873 630334131 456596024 620159689 930752855 104377093 246192839 47968009 760597023 768678109 104556329 628070583 9172725 884378429 676508501 575277141 839586035 903683175 672980937 872183337 754817595 526851815 441419405 795747141 169464567 276322961 127216685 832233089 761292891 548538753 981795519 338383227 96098721 354016541 570969827 162203551 429930249 94386449 431678655 964575515 523201247 208624719 664429311 598795750 762591861 712522261 913330653 897930947 396368677 81132263 900616725 132540985 717862737 127398289 206346733 49401241 336320869 76507175 811288627 838126587 699872465 362970375 651896127 350774589 633590543 365857747 601858029 118301961 815265443 306401401 479401127 587879377 571300377 507640875 884209239 830586827 122885887 708851303 884021621 286105079 27251441 48671219 469576447 717636895 567698065 857024983 568038781 760654035 833030793 814303339 2177531 392879721 675890317 791185481 342627087 888565763 607265879 917405525 229192665 395130249 429423271 718506941 465182463 720416173 524081737 959649525 841071533 291426019 265303311 506512569 364697245 447444079 917471955 381008395 744386827 770819929 703082105 880133179 656646077 740115311 982218471 530052059 27817473 420934731 776059411 567220679 760336047 603676749 642902519 337392165 46300453 584384413 715813779 254048095 643795015 426471723 784827891 128177963 106867589 146534833 508041001 689372037 831758295 464210605 903521617 245648817 47764151 486015335 264444809 643357499 690220845 332652017 819576575 588366071 320007881 982073891 797225443 144644609 347822753 223980701 212651631 698216639 963288657 396665797 210130409 586490845 710202625 557030095 309857175 501811021 477357151 13761713 378344397 769966413 703415711 226215725 564032741 33493345 838322819 622681545 968151105 782236503 37394511 341858519 565177677 830746175 830602963 566590063 233520249 315039609 174544739 129333103 739481665 25046951 964144093 326800003 599403557 701685687 251834283 547446039 51215281 944786909 476382391 871281767 781387127 830579347 424209529 710993523 96770579 600991 959699185 448908033 248401187 368658703 665132449 773770401 159824981 357295669 175328411 8392623 850787929 982251693 596626805 483509575 481701867 80681307 411590219 560164435 417065163 132994925 638923973 272006277 539721413 714314071 568355601 444651859 207076523 730151381 644156645 959351549 996442457 64832235 387993724 783929229 923675309 634651365 667829157 190713809 938208405 985734999 849900709 49538147 831631873 834211869 108790103 983191715 990232045 337541725 654443033 18833849 860642905 350599553 497872591 632493975 455076689 982582335 838402539 882188785 127004135 977677715 176740191 403747147 72395063 750997441 620712877 150330349 778825567 968542037 856655575 964500709 244821133 735755301 112634223 855321357 979826673 574565961 111928203 499386373 263373511 970755881 421959111 974446901 464849231 229835377 921274955 210905293 449382359 961646357 746582981 442748613 742096813 397385295 807155819 495262687 418997293 35701925 555878651 819573921 869657019 103039715 488724411 260264029 746139325 267832095 351190907 627007531 295631531 44612531 126899855 404295657 532803833 409809475 521569750 327560515 221774383 230504637 630632374 299092647 448775379 166001749 410019103 663397965 272887929 682443399 648316039 200687925 261268156 211153941 519994089 30482987 715155005 5955087 74583247 608452793 357188007 396817607 105892677 547189821 971094187 65955545 311707875 394730707 849501445 292464171 253429957 739035751 44867447 632890599 266832787 991672741 962327241 429014659 953075835 472321801 141334735 661238459 781277747 290845139 65077605 954180753 824803833 88107271 503537513 473209173 640962195 472576635 924622281 842291099 755270993 884814787 516135029 859195 763895559 918397761 627493737 916106589 797503253 358621471 945481639 69007725 702606433 843881033 409905718 93195293 912118871 741571963 364756269 489220971 190018033 816583219 352648357 726631579 149860009 801239481 544804797 426606393 5571977 777786400 142130083 159129115 760186909 876387647 810203271 668090457 639710589 958148021 642859685 352221789 8049989 538474987 749027135 157518541 123898013 728258321 17995677 458668451 375699763 347522591 238094357 166464791 122576445 547733207 894097149 514781361 635877753 159165633 123965883 6399545 479155759 198446123 323004343 411653319 249077289 193748783 651364195 909299125 744824515 36147883 326193467 866728873 351482839 800629067 762034879 765623693 721374411 788978813 666080125 841779607 848468369 692605305 435277827 879257153 696218523 279509057 432558319 550308179 618352363 642651803 905386463 153486039 913103621 639399193 447213185 281944609 181621751 796040211 187894663 567237837 595369817 79469223 970715049 756056513 509822791 630078401 278314153 963665959 701268841 489569039 24707669 94093429 702007277 128515593 163926395 367914855 247414921 869197551 504823545 70785281 471404925 428251595 87626925 786325903 569323147 120387437 502818437 953098917 724880901 204675179 847309683 253099553 237617599 485749801 165439087 585484069 269465625 112634315 243891067 437650719 338752249 8314691 311495333 153292993 957403851 55832139 304991483 298500361 316944265 425067361 86012315 838813757 679162287 618839759 115076259 865506021 419138371 839452069 83816513 630619353 487491283 307990201 825197479 150893617 526273143 526265773 803215373 344904279 455137483 878641641 304898999 952444147 727567865 513163165 229125869 97885945 278704811 897993923 667763461 148269993 370773785 782363161 702785365 592752517 613325313 740493351 723448899 632148311 941745065 618048577 360655415 252715319 723734241 684416379 717772451 488309631 160174079 722241463 834472195 271073749 626741727 189175453 142904793 185522211 984032999 131114653 470066095 460994975 702148617 760728047 711647253 640654789 175026617 672901013 476917417 47331673 661788403 192058453 202189321 670348645 553889859 201556417 7687909 723371587 288445617 487584561 510266601 909939849 736414935 328374979 474439635 479718431 555047377 961098339 740944997 470341423 924371017 400868543 777193833 674928433 562455401 846218319 278399663 310134237 597315561 598190165 175245845 92210745 976081671 319915479 770468473 756607889 729787275 885501095 816075467 490979961 152621249 320267355 216394999 798399951 995153279 569330007 467261691 647078837 8026917 634224063 612172761 128756889 742043289 811060871 205382299 483499567 740578633 971827813 344031057 515101297 370687529 531723481 58311193 395464357 442096827 990175533 697995795 311247961 597730307 958543727 859237481 24542303 107042193 449096571 740217677 327864275 637512825 733396973 254055675 336504089 924933209 133997359 942377141 176116447 783609947 665101427 954943429 689095961 790952489 595290285 333177467 424851971 703924987 352795043 287918901 658492703 755367057 761974487 70880083 609706557 362506285 725830815 835507775 979224175 298081185 947865359 964834413 712883985 498086979 508400905 993890389 515190985 316229103 989942069 78952315 641628289 85356557 369014019 451217767 382116975 107903113 234016683 759185071 310848271 808381661 955843375 974962667 452716069 593637637 250561367 504501437 42920893 10461319 331923121 144092879 512889643 321192307 352437143 542831315 674113037 881361245 44349225 436259207 533090117 14661219 917514317 285327017 275580417 460691502 454167223 898732547 290028211 262891243 427909087 439066219 246272025 727317071 276328961 198009017 403070009 910291611 150849323 68153039 726637403 682827155 156821545 658882199 814405909 205946757 64370067 115755779 138130245 847808583 131445965 929120529 140975887 315754553 248974587 240209599 278535643 434787649 808762385 561749015 345449059 523749325 60138437 144747055 343948193 141130195 909558937 620854303 63863767 538074065 827687635 927385097 695518101 121350605 275257731 653775895 846193835 641189975 206783365 135576445 740554555 657878403 481772661 621870451 285583523 800301551 512228287 80340541 88116883 643516357 517682575 486239269 456435711 659229103 459776481 414870651 757510179 277147111 47073651 222786205 385811331 393026855 213770447 619697899 210838763 960279993 736115523 874743247 215433327 40530537 836062187 772621501 607207531 88217999 977830563 604163373 430177925 852227079 632739605 179022755 829804201 798215225 644751281 543324841 644302345 258168595 103400113 558870481 580673059 17353483 544700691 682931893 616878011 175854367 867213729 285582327 402937309 902634453 310044649 346771521 605964509 63970877 878177093 637622599 767737689 707842795 823441365 968179393 550648115 723324159 833833857 540812659 691529369 584178461 872511225 627596327 853068031 83923061 106700469 438647471 155684895 635225535 767675895 942700773 831688959 358599733 28244933 306076587 531597549 461419681 798120945 236816363 808274040 156726351 772429843 839396249 864480387 269672982 361135755 388523693 444025647 781758805 895850881 20241963 196729063 194270963 534880229 353751325 968898913 465834585 136082543 871545749 554734743 324691075 312784031 99614125 313856465 565436141 311016383 32475783 616447127 326929567 21706719 238634829 274025921 40729893 344508119 959059507 48450155 321453973 276393797 60977009 805032181 933531535 639469461 594766413 208037905 189142071 348195573 53956619 637354927 102892351 220848731 22165251 157764109 377151961 30336397 759752589 724412079 768451015 56768527 303033611 828121441 968143949 428471857 517076201 672717623 421269817 922674191 873615255 998849933 576204771 942590597 267331983 325489929 343425063 361717309 364454485 428412567 940461421 739456169 93659507 293995113 922507171 573532925 65659771 113673981 699281983 655045951 541721351 171709977 827218239 535124785 645114809 209927109 379969579 75341673 2536763 458261335 610161933 370487867 92918849 886228077 401396097 304662217 481962373 758818793 296657313 502177275 845137095 978809081 649913619 382434689 540224979 2712593 356614665 954629333 268900219 367365611 351913013 122353205 119335577 263254671 867464153 111360425 940752655 116320325 22400697 591243779 235834567 105952933 391168291 121654747 303978165 223281545 200561903 986942609 745627091 842590231 138862203 758422861 717699105 426864057 804484523 643411455 407331755 884354853 401407215 950306399 605570947 782297431 516174909 154999535 924768451 694123665 500065299 504049653 27703693 697461603 819931769 411340419 781043213 947526047 995995129 53968241 714832755 498400611 171837615 764638813 722950393 231356945 398064949 749211827 330336995 352521557 883919281 787674273 35286395 805315621 180872917 938233375 55478803 658044349 772946645 401609197 991166469 438613153 367533165 582320279 685579699 164737437 881684967 821115751 131856777 549713607 326437393 853770107 712445687 536840823 180977471 470710447 526342521 577987671 933770831 713831087 280031631 711464525 555686313 284547047 323368901 758840723 266849851 175149203 789383085 850729377 29832317 574033329 557268705 189804861 904744809 445756939 718383107 287365493 549024647 629912369 624867263 878026905 780633575 850728569 484093381 103254345 498804511 939787781 914185167 897650537 840794699 334071229 834352803 407654179 394485779 855108691 21543175 310485995 955129251 953721403 691588303 371036033 719271861 823927993 238747093 77881575 795936645 500053717 339541243 848948582 855362521 613920861 693617453 636153241 948540415 831528171 476074587 412605015 704353999 374205663 383224959 310497735 876747687 822548577 560246431 156317779 774714731 567226465 323779009 299997617 642749323 27877785 270276089 746886621 175633661 369729415 662951777 205210139 124412225 388061555 403297563 629460471 64290649 49011055 724638803 68758597 314670807 632401235 864469817 694423075 682645713 957422015 406810121 343271411 797020386 655188761 758776835 708800097 191960629 761532565 867188851 17409893 64934515 901332777 72531371 439460151 304880855 765665431 260312069 730420573 398382365 103717477 391730917 317054371 330344075 257388261 529650097 661861663 744460529 697633327 624873183 672706857 976169379 260102945 128381673 153469035 342078079 509805671 943283535 994836429 894256879 89217901 216895903 464734083 153870045 763287919 504296039 525557773 130369985 38212205 330235459 133241643 113750937 594367021 515366613 7680749 96428525 157262143 821656009 266210979 336749257 618755071 143857103 418500589 625650629 763163017 620798371 700169135 560393469 838916807 852007685 505297683 174337561 485323115 545483713 893919887 752871239 165048043 316810411 895474911 91615803 62672263 350140569 892414469 597073207 834642249 79247727 446508113 364718591 580544767 828738329 915150677 622711523 603556675 995243143 123257069 200074679 736293237 526488245 919107647 568558299 798046397 220597155 156065463 219926067 817555213 36523871 314690823 596900401 488416793 14376183 752484909 301766855 822260837 343854983 917459565 539990133 878900793 775465777 9021523 852726083 382327971 218496545 941085107 885642685 556125309 425924487 588664491 966177275 828165991 208319647 402985117 903454873 667910345 200898475 521921335 877545407 949956819 695693043 454621547 997497371 158907773 900606411 873975927 577010147 883212681 588663181 625492705 82658773 794398589 986854557 350383473 736641079 107156651 552170851 201284671 38428119 64378923 719058769 550779811 480051471 264650203 922447843 34810183 561652919 863172455 933391769 259343123 851382075 292306749 923006719 227809341 271638405 527218069 898379177 508949567 50772495 684881777 65044781 596275681 465678291 623350679 842412079 47882283 845676891 492621207 489255259 283841397 408508851 741313229 760343651 431065177 306521970 82290517 293660413 182826173 731520439 334428443 190153713 329231051 736456487 732121803 804529669 793480185 936148209 950771937 174859021 539741699 915689419 94413981 543661797 698121197 75243763 747257603 868682347 400036099 26359087 132618217 441690765 966683609 211310543 172484323 473512253 707835725 110308263 444014163 53170289 768908159 553335319 648377443 912028465 840932577 611601923 744753151 903642755 216579875 909375197 456161251 580623997 829637699 809735575 906841997 612981045 311789959 345469363 280119877 314537425 619811959 75660853 98434591 89127799 550061033 774513323 697447151 203726943 900504827 765263405 132932439 972228287 405362703 71316567 327428543 434612697 65860563 876464721 96429911 804925179 412788283 273562569 679983895 817307251 422869889 932995061 559426241 359208605 125895979 253658771 329097693 616664797 313155335 835931883 337786041 722470043 916657191 766221511 816392559 703845449 8196583 65597827 367603933 168762467 364796139 732526327 231483823 355038827 809075233 598336655 251716435 943697897 632253885 875425847 101017857 283776883 775628347 265973091 61128891 423151006 622900573 440774165 850243143 910243859 661046067 209374161 302813751 148114039 705293583 733782693 291272931 599155069 845929613 136729641 967111017 642975713 355050643 821269113 107540149 208076645 535606861 420570429 609250933 128817617 545313325 902629539 291708961 613791737 13297905 910537313 129957881 79051961 373186717 487673525 990500359 815007729 438873469 650098535 737212699 522898827 539748133 924904643 854050763 522494585 582645619 273037983 656841595 222121399 228750217 115887451 720187726 172361031 679660243 335427805 639842617 376120113 202568713 80324497 230798067 176267915 172632099 291041137 838905083 211000427 320982887 177172215 309201307 717848823 630533219 481986605 128259043 808228951 42791143 17506720 946847913 29105085 116557075 931735399 290805135 738487909 239717449 63726109 832365565 86030993 372922423 774489579 718170147 367062153 712667089 447694719 433066491 918445987 267957843 940594449 404715075 573761845 680422462 817594715 463853957 607082405 863893093 917417125 772336399 944561499 104167637 887497151 229236731 760990667 504721905 780616445 289081897 391152237 663028567 748577087 356060993 584111043 262361337 402591979 744223209 894074971 463587333 797628655 443957687 817068483 254951421 40837057 555425359 379321753 167240611 226438237 710036033 196271229 847145987 27439949 624978207 796047641 26300785 940609439 200897601 972792095 796658315 449683431 231040455 475622475 158996785 104807747 312864151 613706591 448528789 385093211 393823332 459024165 779331367 211019359 298934951 863139693 195371941 265448961 44637087 505264661 649574418 254881921 557944403 678035965 185989567 39787687 848762005 944193039 121886521 250193855 886653947 827814973 425642849 60375711 631437033 286436995 4250201 385249447 323317635 302025187 665222799 475270845 860349 338623847 419609013 447346767 835221325 602594079 541411787 465766993 644253875 682415401 426974225 118251077 121658425 56987813 516593173 978550063 863421935 783129789 428443309 169226399 290423723 339994021 71564019 367059881 973824527 415653269 296934221 44826091 338512771 109708241 624843365 909799567 427943737 623975329 478775855 947170111 426542629 99967835 961779947 778517299 116132365 74119509 861002779 573725737 584657011 154823413 593024905 873581929 11234733 513346979 496939085 838114495 129343439 852803027 91384259 6973825 97674683 455376893 396897419 419325329 860966425 360202149 210992535 996592207 985396825 913305173 215130391 464956847 669668787 339249309 872199049 613930789 834806825 443683611 555717809 648819887 962160003 102925679 3240603 848519635 10285135 156509507 275047067 434842273 307033319 780261707 513661007 639591597 919363179 856058943 880496793 338779669 203774401 413290979 981723813 40403587 457261725 552461313 809146603 801327649 292113527 9806697 425407523 304321191 130041227 882511609 486940243 489477717 674211815 196828305 944974279 581473517 378492503 929127963 197384213 165144257 191228787 185261707 337341207 549393319 242294943 880309465 300470769 725784571 81502463 4322569 912912913 268434341 856444551 989888293 563672619 23694611 339119341 314291261 661717305 979495995 357895859 247792495 854011779 501630875 937121311 819970267 829909905 91432761 215601217 628278955 329089339 472599459 852949493 292502547 957436059 602348275 517053143 30041163 622225175 708435905 761773139 327362967 632147033 929778745 920776341 705586753 839907159 210556677 87382425 435765147 274845005 218347101 794937373 252500221 197899965 352937729 689371307 286997197 631781495 270373173 860416145 985074037 94197901 685904327 936190699 464832611 143241053 690791181 108904341 150026007 143374473 949287913 534414393 685071887 390166525 149613245 281236295 313916887 950312175 392852601 746657017 835235839 806771419 953500561 38917709 660834853 854053509 969735431 82474509 787716841 940661499 100815713 688743367 738843381 620177549 102437289 186302677 327207933 844837339 300040827 941343063 636893115 28556487 130079471 242098485 569731823 417383806 246790065 314738463 26140259 494378869 475112939 2578828 850451437 572353639 880660567 563446721 979320165 399232347 287494703 334580417 661554093 249570713 184921661 182816351 1767855 555793849 384247245 560154163 132897631 901064341 240712119 102247068 470382775 420005969 277679447 522307013 145304759 643153243 249375637 203013787 912004201 940003687 419946975 655004631 51561955 262124657 665757995 116545785 111399229 434862523 5525239 62550347 39894937 548724949 683653195 690960093 543945251 836874385 620529841 366421895 326746889 673064459 578085701 337678823 374142603 943130537 208761759 395209321 100390375 663312917 772940011 167110715 700046441 389520709 968237267 224100437 149676643 449927541 983392913 228006007 469760557 925412393 210900961 626970155 841256239 573868333 576508423 143304127 716943565 143198101 564835031 210947919 632984445 907136703 803724193 277214135 545370039 795995981 569202249 346846625 104056575 319636523 445717041 915254399 863210207 721773457 751323977 268106631 434753001 114374647 683931911 816162489 140415159 568669475 20460905 853202397 554334955 739170081 469014517 524010887 589124145 224067911 317604027 430490123 966173497 656604463 343613265 668308619 826771645 224776125 815348689 988425711 454827649 345913375 526571495 975876071 295631951 558217417 236257727 199421421 851085561 845757557 342319373 486144575 554831193 796353833 976663571 825628389 452211025 816711475 273691285 156722353 337387213 75914789 643829985 588850235 60752061 252235739 981062351 852023523 886322203 343878009 425487035 735462865 344595179 549385327 497977999 687205109 60493623 213959533 332402357 870838791 728655889 788734831 334796581 406897545 273184403 804857533 497668189 629788609 115074271 497593825 408296035 385009089 536488737 777351855 243404231 488508513 642306185 226236227 94598303 626490687 828528209 700882691 520135045 881042887 915546303 556242843 719252133 961452071 755273753 255920637 30289067 533224535 95730099 578994535 108427723 476878105 38206695 553732701 243950279 995994355 125907991 391999915 524101603 580306229 207885229 337166181 130267119 217522427 515377437 322720745 530982717 864230945 454640097 767945433 512812721 64080467 586452089 731852323 735993517 580799485 810370417 861815033 38345249 272011099 70671451 44582619 315945859 895564651 458133201 997388425 579546067 261388535 461548405 953052945 226911123 920891279 899055347 799620297 873515477 29493897 636207355 92094027 752727340 874288135 812425545 844499323 221741757 511285233 789021341 187461767 151462693 484354809 55309763 177355491 318081945 72440211 777410189 445064267 37077197 865747715 818304213 34489793 628018685 495038033 499904893 362398869 214163443 19880779 222863217 241299801 135334397 974377355 409652897 649350377 390536943 828515185 859534601 210892651 739649063 705493285 444819369 139732297 510895759 914398103 954104205 189852217 234554769 959584129 333215943 560942135 284288549 544979553 178077553 198809223 422165960 977626495 159734957 526367925 914607493 595754221 18220455 316606357 702109413 356331139 13215375 401009219 541455103 306589921 181091745 539686693 487339381 49748077 89711645 827952871 999037287 701209691 746332495 220985211 720649865 572182435 595461513 203065119 930650639 810242049 238782759 458882391 851532727 527504129 159148935 802776049 439513287 576693491 467333655 326907901 873502477 361512943 101896007 611495131 443049441 419802323 512355729 429232429 560728865 583833675 542702203 544846817 635991601 960088517 568906123 931183403 167222531 369827961 521184085 562368901 988401929 326888039 512048755 697977015 552683587 522113369 963465353 703625417 656512569 124819933 406109501 2253075 582167799 910933583 563378501 971292463 709179923 846588875 947717467 486243329 265898415 277454139 199083329 610138809 295330157 497922129 106630847 424307141 557257083 10984067 423330473 869027815 686555027 505228817 748453849 314565921 305057265 511474437 415504433 906329023 535812187 830024749 305834909 453917013 523392801 156584995 583861005 723133887 333796375 729136199 133747581 428218403 325421981 559985089 700511983 864766443 588406167 268845699 56873835 520500173 575038581 898820673 317380613 643666629 548503087 768658303 494830551 843001111 651879231 150120069 943765765 252884815 102292399 722155617 96963509 944065347 465846283 92047341 632196895 859253515 168066153 493782217 396853879 357047311 545087339 330117213 576734725 513667067 552849715 768761561 248317455 531259843 32886383 957246517 10661353 694275233 200266073 669908787 722985711 232525083 386394285 462893145 419905407 721936383 460258483 306066169 655490055 328818525 258589749 171246635 504638455 798346133 314923405 920576461 616641739 328738377 239257497 497658251 637266179 898387303 327774399 295178707 896518445 821499427 798331371 480131293 718330071 807611897 606878101 889814955 247187357 319089067 543680701 363803395 310561315 808773705 748551655 254115445 145256209 969508389 324707361 8552797 550337049 663273435 524856321 975731671 374659831 331437393 415223465 833508303 181073003 291668145 222211771 348644849 681723203 115538801 278412657 424082617 352758605 707841357 63515491 922415975 834365541 673210697 53814253 233361662 61500271 107529391 471699403 110717783 304254803 891319321 467359821 336187395 507866115 766990941 550405191 657013093 45906299 491517347 713185049 519261607 760041147 229862999 788332967 563860917 234272465 90180139 100328291 560166987 538419147 597307677 598815551 555200231 267886021 143207537 866237117 107824337 782138339 619764147 38048479 545538077 618229581 960005049 932260665 306306719 607204405 200903579 162897627 667409145 198858967 722872259 298029929 629643667 119299699 986948313 722951685 250931101 273906775 558068945 432249439 345458193 41973457 804522985 107597229 284847275 752099391 512022439 163617709 14280953 848720895 827181523 69826981 977588551 844088191 388217733 184491365 486686127 846450481 250264599 555148353 272571153 298004363 723898927 247656473 210557459 667227157 946992823 389087827 715454505 253952085 592577509 938089179 693931659 28518113 585262643 663801643 334067509 793232975 180275049 283487549 803172851 457175621 372002193 921076379 567214421 126262379 799520255 871561555 543629747 747005299 283255375 60833527 704236587 161107481 674105191 447765419 552412585 828853279 747668593 56120593 872077787 480424269 221534691 247679833 851025465 858324601 270110329 632124473 240300803 923627129 854100535 493684207 472217667 689697587 417114473 298362947 612119753 508957839 349988773 740042111 267780907 898759551 317014723 605392255 623553741 613539071 644169707 969019549 398064339 195290897 673808521 364112575 801695535 767377853 590385999 822487127 400756123 157190169 856445245 814025049 82551445 226788667 617178259 3479105 46242407 534907209 346649567 356593945 58759713 252584555 227278583 8340079 396849817 593533907 92613109 284695637 158741361 86250685 511583293 991074159 393886737 967516011 711426429 442220511 67642025 364978215 26824873 26505301 622647603 489660993 776047867 836869383 177653357 206232343 560443643 741145781 834830561 344299783 28490609 443245985 807988189 656655999 5435509 882654877 560970875 902961393 196990561 118447101 38801051 377668565 649106651 302366368 531807717 153114031 228710349 323930351 141224137 335565063 294330989 409272789 708842367 861423987 345494583 468645319 600566025 3248265 161402863 731738567 181375021 144977135 303965343 61626457 665754237 605177677 814349473 190962827 85229393 478859095 25226379 967501557 57192649 623457477 792209989 60226741 877892811 773838425 922476027 933800559 757964299 411196641 977376031 908434771 749241599 2665517 135748463 193049 758010089 895729173 164241903 5441019 768039631 923140479 27071467 645227969 371239043 229878099 120581623 358127803 47723419 344562053 60370673 26056127 309213307 958998541 517535483 702859305 283740487 640241135 49043587 884411105 634819827 859344435 712986429 949877075 181825077 628216559 291773731 590046329 998254221 435484729 482798459 858740175 428076869 418302775 119115731 422461019 945567341 476685585 180353789 50161579 738302427 674206715 779361813 520823511 183230001 717223981 868977535 90279805 427489751 828591339 847921129 464344769 893590527 371450749 196897095 883497557 23937951 613344825 290216405 302874987 658080887 787400567 575976725 178865603 779514383 538449049 955627223 59340965 698856123 586964745 449474093 360217053 737717391 640417081 570106995 942900417 789978221 351417253 907560527 174049073 802726141 48453071 5890219 390834323 310833071 9076545 545894333 551532245 625109437 992690317 193628673 388048749 250457379 486813259 522788667 624510553 376122799 409433121 169711991 125318430 581938669 204838839 656387083 670994381 729185335 409608641 829319311 375152123 973995437 165742839 486374891 191550919 310260023 295573277 690825035 450943189 830759555 250352637 642619681 223883095 397895951 167070825 4109355 536225535 499451157 518347065 728268399 354311181 404367011 714822739 451157045 245447753 181362821 18847 522748691 502084095 353368403 405765137 738893031 206448903 980028529 295285921 11337429 821106109 158428931 182070099 671989831 274413577 982970621 617327665 639505393 878121049 369742357 51273293 237215443 598994081 641492685 642135231 88004397 195517283 1305451 134273453 49060751 886791845 391689471 463589185 354995659 992433905 262185061 326830761 342652413 369559649 407227705 355241765 766010761 130103699 73161959 479979761 707571229 313497261 937086875 972816477 732957357 243267675 935800657 721050809 279502453 123860181 670286023 475669343 83031033 69972699 392620167 620996272 180185093 190016175 380364769 329879321 214149805 606986533 764681195 908043275 334777421 1161357 385035399 825882879 241209995 599334857 229295453 738880633 514345299 825798975 472139997 716594435 434969047 870690269 329450817 770909231 779554197 425827865 403975559 927587221 845832017 156760817 161427065 253209563 202861079 435219181 409761701 863655339 90409531 358824215 928155749 267938483 124502107 23520777 335460569 937969843 371218521 588756193 969231593 971919977 673729123 45139525 838397253 214800545 341279213 557822817 584227429 212388651 564444337 282053869 83769738 899582949 105488821 66900521 213349309 328724911 474570311 5193689 532692173 71996277 822556919 587221835 5886035 854565157 645628581 374237526 432503471 667854015 584109429 825228633 916248585 310827329 502919121 663955513 6037841 872614839 801000815 858365285 385167167 700182579 283825225 770219987 590850899 971479245 241633703 763745025 210133721 689729195 734958355 250159605 674770907 372312311 439480671 808889919 328258103 507066337 552892845 156772083 962164361 183584163 384761947 156603825 332182845 634701697 409284635 224082847 991269761 395842757 193372893 476765801 513103437 100807105 995889887 229535049 263144801 381535439 771330981 320699897 1141831 454619473 215588091 950581699 497746253 851535537 91633653 636733043 530421903 565813091 447569391 821099873 990088937 800845281 938765199 428440171 670043397 274113963 543360449 799226613 502133845 433326157 20392631 868798191 692113935 449359959 697869041 942451663 193570867 894401639 382829103 240524179 695989897 732649503 232061055 543765953 604493733 835609381 713130293 139687017 422333403 110842415 85887471 851721503 826131021 578808309 643384209 300466691 952782307 37909051 773301059 244151995 963009101 928018635 341460863 793937779 635800325 728184951 206341375 99568101 255919689 607582745 391428549 482408525 250033697 469356435 862617121 233851505 552089951 340598993 342181283 151341727 997376667 334087875 616686123 821787311 288845109 964532323 570758365 351369981 415400021 90265015 795253027 710222705 223681515 70045891 6719411 448633977 464469423 742290591 6530441 391854091 475405859 11312227 34443497 562243239 64565645 226597427 561344093 290709583 472896767 228215349 804279229 802734997 212915025 188233631 726565669 880150157 960053793 520481707 332328439 455066583 153963227 25696921 761008607 823176601 552836013 46683317 841299411 537205377 600782479 329168209 720424207 330503875 461598275 216244679 896943639 269047073 211323215 100278905 875941303 590201823 533851907 669863379 670769669 658018763 576797307 955651909 28173145 674709821 820241811 87447625 758256477 589016339 677331959 426428771 736066039 637968305 976223763 67718941 68803681 914593799 489435171 315550985 19336723 876200587 380070693 670428865 775562195 375370811 15848419 931546857 362540719 610580383 33895917 142497831 953199863 28219843 211608 121428017 27609931 278769981 242801161 993545921 782941071 935109421 807461925 68177559 508390381 666801721 420784543 982876287 236120027 419263375 550046443 783584331 309286163 405256163 596214605 670536149 706222749 973786743 818591181 520989697 753587137 294208015 602053177 420228533 681950487 367228411 643626539 510256871 390087545 315340047 420317187 7143313 496226061 40805545 537530345 226240691 207029309 984603059 832893645 687116633 546525375 873567639 866712425 509952916 554952847 986049869 804783419 605503361 575775473 747100755 340123019 3747393 408366961 815887281 657609835 352030459 391476451 984461043 869061043 328174053 118217829 605094191 867407875 493402937 477257817 52575749 846997953 672172087 379346795 47058075 421900321 870616621 704045971 808194719 803132443 893400937 156089609 251777351 616465771 908840007 830036819 206313041 232245149 831392809 156414013 210484483 57424129 342980219 327149789 332395307 996534703 361829805 879158923 808305185 47080069 60811835 525119473 361534915 967674927 290518949 989578231 355006325 449649691 992916855 626500817 193174311 190832001 271229507 768467199 811569233 146584161 304396451 448176705 298593004 892431493 167241787 515716775 794458245 756174459 250345139 960626561 578527525 405193375 879514813 60275823 102929507 605095949 875620115 904084565 420792927 307236785 433110907 398422621 13043391 562624823 721362875 711977725 510010801 514022427 466877607 72718065 785477355 289244315 295266073 816802363 445169835 446090433 649201397 515035947 353291959 442506587 558421027 37908819 1361247 550969091 689728917 477112977 737050231 565175577 777448005 813041669 950895709 537546437 707866169 389949217 765703931 791463929 276155255 378920085 263657147 188202089 109432083 334959455 305084309 378336409 881996327 487087043 92067849 548957393 133655255 453844557 329813531 210444831 501804875 534902993 975443033 618476381 243164341 380853101 257732825 942415403 236111953 872994691 934032955 967399409 722945119 269568705 123135653 204564191 880841003 403130905 665670853 995413229 287887881 384745161 608298193 662641885 680589391 788531543 206264199 552238389 50371681 703557259 107143981 534189383 229956779 873300605 686150803 175921195 139616413 325070727 313865229 361493951 146657203 653727053 693836923 259944367 205168751 54858685 608164929 636464233 634920793 830535691 526127185 171810853 961923589 25945521 680667421 714662885 799494159 393286007 985205159 872961647 843890197 599137893 792089713 532474707 512607429 417869523 482267791 599813613 251942351 152102747 491785873 35853913 254376175 592455651 346970009 886768771 953280229 860083349 783441999 722274583 703130751 71052519 275425243 974587025 406166411 566357141 39526137 345920561 900367333 215221923 714827493 498658555 759583345 647381597 179291239 760485061 722325527 824002135 694437577 358975267 82341577 701021039 41921255 660405879 900752003 891396551 42591769 334950635 217572933 828471243 706727243 384700779 532725021 412452657 296392679 278133939 231103257 976411127 556416231 456863297 114229335 869699933 868939205 489382751 776449013 730946289 766936971 384721947 791209761 259621255 445117893 178042447 925478411 713549885 812942731 747436187 50461935 143845237 296454779 310746983 963801359 6366173 980011961 228562915 929165747 145244009 906927861 10188041 388041521 47881299 607883621 561413269 380623327 523552801 415582919 972022293 971056419 986135201 778151521 456400341 412489315 678300389 848749571 402813935 716168215 323005513 336017153 300277571 694420149 805726577 116779835 386837111 121141695 236341067 441913367 530036991 362896579 415181835 961464705 851659795 937848399 6959661 592388851 847757231 103448833 556697971 168588391 580828575 60473975 336540653 78180711 203807859 838434911 309642477 431845887 843179651 401608043 589312017 323910087 880744173 467953745 708083257 811682013 866473629 585780441 260307095 328612581 668563777 987793099 948362651 315982863 637513809 427700471 389428739 59127825 612514829 22815801 109621715 422660905 804554367 958134901 341587799 515467037 658526839 230815123 639826467 269896765 979687563 187965061 847235605 761261663 219537439 484999239 139648591 33705437 10384471 660794587 872062525 347963555 718075173 65428043 284561559 965180189 930956355 920145319 503993941 974545215 420058161 840752141 276799421 275694987 594801459 245349787 638912861 528185349 165939295 559110783 794419461 461685051 334029449 324797931 193198805 945422661 276768595 894788375 910105647 695703233 629789221 858782789 143031489 26325459 637543727 346272707 560452991 109467947 872657515 477417695 797974437 880393983 558655639 159335159 514361781 652839949 931304509 636793963 602761855 975836829 931883179 841630117 769320469 314392443 567153915 40995863 872678611 445950205 850239245 95096637 411571805 598394371 44828297 892516249 102369955 595889907 351840223 590716341 85848789 363558585 624158535 73896737 461340783 412420559 809039811 989794683 992295993 358566193 765916185 191697761 258811709 946742117 253872091 32560001 281764815 146640761 391485025 418690957 985166477 105392645 708266443 591427901 164225881 684893735 347966975 816219989 453223007 440929411 194454961 101785245 585186069 332942409 99602263 658306283 711952695 77597743 120471603 10331669 134600307 422192501 483337035 372281089 340583961 868033245 106028145 173590167 712944823 836348857 675947835 299071179 875466371 439864031 65408525 190061973 54649247 256078251 580570379 175004665 933143673 553970947 386370345 677315839 62088387 519976537 765866269 814887613 908190845 571852449 459761255 413871435 340407527 50536281 45170769 961482697 303681935 94113671 991249643 882062183 648364875 722302649 447677963 16474705 715137845 369581575 667088467 835263685 242429363 199241487 617255467 190449669 930934127 892553461 508908229 530763611 734454877 313439593 445708567 49770775 667263165 358115747 816057569 366839703 354320401 210549597 403339691 782744635 794395173 645748705 187493833 260346989 808411659 970017531 681610575 734469281 136040741 548024833 724474143 662512463 489766419 971138259 343704033 147143675 65210305 846564567 114269957 615164973 66840165 173018619 199241157 278303355 854319739 354064821 601526813 655958397 816849863 593132545 912612827 118185173 395628933 709034603 997959563 36305965 692375929 696592123 968327047 210072631 450801873 582991691 199171823 907126705 396801855 234579321 958879915 257693271 593022447 113517353 186333291 191120377 505473369 879186059 986370471 902313831 943005749 420682071 215950495 799333755 603532425 558520263 963941727 48443925 557200545 556483493 539102899 931822885 917850131 86173501 153900851 390154135 485542585 917415527 297914947 738460267 991547319 797524863 53425927 761827741 238816891 606078573 301963123 614161213 351857081 808064925 996612925 309490779 44627563 747498249 186194663 511257617 94082777 396569901 545844407 549393025 277514635 702204431 48059325 961158613 22643801 322891327 709496021 293146945 881685853 209202129 298990491 55822333 226422781 352995173 333109627 87881293 480426979 99274527 813410465 181130875 125997573 689899953 282296585 776802263 717047711 104930125 189962097 681628095 32301875 882283189 820501603 913322643 692608913 65234987 673671983 553336509 345914059 367672961 250357994 179433905 848230719 231360525 394615673 232295655 546209935 651372971 156374657 74527459 100524199 264548803 836666483 376706095 341475005 817645379 630109577 604111453 66153549 807407777 239563457 64921863 76223005 728900315 452819173 5320399 398503221 205175415 993021827 387979359 31038443 589566084 64193013 379720043 714843869 822460825 257042011 134827435 774454765 21280979 6502045 632704995 491922761 259728599 974707051 961137373 488734307 249527511 643531069 605405291 242328315 764754820 61507925 67695207 507389457 720419363 427883705 874601907 267326707 663264117 30526779 67578169 714825783 245192905 331910771 716702957 911317687 627984117 515168449 994577095 283405975 420141915 971921997 244862923 138502725 322003677 788214791 546382595 609197941 61934315 901815463 280686721 453316131 277496955 610773933 255561823 322733457 406936843 889506405 810820031 369051471 610202529 777484505 495061963 440898095 209488845 526110951 285243575 832198477 447908003 754811691 156759739 490553103 804425667 606465041 169506587 590902303 458196051 336829127 833590561 718748275 692683263 215380037 240925983 250697799 196696063 443487307 254285679 573839647 106386963 116459619 883980147 260227783 627422079 309700315 124838039 429354579 682340369 490233295 189473097 906622753 750872865 49546267 613231113 615486931 302838923 989332585 997682261 27894103 768378807 679107115 689678265 112480223 199936147 935419543 548658887 632246761 389646485 536703405 364325401 717371705 338672573 303781173 934472017 567954907 643232141 686969283 189731353 790083365 752392215 687301035 947275045 303277233 600538863 760017423 791494959 9506147 584447029 297024983 150096887 861175913 403731343 24796339 114566985 818309687 599441705 735963677 660570103 589614471 270610621 314284627 261856987 764190817 78688901 476633437 708944855 36369677 793652811 289737229 323813589 82430243 773185629 180542203 326808265 989071997 240280205 592338311 475377837 831137345 411802943 141710041 362187393 86751705 253796437 76014817 7110225 239489019 180689983 584841558 420403503 479159201 785034483 675790525 504864309 240805139 520954095 343022937 41371525 642425051 892145211 320567869 187357513 998384333 445484899 621810753 757901493 173778181 598313597 741190917 786843395 695428841 370932777 44622319 441562739 621249573 671126669 338304819 503231313 311741867 104477269 8107207 842764527 258982073 541381051 163060589 793970343 339726291 2133371 306188203 10899163 922551237 946656219 930808529 101716471 902045859 224428969 220157435 221028715 900508875 123676989 866882821 426354353 731184607 882731891 402642843 13395535 41392589 399900853 269893161 771977419 623008711 901054957 468056811 52690873 452703053 484696467 627240671 476402355 598270239 523422885 938267343 152152154 425309771 589297579 419558475 952676701 122947367 351881649 322310825 440557929 889259085 781876557 476444171 951160377 327899553 253524895 573608537 377280145 61022033 921518413 425813573 853213499 991810257 56531333 648742467 201122315 654969821 929027323 996463511 578752215 650011511 497104625 473279305 789939331 972664559 588252715 142188839 795210745 465395415 884531191 121813195 139490095 636868107 607329581 722940565 10522137 914595505 485504299 42074797 213460413 891516211 550147285 816274947 603419431 77511495 960249755 923480401 305055333 262912233 100206709 323701781 751133075 573971805 546440925 739945879 243531731 879427119 241304541 550530025 9001553 242356787 364376833 696881379 894057789 271722629 563444063 876060965 771967697 276490123 459845271 792947989 597581395 167155697 481844687 721171431 983500553 726363561 511391413 541835923 442298183 855121649 939313277 782519509 799496039 745490255 991907049 205443641 430729931 534214795 821464893 217996047 770641119 35197371 986646345 681266031 271859731 282817597 724160097 400715831 693998819 473650867 144271973 70195219 70555343 667405835 519203513 686586993 254981987 54210681 87441741 316164745 82144051 543166071 404097943 476929115 738240725 367406541 792678295 715419057 829895149 742412931 959339215 532083995 101588007 604938737 932519761 502182639 42297907 814650801 900820659 619544655 356387533 367659175 378157329 719463461 170058165 179904515 518488083 419758621 887879863 1639987 779891687 496174003 259037861 647043065 933792835 6876453 564778587 396246359 882232165 81247869 206646199 474064537 818508563 630894729 586512551 545317715 446668699 200913891 105604123 476736865 287118037 78062571 21999887 270904297 419626783 585812937 581735811 243832917 785555551 28714863 26255747 276870491 273213185 201166481 284076067 109072375 950608125 266047411 811699833 177958509 158037203 720634141 794036393 425865547 439617669 621414877 225434847 521880673 697537189 520997581 484244043 558048717 715063113 730825101 714126377 700431095 588178189 56406405 770116793 725467525 883968025 863012069 486466121 590328433 810312987 499458981 938874407 70820083 912350281 199272583 849781167 174030225 631260769 190642705 289497925 652450072 843454377 689881493 201158991 776187291 286034673 597161515 351359813 267685239 868778125 184832433 532159131 12170831 286003037 239209427 490794969 626940944 310199237 286067967 63048581 387540977 631316663 21733741 986997555 533137771 106492581 980273183 252483711 123006785 252539023 20217819 286303239 47045251 455490813 548134961 668146297 404068739 808455931 646383741 563906949 466944733 732385569 164092123 135975143 811000951 329069707 485478711 982037857 135124091 691611105 84744253 567022523 694734431 508756049 283590761 236159433 986426335 520798865 388239099 276704615 360441343 962268639 135649015 829430643 370771467 590676739 624436787 555213531 990611607 441376583 334478403 328345999 110950015 842077573 907904395 253533067 615101929 596655899 58980911 192546257 469550913 79946479 811413793 879603561 351284281 667833965 784279835 402478695 929082575 40546959 726139803 128746215 720092231 749585615 449955819 776497671 36683309 606846007 650527769 379394293 48084311 745932371 788617727 824157667 812903135 644513851 719777853 74878215 849039145 443772299 997131067 128830889 149446371 392439659 425864745 403582223 724533247 489430409 31891969 801777551 248253117 104906523 696858751 474306431 532411037 787897311 369694001 535621189 15552877 267767581 540909155 512042313 99263043 984241825 413147183 940949757 512894073 650362305 188858229 637997021 403565749 380821085 579253979 429772651 15495137 164463577 763897300 455688495 723208243 442417703 972591003 800759229 568687653 146409145 162723369 195853745 505538943 477023633 893821771 184104105 503306315 10143795 591810961 331342931 639902685 961962157 291084627 402415969 12916689 429946007 179035567 386740875 802548493 916285965 661052817 334059923 263660731 138608825 481726631 978292807 191663953 345587909 464147049 133505397 212264331 317854185 129206039 480501755 325779821 609742435 421230267 687776183 814756675 764041209 918507045 167841943 886425251 664399099 242182123 482354573 486896485 839086397 48247665 511491473 622065329 806124319 301651419 95967909 367538163 269502599 613183261 81513687 73042909 589178339 555425003 828996405 927669615 160737063 457139659 418603229 628087529 480208085 659464703 349293039 970587353 140323057 505427613 639838869 842944789 909805065 623327353 346772993 703282615 163606069 330301237 100919151 825149987 584920593 316208697 701511457 313130503 592172999 785250741 503634271 115055703 39185921 451323811 617986943 749620301 173374199 534881985 291694807 3591793 701921639 591035801 545996237 363014027 372822425 803142521 373857481 936251315 96418903 877123963 423105853 198200131 795288573 131919231 32531623 243267041 877655909 624562989 185695619 670944631 417012983 385401589 694942817 311539003 366459295 480728335 512838351 460070569 116580311 490087549 630245483 544957061 628573339 213434885 342131157 31231451 751921265 729384761 684714423 392597759 965105255 550438769 421745091 946384013 987404053 145061581 62054837 950220395 440342935 783645491 36244559 330324165 357812887 815411543 178733147 757978893 512596287 792088495 620559785 444421377 704422983 754305405 983082007 920185765 579065581 125505991 182405253 948023365 140707833 125328479 404443613 466518391 864913591 164443867 573590545 522280979 259534333 574892959 615452957 663175233 860772651 236708559 343920643 260895853 386019111 740035935 274168781 404605515 558994271 171628037 676213387 394974165 640539849 622438977 483731547 878813267 158939361 776942429 925434461 674261325 987327155 214879593 781755 132165019 397338567 645354555 442472103 124696663 22318391 541967989 608061791 607085029 219209889 473950335 664520479 908252403 810564905 550819211 144859447 522051957 490108543 537966223 945446391 377135527 905740249 906834763 820804535 807191819 267251447 24532807 439659997 675640689 349732635 534283991 839021009 185595883 661678103 868759054 762910727 776174037 474570561 49362897 788266743 5204437 279658613 312756421 549133349 35851989 541237019 54075483 96596763 281492237 355963681 542180813 224313961 382240499 966391803 328923415 622342829 891784785 466202539 821849095 684109191 358006065 39703989 329040681 278518945 496807657 818840617 185872599 942778543 88205585 707732123 885304369 903436905 145361041 52028715 240319007 145814931 878454421 928688509 195907665 812712437 633378191 415351233 50379327 556804197 792659517 622717871 272724523 410252219 598248101 906674049 266011163 504382425 874605839 276697345 83720417 613976745 578442001 477408379 66395923 940223775 558253193 89257413 679792149 465718835 848492699 869809471 990352141 330943465 765874865 297165519 848716777 431893577 497713023 774683875 773888101 871909993 776728069 324750705 555539713 810806625 712094851 871700215 565772803 505193299 149367177 552577915 530788987 263214697 11661545 46562189 981495109 707316695 278608063 481544513 877755901 658535637 923896431 365314359 77630479 931841447 75462569 454020499 206608807 804629143 829569883 285046533 53435073 100056311 883746503 682866117 101891611 609383967 97061999 869823629 580579391 934959221 594659615 454176167 348244605 820267619 482161387 692765663 510952427 125988695 871546927 464765837 426550891 439256273 240638097 936331661 344578469 444166479 645859325 364918855 883440649 210048859 332135333 649242793 649007057 863511691 215625991 112461609 794670075 594319479 88600807 806778565 688350545 639681985 266237521 479818755 479090529 618849043 876432795 12377075 545833349 352262177 646533981 392767273 317073885 619538595 92423039 751495365 995365457 958059357 391715373 641376619 65980305 314121497 432736987 48598605 622561301 110447529 887208259 706354717 58692895 617666791 650258539 902877213 750553527 465170357 559915425 891123471 38967723 147310333 919759733 418600007 282045587 772390579 709221063 788855445 333636307 376826063 496189371 477258077 113256081 85530197 22959291 805395049 563751101 13910607 293247869 321423985 438532111 656493775 613114875 15915811 171006471 461026799 326977405 681811221 605184497 992774865 54973837 928432461 375305175 264416927 80562943 333501787 785757079 225345933 765823727 850926163 413085645 841510357 919729603 511332821 964065509 874556087 174133285 510522117 420459021 107449727 737025035 288205205 578069565 36943997 890556337 436311223 316002101 506444303 883844251 977528877 840809599 151605653 334351509 273630011 217199209 31285371 418391731 816323503 887538959 311784753 381864529 835201249 304300365 663542321 849644053 481595053 593962957 48003839 231229675 821076091 394990593 218451237 971878149 651668537 276795167 60361525 556055267 18649437 415123239 101793225 316629061 166170597 516729825 33833091 405048121 806421337 261233633 168518927 449104147 334269893 95471483 775316507 958618481 965397183 469931473 776451175 198388023 260491367 521904075 596265905 680059279 196320353 943741721 524308421 523920621 780239583 851604789 49761653 537101841 810922389 82565725 211472283 510735611 339877567 478754969 597283865 769601019 235856423 582568635 757364441 843115681 189861913 980692827 900960463 521188045 344019053 904678361 154100469 842986403 932133761 778513245 98410827 337128077 811734841 279499735 922163677 220860481 669597189 187139839 426343869 9974715 183883739 263065431 461215749 263790398 90385209 160708901 888681687 955829079 826482727 873073019 607357023 748846555 404431153 571098417 405895629 493103847 199292013 826147815 145328219 300553693 555423867 158324483 3282509 12554857 259180929 504402617 497475565 67724673 595352619 271698175 442079885 430681697 271406259 338228887 150652807 873177997 712070611 597704711 149396287 188519889 50069973 798186143 848135707 733217091 33655175 85464955 679136657 486524987 251709757 772415095 550390043 449890403 114309589 38743358 910599481 555053473 220333495 790563391 308373111 587762991 54402515 516773811 930377319 303803525 685337243 287090841 697020579 418952297 75924239 418682299 847651789 350327273 223159223 597801129 936111761 973427541 1962909 528107193 752736927 237395277 787122013 596269069 727528369 34046389 740063761 971825293 302170765 714920631 675469921 440726763 954526201 120288201 838836601 49833883 521035721 302038181 995019795 619488225 856831447 911180371 92919659 111855301 62673669 891454491 657456711 993897493 96541247 467700885 696467957 32250219 359469941 621939869 463474509 429331239 325627553 752818771 958901677 883176817 553635017 675286057 339793401 819383609 723363571 711463375 75819425 174563641 241167155 236889409 975730587 686360815 882150307 252279239 216196455 142890915 878760805 22873323 346471943 369308519 940328869 989066625 763097357 255503379 496092307 535469223 516451215 338538055 983730283 836730559 847095081 693859945 95942765 677991541 39153411 525244845 427416037 239185345 322586313 104722187 188419365 45656283 544693685 154858047 919118471 46596937 387685251 974210261 398530927 33060055 588354425 115545373 55843651 542250139 259446119 563564335 110123643 108945903 612641441 99227625 572286859 897281911 889612549 770577911 835035643 455425057 707064829 439847623 540258641 547005983 655414131 324084113 332853793 364106737 869700319 468382805 5449989 499484503 586717761 770977501 876670367 913255521 480612123 703110585 895970203 510263391 712115583 482932543 1759657 64131313 358568195 590412433 503694469 102913787 500997059 945594521 265126895 734657447 541395303 912079619 634064309 639543659 904435229 479963467 141079717 22948611 658835865 480479151 900109211 768609905 789589533 620470329 505108601 394915845 573961583 317645239 749863723 941700945 608218073 589027011 453412513 873800243 612122421 981831357 242906583 418236363 586645473 167877327 738637517 159795083 810352065 905314021 366690193 173130275 154798919 611487929 974979377 350255761 454106725 396356813 820484809 234818841 796567963 840054121 664259709 503557191 746098417 61909915 299501683 875074543 882981619 5326909 999956449 85874223 80195001 724294895 938546689 400053353 855465439 902956313 618640661 765990475 11294605 571798251 368460645 83263687 518967665 976845405 760143941 48765725 223666113 686064177 900278543 80632269 700049211 54959853 189677607 754987429 826308645 860404707 742956533 158804155 312725839 442119723 737693675 463435113 63039245 89563043 843139461 526081363 796358205 703613943 57391939 692686951 332933449 282297237 968043955 735717337 69032219 979059381 322221155 477217571 966977581 115503705 597954287 821429517 576886137 435730247 532919291 61976735 618982281 811980559 328971821 892156977 649640809 818271501 397098813 877704799 71216561 911180637 582360799 892445449 95429501 971607531 382869979 276802655 997024629 667787107 630893303 662446549 918769863 613296193 914646025 488485671 13579817 731020229 516490471 375351641 750449881 146899189 17924213 29905335 847911837 885351329 432033183 377793237 417915845 835682659 598445143 399857041 618160677 263285917 228468371 230861837 140916765 286112627 233145179 155839669 100507795 798841559 765576629 724748607 735618291 242897283 856599991 869698473 870496821 417973493 6761335 753265459 254886873 14704247 72405531 551010155 431977699 719159831 255650507 513616165 696579809 194005423 396991929 634188671 628902635 69778399 939565857 447352539 638695581 725253903 194204739 621390311 695991070 349955183 150167149 896483479 124345375 137064697 819382253 671778085 150101203 118535273 152095519 328737047 809744633 844985933 454103399 943026235 555088857 510296817 576929325 512108963 55447869 195225711 517522403 507432619 440855681 496578983 219815173 609302007 259686783 326215999 476941589 41933429 905023900 356813995 588830107 319667289 305954509 26972963 525859117 559180831 258743425 148015267 331606113 710877579 521337531 342184695 693058781 580822695 995207935 382813359 642659913 23711947 769115483 937292323 989909335 554614675 515039079 69391987 49219267 71981023 294526783 846965893 509790287 238316257 96223371 231762957 51664835 76529928 275058041 572039297 846690293 469049109 474358207 202662945 580437947 209249033 868535709 64489207 14480635 217925937 635370709 485347795 499923357 37266721 322638777 298638155 874171539 566773943 365447709 943335619 248388313 219456789 200671329 205275487 249952369 783033767 752400491 420773139 686242659 624160549 595387047 759029139 247606469 991078023 42146575 47782245 377268653 589218323 683416095 56284875 534873153 266217047 678232029 432340699 116351657 232351523 644842199 461421673 414558743 437515415 769832229 175585047 393189319 877665301 946416483 279607885 875448315 687247179 545907129 467110973 200582909 210726701 559290071 994762971 67630109 337316599 246157039 683427051 572515001 609165611 857766081 781326581 474113327 196133529 570163347 919093831 598029293 729094995 714302261 318163963 246088805 711314357 789446909 181784561 491048975 146586979 869539015 189359057 784806255 542169677 925589753 220850699 854489869 514089891 543938693 646814423 416469631 600292065 954196959 883660087 326464347 21984975 123664387 854603249 39154247 530705527 776494459 483559575 928926699 401347629 753491285 752743553 997861881 888336015 129572901 688116175 607280175 995313535 290677513 817346151 429819209 533922601 854373547 562118909 391524887 701298947 227178549 217557511 961334375 494740169 976849503 332122311 358055447 54165889 499662439 457878595 40142855 421726835 674597653 492301389 781749025 427312693 283103156 717421178 470358871 703379877 271970589 9967921 539259559 920379621 701585069 855953043 285107725 44075619 974100299 360209813 670254233 669190609 126616677 213589741 955996251 295154991 624435439 591558171 851996523 207223741 271435371 459645545 669569263 724244233 27517917 812792295 65449999 221003753 807602901 346015851 976658687 981470071 860391015 223922839 173393911 502553113 168515121 513387731 522096187 565974137 73752413 175741521 657711379 930038925 716943765 838298631 366254805 377449103 616800785 357764021 268241881 545748999 48986255 50587363 531462527 585666239 828855383 967194085 526972727 843057611 549865269 437982415 662216557 767943815 836040833 203293315 828798111 67292057 891375639 528814505 266898511 785872875 224164703 180607409 919939591 283309491 905756741 983027157 500096599 185742189 268489795 601182739 228021725 312056029 744284501 523994675 220469817 797763087 36717825 774529735 397292308 593541719 294617943 602600999 456216869 580282195 944836075 604215667 986937633 778129893 595951835 996103059 524691661 908090681 207084497 61089847 903777267 492200903 1137911 831036631 771296611 274464839 498835973 381547957 464024059 529668799 572117819 172436183 799394203 784677755 697888347 28119823 825337901 742454289 895009209 403517171 968348325 800295515 949069605 788479975 331920379 719248253 823700225 833327889 348110387 55831269 219617075 446405727 710936407 215721287 88948777 895986573 282263159 117253533 308821465 175373083 547643569 680347183 406782657 116377423 459614245 8265605 171409127 194994491 572237053 531359095 294682331 242609077 103281261 818387487 726724785 589704287 271031213 18100963 574368519 143112355 441933569 487884141 272272391 422843053 625934515 474347187 21497435 526481529 385794581 614584817 88528957 393234629 347757697 448277931 900427879 390996507 378561113 123924139 702865699 72241611 475363847 974413577 256739645 535540971 225915647 361588513 273147661 188850013 987074233 87655061 174561135 412767944 120596409 48534353 864171723 112049569 772681353 641114251 72343055 864985113 317013177 76514241 234706353 950395189 336746982 76526515 262748335 216768957 239432883 305479535 258993551 88403775 743680969 410774345 264074593 633019669 105470679 129225695 379132089 356738911 245455773 640560915 462091957 816511493 542862553 123053843 60519935 463567287 41313109 148635473 444369857 133333741 799423719 199390093 391941301 517739241 803124583 980447943 637876245 893476531 778022327 233197645 10696875 920662553 111138497 64265909 596023747 479603379 92783225 562034905 694969397 751684325 938819801 979594973 582247261 303787221 450303201 219278639 188900387 296526195 585998237 560644995 618192885 510310263 221592861 587663317 924382665 266240097 43964799 483190631 394443549 672777085 834238947 456947145 258920697 83671253 852730741 307463117 203710695 163169351 642281573 87966351 875838467 71629935 666060013 742469749 313731047 911759801 90432593 13478441 407265721 458829651 670431195 618553761 967798571 677479989 614996445 771539737 319946607 897975327 137341105 492371989 942664775 632012443 809445817 483626593 426263799 567827447 996021855 260523793 913227597 381803087 749606167 979900291 717270689 202037887 941317721 92860505 355446479 72669489 967237547 500780161 236313919 589562839 384671377 111148589 29384671 216170919 773459363 347963355 343238181 799421089 538794873 523905359 684861967 165064333 425407925 913143959 353752357 688428031 48879619 504500483 561301361 697679691 254550291 241363507 911562895 408078739 57417119 974696713 271614617 759393727 42710891 120603315 642098485 41069439 475573825 164281765 915156117 685117517 237028083 308917913 957389419 553948263 740181595 817092503 259450617 228838357 731512411 333036775 622065155 814319977 240239839 880243233 150273495 452295099 378984151 184959775 240481869 640413227 385241405 222735623 647775681 549668321 406927893 178218307 187577885 657310413 916897641 388968073 756008907 355203751 303843915 582199763 557434051 271086065 15882709 321061225 226355075 462331121 447626281 964820437 818181137 775976633 349030771 974527723 271202045 266493985 657119459 978548935 813157981 780721865 593006515 657185487 116360909 962681367 541957161 580317359 362259571 588374079 853328523 800172889 523266049 959269175 813058093 70509067 562533291 674777025 144916585 548648265 548103213 103501923 397332385 270285279 117814225 394078317 963363903 635422177 571265381 161796347 296576951 503849901 750195515 936323561 170695555 745937125 524744247 434690787 510456355 55615351 836528827 37821525 362506787 796203157 919703479 695324795 477279509 720667071 441129891 429627987 33633427 431169461 674144121 437952167 32781633 466177413 931112897 489573639 460088773 939008901 795150218 997160649 807926741 60513359 229646701 153010191 825301803 926370759 257287811 583315649 548308103 390864411 969923955 697257361 225205941 707481279 854485359 305971443 524784519 702525295 989862699 497637931 159428311 636594989 724581861 36371521 77036935 442032457 3614307 519826691 824679555 836418645 633282034 418241035 873462715 527223597 611313517 984163257 837444395 768031223 695967279 484765237 555714515 151011101 126955293 45333103 118514367 95623253 791569831 204245281 352539137 771643803 740434627 998031305 394393523 489709619 503077873 103801263 618659065 733123497 305077811 900215013 18879737 110276305 383273755 310451523 218989545 634617543 93744575 850762601 676531715 757839857 642720699 106836413 148100231 356289787 634609719 350276979 706588353 502282711 186367711 969126787 667965189 224029379 559101677 451281321 206784937 763618117 632383005 936113521 466614801 989065509 108463541 858422571 992508329 110338937 126881155 431548655 932713697 45046175 407383263 521012123 795793971 358215737 57584551 17296347 767267621 581431861 976427327 768827165 24866109 968149447 283377561 295416985 812350223 869836649 21640231 989994575 256603445 7845603 232489705 659139081 121345875 916637245 388247399 169115735 551548175 320077007 703875501 978287503 127035169 108748851 851503955 89521875 449291325 44459343 971561077 186894093 744350251 543268173 272775867 70363625 449078449 870397091 162979921 476308707 523561635 571128331 625633521 302210105 345776859 709857165 971811031 815039477 621082941 359408499 31067081 596045541 237397423 354409297 986640407 728485795 5266729 930676995 529093013 299040143 465858207 784102319 178327202 627215315 747843609 359606463 754212645 765080155 629346205 155133163 629450635 964285665 665622079 931153195 203715533 794082279 154446617 806040005 323216997 602765749 303806543 859735365 973714781 126280025 225971209 803794815 174618945 517301677 24756601 958849681 73135657 898687569 606957019 131530717 373398193 983698605 698590063 326978831 690100993 107401457 599896193 42291999 296031687 4324117 147191907 854081861 354003255 281008091 690706033 559687175 492583955 982949833 982286089 787476531 282115745 534048817 909592217 73186776 911016875 340133931 375798417 459117400 989063563 664077719 209842285 839002199 885000479 562467355 537496751 569383613 413630157 595056683 804424159 647949247 425630081 983909373 196777361 706727645 796988339 711005843 57900383 612825303 839637091 979853491 727129069 442834109 590932501 544447469 272435171 846185185 43667415 366381981 150779123 363839967 143932993 298171359 575540441 161264541 218162799 106227871 220973653 915448901 40436489 822753417 943713845 530433869 354538813 755588121 711479367 353737841 383853505 226743951 753734759 715342517 923104211 304778993 901114745 505644389 743239225 196324623 562795621 603416341 454298691 605517955 535653149 99476129 28419269 419496367 812084125 905877039 320409375 39247031 776974565 249813547 772021301 840545933 911508995 940853831 541356409 999035371 706045701 931224705 284658141 637635151 605392903 976886301 891432163 798723331 202565677 818531495 116534159 795991061 891818143 886615285 559076207 229019999 19141519 321669665 875093403 914005889 372235065 469356175 258405807 831059683 21149919 336951021 506805459 866803893 322445257 202276653 234729141 692462577 626355787 474016655 234650763 373411413 532937409 284454803 480626195 675849577 158835849 113708807 237425811 361447295 272416017 998999809 296651227 588382895 783388875 293609691 240103743 662088665 728899631 45390651 683722399 626523555 984676543 243965707 541562209 548051841 827861513 187438721 869071217 523773611 671943323 976725015 203935305 663644445 62312721 516018069 272411621 705818787 470406415 98631429 234174921 186228173 708517949 676405691 700118537 123086067 173484877 463223123 373624375 952804661 868549883 571496115 429026929 146121593 558107913 784477445 212597855 991625075 535277887 838631103 982704175 543967385 448131187 410859676 954432919 425043243 606377339 475741347 662834389 536827187 765583421 872148253 301637553 161888129 706430625 528225697 684994679 682877611 566238617 473658607 438785789 918321685 670165537 838701431 713525667 704994019 120161339 860964701 249496655 185177353 630605807 606244971 765094765 685860411 719707731 488534945 6909175 446999807 262329981 529722175 191838055 609465239 541440659 279514579 995026119 592242969 601194173 992080691 378929061 413766745 873189423 270800249 133407764 848734969 948538401 826293257 178460341 886057057 921245909 210260625 542831021 579220163 30834841 367559685 533915563 489792019 862104251 806114719 320565477 871833877 390102681 792498151 868590107 639423057 12258963 58296741 135043983 366999317 978453779 208924913 252582931 178836603 467508107 19070501 460588027 288740963 840126839 303795431 105486887 58591348 13861209 794097953 619648765 597008673 805285305 646255113 781839211 62538399 603908141 140613403 879239653 179381233 899418187 957716251 844846957 439196637 587951289 975238933 200175239 685618165 72230431 502261597 148616259 318594449 127199281 790479503 766525749 469061329 900587175 153663121 508524667 859441051 762654789 574731151 971879101 366824099 397141459 210625275 283584809 859370079 61062439 272766611 470413431 5888529 798944279 939895131 198547425 662890175 282310537 121910943 201693233 560556603 225069157 393066229 91104945 497800219 281689759 420814645 614776893 934924483 67625007 403528585 594381871 212933207 607002137 935607383 211245423 440967627 646689125 383468889 255416681 996679125 237132329 442212999 52379927 541679605 85336187 393557801 544800245 187730805 22728577 818366151 208505097 580295269 957972067 334186553 215998947 896083099 353933141 480935577 522466197 608362681 498204303 819142731 714786755 173053225 103759189 758600189 307293071 370149143 301171953 148897187 238019755 423013759 258462131 362484601 572415049 6262303 348743161 111859969 273844777 588623487 799009059 671680523 629213075 944387827 228701851 752379305 679955539 767334287 530655443 927507255 584145343 34979637 234925129 127653211 685420471 820734605 303877753 842555135 602484129 562299143 389967603 884340315 848945515 971383261 203166791 963624423 543940235 89409293 153256717 250136423 620305663 798951007 481680619 689605867 849663565 986016357 11196299 197913543 541708419 148842871 810998683 756745619 849504569 236252341 870276057 469840695 348971149 538075399 719842823 291172831 259333157 282973213 82131951 796967421 874595373 731250031 66928739 819367505 875856989 724513087 944916027 592861915 649869045 776161171 830104413 308982761 701790135 166102333 446305201 546275601 438579445 638834387 737602603 483081259 595292293 107816377 892437443 211206241 694096579 515763477 810741885 551615259 697617815 139362517 501766755 814473997 122082671 87896757 434095751 639361335 78808129 489615669 787994625 626567129 649111691 492179099 553033975 308436355 163540051 395791865 99743123 261364231 760421415 99581477 116523267 615161217 894946335 291081409 351659143 668705621 738165465 655504183 859323997 653532979 840557179 888778675 948314831 460806155 172565937 807870001 960222515 436024601 843227827 641085807 285056225 777560805 704237121 338672119 245307451 295943737 558357151 932925209 982933419 54575401 955228315 91154411 265946789 984769553 449434763 380484175 715545249 918824087 86411601 389869549 957512739 96153767 191045967 31118135 869821365 930717043 391891827 757772897 484247273 796847225 897914935 845148271 984516441 934075005 328013463 308494377 768981927 315131019 141516571 631332125 839312509 127796473 271924429 277170853 439634319 211666015 306630215 696575201 114203285 563474597 725184167 221974969 673470035 726333431 738295443 399201245 601748371 431908809 354316087 207854533 52766247 690272725 618209101 590613171 758078439 354374945 769149455 209919407 159012281 629314299 44423239 619155591 518887047 254606835 308221249 907635411 81660993 651679977 723164117 752706807 257019105 900823553 560013663 667958041 477300587 209553829 584838343 770550313 163379433 929976715 473207163 401946847 199141741 689796525 121672817 481100989 400214289 269357395 701609767 416931081 625333495 888492551 876896933 997376467 202160713 361034909 211673717 673031415 501145403 164047921 913039793 727395601 896839173 968699689 640015863 135305357 208045547 784456751 303286381 668611225 565480503 213040441 164444863 821002797 340452667 279404675 108589095 907206921 385539921 240777105 821426783 956926647 478740443 325579311 862503089 589552519 103416387 807716209 87719147 240500111 250505469 38419123 519622239 269575775 956740739 197787805 84934897 364887701 758821973 4089365 191546371 31771053 945354751 33815891 368670085 203149871 776430099 535939285 167638765 849094683 876236587 732831835 515814969 28686139 462582505 570569715 853915887 338731549 467459319 300262643 31140127 415218459 514877449 690777843 703788637 574422869 176208599 333295325 220056265 100178867 644119847 262367193 752207369 108321253 766049471 324876891 532688971 477615973 42993265 746073891 955935555 739693169 182064923 90449457 522360115 529379601 828386463 448757205 953629663 736615959 422642403 661939103 574154645 207498779 972739805 952312689 447212077 813063293 544304005 397908073 464086019 28847205 165534945 343399927 64361215 544227779 691088631 531759311 407532511 104470095 656000731 879570925 823503275 655380107 405922727 551951765 816279501 413755581 637425021 13046353 62017021 794460151 204792967 944990203 578061003 854348561 266672633 34698921 99666507 341541803 998293773 685759427 931368733 652931883 137846787 379995379 976441191 666184133 823730983 378993455 102165975 706936687 982418379 474729907 885744289 49285867 335899976 947169027 189158023 21078207 926717955 534089197 836690381 616840251 902671461 601331841 221286209 506630779 551557599 208832287 1997627 366103387 836618219 502102377 433358489 799280775 616334605 150813515 857094591 110227051 370820049 201082877 963697053 603055939 862328261 671453431 526174377 713906189 888104581 528996609 199473123 275534739 260997811 801958179 192358349 905246565 241706745 743621043 359223161 160245465 346163979 508901711 514908539 458167825 807384739 619796443 368272627 759086837 291468417 719183233 675316871 657334839 842878321 848354743 131531621 98460747 353567045 496484919 309222979 902495861 150235095 572093449 816720989 949907901 938762251 385642613 59229821 373072369 138422471 148128787 704198641 903098539 572754433 174901695 238777741 670317131 370705331 938526617 162754223 40572665 186986205 851998739 624794689 269095845 108709003 628961501 927953325 536556297 632132815 649440755 213607915 142825635 674663365 694957213 204122745 647837627 52833931 204081765 871707231 357660259 15980111 725805087 547174185 457306227 147461441 833047785 156036589 709171851 808278427 459809573 284155467 257242387 154001059 877569409 833138537 523517241 393645471 287033839 5147381 861544443 356884195 845287597 653589541 808692499 772404425 798160191 24987831 899674637 596996787 28795249 278588913 904791353 895200269 351307865 3104161 244169391 538412359 668041553 359581471 994138957 54572765 299038461 868094537 219216319 760110671 793866827 615324291 912790387 64792873 240268653 707431359 218486689 609111037 349090019 664143727 201262153 34270055 756438637 581258643 90515253 138466053 102230555 250935731 710343925 54781061 959266621 95387610 278316511 478735511 197320565 763997601 877602581 606339063 427280289 853368615 464757121 292098661 266192625 843388429 976600783 70356397 810253785 263892615 237930619 157817505 432079637 361520201 354675395 825796123 926662311 892690321 218292145 801007615 389108959 242390053 798617107 818933301 260606799 330838613 973243011 553924015 610254805 846021621 153788513 195012969 574866833 579384675 118395607 376571235 867092981 599659145 422149585 984317865 1788849 68391377 223782153 129932621 245052867 988597557 13723905 350129003 330442351 155082543 252962817 461065249 709392449 26794953 50024215 847584669 697220877 864591247 143020829 664444687 291112177 763705495 871014835 827006899 234401615 310049667 74768961 730486729 293059541 506400373 365917431 954358175 448786805 475070491 499422157 606092931 193099631 243774127 971264389 600332753 901778499 637464813 642428581 318689259 346355391 478573851 789038207 746271037 631622905 515261449 178739243 232275255 972360523 628686859 607347593 172577109 671917401 152663041 434630719 904421913 454700817 280514127 553102017 478948363 67952551 527587815 54733125 378569407 599893141 269083451 195637453 633158097 990241443 32761677 172166687 593220063 928266971 841503393 495654093 694990743 460400527 97670725 661237293 684601513 785190241 954965199 576312417 678418129 582195247 379962209 470543187 344295115 681392683 102348445 891955633 383623537 923344069 373799347 442986481 518698629 572937145 957996887 497694041 242064361 707148815 794282189 782685933 746528891 499867921 17687253 920004221 97259817 73229651 739619521 277222307 681442787 502307251 39626085 821209793 428085413 507862099 490607649 802565115 142022257 104910751 167387097 10985539 808069199 928252751 315566079 806921299 575001171 357206363 811871621 269237161 20993177 560414985 995866605 417108367 526389311 152768485 115614265 385880595 649157747 116069571 305876477 710400271 586411365 659870913 303163465 147869987 150923089 395293761 30784705 461585590 779417465 492292081 389807751 663398651 23614245 901684165 253563211 825607913 339795627 621622263 909990467 778259519 325713505 240918543 219146541 89909381 620871597 145126869 801509711 903224845 922105335 171779681 872845433 389775599 366500273 148862221 580712959 414484491 555816791 34800765 863796673 239742983 255902313 208239007 242494757 345792087 878584437 240112295 236643351 322661427 156658185 639736849 495762449 979687831 469262787 84395425 461893389 704373329 201270593 645639009 295735445 543065835 566590513 831394985 463204023 299441091 672978245 448838933 90585349 410134007 257893685 475826053 382418339 879401068 924149187 571638059 88808499 442275545 927332029 833255031 997023973 560793265 979610353 169155623 405029743 508121653 182848317 781603903 916824591 220749679 17578879 679373067 234509965 571097903 676800421 947045407 150556467 237246475 360350881 628131161 876130269 106343271 442774891 907322331 549530853 614600295 174325765 814063891 914144305 310466815 845463165 106729907 179076147 410720483 258462689 592170169 24057053 970058393 191227727 658223209 722058417 724993123 218925285 944061777 866378675 220633431 596332241 810797889 104721521 575499337 427437637 436891225 494984451 915548379 805325945 641796093 748611591 22271093 969491377 893773041 108705696 949271369 657396277 96610523 65544321 914190155 97418587 332663369 507843293 497327935 594044537 254238369 224413555 763851181 32957429 545941683 404452491 36176355 740205111 958346385 505352945 507583227 44927153 78331031 371444475 451245781 500457695 717287017 204308361 90354969 974827843 154081783 646518017 483780151 172677735 651750513 735807057 36798055 663187931 229063507 25546733 617201835 640391485 545711973 894670039 597373385 12295979 974826417 31845779 316762451 421659221 539773579 307942191 19541153 139728487 332785297 423337539 448696787 804366111 31155109 665997805 431768783 979444031 382565875 290317521 290429001 4432271 961819889 991279647 758570167 701203941 170282587 801940109 628084059 320141337 494042935 339584347 333041467 775407371 91230413 573602123 992227881 944415145 359462323 837751727 137931707 540018149 206319303 65818973 923091541 734833591 750140459 133871025 441129499 747208739 109060173 400550803 356254209 223824435 955448543 774884463 754478781 553872375 259562465 982896447 467494863 469009805 726892691 554913151 396424321 864968213 680213637 584359989 22247651 970318521 411663495 773963503 301202122 179652011 527235001 279321797 811855579 650978599 37097599 585906517 318573437 809456751 42032515 827839939 871356893 100111053 19294907 836131263 9568503 158269073 359147617 324018305 279681161 660610585 715655165 761459139 686396443 674632389 449668441 818433743 873701889 848708095 935470473 405849457 824802895 304702523 933328873 661555967 812239335 636448241 739453215 932914009 597382513 663509669 774470165 614415333 147967069 443566047 468492033 170788497 597113829 532581429 833790047 7034579 432456199 530551359 40292339 184764585 246750347 632220575 203337673 227101081 752782851 586045439 543334197 406924721 285498567 486838289 208075733 216172681 882919415 376678547 924908171 544549951 956920955 876918595 508287619 985996919 233996291 666107371 193413685 794417507 402199047 845221217 507612761 290153141 824487625 247260285 964819189 432890029 459691598 543465249 759535703 50519315 539741035 956249911 886173199 138432563 75973299 169398705 868984317 144441317 471452555 642390413 632272707 737056389 901779225 587596489 346342735 893558779 561854283 136272239 270825685 664411829 723906525 691270805 736339663 313294503 43729743 248272723 390602629 905206355 338399207 54485451 983461247 433298879 69193911 458277927 710473365 865463669 887670421 691049371 654411489 535384975 137619235 119041381 26341833 784657067 971838411 563759031 46970615 224243437 901539001 835803885 599488865 132069639 695510505 500246097 763948611 348654891 123053593 561314625 845811745 669729819 551814611 117274141 348305349 477255705 828650599 397219151 254037833 291875319 47252203 203645515 629549827 496107531 179779905 635296393 907371163 921915697 604295953 997517965 516069883 553121745 320102605 117779681 854211163 254497497 797174441 133117207 164915507 585738943 479646121 248015561 204620617 354282113 354451093 182812825 443906985 597549733 738376955 503225649 452829863 73771579 208547381 283696709 983891169 880205783 407961699 779647373 766536249 394295961 263276909 244247501 831883997 74821927 924746243 463501263 778549823 977322669 638008477 951421285 120414239 771787235 830308477 26603625 218391421 721326601 591869099 55536061 279313319 323265507 616711413 179539531 588007219 974483135 959258355 339861511 620469499 121622901 790415625 575259881 657272099 406292833 698987357 595089397 876905497 326050667 350730463 117105717 449512849 116984577 757089863 393194939 163059591 846178585 220346135 326641313 444872509 990282033 153255573 84320777 133448771 845470287 22307537 23780637 181228395 440424963 952212903 587163153 138331601 62476641 976306101 192268061 18410971 448265225 21860705 217276807 102335027 224788769 976025567 715926163 992377041 882097237 375394341 680223385 979777003 293421791 70534643 959922161 150283019 212288633 444204243 301373949 85746171 188696173 40024341 87137321 381364687 624408711 132132047 921789157 774605797 193965599 363496675 280246955 786881247 540153617 478455801 195999487 439270827 325507271 490562435 504761707 842376827 166390059 746699959 747686017 118268877 895049653 723641749 965211355 987226469 321387107 588010471 830480411 26484049 636368571 582323259 51866091 351212257 820795085 477904619 326460671 127537589 956640301 360917271 725855761 559495343 519148795 86299047 836591329 885423869 436247261 817421899 944262459 130797331 391532031 42073213 99374065 159898539 52484635 333499515 744413 935939277 11502957 242239565 604661985 617684161 283114937 433706181 313625831 444208927 851557203 129939067 825685219 76582849 71687693 855252175 776595407 376923597 595833413 670104809 482224555 925788845 365241827 754388153 55979651 437181719 967003989 48460791 137125737 65180165 421441169 740251429 937683319 514899391 405911575 19054729 727110863 315499215 581935593 753957173 787188637 159992585 198046873 549415937 939327759 236970633 9020987 783956621 118138981 725813941 398716782 816304703 41155549 886150457 277673563 214825291 711950787 665942791 255552427 381900711 345656169 169806173 881965465 29812245 222489129 649772223 374414049 68576539 558862949 337135609 133621193 963799561 720301193 281954079 708519711 588400123 820745221 848782991 389979451 641108685 498532949 781032939 380633339 460925995 30715385 927738657 10255555 207880833 548596093 865735011 662160259 419322891 503613555 594639921 954692017 30063047 81400949 555294283 353432651 381719167 17353765 327402687 596674521 184872899 828120623 932211683 450616167 788911337 877289027 382148177 587085707 472541715 946232859 959443437 755710821 960725289 656213629 159375589 662085019 732561629 557027887 928322221 929112923 509634979 207946501 845502721 159860569 976990401 562234073 574093027 512556247 394638137 275114637 193080739 855779993 206730463 948294925 209607635 329395695 469873995 390807625 96708175 193022893 61121757 331039803 730991933 4297521 744331709 945307113 490538247 606725475 274682077 585643609 839103331 355749299 686489841 994581919 644395085 334156563 696332157 589115861 636454665 75079427 159899079 779930653 330166051 920562315 117848545 283852707 494192495 817188151 641461155 366219927 205733131 512825373 739885485 226297653 123397207 439028957 1666663 334610621 976714245 131262109 441505023 112429691 673340933 253196043 148731506 791377089 286149783 259975517 944891517 43447785 401642811 274552655 151882921 881234263 188878783 405592621 81591623 368932977 527187767 232977855 568387183 163180973 75499777 992804703 67836159 38675845 641691583 242450155 25324963 936620409 739629151 672554951 230619081 135644439 747270933 433478627 3288745 931230957 509704283 490857655 773290051 899094423 199147001 364672061 24876641 281416887 538297335 988068351 158253971 742828537 832074669 553595401 484181551 836061197 740457141 471380977 585842007 807101871 955791349 688406999 980447733 105236639 213186199 743730017 712781237 987060393 924980497 795035837 946578451 564984993 437775901 522485153 460228941 923406173 425185731 356796491 812593517 52086977 395004493 389150337 18647361 674356409 916299087 620799121 755579235 421824053 73366181 969872469 969662261 976705585 807987573 234782757 275342299 732812973 194473769 269848557 621368647 182596021 570334841 672012823 174330673 801064029 856074333 487336603 71061531 534010299 546332443 828879865 366576717 985965555 806241087 929284147 478706901 965794097 654083741 955479517 157490317 503288997 187760979 512173319 36242709 296280459 568849091 363175507 293078485 135366181 10139289 345692135 474525437 325049019 2710989 578556529 928311941 873117857 891767190 995184679 333927727 197334833 268834941 223684039 170642305 891542223 207931213 872288151 122700493 7749603 775568919 970765927 416442411 965201375 549961531 65286283 917830011 451522623 308632157 968995555 759095907 610835331 546308455 242706899 656020311 27030583 718284685 269785677 832166029 686714863 5256783 328194243 689732359 315525697 967369837 977398327 983603595 145928145 17690871 80090923 65905579 903672139 989302335 678664369 424060093 38976097 941343457 439453535 476207331 684094153 351058115 24286289 706009094 841923403 914515471 643131439 936295639 478948525 517039163 535175207 296544713 7184579 427286275 302508271 926032931 516516713 916739435 728361413 772093161 890983293 713567935 804274033 409999851 143895533 294523283 924252477 764556995 798445225 730019011 609516035 460858323 182615469 503503989 586994977 999995711 876472315 732906773 110346109 684105209 56504987 334187605 809409667 370455227 267520931 981123123 861360941 7984899 640362792 92414963 365227765 484954651 163166291 747625249 483289317 574584337 280919623 621284499 849183369 763409087 372420413 853307747 483376889 298004165 712891755 423998453 913910225 833158794 449851411 301652727 551071803 956409665 407198851 475635803 885314529 903257057 854753545 689258593 257238011 161458729 59436033 698707081 734358599 964089249 572029647 253779107 964268043 372634779 831524571 591965631 898696983 267905839 973135511 999926589 114906815 141200957 800684671 849287105 969489123 644030059 404636693 333380661 766172391 450579245 396473569 580184783 315601597 923566522 469508985 256053769 947488729 255643153 283932275 980472235 171243575 579029501 939551093 170490303 99280737 233570825 374168103 473819033 734353251 226743955 258552123 341176021 930674645 423268025 288748909 189899353 337837269 128451425 44012671 780898639 44520967 195386943 426541113 876969005 486776731 85676745 381368687 713602991 482137927 564700479 893090045 773258713 265131337 389070251 606840003 430970615 315721575 216329949 180852393 549731487 159703025 315697515 929648551 553461929 195024571 811369145 421075123 442777149 623969317 208280043 400821201 555578055 669500437 251039477 910974217 204011257 148302073 667635595 587472751 575654867 2370245 470944307 589926431 302962581 400727035 637137199 606163769 594468045 316234911 672628117 833927911 68644689 653969215 913101369 131889243 810691387 394700275 642336445 550556881 954160623 584822105 173937289 920575627 394241307 488768917 883425743 913217489 798355891 18311511 374391427 99778553 982144753 628785877 77661777 273161305 635670365 553836237 771212553 127322455 725823935 945573255 313373361 467208539 858563631 487862735 602004347 995274201 726341383 614431227 958204743 192220233 859773933 397960427 963763133 701270829 880043211 605767429 919472461 992081171 593908951 172067637 919780399 473678729 423736717 876769781 386745701 181444141 799664049 163562049 488974261 676737439 268117583 980902047 417559217 643985033 7616955 928538653 115526577 254841501 264514193 215017811 827943637 231334295 251751095 916107103 115532803 136346169 817952857 440891109 974732271 921592653 340296425 327990037 407556366 962705059 767976997 537927845 940609701 294890521 983091985 646889173 121085367 906577039 980350201 582567015 440411159 389032175 354435699 523230893 82146651 367713579 642842199 762700923 547797991 416832319 648060623 135918899 914143711 963463213 46527041 135561141 590593591 473225471 843464807 136696181 942616997 419822533 700300089 295526247 654143913 380780189 795791871 688746249 700821389 504485031 974008385 319733089 933956961 634581261 821525719 163503101 916831995 838013443 25397467 230904309 720773373 539296193 405577905 629373159 346144721 919519115 741089543 790252535 785455779 986895017 791965649 105166037 255167599 71306609 52681035 952728247 904858355 433370169 78871799 400751453 272044473 710282343 75876517 532548105 393169167 881425763 834231143 772923533 458759439 202243489 251752601 780748351 144552601 603803033 944250593 914014971 37427797 67822287 698834731 248505385 757772723 675957453 658906025 427515831 78738413 457201187 384459481 590653721 840148225 920550255 666089597 160270929 287555767 66764881 116772005 609066211 726418849 339382387 914429093 607537375 352964119 613636745 302706709 10106841 715011897 458026315 608512989 485441521 974548463 551634557 219890985 107769035 115766249 444351977 327275627 699167383 546277535 686676575 60594787 996686093 573115475 954295997 890935057 786002023 495841035 306419427 116613827 625809519 541809561 954160315 709628687 803723633 967345299 466559289 810313165 515087683 302974301 26572629 119522343 226713159 154981661 795704595 891980677 431110751 408400321 673967741 543555227 317355513 948107525 187455139 271794281 510995215 162019177 54956195 710760239 720819741 530455347 182674589 957884285 115210025 279868277 389041339 677931301 782334147 222657285 752790577 349761603 589206271 395628933 47536695 430548027 591468157 688381535 206470417 133720765 428447585 707920319 600707337 521068217 413443165 65640865 931043185 604174187 835670947 715718851 454260641 823997275 946150387 527408559 465957887 706615635 317194133 837642165 173491445 505219431 342183253 51248107 996575217 671895027 275384715 285708339 115805811 535046301 691872019 965356597 513410809 266718545 969072213 118851683 551970319 954284865 725871679 522283761 262609733 209130987 432016711 573194979 648725049 372172819 392888939 343648513 615278475 371092165 345526833 629974233 51491813 879607895 605919657 318315973 318329595 715806561 154616167 101884901 343412357 804417485 451606155 940724001 951615815 360483777 787897 571421737 394131979 873458359 282078755 506128757 686914211 1213543 68473467 98342983 272392425 207756247 38654467 922274727 863775167 174635093 869662591 976491363 832789519 281308787 314473533 318037267 861099469 180006669 967697683 737625883 179554545 176907335 6241123 291121569 540760705 874258063 895502863 650245525 287658881 236813209 300687495 860536239 727424009 550483807 327254465 239433073 389915697 8364841 306657083 616462881 501322011 376682113 320253435 953771983 70840819 136134715 41401233 425462871 694598375 155080563 424095505 653518935 100187703 371847311 765847067 257183285 339091745 881866297 87398355 178639653 155675889 335951975 493485035 707410973 59930105 19179349 425879957 344992477 389500049 951664775 54499475 270255343 829296161 501270473 412218921 318041763 312964109 243500079 637962789 324173327 280829131 474935063 263869407 333684245 11954387 12278563 821392179 762874719 111377321 793999167 45846921 205201753 290225879 929776547 347550927 346751295 996863215 323434183 919631483 693139215 348288139 40458865 132712077 382817427 112683853 340111021 440632455 19578457 139259617 951012561 998237307 166769339 468500471 99946101 515767293 938356953 59267401 597832835 291776301 808439195 655196315 580939299 696321969 369978545 388795831 407648201 439286197 499986325 337373551 921085493 483922675 646114437 410683037 129526119 821896613 681521033 666515747 32215471 902320021 717467509 272944365 474020509 132411665 412662491 388914923 718602771 631452139 771462433 347039767 366146863 409654919 406851437 585493621 377352033 243572935 451741103 292243983 773565789 192884507 502098847 590437367 232829471 260027769 71162303 87456071 418528235 702797919 623963733 156548129 44994893 512461269 530228339 717800625 837882905 262395495 498047217 319605287 229183595 790911019 554146671 410892221 577279913 515646913 758617939 972405175 264820093 40876879 600710865 291573345 190152413 736094081 491622879 408846087 400789255 183085201 903002431 663308555 117872763 782798139 332916087 55712457 395479559 875277253 103115223 180047533 729324479 707440893 455545723 61703211 321199617 6555963 59283007 757001405 114805871 787432795 268683727 787163363 284574455 614171079 839407767 631762729 742913227 670739305 153537235 630318369 458386281 99755193 387853187 15386213 395099543 717927092 686149995 265371031 20394589 443391973 548888609 466111843 768317971 577491797 322970361 501076857 540092755 261701531 807118357 43984277 560235521 282164183 239752029 108768375 512602699 561430703 94418819 24635627 143890341 685348687 801696507 689513667 449884617 527377009 283153163 930462681 978366399 347296593 73642165 952593167 496936145 125255349 622682573 302514513 767379345 338229227 802132459 459029647 285656801 841849291 900737391 833628869 483459295 695688115 19971201 669309683 420067837 85395591 735522835 39986725 364253163 766755255 648394457 372595821 119668903 930407483 662280279 114486245 492700019 203433869 895342547 209687471 75084255 206228151 915835231 524533495 645836991 45266243 679655123 70556141 247637291 84188237 957930191 178944205 67052939 125671279 256950203 499941591 439822475 794419153 850592967 615438167 792320541 474074401 68789483 37327007 411727999 989059731 296267751 129824011 775158581 200709609 629914439 990894073 805431819 86785127 427883861 737309399 319112727 400599005 473731631 725419029 553895603 258762655 180752561 138669613 759471235 520174987 323843463 9787045 347028597 145704203 191774239 413540099 121335483 377487881 689360817 448084443 460544469 15559677 874613821 682791837 89340291 544573671 2003341 235321963 104192469 39681097 532324401 423167853 752808987 975638581 816661630 619361667 277424119 648472129 564904345 284871527 205752391 180457097 54847081 48003801 574387259 284428469 779998363 526559143 339668551 985421043 543880107 676267167 28200742 824769785 920580055 733452957 101008607 947540229 680962857 681011587 458913721 173212381 469040751 402655037 268967757 296900815 19381827 581593275 872833399 708637363 350116359 494963449 910987609 400579303 971213535 984813561 374612575 627685711 775846077 155040707 759297855 811538013 130854233 273075563 456991989 258899459 529633077 242634251 772913605 241062595 708445849 737475015 194442299 696089759 57892499 902696133 464590379 568594473 466939901 835996733 823185331 158163319 130999927 532492643 114673205 700848933 894118249 813619327 243227999 383924059 29835011 15236567 864419875 50634439 208520509 104528063 375005121 728516511 946092761 331298963 131309241 110037665 875668573 821641137 319342553 390181395 493643035 167373959 446481207 121949381 231226923 61822597 738717485 690763019 73337709 407119143 350513503 524665797 454210183 630049517 212707771 926891863 2371053 364467813 191960949 589280433 154788309 59948317 660782087 937327691 792979777 336035505 258416185 135834399 643294967 819092421 920072981 495446455 295768713 556213505 277324525 483717919 435437901 663491095 401691235 122472943 719421799 574575811 91814741 543379267 393829051 805490629 945660917 404566979 67889661 927959017 807511987 267747997 339231137 257883395 556838987 932671623 954175213 839756521 80914629 219261631 736846565 910528641 258689131 23897099 738510681 253489329 74073553 906843579 580255715 948777841 724410837 285758627 792153829 720537783 461031065 614344739 5140611 7864197 77174409 682836257 464045999 446971113 857114973 253404937 85013283 126379761 115810061 201200853 148056157 449274809 451898079 165329407 736974503 702504037 87454303 213378449 687092239 558429725 581444193 691134231 213823087 162394387 857336323 216193961 259818087 605982083 376489383 815533283 811405919 902716589 80813563 136419309 962507143 106079199 884416755 802198645 61970137 878261607 53644489 827828657 549333011 562603427 729370885 316212063 456723645 214446577 75267439 32562887 108223785 204659647 931653919 539199413 361593199 641311101 483978095 375291775 451718255 444004263 931435779 691023877 838185169 922711487 786934473 110180011 640398339 557648205 891049717 851083107 904746819 698973415 524475395 482957215 61073547 587610403 957618103 192361824 169053609 969343911 142474779 914015277 448053031 767896603 947668103 401668113 655456099 999855409 859369111 850120869 872553339 254659493 178896685 828233221 444350037 772900153 602397557 90876889 452566437 351236021 924032997 690011727 179862753 404740079 466109753 312064287 186937417 840986301 816604533 51043971 424294375 950636549 738441957 417968195 319526539 287892399 763120925 111524015 931408075 195543725 37794811 212498331 46919691 980569595 163037345 312515943 829508975 87509403 708305533 788535289 410966251 48447381 566419521 343481789 941472819 890731775 242342635 680684717 85054413 114586863 842508479 474110789 581053435 262637451 864829003 778605451 823987667 935564027 274417503 498683405 701578793 801896049 497299995 791796451 475279519 992394537 632607715 564716713 748415133 84954981 465611361 679099273 338031189 751753071 693403273 255465005 967792059 315893911 50824603 204702413 608077715 286077499 628405270 416167975 559519333 997046969 784316109 514497665 276814719 504155263 321350607 165035691 980858875 336364799 99833209 982477051 227178425 694958001 33137009 535448141 638452321 55923481 989782945 534145799 993607267 760189375 904839487 856846363 430448631 503797561 503885767 276298749 317898271 113346845 442815995 164137387 264802209 964787729 543434987 877244331 217482255 746755261 860804841 577933067 737838785 572313301 385254035 376193123 858050007 633816593 61598667 342572751 491936567 828240691 691091133 413653241 762046357 846892809 261150943 722797579 778082663 216960355 876734959 894174397 206010863 737584665 571983597 254643277 149205043 902056977 951542055 780709251 87884805 68417587 364631857 687337387 552730363 236958835 262117353 192840091 262755705 168550089 384106865 305812659 55904675 454136375 110484023 18858969 227482221 304664011 755012077 571369595 614807181 348588949 478288531 877961101 96318339 515972013 889332585 402561681 126082713 940951865 13271551 579274891 101692895 832665441 794171685 107913483 748618539 114243161 59433979 887225637 580338975 360297561 695275749 983133815 222935077 355425445 171551885 930287147 329116009 525113989 366942441 7788011 5922791 594027599 529355315 9980143 479976797 85454939 42864115 130970871 752173909 117133323 57251827 249249605 260439581 751999177 240374599 15461291 277453775 851229447 279832395 294459775 709802315 126528321 475079845 618433693 789857593 110188793 73641023 853039725 809962761 972812729 148013647 894834395 156308469 885634579 14946129 159275873 52879867 515121823 991477001 407127035 881137891 548764931 480095107 914950191 106272063 138049255 885384723 400424461 922719079 261042943 331632215 606638889 13903995 527480323 985835825 414146977 911839075 659444663 436252111 935277343 429376463 264879077 24158371 937473485 985496375 463133021 28876395 342921059 673133533 400103165 728070443 403194913 566601159 365405349 982680369 309394379 85726151 680173631 153030669 464766127 786520179 901196991 398610335 413681827 325453615 420487453 750664969 769825287 499229473 73628509 982158777 173178561 552501815 976423305 420610147 341557567 544853037 816194227 228947969 820811639 389946243 154654195 615794907 983367655 533699711 907148143 805548921 413087893 963827763 384961361 843365811 872464913 80061813 245753543 396245411 725203055 630907879 357440783 861124271 736737359 110951667 687849067 149110913 919565781 503504581 717124389 626020879 879934385 955405145 49136783 372584085 705968155 987138415 453742595 993663127 92808653 573531531 582986211 617499361 124712209 227031299 135796889 49062791 130440371 101256427 371215769 239498981 109877515 115830053 688345179 624374945 945799413 912043353 948821347 255321253 466608345 825411065 378638651 994784809 871725989 62129465 751207285 188101797 510334415 836063261 468891561 159975135 795542101 316310381 270021757 245401571 445544381 236111543 961975962 782246917 676017431 926671701 882542001 976803811 834805495 508948327 68916095 292042079 750638717 476668629 90968259 951500455 87143501 510708815 143125065 682944813 116769177 263324751 810508769 212845745 784317715 247196689 629454697 579914291 454286843 674020003 441190849 427224321 535222041 231974353 98713557 731222449 37931449 86640435 827109267 622791453 108544179 679273261 834383611 336481643 295341923 757710309 742881547 683704581 177188019 803806283 456155855 699885983 545282059 936830743 724472919 155866425 803292775 362222027 985875905 668014869 747258693 601517485 474982445 111582909 885000103 997142735 294536391 46086921 397122847 619071751 198611391 289267987 97842881 636368121 877990735 338421057 550839341 237469449 383503035 729279551 156553863 322292331 337740621 255264767 772365185 534509589 245969751 492919997 766950477 628249543 493734195 546528769 117364397 593414411 503877699 88137109 429868005 480740913 104499697 656153231 583823299 655957327 255062705 416843847 980529567 521581383 431850237 607014245 388678485 216944835 918459477 595556565 410402381 825019183 726138437 209604809 998952565 461944775 801346397 209973183 874778947 917084809 885597755 867057019 321698997 962812223 883737217 280226315 596164179 901059191 485902805 254746815 469644327 172909195 591542509 488931639 936370637 7219355 8707713 963815509 550243679 578442639 245584981 428472647 151583363 557532951 417980467 501679233 135159147 83431597 287167213 170132157 786621897 961171599 285568349 898528771 417334751 778374853 431217509 902824603 282913137 620935203 899586289 707893277 405742285 238790459 335569137 431194723 233983435 694831475 631140447 903680147 949487817 803721201 931181093 791205399 451680171 159974565 621190043 98662821 330330337 659802953 499415685 255162425 317333089 681968217 571653911 701658645 22495401 403386401 84190581 416525769 937791425 248193457 618211781 358802727 473314355 85827553 453053245 476175437 805605403 627974737 813371671 570657947 270363155 546455655 831986578 640752579 262129729 480702551 755287293 573257397 347673943 552602647 848894119 233748655 789768073 236913257 328075755 222950965 563554707 122174419 118959403 955745811 218777535 113011621 27629267 645665373 703617755 815733499 761677395 993010033 653693755 729662897 92080933 976133361 83658685 311732595 38860237 418990795 987000521 923498157 946182357 665754161 465211215 925689755 10345935 811749027 735463873 326713661 100961877 370628321 814608671 40143959 900168459 850667001 921262063 627795071 522966167 736635457 676153665 833458441 427881647 81809491 363317163 713145879 244439821 447161874 391091273 296987537 944525937 238363055 953341891 974639657 524868519 889510555 198096709 536333909 529401473 710450323 88849801 853333333 98482393 51396249 233965003 759289905 358341523 357939197 69963985 325238971 521671573 98537809 749849577 412607627 540051669 572967793 32412651 292175361 703205197 12428931 52792373 651158341 916215805 12101361 654349739 537169737 671958513 432550001 40788413 56880321 869715259 798162687 821649761 316772145 56678389 82452959 344934423 239067103 530684227 452871325 303420641 316731613 560562763 249343501 323480401 816768003 525051203 452836685 560006269 950191601 223096933 402244287 601646593 478654223 400641777 891198735 328169733 847834253 406896181 544005683 390325045 767316323 921383039 898227305 982212043 281134929 749452331 939930929 991867011 611720675 67860635 85915225 48131747 180673379 75660603 919823605 791465467 697994735 332433019 200796771 270958559 190640227 634541271 164253509 631614509 694468971 582021583 903225993 383057487 335006837 493702383 225725027 45362223 76119225 957700809 729578829 461579077 655693367 156008439 820649743 562162577 972628153 993828893 859140017 444782229 83117263 262127331 65459851 728974435 565825743 308351227 817804599 560023697 215780827 871912223 61447323 51375419 110377693 786694933 710765537 186177033 670307713 887566499 589474687 303293737 962425667 312287901 454430767 454045775 737951841 778923485 250739705 649359805 805765349 293958215 192337703 237075767 772767133 363583425 95263053 587401997 897445155 544578371 390647367 289411347 128802009 475990465 191772987 521739177 839933411 830500163 329793941 296841395 630428211 652642767 946560007 797937827 997323139 799251065 441094031 802000747 524835407 782348379 568623217 47963019 863539429 865009561 397512505 231539979 23080017 980387419 637537211 996965495 406627693 7602131 302484501 241813479 721083865 703545149 972178345 550508023 994799357 195319513 937204771 506595535 697745673 798506227 605221499 875056413 736930293 926015199 459723753 75658007 375816323 620728307 770747123 146283899 282525613 460865683 576513639 428606607 928875881 970862891 756647509 233221409 851403307 9384747 956770589 597532043 3038047 178648591 560722019 889837221 249413803 184536153 70671889 52255963 211358339 526674065 732183387 970886935 852142365 856107595 944694209 750966739 105068923 396037409 176558595 38759945 891978339 926934967 784128305 267283523 696127847 378751669 338845085 670293389 126144989 67986893 325559779 529098367 36559337 203215547 879781353 90251317 875972463 788930111 414196697 856063831 338601763 788663591 659531561 139179283 782033787 351741249 593498517 226078239 614470071 46307433 244998689 631360441 868419297 491794819 716606489 818612391 558632647 235024759 628722193 38280761 177687299 425641527 538748645 555771203 909069815 926837183 547644091 858840869 831863239 845147919 200703487 768850627 195070309 580715317 844790883 398714255 884691851 836015167 885195237 830549627 265039287 723950667 936979401 253461257 369159987 563178615 366159773 350915133 689543181 474172401 235984945 863548837 417101343 861176041 55453861 430729817 859431433 788100507 852627291 403283445 723233331 478595401 334462209 181092769 607912909 744097595 968695177 358869259 548886481 185754565 570854195 412431721 950130685 954162499 713871743 622545529 915054041 519175443 227118141 493125507 637445559 356075683 392623229 438701648 758442927 478333541 408136095 774857279 494236833 765762769 784085063 889456421 761643829 633696105 206761823 442933871 384710363 837713851 795848477 699691529 757094603 523463765 143801341 676197735 255990533 931903957 179268033 426839691 74477909 275258841 620816505 539713273 556691525 794487311 67250039 251709119 456543283 436854567 123580503 62462325 338850365 688403421 617550335 455845687 318809417 555948019 816207769 837990317 475673355 729299251 201079709 365422853 255296761 511497325 387304131 431181045 257438547 10803837 507736335 909187515 718852643 945593671 803222739 722469663 674488889 417039539 594060189 36332909 566985771 360859059 223886667 616926331 766263133 275603267 864402179 60135593 522276595 112186725 494017073 194405853 244645089 308359715 871323017 955969155 786389213 241654413 156353029 557715093 76440423 592201153 476447211 419560079 22094023 346800093 508857287 567883893 680014865 223337231 227361135 691772123 27030553 902109321 491237117 456607187 689726593 127909251 947385813 565920251 1195697 122899007 27328421 975261563 559883995 766719243 711911777 589925633 800826099 901138741 834968643 47350469 768167357 12062235 112961235 900401025 616718273 634272285 497725401 148727677 534407245 725418917 458995053 561160073 642261115 264996389 736565737 457417723 127969323 429363481 940284659 97887663 922190597 781902083 680970869 450326283 385640825 102350955 468005797 35724033 628541375 521447655 387343359 169064965 129965785 248028687 659691079 667207443 153987981 711313539 820838793 549885621 337995117 396741873 183005209 543129593 256999889 892432651 845293203 312321395 560067801 394847881 794211037 996863553 82818669 281230895 42375971 249871627 483076923 9172677 690693847 853943041 251968449 724785185 487310775 667374293 576253753 132046873 578414791 596514247 480218799 738925459 655470931 789440159 878193139 132330359 205864945 809613993 343827099 790768057 775747961 912943803 871489803 285037137 476180501 118643253 940527975 357346883 773986347 233923581 341378723 19901591 208677749 120515457 995594101 272880995 316428267 900190645 378644317 141768895 75433685 673266203 996855204 584106955 462224827 827122103 149931613 36410807 278589301 888173593 32403803 93053103 474121501 938166869 866858817 542206705 215603479 75584009 174309497 816609215 838107153 573634655 539138607 638096483 285407231 718781697 619552607 902894381 825113885 576891687 381173703 735811707 808724719 730460303 525240561 447135149 20358462 275400321 703480619 254348845 355679525 597942473 608612495 77556335 824687611 735296701 126506493 595190507 774527079 907225663 853472285 503599397 246302037 545220271 424184927 869989541 328760055 9357313 449371133 496293889 262256075 226678697 939700469 635676625 949693333 878138789 438621967 242699701 71120481 3892091 552969949 909140317 330761091 263622459 515028663 908771189 433090199 980073081 70007741 707753149 171356803 223354195 670570711 585233137 704527419 959018867 966368693 506271713 229284057 687132931 251418063 54579293 843403381 45099451 126764903 158883133 72320327 568393179 875495555 736665191 678787997 683521317 974329845 433791941 983991565 50332139 427058259 795751493 366567281 58280963 252924673 969442023 892971501 870722505 208708389 709229991 658778607 863050021 808295085 94115989 570320937 868119685 469327703 240837313 1088923 151523807 171431837 563265861 254078597 939116977 532073931 377322051 930354551 42353665 476188401 477686245 6021699 889277789 16300517 284776287 309027589 474475487 170019401 566075369 67674403 918220319 306132871 737454535 858150983 292649033 526050251 147547457 134954343 634912519 531489553 651049901 604678077 190407313 223958553 8319587 525775825 678052263 887681895 280631237 857263725 65966733 834921041 89219133 288304037 331121681 716036075 45896511 469093335 32636041 539947543 492196419 938517667 574879447 482320508 286099917 499678715 773954909 529302415 333712487 108333839 458285835 946767745 717513635 599670109 364595797 577491799 939547419 282233257 784407615 193043417 981909361 566250751 196932937 597355669 721580879 525825461 151078531 814202085 67071081 446853731 26745479 461296873 228614263 254399219 273572461 452314249 847118909 935777675 93745889 735106677 657909893 831656869 749569293 102508839 112702753 266709753 6462891 899153371 641865707 790255247 802918901 739091871 14020549 618455983 112186549 985041983 905912217 154589937 394203447 948632917 479877467 771006255 911962707 377593663 415694083 823840397 158751589 283448361 49122197 658683257 593819477 526132993 113265179 707131815 721547665 860704895 179358375 752434961 683517199 754235941 381705555 183217407 468862797 953710905 4974913 232569083 593781587 247213517 687351707 860072921 419792555 948750775 593979541 565540021 773599857 760011163 663452775 38637557 830609981 929887197 511223893 268879427 347880763 504036785 484935081 180030869 492494613 223446541 304225461 847007783 98264837 757722801 400609235 485780861 930067143 760922919 527255141 583489379 258057119 756089279 476822999 350785261 405825377 744771727 771927191 997386105 277580125 775902329 520435493 133291433 743329655 489653287 399526143 592383593 698169105 708896517 159450033 74806769 976311322 993238095 950127053 125984953 744587275 75620867 829260781 519876743 919481567 739120107 898054067 726184807 552037405 707523733 539534537 966143663 482856405 307037787 654656483 72993785 132502429 438813277 696889275 131661865 827500431 537321347 283089937 908610669 103621463 171626879 59698865 358112567 127265569 794289093 170406509 158115143 326123168 699997337 438835743 608845981 611424281 966520833 205457833 242040201 716693325 647462097 663885045 622991261 231544971 322014109 578022135 186284213 687273387 638879685 73690793 186850293 1072393 93610613 72133643 319829707 723813519 684187035 802846505 430616555 690312359 255599345 48054549 516429393 553351497 528196851 226306793 512662593 12298483 2544111 949902535 773739079 402515883 373547759 801480921 411417655 943963649 817959121 463547475 382531629 773111307 742069555 193992815 344972687 950555749 776084347 451000685 9154055 416866101 41344477 696808857 925286029 304240429 432040015 411108933 724828761 223323263 27742611 374901451 255590385 275993581 573597743 630165901 323924001 210661819 20498805 206710007 562367741 20824761 777656955 878231161 291394275 594639161 540126499 933501837 547279221 399726623 448167703 67642553 938722977 856968653 250187459 997586563 107656089 692184371 214622307 282944639 512308699 585590983 27230455 739991623 896600109 114802569 382383427 774688381 736738711 500446715 231962845 895651789 91663473 194512175 751149849 766516199 457072981 117521339 801610777 59289221 174894119 884801723 953756615 578496619 847369493 998703317 724574415 705669731 721427859 837073723 915497389 338238527 908402523 60076705 249562527 140050907 419403637 237452867 44082093 838214165 708165419 370682093 35898281 525328857 309345551 675023335 874285357 986439453 541589507 662195723 99212947 345398229 946381349 670318261 532139529 174844679 730656231 916170447 652540031 202423743 161553657 689777091 86165161 700060171 213869913 656341129 783154187 802492935 755042889 886553247 155981291 152659157 546852185 565697293 636489819 983397281 313952093 153967967 169024819 814417051 256042861 211057325 132723987 786979837 327804401 184771219 813815907 197424397 236558229 997952567 59964499 529749265 769064523 246022475 302544347 748662365 601721937 610998531 626330811 242437963 36800299 287787805 145056895 433887549 965417125 647708895 268441457 878420895 10454485 399739415 738847151 330763489 473509397 100719133 946213399 216343423 708689929 197702863 495740239 537145593 926465695 553031057 129777867 732119771 794160137 763135573 82597313 958623161 785410759 103459469 96157233 651311656 26827929 678768697 246334949 191734223 871401871 652445409 881325421 887315031 584335099 710742673 533349663 263127153 490798713 281881311 700228637 280871129 577991405 534625261 537210705 126184783 932076421 639986525 765185639 388413343 311097013 277151581 913646811 104764059 967542585 117516711 905529579 514402079 760922389 626562679 458927265 718262025 796712083 172025747 32151755 147092039 351704395 283382091 333656581 804050377 479116569 819672435 738342827 13879435 557222175 153806443 626005223 207921293 853647561 430668823 409316777 315813851 390386381 592369895 208277419 863070601 552369191 914841299 81486187 219378861 851637019 846548565 357461809 407405931 750061109 850028407 259067919 700833775 442486603 652351685 882783453 363139433 39281781 533458005 372291899 36704533 941295387 490291401 371257489 988467 848041705 599205955 126081295 747929617 454761169 721361085 500358317 544167677 41161235 327722125 499679277 95078739 768180527 191218771 495573013 91805559 866330867 495383307 96558007 827165329 348038005 319832447 915347499 235768787 170021135 458905097 175705937 297382647 471334757 845112199 362540239 657673155 428449893 236444767 372503833 129960125 762023235 471278973 573901413 714441081 696498041 911987545 395633077 897395091 25937359 858013939 889494479 423939497 408758607 985381071 496456773 849151593 437401163 46039547 576255085 232621443 93433701 774339341 388419691 671637683 800199291 937529639 332615203 797186747 941414847 158506731 399268425 289902179 389221537 578550665 177603411 660152703 177318621 578395063 289079937 680244715 675474299 697811635 459825885 962560645 728947141 800793411 643078709 238260795 654666319 687527607 479650853 410770685 533935095 676774883 564804361 326760135 640095455 145387559 374409995 535479963 115269491 81550951 891384603 358471553 815802731 766303765 653260275 329136525 361992383 807930403 653112081 731573979 426670773 145250323 125261247 224218249 367580377 60549865 787310091 979342789 713763839 449461299 79403471 433860289 463268677 987696903 273664427 406060467 51245325 225173255 494519815 568397283 668827653 130400085 809810963 774264983 29531681 748186529 993948779 953694757 926130587 852930849 329923559 53573859 83498491 3560850 916518133 328614455 165063945 353331773 708912197 480720777 946456029 831487215 306826223 821705547 459902929 675378429 237087955 456012793 499120521 255010887 122758041 720898325 469958133 112719411 512714673 592658983 97591619 836760237 58867795 441523139 351551477 630922543 409957247 757840517 628987853 786193843 656100609 731326475 493908181 835513795 510562149 491613699 176555109 532316525 440719107 639198495 263010329 703796803 513598719 131796503 791171795 163689577 72710717 709637805 612467647 177385857 876380273 468996271 772948307 41507771 14372625 282142955 797552715 905542861 17661021 686295615 672945323 533551861 125568095 308467337 236814015 110959611 913224679 508944823 50283035 743284777 115990925 988155579 203280029 225338203 453237423 562062477 785487719 422372331 860254839 643097903 646090215 450530751 575250135 261832879 607183055 66538825 457055621 773907483 190329629 722110589 640751361 38668433 542057751 192893399 245741973 588964401 870200133 169295201 826021967 899727141 607103357 594667433 155424777 436787871 496574429 699074241 141923427 235581915 818930121 97281357 348676293 405116187 553954027 442624367 555659105 31187623 954871863 346221015 150758955 241970645 399759085 678039227 254619623 609226235 841201549 635135195 789607197 690364287 752938215 5382265 344244507 356073673 152701197 350710887 934138619 968928587 773270619 832182009 78138013 645297793 463994487 565507855 843904425 852519149 741211467 962916623 954011279 164559129 706479117 4608487 523470215 226129557 742783033 227627019 413599635 696904959 883084433 894938237 16886137 50667767 728399397 888091073 299019979 721109287 519165767 101207271 513849569 844656961 333640341 78160001 484731355 196949249 645408753 253148083 178934177 740383017 801623431 999851807 890201825 295609475 313824975 39928821 561733657 797321951 889944961 313446637 194266755 501707803 167326883 507197249 176944939 394260759 434277761 930684857 473469921 619950269 85938863 660051877 917843517 980679423 886299403 281774555 417646749 291539929 31230135 629511095 881363243 110699597 100023841 83851297 6741721 819158373 842666237 424716933 259195485 167584561 458264389 249906653 905878839 354523087 463303231 67701157 218682545 622530143 625351545 227925219 454877403 298553867 403635651 347196197 414095243 149603589 404685373 483674499 406452579 522285451 976487243 873839515 56856781 873849049 766087575 45985937 812062965 958722623 97579799 910362647 532103383 363276301 445330437 25028959 796566577 913452699 107228649 539496489 698364557 551723855 891246733 627413949 950259769 993488273 151728389 155678183 231316815 979492821 634072749 935351805 63510191 990290579 584664619 60549599 996876033 431361871 264744553 844163827 959321013 773803411 815248797 866922279 707015685 907339247 406085699 16191473 241004527 953438465 634883615 493860687 338881851 662861417 119903549 615413959 547270779 399880657 184483057 103308903 240092679 797301741 547373785 796189639 574762751 831108981 220191191 446012677 691241547 944967725 793987865 309752261 509246875 196412381 588388625 357026361 166053479 443432795 284934781 468762131 526167281 514388863 49462113 975586707 464254271 897720875 996306955 809793153 830590499 814003529 578134027 61052713 961501749 532914637 686109505 436746083 508973267 57977519 43254991 854752651 507277097 220567027 835086883 543499145 690430245 547840417 670055921 747620299 455557759 124733647 861888307 62098503 351424439 927914133 944814641 714717561 391957783 452163861 786527603 916373357 642383791 989312633 375209169 784139435 246127189 735537653 151918181 206330189 407929517 371024577 81212821 953289713 570705435 656705313 136430091 433196733 261587665 416402783 448345277 302391389 301355721 251894987 416852711 810297609 994236099 796746947 881750285 252153217 786975043 329875879 603243515 878973447 799787935 157290979 394595781 139346799 303766763 507863269 78306503 375309321 565555977 67669037 488906919 358827191 875945889 448231993 667778383 209271263 259795237 752092051 247685623 841711215 595675593 510328785 233013783 478452445 37431441 762042507 642059893 249913895 543753797 65163363 952672285 608574677 404460147 407143939 673366883 428686321 932326005 91308831 225030373 794231317 698571883 214579567 836095109 53800543 338285117 626040247 772813937 172441973 245265051 517139649 695970331 199495299 765238783 665404511 153559875 840127555 546954661 153186923 465000169 628797423 299925659 798576583 99508827 742612049 769173165 814209885 358187567 263859893 6682997 52352801 856898879 455305203 106429777 628601611 276501937 301757287 301302381 657853471 391866351 628362745 200208311 869272423 966045101 820768023 685872103 24789749 533407467 915871671 709652607 153112291 442022123 567993175 468007621 809561683 822965559 901696765 780702411 80864879 937146023 611547705 650341991 555349355 128159829 371443743 910819901 13452673 81395367 853685327 559801521 62836721 286764105 987069935 940543223 631166983 241366829 26602667 201230341 770897939 467199377 680809917 640119195 109454963 671027447 911212255 230601539 870481543 503312175 546156483 602250573 924368315 179361613 448831741 199753679 238215295 904064169 867496733 834782123 497445197 513051627 944346009 469221259 968081321 541958655 556918741 916229339 775317789 918327575 854820289 408309975 232196667 950138289 752385747 918179709 260566429 452801425 887903497 500680343 29664997 626631365 457839593 518702771 936800703 489445533 296454779 209037355 598836441 32547001 949812075 104447519 836459251 566552571 306682817 356657015 153482699 331108753 452998699 114381285 282468653 102039535 354168533 684765917 918294507 315980239 228733305 274880163 555265759 685741369 268986451 877623613 116058091 850270325 555711785 899373439 635146489 56216859 299357769 905707005 978321149 545731333 517903243 146809879 460259569 352731993 770139467 841153785 911611093 56340865 521850225 368197265 588204213 207561267 233988203 654738073 669506979 8890987 65770031 934152077 878406841 580808811 568660797 236602299 432782361 570861251 400897431 141790253 889190895 785934661 155392463 131241409 986570603 643286031 173314553 581845525 480536007 580537985 253980341 343256719 148941639 605352013 91099177 529432931 479658037 937163363 358462211 56499847 191499747 879846913 705573751 843547325 183054763 677205931 78396999 355001995 581473265 857218093 8049079 664567107 992690971 531467165 623985301 279178235 189058719 173214803 221293369 189644949 821573623 531151863 866052225 877746875 787457955 221310069 551272657 918035161 521903151 611307265 126922009 910129451 156652845 929252629 133788111 28840625 633825335 286193015 730095601 453605935 484563439 408221493 480276487 282341691 780623105 207518367 949253917 737015081 957530909 935788629 639323593 623247387 341884925 768421435 96174891 491776507 886970471 89568891 38268905 276470133 325561633 255252105 49436977 90810117 196971007 154112549 417621431 24834537 479626459 528740431 561231549 700388649 249672343 428475991 400549127 578587799 242086943 607606479 542966245 391375309 920562531 22742163 749185579 895179045 584940637 452517321 73683767 266712781 2418195 357311707 464402419 566157749 292882315 479916927 354304457 370859153 787302105 790204849 963322289 107332325 218085911 518136501 104683305 321432567 374771303 951958551 268287801 379968985 674942197 200526887 559510893 571240035 133944817 502032783 86073563 221067829 67733399 24490789 542674723 368183223 170619687 800719385 309327723 3140121 437008365 418744419 524475233 410006099 226197051 497903163 546471483 468758565 207083115 377438503 866814903 277678363 530345441 471529203 141164315 38772607 989837827 972653235 750152757 264790895 938296135 888704453 451482205 176569289 984194087 544918221 448271729 316392243 707766309 54609075 362761429 815352097 894846153 109006769 336197241 739294921 829777575 446456895 754464725 355503147 679433817 161758245 326553315 833221393 642816385 781098859 402192685 826810379 165573067 414190953 288400575 419367791 442759143 536185785 198414639 18211423 754077841 860826945 112829085 167834053 322702729 608327467 375588015 676304717 937365149 159309293 665688467 920068211 574833307 588416577 770658047 725022581 163389535 646754863 692755761 843972189 260613579 473472513 269861359 750547449 121972939 755577163 133744009 700044517 161804367 290035689 107412435 473669757 654965075 254989057 151811371 612652523 635134935 398140415 191559035 345751327 835292649 768145301 805291309 428453331 298714775 603208897 737284665 344020101 680204029 461802951 763469087 14416253 514080061 125417779 686079459 881738189 86645635 208365785 656951059 280992333 427512063 429124823 753104069 231318173 639620333 71114383 397823897 90076709 771278735 569917359 957320117 800872213 876326189 924094761 812765639 125883237 644929307 765396539 826148869 714907095 142657203 585024361 103638317 625578737 245322329 854522241 286350725 365362181 86144117 162109075 355743709 601042987 647323769 386545919 376334985 418967363 902603233 555063913 460654185 813478131 912193837 954029243 207683041 814563247 680057577 464430377 446616547 329477037 463104169 483325747 194490081 734679023 71140867 119730587 525314013 266001723 103683485 293379435 838490457 327256867 454316061 408388859 76942441 917056253 906469179 394321637 383270813 966886125 123643051 297160975 938738201 335922903 715588405 166683043 353163391 592202095 429431199 381995543 973654525 497693995 964577727 179436583 795354445 420419403 175064427 408627927 543758763 983950041 198363015 766506867 1916895 55010211 892311807 359709839 34640691 50094405 556217285 292918535 896952963 332686363 35487695 776931073 658627367 946130511 216978981 644628201 513968139 106802897 971422157 887710321 107335833 16290907 819863773 730381719 132501451 7479915 978562411 219087263 758238491 311849547 95361181 695685655 815457171 194803721 827191195 364796367 660560577 26506111 255607447 754726375 516724151 337674573 528347597 673745601 188953625 682367963 931807869 408728331 480863497 784871513 529975285 506566839 453458999 606465473 607703683 565482501 640509145 876829137 159653507 389156981 527162029 688740369 144386393 985986519 629595385 559629011 962450029 675313979 463446413 794862127 78219825 925753345 19527101 999303429 24937761 989445837 367332201 860963325 316411583 385216137 407569911 83806855 118219923 78645099 828444499 190379483 652208435 906777583 570460919 83499001 847223093 641043927 531754205 223505581 91960383 820973875 951004303 209526403 376304633 440591701 969798681 418697171 377049877 517437913 568559379 977658817 468317263 994110373 134901147 197766449 328405353 881829347 719177557 446228951 59489323 935561483 6642801 218849065 237814633 58511317 981073573 640659305 81924607 498261063 147809327 677132955 345948109 830586029 456133845 829535125 462082749 917477531 972244711 641927917 109424577 8152557 255791163 61110785 925002197 243237835 954770221 767816187 788235515 77771675 599684003 28010701 429661499 32264727 986161679 917694509 90588075 557691447 262520419 42038939 400597857 699318849 801143585 906256481 267201155 283466945 726401613 87442573 176251193 622954381 260277365 181898233 151993525 148093631 289531825 568498757 252230707 526526907 225331871 557954777 181810677 981329455 667200867 452535783 968043075 822760207 456889005 354220899 733885043 340947861 217050291 54594577 447800795 394158153 409876531 446515833 687146721 215682546 840552821 904167913 860427757 985074347 138873157 555119483 705210995 637127883 789119481 956524815 353388011 795568121 428462705 543099469 900311769 778240031 99627795 668623269 162097093 273526899 299528907 64394575 975681093 837850737 696402451 7723085 50746351 827201757 28206567 774103397 6624105 765532355 71574221 440609833 796694875 773085303 359301075 588461553 519723383 239817877 489232273 943540957 192959355 989994243 572960549 831804117 21734947 299677165 944095539 215154311 45622335 327050949 78612715 328431729 805965213 766867785 868320003 921567693 501221915 895650941 420359867 361566631 803851929 49206701 936433877 56493519 331223041 811629935 487997603 308157917 339127877 706402461 856039675 884620847 483108707 797353307 894403897 592787697 852313175 271203351 171224643 7581455 603168305 184602755 124557195 330669893 195605249 446828189 516201989 143031057 729942239 521887659 281362735 816725437 645828849 996042037 655886351 521389400 210551391 49008659 756922419 489273275 898288989 405454175 33760435 205109125 788122659 688366973 105782061 787417889 388371957 750629147 83097285 65073083 110834715 694455341 176418603 391742031 801822443 536527599 205313431 153506971 737324733 660113125 746487747 789618729 453166833 706546137 792021753 48875334 173403383 300617443 512886533 2975759 304607035 344275807 956913981 258948449 121498171 647564781 178695041 689186789 435635065 886446975 157520695 64701195 49280639 9462853 392535629 839237645 378079709 273889469 921974841 466103017 20014129 980286635 36267255 702594407 333467419 334967835 788524051 749802009 537364549 781503073 987454869 79456087 176152675 974514457 849423639 579347009 900643373 597519657 85389495 636395455 884298599 495508413 768422937 559104385 534014939 927077193 645595503 841861887 509682265 254733959 970412139 403246203 570504127 546039165 789082957 185700347 385459181 537700471 390074333 457347153 471011021 472874251 716148327 513607189 794864467 919097107 895789251 406605989 941980279 910449075 97590605 678159149 255239741 433368153 367879149 243239835 908718255 208276407 281992463 398475687 412643037 384503501 350736557 655255505 384115173 426309595 616688451 767610467 871024103 127780721 460119767 748239981 421806349 630556001 29061113 796275909 901782667 559698887 50839741 371715343 589489561 890577417 599953347 390356655 285740155 219275729 217670447 366978521 785668987 316483605 814908851 961372289 348708843 404859921 967331201 294168941 497780005 762235463 272879963 280002335 902730635 751362951 610272131 29025005 615413639 79198179 49721547 392245227 133782669 733552569 520760713 601178107 545007125 38703275 78245017 831397573 998464675 777420965 971099747 405897403 130471105 296303837 677648341 778143249 667359743 175909583 456060261 815571403 347278331 253146943 294609937 588534449 73239893 622671161 740566111 587412561 855381177 700528915 675340639 11303941 345478613 940977509 542720933 52918253 170612841 762632729 893632593 296681457 723125555 263770453 83088903 623617729 479336701 251233427 144787961 163016407 378728861 454085003 372454617 231987567 707493611 280697157 835907561 939984279 122637769 512009993 167526893 237463835 914000673 439240047 605798963 525252501 307166439 361876305 876175763 729558883 417455893 981284051 130159977 475322545 416745643 245729891 993979549 900490861 795742901 465530805 123787933 217773903 184438595 332263621 729710687 333742809 216579187 853123285 381294945 870082129 59246949 777190261 93013161 931637193 877625669 807190903 294656455 378790679 577498177 342548983 991321039 214400223 286924441 527834971 347947105 454118789 728737163 407238221 630008483 968098877 819381859 279940803 968577089 834617341 711870323 619634425 886151797 343051909 149283605 422978163 650235641 870336351 666403499 704365821 624718103 837126875 761700767 403913131 767256731 638190863 691943525 713801179 932185309 546935005 933314933 889394735 82979257 854962927 46666835 82143123 864619159 215964849 639281801 363308607 481157991 18183519 265715369 500849835 882269595 14324471 321056077 649396893 548546867 248552771 502413847 570472481 232961973 695737553 305309363 979735693 962488625 630256635 912834513 906856827 883248443 704599521 960195627 963864527 930805747 877975403 532095877 236805815 219894527 66758731 634816937 789261477 574561931 646162933 51968873 894804057 141403729 448809133 38228383 126337491 673945739 954440827 649578029 509847395 501832963 580535853 702807295 374154907 229428743 652345949 268971269 771909975 414247785 402973801 936153913 598652091 341915533 99378045 689115039 333088821 580040277 145758599 728254017 217444473 391945777 941058625 137701425 706732163 643751703 744782375 244366985 234338455 937849221 230137735 631918955 331408705 947843459 617588587 912989955 700701781 160508829 240428209 367156865 82127343 836801513 473865975 260006175 17919861 348710151 715584419 637293347 894870161 879879965 721446633 407102675 68730939 433839319 293182143 456907139 414172075 937697903 851356647 431291021 658764135 350205601 894081767 854443603 921869883 947927475 252095761 329235775 374803003 118284403 608860027 780378309 535969221 326585145 676675591 176988767 529118331 202985697 338948191 701301389 985066571 669482453 246759151 734415323 419909735 826097919 191566835 99887579 100030541 223445207 640785003 13495335 322902723 772074587 114166043 292801379 373568721 160081939 418470809 536128053 278447311 867644683 461062457 750887507 617030487 872902105 609173021 954617207 432602189 117968797 782699055 174378593 595291103 942475005 981677083 972235229 585948545 974706983 435053661 57890237 19231469 967216335 340153395 260256731 355440939 979744055 611158693 749663513 160498053 310658851 315955079 932284003 919713935 653351907 426284141 814603689 129056549 490351177 133785529 827461863 817654635 438493625 168227731 537055005 65636817 482524949 762546923 373750615 34882055 85019087 315376249 944533415 189815819 861368537 813680575 280192551 951259425 36483507 760581635 906245115 452029139 584880485 632925015 457737801 414557179 521601915 840152467 687963463 445648815 156346635 921725783 673450799 331398231 813304245 698858763 480940865 549649567 228247711 184479711 462067401 692564601 119057271 438382283 9804827 442845219 169234801 526218127 582465421 282555169 368711247 886508983 789567107 820750145 886574421 129699725 194794089 298646931 888082003 714131759 262337455 23305079 685022877 739459963 328659663 705459087 713806867 625542935 97322319 574816969 151496217 460162935 47421621 263723865 791094943 974283217 69707157 420554681 338437915 293742629 381916297 209006511 57294733 803637309 691423541 776109897 723994489 870647977 613930303 488952281 658574061 854724543 497792863 544445691 864824702 151617185 585076297 384172435 729001807 212549689 941002181 920619215 284506115 485655091 852752793 959716643 646701513 103186955 363250329 577167179 650355799 318270975 300087199 495294283 131863531 412695577 527189647 244185453 993213003 960989479 878176591 23279433 938604997 590683077 532181 315974843 850043953 767406415 493340187 482400485 190915053 23733999 699489059 586070835 732865247 64961173 612256757 678877275 508438898 622073339 889149861 858246489 187148705 977516447 581750605 436913777 934412265 180137929 445027089 38061103 533442125 946720651 468957465 614802537 593354079 346577853 435175063 586150711 970572085 163446271 790773445 982584321 790991979 687271353 876898793 329121395 346820393 678466331 837664329 643895167 243370525 370125853 144440121 638247013 981668221 889042817 322602005 272628133 262983175 243035085 863230267 418936333 309328385 942167635 437132056 20700083 56719419 956931115 312192287 153142001 23133449 492045621 534619849 703724907 46747979 750770967 871083671 494379279 284130149 806927429 912894231 82606865 82228297 178607861 741345239 854233837 552443497 542026793 88942195 582209381 802433733 181340839 501547407 57023369 826456037 399926273 800764883 865158570 393781869 989388173 770201841 677998183 590519341 151861615 771435173 796683169 76055817 117285771 540042159 540461961 20021777 858687637 735576797 203136399 343507059 534190339 355000317 672113 554033893 750389269 305038059 70680625 12934821 922713301 466728587 51809567 743907963 217326865 706675141 260180685 739031985 811817061 504995467 937367577 183078177 777006893 48583897 655034149 325005865 31205779 27763631 680938077 959133103 145980039 739404315 108783481 62393631 677683907 411737643 943459953 452720499 622320581 450689019 73623691 898501157 852544215 595383471 134314323 181315135 698293767 908660591 548135839 409049421 93223727 830232685 65052295 998141031 57450735 592223717 149157493 662767913 922208175 660250393 939234831 207473338 49250975 644108625 351048015 428312779 270379193 794561249 464601197 626088079 137815995 220516901 412836593 543550919 509672237 937544315 846132387 99095989 417563489 756090193 80461979 577900587 660856431 875827481 493189683 220292733 48700727 42973259 287581711 207092875 394163297 893992041 829631263 94874041 866934109 890002177 353112464 521422841 250532195 133418145 747513319 589487293 35085941 341593061 968805859 924850695 376725081 350808177 131555217 805576027 314211745 435019245 733032517 811995847 791125667 899926795 896446363 622016483 12404867 880043143 871415929 611981515 834988581 208087587 293786633 184058665 386826557 238212519 864337601 88811815 460540737 899650025 900611933 364976765 128656499 601060799 160675297 976519529 295660249 304474383 76422809 529146801 55427907 456338369 852676889 232881573 97721933 107357895 601391935 234866457 193338195 219281181 845044781 811845741 408567167 605265093 10832209 975088007 126614723 272388039 234001757 385546965 713425109 726390585 711978831 737911371 415700021 214533169 456340845 490577515 699185965 701757653 92304959 553596729 519906507 485585229 254028187 930416963 192549865 991732941 380949919 768117921 244801575 866401933 110228399 988602863 234335469 463952591 194081653 654107479 146609773 821188577 356315109 545943427 868346523 283984145 655314495 176655019 44673083 625644477 352862979 963804045 904559573 206695491 353741569 511872113 1953463 292723987 136804939 10187297 33000443 721855385 575448381 420645113 462100865 513046867 518296957 756915667 528057585 608144067 690240245 298236183 448167099 591658609 531968219 686710705 490922263 999285235 221602987 538398235 502987527 941612767 685604135 289178449 995545937 893404635 961335647 699151833 863583623 520466831 489711525 64807617 492506881 735996335 423665815 139903137 77165535 885530099 622760471 629955735 323145737 839783199 996035665 713805127 518836269 846902267 534888637 459328481 805227209 601464925 237488403 188941083 901084951 564085275 569477209 999865907 686836771 645291035 551950299 538677745 861256637 715393861 198752301 413255585 968139133 919192973 477342765 3539481 845740993 94541547 651302397 738225849 157954741 609727075 60066315 380036711 127908165 153048317 343009291 441516177 204365869 640352975 585916919 458113581 494857963 64892399 139236629 461989047 705565385 72779139 468714227 165076795 964905943 124626099 634013793 259751233 23462379 484073395 740308095 978819555 858751911 178007739 840524209 319424191 701937013 829415183 287381665 950407417 933942401 547443705 925739845 470575681 454645703 284415945 963817431 899376589 708515077 916309213 317770207 359973213 85992389 592834709 92820775 776599603 526781013 399107675 294573763 834561057 412222159 459691681 703051279 503421053 441918483 268800485 106327473 311624483 809587913 400240547 449784467 833576315 509272673 752923499 594795755 493128051 235387925 407058381 744336181 457806463 244811235 96562017 259916597 527454369 899595667 358744525 664958199 143127389 240294327 778368699 535101391 993069251 963449511 525038297 143198555 694976103 604368771 688368357 118336125 153789545 476213043 438296737 223106147 765275757 607996775 136896471 600637311 261207203 810405783 125165913 303363727 556739267 520990725 311495679 748081047 523002631 722712759 515608495 513442021 476929849 187121279 294251089 325245449 755484069 36299765 203526873 327903971 243402273 479987831 886374463 404629 924584207 235661617 391558279 776934541 489543247 110028817 817161147 443247487 561048661 331593935 597083373 782353511 396535573 227359723 49309493 846935431 181744909 124384175 963187897 477630319 877407299 628228395 97264035 580344815 557333831 881500469 239124769 407272743 958207533 746791281 29633651 236334203 666546069 771418435 45594583 581249429 831055779 618701535 959641495 900611947 907057927 899383865 627435273 924330297 892368889 281748503 961005445 919094659 820186931 163234555 521019245 667863829 126533375 310408251 697699115 864464387 376982569 619847403 111414323 442908329 322171145 816102637 464520189 419469997 503810171 377602025 619662093 206145531 616833767 467195985 623880685 267194309 552453435 93516889 348499503 686965641 80557037 212114693 797632363 829700107 919503355 777674525 901257799 476690519 601789419 596845103 134092141 690979521 989138637 831723412 578654861 94796775 497803061 554425711 608403809 948422059 236527171 268445093 613637293 158594107 696123035 571328231 722126651 2476809 23566703 258557871 974770909 159039445 409176433 687115065 968478059 453501855 88113123 731123859 742123979 317717431 409369991 282243977 663567591 213561517 190011825 436178357 375725743 808634721 542374705 230375285 777820957 386798071 358284651 519886069 53851957 992815321 344466753 581822243 733158401 493092795 451059747 639665847 351780243 392548509 543295751 801067315 138776067 175915713 124908907 604198365 882358393 289147313 221802069 486287559 429856793 718681669 851639125 720639431 736100121 652456857 493944191 257637761 331195313 627116557 280511091 178979417 789255461 826465363 491808084 393308547 382973631 605851227 861978583 661195253 73408721 280004195 684828971 764190063 459172789 582987245 975807251 326855035 545298637 172952777 366848723 808302697 363637635 755900939 286859833 198902863 650483787 823651083 774056093 761075215 108031903 414458481 29322715 595351635 228655871 150284585 319369051 437302407 217909751 802695013 241610507 871434215 609478425 896022435 648016481 514515057 861822719 853994921 692424027 882255855 541031755 796801407 736543617 27910383 811388839 730677371 283440351 791474635 427065543 115571771 787498763 221157283 600876387 387750817 11660325 602026847 274131265 345522651 415450577 930880177 324495399 945897309 146112065 611070221 502632679 325532385 899992873 753689783 581541983 706598511 229843653 400496055 642390641 832272463 907108063 32508635 756304131 233838617 360595395 575108285 251767563 246811047 13467465 250060475 185401217 52647455 280982479 612786689 102572651 473385707 351223097 241072765 973986767 658279105 715277303 139035625 226566337 473558685 846263295 984905409 980347995 322137281 836448207 678698835 636476095 509607869 776850799 27403947 545675287 425281379 611193195 1422241 19630487 974986193 432365017 103545305 640052857 415759975 162697049 88306359 525998333 942204631 839539217 393864303 261765999 711427601 744320173 949034743 833022753 554779987 270173543 738844433 798365549 481810721 531112187 388335427 330639029 524382791 307033007 381953759 381166437 743383259 297814097 704564475 600715501 866202421 592864057 589610361 959160007 124470013 660559683 160184323 31644535 317083167 68477657 744984327 661499271 896282575 445358309 248215227 171000457 983764359 799493599 863780389 870799897 951131149 412578501 293708295 274390229 952326767 728614431 270851575 7920489 738818813 107146487 464645449 305725833 61152343 514163177 780439583 109689583 422621793 983576591 477017699 607459419 695379781 462140945 71928513 754913433 269762167 170620187 219468213 130597243 733747639 95490535 628895869 846147803 235277831 106527153 69406753 33855389 246372529 422936383 430778485 695351975 531799629 956040671 602324749 790932463 862584245 433362025 918043723 77563759 199956239 999717435 130930775 797256743 918621381 282672185 205586977 525631779 405288589 103400915 443747425 685360245 596883043 289385985 666694297 675099705 232909707 607646269 28271631 106491789 360585105 680125839 891179221 443885471 699230025 63022983 921155779 31502495 51284945 411243835 540172921 801272519 548901259 724541511 851338335 528335197 628298019 260272595 530205093 818703271 541772433 573329293 832757059 284985849 121790989 431751337 935612667 77466285 593504541 981885161 309752403 62988581 58747277 609904529 949059483 107341005 250466419 757362289 575502575 820259349 855261991 624395997 774048045 119661945 632898643 334719155 311413499 197645433 885716701 387137885 114568141 305713313 180939007 223666373 48258265 57337987 517082931 549025891 770887199 840048315 921942331 431809079 577745769 851847911 616172837 656859075 383017287 99228853 32992327 188720409 9871887 907942613 473947195 776060367 681306341 426261505 613208551 985382913 573135533 597050879 658062453 976854871 874199321 923224725 358055003 629071359 285013923 581087383 585898581 122150829 448263817 438444255 312701029 398641827 598817237 935259985 490155739 523300519 175868501 595588053 581648201 737316355 188693669 822542685 888597899 94792849 453204001 964760291 137297095 296979119 603752947 449611373 330685545 567679041 500699659 807762433 270268195 201690553 633742883 818369715 309742579 823400201 186662073 469600159 805724445 887055537 619465237 248121571 241703725 637220025 518682953 460314285 230845431 883244973 105386797 321097261 975197081 845617061 315370337 606851231 775122293 137355069 409294669 568052803 890663737 653206173 235856161 644763493 194508247 369619059 560678613 848260953 485660813 606037749 889629483 313668469 651257825 707918561 674095273 57287709 754983579 550603901 315264161 349469629 455202001 106272409 690677803 196975557 606541025 791201673 393398055 434255793 90543727 323743787 973148987 917720579 478253413 194010857 788931291 273949507 159240953 794526381 130705469 607515909 777382053 119686129 237496419 181831397 496355633 510511535 146053139 350856577 28274597 138029169 943938783 665849223 352658009 555971907 103520797 453276839 154116583 621673661 545294833 767852701 332792885 92427259 377524287 275492907 573464429 619452837 130972091 197057561 168767749 75900649 848781019 783711803 332293305 950614141 661151967 503661675 457797517 539007391 859578577 924604813 55651021 168822549 132937855 531623561 752789773 280244271 218187653 499091793 289464617 603464641 180646463 310398433 621474631 209548587 942985431 175242555 517385171 720142163 562730045 443534951 297095807 442891685 41853227 438495097 544258377 297428249 663157023 714623629 809039733 432365871 173533539 784210113 458267281 921746667 503153157 866422083 683087725 786999771 506360543 643475523 948575017 241445655 19878545 555595261 847145511 383535675 421329795 693279667 875613973 516303471 110067941 740507309 163522021 976187233 550539697 170085185 709757143 591299143 950301093 346073029 4929387 821145311 316489801 430869407 252448625 188312689 31327727 826393143 714379257 330805447 555601317 851517439 969331299 229385021 524442473 909723507 665282899 344900013 661793477 995798547 30999475 744075645 220978227 263994221 23490489 200439967 509059819 84209167 282109921 210817157 345887983 211660439 595839469 278027569 715791365 492479651 433661933 258368039 194797247 4917217 458119987 656561525 958652787 157861123 639815003 658603187 498183493 660518081 238082379 307749373 886155033 904400093 738991663 173105403 370097827 93300517 384881785 747222491 971523929 378721383 874417383 542410323 193427325 117391745 795003261 63485603 833973013 550988881 705442439 31862925 974638833 441400517 512914329 325312611 616167341 664133583 963961489 560490489 563953829 410337383 198300817 659722159 125983491 82562191 469097733 140161387 915394745 130937941 581238437 165600153 637638525 583898311 636414569 236932659 496103887 316504323 251944087 567714229 449620985 871218471 520744379 665787941 478529801 449312097 83371 897228305 633216985 480909539 129411201 94073745 437143049 194782949 840283041 624457537 965047041 561998251 538117305 459674953 4294387 603443581 545947837 426305113 200597459 107894193 997975783 377648803 493425765 291830173 68151743 856227559 1498417 430058919 72077327 365366123 425377157 108232759 891012073 279389951 66409595 335276223 724963759 699556857 602361331 65611451 44641023 451086133 938284437 539263149 564302793 757284121 382164433 727891743 844622145 941417111 632595679 175424417 332517091 108611107 738316225 70854097 471983475 149179065 200792895 135810637 934841853 651051235 198442725 79841733 932581589 734927279 15610897 694792165 155089559 785443761 436339425 137051755 978762025 577143815 183835453 70817817 811477175 8585563 733494739 637840823 793069235 979933911 853294881 494963483 163906267 191621427 284784737 234373149 694522419 730597293 745256095 494628765 3238919 59341581 259444651 692025481 335492845 155489951 111034653 82478291 671489471 271943481 874336083 231981683 751240352 575815739 581689977 691891309 529602560 603318411 442180475 779597771 375193489 836307863 814379797 126013085 119075663 83837523 255537349 515977985 604427393 595524673 200811477 313119255 7076015 330212453 461117525 393000713 107638961 537689167 612242971 811799561 834920865 128349971 483949001 428688723 553464291 242647631 366554569 58205737 111228967 33859373 515724103 601943509 152746075 395759447 848336703 876939943 103918785 368205316 769325423 688969981 452123867 310164215 635240801 702546487 967083123 888009583 432075107 284652479 934348449 765050687 897361807 662632457 817004737 936648125 290303173 113212301 403538803 670206661 836235181 747720143 892104617 570429375 232814007 479954519 194388883 384154263 174238237 82752955 45907887 616819399 847206109 854305939 927656897 528238155 820366271 22788737 459547093 238876841 209057621 989735215 840482623 197160945 173104119 913607503 583653787 708178871 111071429 897893279 137242065 184162329 172724391 282294749 586022663 320490177 336886605 613836243 434674103 782686169 893696047 750769239 681900697 703863577 411306383 960864321 362261939 641139393 637666163 295373171 825481041 961131155 703134893 472646615 621449481 278663395 772953045 551659103 174903989 766932353 751677001 446532617 671354745 420959951 753456437 737515219 198136003 131134643 805447303 24159943 752851271 476656539 30227959 41917691 688847871 468013949 212171781 879144071 346026291 425957591 867378939 937436045 691330411 3274159 628427241 337782327 485100159 439941269 587899813 272467385 218842249 998253981 979337683 278461771 458021615 330178917 70923223 435631921 97940315 859365911 83683813 310878133 250506435 281180253 341441521 833382951 861464163 406206065 234583233 275244005 523294397 932739341 564880087 946686799 530080929 884362363 722162057 158904015 511981601 385539463 164556779 578190809 462722459 610441 328403935 366517733 94881457 425162845 22841101 234809719 561687375 635464043 661867495 618435353 933241515 11193505 601535137 861258845 324276289 715977333 476049983 703875293 975345877 706498533 980566409 692607803 142800757 81509751 833062925 320114209 79087217 126514747 114807077 61443907 965431401 783525061 744790769 500921945 939096895 64663091 125227865 413099559 797166369 462877487 790447373 183901047 736141697 94969059 793420935 773710875 489373725 516791305 584947971 770663917 258934779 819081691 146228111 44178895 457744483 670449443 556609527 973435563 8572909 906106669 483277781 20661877 609291123 830740177 62590855 935457061 788899609 272315243 47828793 117356479 516243277 931706339 557895129 352056653 46673859 254259623 987185695 151000033 847228023 406112173 106317709 605989781 298449067 835993971 345703785 868503435 843189231 452713985 829895621 508884205 431699221 23867105 441412727 5287919 312725817 218493743 585241635 703144137 269549249 789324421 950710573 995039425 168750167 8738825 833870025 65401627 469831665 420311917 646692845 211844655 484252107 29304291 339923033 637424725 462726505 887428397 168557463 640013551 765833367 27350671 34193911 463847272 796842089 361541591 559429519 230180403 810537021 36294749 625403201 822227911 830315189 473600509 270084535 526524841 614440637 559902239 349189213 696358755 509814925 651118769 177543791 762028935 424390301 563404073 107931627 254603951 119451315 222013829 472139419 429614717 484459227 298041165 576876301 972067995 266130027 795008139 913470363 621243837 898471165 148474075 124402021 881214109 123522933 663092823 960271698 815687419 317715201 530163877 498287383 259769507 406589971 818474999 931181093 210526823 458214251 861003775 781679809 169473313 142236425 801501439 377136371 511765683 728532797 473401531 339541385 155391239 301339033 193488769 27946781 480233233 293060601 312461097 521721101 754336203 732175745 313715727 425369221 790546229 809581473 878172701 988920691 555748699 378264839 805402045 733536145 898937167 531827381 351888615 29152091 212828203 582511853 681555993 757189407 185804305 39040571 373144409 435903977 938512173 989114483 269905207 209874064 699091117 145551281 371488201 207512251 719287761 35268955 873052075 348137421 65260759 613906715 684744963 493996021 637364235 565216233 803339395 941584687 646052031 26077437 395141215 382591547 723799629 17826013 899016019 564943775 412266263 30998613 12288425 321272493 493174153 740457849 477311023 264919675 137316115 761925799 522610489 627420397 588779823 499470721 249572773 250764711 341734499 295412725 237248987 801718557 338569013 984141621 170031817 139813251 368978233 138548415 944557287 536750047 616640521 954373977 62680367 852587253 93365319 652949003 365587497 530237525 853734559 372814637 364828901 298155353 302717633 547097433 207798777 97846817 360968295 353404019 614924929 736832663 610261079 148819625 758151459 189023079 671352663 41919855 315417361 526386957 957317947 49181311 608176383 453093575 251692509 494985953 66724395 736923549 430026783 566960607 879437659 756023139 980536045 651667469 640126941 603062189 731797047 45507655 535953033 872496861 270558199 356557491 633473725 228937499 400497459 107910075 748837213 499418967 59325169 759023381 280229337 741283401 223902533 554437821 75701543 771644275 618776649 251137015 445265095 799850011 334035231 632296527 778926523 779207763 875028723 872180377 395463061 229961203 949787637 933521905 360777067 782911899 349740129 747178173 533950681 152528307 533768055 541352361 731093255 667051883 669478531 106522279 190730657 941811131 988968407 501393909 304559585 4676709 110518733 801827607 645585795 304715503 381915081 512598491 498399693 365081003 512361265 509245777 112921743 706312367 949564539 81115353 802208029 428533983 576935969 769822997 1232725 133570271 122753443 163889907 67271329 326356515 915130511 954111143 549880043 769674209 590699379 743365291 900006315 66051609 485819627 344383685 771678431 115317397 58372249 232077705 649860111 554228197 548562985 741001911 186044743 806102623 213174859 145366397 17005087 897690919 819449275 542798393 115435699 270986529 855602233 591692313 173327531 273740799 296280465 299546513 901174323 988073787 569612951 644528989 12863749 56972051 862213665 404621697 716762973 513357201 911132179 113332809 442371329 488471939 53064793 677651273 629481537 97188229 950275555 979830365 129006321 724452083 744214957 66305195 34585457 525353719 583429047 844717469 849353637 877168513 181838349 920200169 486465533 957366859 220041155 931882123 200235883 936022483 880296431 417120711 407273339 917367393 63741621 70955049 671545125 533637895 562681921 496000903 929345019 293704861 430312899 410914809 508311573 252887747 485951607 488780519 835182607 262478561 274814109 729105917 172042257 539968807 481274499 616672303 995394249 983844748 663494007 723520695 930118253 593247957 495125717 763225115 407819705 807733637 409570561 519354151 347165433 562876143 458296419 218164209 579905269 791359531 369816173 284502227 173982215 651164441 740792987 547083633 242188045 39221087 504772461 462172601 845419117 739517297 268954991 347600095 409101075 254546309 479706165 691247711 679355769 950459549 751672149 396505851 231451801 259727231 965833075 416100291 653437181 589795773 356602683 424872713 978247089 750480557 935852125 862386025 891229517 168237683 915033749 630993097 490675949 348028659 208296101 15637331 893238073 469957345 871882069 373854845 660169055 404182195 451275385 874606083 790827541 355888041 315010541 786134247 546606233 866401997 37463183 829723769 898071985 454939117 586206029 344827211 308651693 482453669 481006615 51775035 714819681 116933969 517009129 364097899 256776749 866164251 198561989 286249287 100091637 961193971 274996402 860655495 829161003 743409043 593611465 546125859 195465409 834232441 866718493 83188833 746804793 659716591 200234195 280551885 791336855 114241027 715614173 538770749 936810601 510796431 959917083 549557705 47098311 60115507 556237847 998794203 890231629 575041879 11739725 833132569 852661795 303609643 981733899 84143229 170325495 813703337 620289439 336893759 797129215 921505167 954754917 186658791 539315705 977079141 365218497 840537149 904621355 518310013 487923995 368779097 255930725 559579375 702530789 811484309 279924219 754598299 605689499 855583895 650846925 252588841 915718079 37247561 122563393 85717769 416315353 72658911 302108995 175444083 593059197 98787801 418545741 64823657 589928775 976028153 91848795 900988849 151771351 666901067 638836979 742106589 893475799 310544931 179477027 22440515 630567161 56613149 224482691 126434311 651044089 849738783 225471791 672146957 982096279 698031187 5983439 307201545 643597985 322799151 219924113 573809521 956045029 341583471 220577835 247260295 435315009 868685079 752884187 385015633 212312979 98949747 726398825 509623967 946967497 735092247 408506145 431599885 401677525 648683489 630589657 605581303 53543343 140594419 413681905 964054663 217540187 973825211 847229775 918038703 875919073 161408491 987992671 115836965 497291861 604669825 848233499 538264425 123438035 644565955 629521149 272213189 985251707 732563257 147172623 318428487 979463031 79467963 983423199 419167177 264043769 798062945 508051073 181638123 806303037 756743061 761361555 825711383 615572613 487997951 89019709 382965113 498458905 911752083 251670317 756893962 891558991 665197457 631789209 986985103 706009981 51766393 365046337 704634509 229761289 18342171 139050599 662728787 780300123 18320777 210890717 183143675 793485287 922919455 837886711 366725733 859915301 856350339 632351893 581548089 206589079 888545950 615061789 389305575 247359435 925008297 530387325 318957223 392506191 668435229 549917225 423977595 439306433 200031679 719795235 250198827 287298241 74887321 526089199 375174725 551656953 406521861 706991261 399640865 325054491 3480729 250415297 332562915 450176227 612670525 986638201 995076721 600166675 556200731 750087533 800414587 886511989 827781803 69510605 264519545 447790041 656492709 861962571 44764075 466226205 187456015 285455655 9708315 799260961 445727285 820350505 14732697 811471 857796523 14374299 600278717 241801753 521090383 448155225 534697189 900030971 683471171 393871293 66763837 66093175 862418933 563269295 443960241 93102231 389677337 239963803 445508605 576257131 179270313 852924539 410722977 589616657 215575019 248810955 447241441 435812009 625162349 615430033 215397075 897580381 819899647 383321949 602036299 76758625 243621057 462681155 95727085 608651245 16982551 423464929 877980701 175204675 717820843 488312671 146705421 197662641 865441651 196044397 649122999 816108935 821943723 692917309 763289561 935019805 724659157 495020687 75053821 334251993 785065921 433113771 582659697 315434275 652803713 939666525 545999951 259969903 254021489 379136251 713068919 353824053 580757303 304404071 767928977 661381625 560820413 306299905 13310221 996427589 491635769 682096573 36101669 613258153 766824999 613305103 252916183 835814851 266559563 180331509 885069291 490079027 427258033 824332277 607167731 859324323 332085421 607448861 938236743 172275143 125594077 683467015 90380807 541351511 239035171 179774923 977520667 852391191 235448003 205973781 57960243 992716753 775437293 747567887 503678151 317695317 940907681 837578097 956799257 802363009 813845455 247548539 963252783 731957557 564673983 125439471 337909467 66465627 78771719 735103007 856361397 632018407 731508869 274371297 816090651 596930513 710560859 621617297 95663929 641224477 790088439 146520343 553697021 580191701 335100685 999011553 348021023 410495241 26957209 354334693 155153951 470414807 431692509 176490145 231750727 473754207 301435241 921917723 394400935 764944075 383300877 849408481 771376661 826200143 869310443 1565451 225086517 844651043 116336481 809252151 184623723 876887691 4675871 897651851 8721643 903412689 877222937 501037491 445193641 523840839 341695883 21114087 328740203 8671813 155866617 989977831 862306483 770847025 123359279 211709431 342510807 163850357 433523777 800194277 955197675 311806335 450371211 929904135 316408529 500860879 666304691 202914879 607134257 407154659 41716389 584383983 190012797 80259141 247199123 520607751 131740393 665016971 936384251 906224891 787963257 407618637 3262369 66668493 707751413 162539565 829969041 359440642 636119019 430032597 879229983 14734759 940628661 13237753 113235177 505858643 645065331 411071313 358618833 531050533 157784845 587736993 690200069 433657795 42390835 913630643 316997113 96600665 379621215 257522521 316225127 611610785 966873295 547547245 843861589 564022229 597928587 485236177 103400721 101859007 594039397 472718959 691302699 883813035 990377461 474923579 175962499 579390065 799534489 194452269 516582973 107221357 243845501 224733259 468938179 520074375 792588943 663750809 234795979 234222893 144102791 215321135 529781839 326356053 714503143 184890149 219352215 790943101 760020725 197224093 522640939 249885613 167834307 876996033 75100643 484309103 256308007 699969733 988263643 854850781 664480453 531508707 54993779 892717205 625901057 626419291 220190813 216043197 404912143 89480569 302484873 486624001 909594597 962865039 147817269 599667867 198116162 913565429 682391781 914282821 922554291 391918867 998992485 203534409 571936645 667343181 489281225 225585525 268655823 349432857 71512941 961059355 578567795 65441775 280064759 986419743 656803611 533646931 411958867 883289827 11020851 250748110 227426739 146295895 436442359 631975413 494304661 322079217 654585701 350492767 719780287 518263215 147918151 862324143 393183801 357490455 422365995 55216529 211494489 164135481 876247403 565018293 974689725 650030249 815324967 223407573 456492359 187856519 444422471 781769909 463138853 994279289 440905085 339866911 927654603 428672429 788244797 507881957 244440051 860294871 945067723 905906145 20308389 502012217 617567791 744262901 400064041 381933207 723576375 199570701 404520727 357394751 963786621 995397401 711752777 229799689 992242015 907883027 134050021 4697169 218377 280131583 24726613 904176895 912990313 344147687 45732175 42580867 868651833 518676957 215461583 368893903 372657653 187902971 924600087 489243235 700765419 429319523 664381623 170734917 189166887 114111041 251698049 788525317 832265601 520376773 768211859 256250137 61115805 794267433 805919823 348362235 911474913 146433713 43762529 291958775 507872123 717548199 141152703 183696473 737004391 761807965 234909349 253013333 940589413 595900205 917131927 594123693 911853563 870308219 918538337 630878117 968407163 719501741 316520985 502081547 817722363 356781369 69422615 978043191 88049247 135840153 656515075 989861383 759232843 194818381 347921353 203507423 736679731 971869921 935726749 347240623 105968715 752172519 122477049 792474605 549831577 763460089 175491747 423901593 310382049 363434937 804019625 70845493 237195443 380603859 255064923 507705555 622562665 781385719 754836569 188435463 163343395 109563873 549424263 515724529 32768203 579718225 637154831 410494519 393862669 599692307 57639013 718563079 327563877 558746361 776417609 472799767 374778129 550648541 820151229 713106595 26340633 214742177 943758603 882470773 474467409 997847345 205710795 56498651 711033933 50015357 500009175 465410729 809707887 102523009 274789973 54087485 715345375 305026621 867324079 184116353 607922317 875564733 914160027 615825887 321949745 73766419 15576853 159221327 713156685 438659161 115149409 355415375 630159911 648800433 880170763 994718695 263149521 333586503 643162087 721573283 711962403 937596235 466819091 104892825 245866173 695863289 175389169 259861867 528307463 187635089 484976173 906148409 102138673 228170079 987360959 924887479 141338675 547374005 737214431 749160217 280378831 911148783 757916435 419566621 448835979 178679403 518419495 388604425 24835001 724419991 387342897 479492267 595193967 287241955 97919113 460617051 551632017 741234889 858304473 403571703 570169027 585636559 747711753 240695779 555951225 342240891 685737037 95769873 698713321 988465249 208266789 375474419 739761171 700005659 570475601 858877321 656646081 595092557 316622559 852585051 754459779 589540765 666522917 197873525 943551151 73073089 577324221 732794477 962528105 758697331 48188045 11848037 917432213 443203187 321712575 774486525 236587237 940437647 490179273 290994281 633349843 969581717 594069607 448801373 27001757 85344609 127917211 840469015 410166093 51945173 24703925 102476637 111704241 20426461 87938887 645414015 379671141 835712617 552559917 760676177 525381061 977011317 277844621 950240305 233553403 388803841 760002771 141307657 828634871 75409947 236751537 614369859 608382067 877130449 417439525 881007577 950929133 640831551 9409139 261977157 129131181 460406409 758883111 480493457 346701509 98157013 679831317 153338441 416734221 877659995 297889371 199307395 131730469 125658703 163611227 172164833 433024117 478470393 190354627 378762629 957217581 420268959 720929413 463299357 737020485 875055509 177774815 765667299 978020479 16046647 489048151 921996435 961065569 211706339 308486069 856131957 362200381 757603079 311295249 911971667 726520875 907894547 323757251 743245447 734119691 695054723 836505205 411851759 38165891 965290199 695021071 376645105 687954951 813707677 711017159 51916153 550504141 526846819 563990551 356252927 571053783 909879749 185772743 76841347 503221995 361212775 540046815 561431433 438316187 650376431 96180663 764742175 830471997 967002133 782263529 924261851 691041525 656265359 126338395 13746655 600964519 523265823 386731319 601234637 107376647 698441873 554511859 714300885 881699467 28571833 908813131 51237805 635863155 573608301 91977283 409146771 355815113 953213331 15654951 244543565 845464411 200050705 262172555 423414059 117348805 803305695 935902027 474878209 150160483 83083251 930487693 752874287 823643487 244878415 990268093 462330009 595699627 544588033 437666957 622550705 247017467 330440727 483055867 385224297 540303827 473643437 885662029 588528451 575488123 22997735 495586059 954736193 27378689 647993581 764686603 130423031 103139391 274334705 532908139 104980085 654468053 561095727 392871309 919775327 770502955 596474599 427057439 542239191 136994673 282079079 64158997 844736653 777327009 561757693 441319337 615144375 598396793 575574791 269696609 706601235 68877953 882476003 637989643 624174055 926608651 55247871 954991799 108204547 998602031 56818635 716188871 314582203 408013261 111372227 780426201 635288559 755284365 256161641 605853917 518370565 820034527 122057285 824272903 332333033 699288059 448959725 716477395 136516117 872035299 156659703 862741507 158214019 762546013 561564937 710627495 686504893 625805051 377602507 744876817 678909649 802240275 678142191 557451485 413576273 478017737 255744305 890155249 787519073 684676865 167723091 950978169 283768995 280127855 207435805 443442663 855545159 89408393 93393765 921963001 175085571 463209873 958200577 277301939 558835989 810648973 534885079 389090401 374871109 693418573 222214351 705926295 462448605 95917165 403195355 217418035 791876025 732768585 123374839 988869463 578054707 316583435 58826789 429223535 10412337 469327525 848256877 942328627 172733221 821794509 839472101 129649819 831294465 866485507 590981283 543344365 742395975 922763153 842572749 652305591 841826811 565549957 278517643 52192713 80116139 996237753 857001231 381425219 669804911 343570381 117135765 908698503 276939749 523174187 806477151 979564867 308024113 649035263 169240759 374849131 825922051 745211459 141053165 782413881 879488657 802959545 145911647 944991029 741046169 142176233 136664171 378908712 118699363 91718945 234514047 921467175 939557051 611513211 173662989 416626321 688815607 343586007 607099277 126650885 149718007 597354205 703051395 971218803 779663137 379243005 5606519 366141967 289136739 379549295 819461375 257769301 935902769 749595445 268964273 883440649 702548365 884501271 542472499 120121655 914044667 314729379 63076909 55452467 617816969 904539697 17006675 358361753 640789455 607018725 858125149 429858127 241645291 38586789 133288461 390218625 808747393 361394465 351438129 503795361 415337153 891038161 250442393 235684461 406724449 93755125 222822941 84564457 490098337 662628759 315107491 530080355 562732867 79702919 561314579 42757227 939768985 358670429 578897761 438262497 370292601 580022391 34001285 76475367 796138303 207936513 640255105 711439851 24265427 207706087 165127011 204534431 173450145 31848677 103663675 599980547 363505315 434461819 151964449 732074327 698240853 530268141 859633467 516877353 65763005 322538321 520270257 309718351 948086377 118105211 843017911 640354275 901890417 280971791 155157125 950556747 8861043 622486641 700863583 611844913 160102803 34518739 197677453 194943113 764804481 574461487 57226853 794097299 424947829 827310659 832770367 345506513 24623145 802999961 519256443 943137037 198129639 436698495 225121417 890952287 712309115 317086991 349972693 420193315 64005691 88612393 671650525 191148281 15020039 14422389 563766819 614437843 329221189 80988259 777948209 999098593 782278883 509815341 667948441 135569569 550975831 501822161 610771187 500311767 736026527 173092375 814515173 687567247 519398721 214869137 83146775 653386269 780297291 120775319 251073085 488154143 176041557 533222729 561586447 418578551 272549245 280773007 653974609 670728785 271074663 742628633 62186445 47504421 25125445 282493791 646568019 921395883 904320457 988861091 820258497 459692521 96472115 322099435 551155447 743549483 621392203 885246216 375210207 473862407 805303133 230412181 545886061 140475479 702365761 626497005 303006105 15863615 782614099 375563581 510164839 295207213 288025979 989045107 526695649 157812437 849149991 240157767 357127449 540670257 734081611 380610105 8964903 63399049 449413225 802468755 370857777 223450981 357796999 990817125 281742687 954574749 608447279 107964549 945871077 873841995 927383163 40797335 905140987 790051285 280876809 528917247 610528229 356914405 2244349 699976177 570195437 181238129 840830217 137205089 623986789 601039029 147822943 772537877 420940967 397843251 440633025 483208337 686155029 214968251 984282993 378333733 476332569 570547295 175804995 109501419 628675367 602838397 501953415 889152963 117410743 717031095 557416479 467931991 708981837 843902457 252070513 260770579 694952819 443231353 855959403 813161265 288443067 781897651 904755075 277226165 900660669 627655275 991983031 939201121 44378399 977358767 734912653 807346121 531646859 235327951 691643669 670672453 464521391 107599723 728599011 985852917 21373003 932490853 18895895 178403009 672176925 997707499 188451927 968957273 499006449 471232111 407216079 168781879 576442007 630347951 89301815 385884825 253268717 244568753 235957711 328912775 812177875 477210045 435589211 996415187 901111349 307761259 242935337 539501077 800628225 920765845 275741713 834665899 481080631 976282975 628542319 301668801 104035541 332993079 302087979 360362309 748844007 405215185 381345971 745027311 528667261 564138025 652998909 560063041 151698613 227702401 86280071 531534465 996848047 452116585 487519063 415028161 296480407 597873843 264784893 691615703 375175069 593137275 493923981 210894695 492784891 882797095 848253607 10812629 844108277 425222753 849477488 134198101 608735189 823974687 654802583 5563869 502932205 887539869 177551187 356055597 406541719 783851103 834713439 986414031 352964405 609573425 91682821 350012179 169073457 624931623 445012753 294569999 645230079 294081183 80956379 469283237 228239897 386162491 437873727 335206015 783143167 881214439 628779431 662062089 356683325 348475611 703362557 397219199 778113123 514116751 437819577 14488799 401609743 518930633 13333465 270390259 593573601 591237013 253385955 225006920 287414917 90630217 698027495 301612347 88803755 464389759 137816697 455683305 860748557 270943003 948069561 375360315 138159727 433211723 998807629 79957475 482090907 924630915 546491233 524916821 985125731 824707197 434238383 836011221 604275873 356012607 76580211 924286315 466703671 158881047 685268081 807583461 548082961 439650967 481599229 105356765 170914079 526027419 172447465 33994675 440648283 915989575 909470867 81837453 30021833 390918923 582588899 647548767 261005939 277797269 737784647 619184353 449648747 327814887 566825141 99604623 322499019 316904771 206290605 324592311 525475511 609661237 193567537 941794917 283989333 12276881 639064787 853154417 648652507 648580979 287322535 811050111 673155203 417064257 226131021 734323701 499076749 807874983 16997611 682288897 874875717 899078551 159591983 962372511 796944381 597158479 535930445 229166735 383870991 691470419 184782855 327076951 106971613 492991598 918893473 701068361 224971219 993925815 926096361 881731451 36805471 446069129 162156343 260402641 910454273 187932295 242037353 184832751 753115703 442082719 695477731 238361929 596816013 404305411 51734165 865644819 959831701 894672179 997728501 732910419 201515497 679390703 188725761 638026445 209914157 895916357 733653569 731778321 365879559 759686027 343425217 868641657 21374253 544209755 151979543 126636069 499277145 556316313 898350435 116859135 590065739 149566323 759924043 618694323 68258511 402847069 67335933 885201341 76080823 615762451 504130861 16233307 176511965 537508503 580882717 470793877 964052261 958141497 583129489 649272639 786465653 180575115 283671001 720384237 107190979 117561193 179470025 473837057 407228681 121854457 77425087 844139171 538383687 208638885 71475107 15621059 345401993 868641315 262380517 410291225 458109665 403714415 658720631 75857703 470333545 473762509 485835225 314165811 760011845 879008713 962470419 257929039 180819355 961163063 133425585 73318995 969061025 906018867 153603017 874772447 917165457 14291747 569904635 245330011 479818155 493539507 991511917 351621879 357854269 315405013 378725325 619114155 555768213 804943815 966287953 780005177 598303247 473956621 781797045 379803687 595165965 873605749 348146757 327120327 58082299 446274831 22067401 270387759 820981065 773044795 251846555 581990979 942872947 221312155 411829401 910458535 778640377 275043613 785379111 581337295 62649959 759724021 256659765 224726513 399365455 200521629 198759483 250999821 914596171 823905245 895370803 41885421 566235647 594943677 184425127 644339489 798555921 204759957 240963491 523379455 967351609 770365951 298760381 276809131 495373099 894044383 327186453 243419145 334672559 628196197 791473489 383449035 404223371 105371647 548187295 563497579 472962707 685597039 496018357 779679271 981524641 727982007 583366865 91739913 664389529 716153123 214518713 668535265 387109729 469544263 594268859 878488389 501807345 758581247 216897457 168997527 158269757 798410865 908011763 661762303 153597517 690301959 375735917 288852077 239468071 777673591 315477641 490758811 264079839 630020541 189213503 965751303 587235471 491727645 638069007 720108793 767401051 50162723 258841595 312989827 798901611 881067685 727750295 629863805 307658993 750257851 697976563 927761287 633622057 549218253 256122801 98094601 19160403 629354375 559894263 144464179 55463099 207242461 987282803 217088253 800113077 34109705 223928667 450210345 264738199 700207249 109244781 921524031 644743365 779069507 534108655 21657483 361884587 86116911 657329585 964593707 298456505 271103157 1471751 341234941 136836715 551137655 193346769 118526889 392203331 904151139 995268979 732803741 934583753 672563373 489197023 677290005 568055441 244153297 643067015 519099153 357804085 168296593 338136173 865546839 910582617 318632957 271921683 239618425 153690277 211015783 953302157 355166157 927912395 713336939 946359403 134758263 383620231 852855791 114135759 316507739 925860761 128169245 613878879 975477037 964941774 856031083 36153929 543535203 297061111 835734165 528539459 114323261 542119661 60912541 611510923 860953797 657971349 784754131 68882665 658123465 112851159 892498891 984457127 456624869 417527205 764027997 661505952 743075701 123801851 487844785 403128367 709669539 222114265 572814387 49701437 70388065 452529997 666334613 693840181 306905699 513289573 787500501 685994001 656445741 221685309 924639799 643995210 526905607 252173561 767591495 995698413 627808255 996379841 370075355 390619011 57951727 491571143 923272459 925102885 449186679 519037511 149882177 840310127 573853439 87552899 452524579 730857355 536444857 394040003 303088555 422477091 697587865 359859291 989687313 306331503 579158883 507348647 574752477 552699437 409445277 4909317 160790999 54860451 484191129 912219875 324982807 822424225 318759791 551369907 370947319 755386235 632887807 945992941 112592157 638635793 818867185 610502419 665128307 980296393 782810293 676956339 380829231 207080591 589559683 449940059 843016139 58375133 516955229 574039207 119928335 259097773 80364297 937553723 932589317 850445449 207033881 564260799 584461313 121289085 980110819 20421861 100698783 191150369 424242571 725986153 54708677 116775315 654691317 205903117 217653405 607538295 490483925 693079451 572417437 532396541 49883041 551139299 447529345 822688731 262602395 960763585 847145037 535069263 434013641 176096281 137038413 269078815 508730875 156577747 971870485 637070491 433389517 880547553 342604419 322658967 788204699 875718207 931414969 759598963 877746063 304349167 287259685 612230932 503014555 269259771 702908537 791558635 830312821 494946675 74960309 693868009 26229405 16443765 686585881 802792337 345978461 472980511 33684019 354592487 985075651 267544991 127567833 710532729 980210089 494236967 164466467 529538655 590278575 46023663 676977019 458882359 13440319 393953849 777827977 702701349 168918149 619570771 455332673 961981145 922170747 772516747 175573219 812887689 218957539 101383487 628343793 741481714 101556549 493609423 869831989 632262751 209675247 935182757 661524679 430312345 640080891 142924339 223198977 464375543 240951113 266576117 977554313 424048473 305077633 771766381 19029065 278799141 40470803 798812963 181028983 804021575 173596727 104576173 359127439 921050681 664672239 321429667 245453909 269277431 742896387 35686309 980025811 593603591 537028865 280873569 954003555 685118583 661595457 280489097 199189659 900744415 990310375 163036629 164865635 794661469 545755865 675128073 943860709 944422293 177850055 201207021 907037337 387130295 524735529 564763479 242936375 401443193 933537343 518556189 661368261 967099931 586966547 309695013 427607695 299889759 927582069 822779991 816768297 411216791 369261053 617163431 425057393 825259159 403771401 928942861 327649929 298996929 908492229 142430349 968823775 298440949 517428253 16023087 868034599 507546279 268262349 212801033 804620635 264037579 842090069 709439027 562619585 920721119 304220921 694835661 756508135 264965097 508558799 203227653 116017567 204437367 576160939 186251533 860859653 435345057 985419825 436178205 834430589 537810693 286717125 445195129 929212597 554789831 404872089 115251051 511601057 294899863 401173927 657139011 586005373 235349163 269123245 561420639 36403147 497445315 226572853 869761823 588505179 890946849 111579789 798596589 791207999 837906583 768545743 869115965 413087955 942966139 155068635 166809735 156653245 561568681 933366873 577931343 699856103 517161097 794729913 635677 519787911 240931337 275178549 454918535 740362009 533543837 693169611 422257701 13506913 645560135 984981571 800837783 718802027 773149837 402340911 759128205 499075981 313359737 770667495 458884275 90982495 561234341 191288971 380796871 841566665 756200751 504903939 71929227 883374327 587186619 412629759 440062409 7190619 853408121 232023031 548973395 464376499 850528289 970994733 118434561 605449733 112096237 456449959 50619577 863029401 860405415 977152823 587803237 873820165 418035867 27899765 376467699 783794727 858907551 786351039 820645729 843954723 348915221 277406529 922646449 336290657 709004767 455310313 623700461 769699995 98808683 80926063 955228967 742892235 285838515 733488723 382038649 868873267 71890483 634819807 667583493 749810531 334857201 353688611 219312629 588101163 308685949 402351861 575486843 235994797 606293483 582202105 797777365 510180423 23705307 760322451 725851457 629217449 768194417 994178295 974232585 383159495 172844127 404292889 460026243 525693917 427258839 793257663 190806791 300573807 433949337 625084013 993276151 991280457 949136621 608369011 731490237 145919103 647239071 855778539 837061837 167434861 99621639 224963765 226794399 258493113 209017857 804992123 993986743 456363855 956682997 972700329 318061215 73064289 73922257 295470971 208991977 418910829 485667851 953593327 183837487 452151095 884477345 775391437 942794771 264254667 387639321 396348839 351093823 102394237 563862659 334685141 994425191 457664491 258231667 18401655 194217283 505832951 570630153 7519861 22064791 649504719 58975977 511431551 698550829 473681127 635766085 943749903 332060119 652692729 626941903 993948771 731389805 506380555 609331145 871429251 711633879 579650667 284013559 297215809 297792505 126004649 703137703 224279093 239762377 375435173 766950831 211631549 389878591 215583363 661182321 534648325 593895775 581463213 990908879 865356283 217621811 495622105 797491769 894886999 433813197 263131649 914881445 518071963 132449863 681866861 768201617 206050317 557496515 484744871 620713219 357746879 948728683 640482689 867431819 163047047 935746675 492768285 945211453 170221065 535841299 573978329 93366969 971071913 218885007 569944167 354349603 418267291 426876977 45800631 998090797 702384597 778312267 918345223 314389513 360709911 124721207 968197083 698548601 997826539 144389975 113561087 998657985 596388001 173024023 115123591 443013807 125804879 335457765 165744079 928592283 855815383 590609473 600232317 637803617 663830499 347742121 369620349 503507561 71260127 370152873 146289665 477521313 559804423 818602195 482112391 424402815 937073241 498281921 860206549 447909891 858691231 497393685 137842931 545380527 884660583 715374457 17331255 473693077 189185803 561735329 496771391 516847689 865571499 924987463 912438511 597185771 474993967 329993259 956792431 973993761 796920905 705286169 52292665 709466903 852628845 803657443 330475271 939337351 747181791 129232227 326340827 48363947 150114983 515460987 386288643 965653581 565233043 790878485 953183765 656667835 806609981 108064549 827427051 247882439 941910021 668770469 155704235 583580885 723253777 37630357 591208895 956182727 126349397 185969153 323687389 852171021 419673737 175332603 852110081 804135325 115193641 333029277 378115437 729151733 163312259 204584969 158274481 336932637 749417891 650626665 189712799 344749217 649087841 678111729 200281941 44823447 23112545 873666011 199202869 153787039 113464073 544225383 961702379 984594911 613855879 403576801 236397 184208387 894954457 676639131 238259191 474753349 876632505 766467311 691677197 930817121 247346355 413883967 171814523 323901853 717097495 354273783 824707927 594661831 754547451 545017223 789362937 757299511 852489539 162483305 976499979 906320073 86173331 460256547 595697523 321767655 36548447 129204283 453210475 630634619 68514781 349793605 312714347 223839741 805292813 853315035 428548409 657646699 945034169 956062879 676326627 833211469 824356719 305502267 440663481 918870703 936596873 643102819 194160219 42609191 819869737 212629201 108620973 805233621 869795123 927659077 77149913 557259359 505316697 536087435 693153875 671200497 290670357 332917 548932315 789312581 460135333 83423455 273278835 993141143 602531857 715287463 542184805 3852717 113403949 676019129 203167561 501700565 913650573 956403465 711308281 345417447 557830291 470687633 235783067 178577473 149826919 119070289 775741081 833626823 96460025 189701719 200419497 869514217 701170177 300603825 252843975 513105567 264504321 169890427 325605175 831507043 577542207 266314711 232779909 966449215 378984655 879529201 885750405 662839743 259424643 939986937 685832789 897302521 145937153 31805225 573298263 781895309 810371503 741861831 353140535 142043297 42237117 981859609 170556653 796318691 391193379 250865523 680273329 387761031 230393507 590415151 390274825 792030543 555439299 372231599 923310785 983374975 29586901 7782495 657624047 974930663 109947375 597836207 503546347 289399771 787428341 171388955 840152415 707192121 213491339 824820515 203877683 878775403 222676261 261514835 218316699 759611227 147130105 321943103 547584279 174087553 160292871 100301181 687210855 381722845 110301721 316149681 784381595 494519815 824242623 803216519 879572483 973220303 65852751 136490671 793439551 99272461 130946029 733085925 604912947 834521799 31108221 325847273 111346953 714785445 86764721 185837703 380794167 739971285 79883267 139613841 350057081 810503949 188572849 945085923 91359441 400212363 419939525 174772827 508733071 941641749 671355663 743065063 659369797 625976569 7844901 459906423 99502287 895596559 378373481 142849031 115779155 163957685 973586947 635989399 557899581 696953807 482021859 425003571 501745215 140881103 928457923 814042349 552847959 389104295 945054497 845986529 123027401 380788185 574755653 954272301 288441121 731048551 958450241 166881535 189403187 304461027 429257965 765857927 933371676 134391651 78122729 407939585 325915457 964681347 162480541 326957485 921694285 609974379 587738937 759414745 406798131 900910025 820930487 244227539 348669745 125697747 48191955 800338679 567668941 828360775 817317403 401336745 817990863 128149099 209406427 256093775 484085583 950846479 853505579 268869217 364812967 41076103 480005359 786317651 693375611 367275443 309230541 708497325 176653497 719963895 664099123 966483445 124740245 487169091 754894687 141039039 699895689 964084751 923967307 916412071 767834717 16343893 377887683 278865227 251274265 563593887 214138455 53960793 733429013 61127417 524253789 636947329 814932459 491634939 220953593 890198655 416431233 995180481 836627727 822053397 178804993 92055539 835674195 909259531 253760737 815575743 472022587 218072373 646123485 327951067 62851591 755582063 310123257 117048709 93935809 718750103 778648449 154294147 665629239 133590939 752134153 241127461 653277189 966685291 418587503 711793215 579587719 754345987 613435349 212312369 598357991 968901989 336112039 105937377 759204119 890518425 553639067 444378555 917422283 894998195 283901613 926101433 767284359 617261775 968554787 779532629 608419731 896472331 700537733 959256985 231481853 398865557 534121129 519022097 551710623 166655903 795623853 607413205 630129433 876362847 49556723 850035329 500906707 175370269 344931625 43693373 188947967 531393567 342113859 447107511 342269841 370925755 847109755 951808293 419797837 99219527 643694423 966532421 276732601 703571497 565187749 803028831 948707367 483984329 860399991 153517887 557330863 883425689 172813609 955073595 158319153 81014805 474537055 880795187 442137685 811347647 682100743 805411979 623375243 427963167 15656021 432254773 936123659 274412489 476689861 287835043 979211991 693160281 321089049 425633751 744924341 803067757 203103585 160629077 385654583 730358195 694820591 804782635 965738163 666802909 387414111 932536817 956034637 585509794 99028119 216507587 304099049 942800327 628830403 997470793 319746107 308280599 945394005 488527539 157627321 260484705 588462347 409311155 758240165 256439427 764243945 306283913 997353477 91936603 364360251 590241787 279044521 109811927 779892629 31975257 696428333 105846761 765971925 450033527 956241389 695114633 224922653 52578997 221214483 541455289 641049561 866290937 243301521 428638855 821030337 634795183 165866525 896868609 304207053 695434705 461417015 466051653 42793283 347425499 536893737 505246321 100728753 709414867 222569985 489800115 514903527 346684231 406856089 939888445 81454597 926876495 86532497 470420039 991051629 4945031 712907091 269355797 57862605 167588633 719092491 452202991 844127769 523095471 624402101 582472747 551006605 962333313 991942927 311432991 383370411 736755789 720021665 310814001 917605955 25766747 495849661 756679881 350781029 767697013 796643451 769411929 589948275 137364471 347726779 259038301 1389835 585758907 632103461 95598167 810543391 721077545 692706857 782009809 142553823 440239661 120576513 776519771 821052359 348750913 469410985 767482771 60529311 61251681 95804143 901292569 863566961 265124115 82639967 512080535 66226065 665330533 750881873 744959167 385804445 435738095 323620585 47431757 543196021 618827725 97787405 691910147 847456843 308959145 62411373 83761835 943565967 132561069 128327809 471699477 899198975 633775505 476842889 717632031 64733087 80838035 974194831 769139623 360833213 72335739 220503907 995218845 687119849 908260501 315615645 837819373 13209091 651172791 579273115 289971349 313747245 787603521 772229001 530868375 398074325 799471385 327968339 136459005 378120621 643601325 969228981 417275351 926156469 74324211 398103087 718131011 475643437 672000103 555026439 719933025 247510435 87238419 748635213 238423131 708429804 175156869 741727963 720853859 648372773 153953745 984863827 888976309 908726449 567364245 146364185 859360915 944415291 228260859 174949471 693842759 595831478 620339629 855755039 271663139 164321381 905752803 225630487 769599871 228637895 852736349 33789393 176952001 237155239 117913693 945850267 820742481 444770333 131639221 278429839 915668387 390525317 958689467 342048653 418775087 329923711 445367115 934515517 67052153 855964157 38535885 923482385 730030091 147162671 923695407 721542205 353094517 399618963 664721381 447736005 130405205 978617837 451672817 100638319 913012043 690765641 325107671 769958349 53596929 93527803 283645095 468430647 216058155 874372257 923928821 294739405 232274561 862600989 873230561 261242999 251905223 142078875 994619919 629309157 735123909 189652627 51361967 174276751 485796945 710346941 212573817 734591927 980644163 367856671 48662951 279379555 246592125 124549381 595557891 296851301 354447337 714519813 723231705 312328533 36137595 693644281 851474687 719238545 833876779 502740229 405747157 25051461 756465661 126071703 443192897 766628959 502579961 78327907 308117681 714931351 868149045 497228899 388703003 358224493 835731401 987449311 59992573 23324715 504309463 975889247 577557341 428066017 370068105 783638715 482387915 210955109 940464659 531185677 698051419 534715227 220144301 325813947 855110317 475105831 464023707 167491695 601646053 368320509 299174951 3080735 1476019 343853267 888734368 881356551 551562319 617293673 586959207 855155625 648853619 596011081 744603865 519051477 553837673 820392641 983566179 110133405 299036925 72526315 953894003 391471455 405258375 851980711 959255945 53851325 407751651 57306527 304771875 896901283 546063225 825389119 745764299 11123783 420077111 588081091 416612631 695966501 372736147 527333161 778629791 789927937 634579851 196293945 521824005 719754729 625989029 503946117 956173043 794293037 788853745 704216421 932920349 903652461 398673155 763763449 132769851 993055115 279011323 466460201 752924689 856818357 505600893 901546917 270786153 700719965 580108475 155634663 485706005 143817537 620197991 353096749 346116591 186228071 588127683 767651711 520420825 522667287 88674193 559602607 872773565 901594857 974159141 428790357 324760975 832470455 10752335 913825743 36027207 692133285 200876915 657161289 721853417 867272993 359950963 271450289 371845759 494921695 542346687 187002815 435327259 989924827 230778955 763090677 984262103 400605271 43810715 168467353 887880149 505905891 413090991 90784189 997056575 451401297 674770201 205930295 646265673 831419837 898594285 309214379 807491373 327370637 466518219 944164477 219986731 859556459 346798807 593406945 526599311 757416525 589731779 726551501 744309161 686242159 381748929 109748225 7181527 966204757 164514195 884930055 608593785 957650379 521770365 248583215 993759995 401757157 785609805 209704079 536460237 862397185 865742171 766747659 662733929 475439553 327647875 231412039 350499411 745234193 966338861 887945141 766762261 363627305 564609863 613035151 132368705 216708225 855858759 102481363 952882033 17622239 894415403 683684683 678011207 621908047 443313787 352402821 86320237 206933031 268654915 340643547 454489495 781931521 51875865 386615917 529799039 205010625 607902493 124456740 682789861 275233685 811362291 493916335 217204373 656889585 86358733 3457157 604231777 21858703 211450205 210484969 294210595 356556661 462053861 926718435 257477565 403339505 113861161 448663617 817393945 362918293 221438071 909892253 9671467 758708541 84227239 448097879 96407789 580203277 471992087 959419029 351584863 769039477 58694571 684173131 340345741 450705445 397224659 764024881 829395337 62018329 399669893 264373189 285719917 136987033 594541887 792856655 445232475 594503727 214710025 727917793 946185087 754081967 206758509 785520209 773919497 408796981 964773255 853035074 563701555 12518695 640178929 235097117 592335937 569740849 251081425 959434765 385760893 374785349 70466521 51249681 958181177 864542625 180725821 399829219 302827471 79680969 700060345 750543119 672607395 380613769 182891415 804270565 161652251 810575861 532066213 74546299 548531629 175783531 736270647 443664053 13133523 324098957 523190571 851919415 768908813 416501065 819639785 110181749 304962535 505513169 158691425 544120997 40662003 225146277 843880709 67181767 839311819 487871109 232699605 211376805 26682385 935114367 378401367 435880397 317598577 192758249 341176987 437071769 865963419 85172573 385399351 973647915 51758153 1131199 320094279 223480167 417573953 289469501 963385203 584949247 480290889 194356043 917949159 387070061 232579637 985784741 14460253 448385007 405392863 123113549 895156241 373793677 745012265 47067283 56500169 759191323 115752959 80264457 660447699 504080429 839639377 992853643 630539527 805847845 818146329 603907391 142258973 305496619 484691293 350209935 64116203 44514863 309197859 787820337 769286127 608038377 114855039 465735201 251216837 744105691 505027211 669306275 950234349 744936013 987512681 135388483 351174761 891941453 192004165 955846613 392849867 685990579 234572111 360589429 735424041 885479971 587623619 742717833 153398047 798610179 263134177 688083901 973881813 390654595 433580021 914128643 190658551 645350811 878418257 509725593 684631743 49857549 706945103 998412037 159320041 23498079 942209107 105191695 601151163 69753827 888085699 624196813 682944773 602505647 425627669 276412317 824472603 777424295 407283907 28756513 168791003 367488623 727615565 591178567 389814703 548401531 405403201 334843203 709499777 35144193 775385901 238702735 704657097 156820481 628858285 15303411 810346887 333272389 838482275 543132791 723221309 134665821 539654651 624885363 181204477 441936799 949625381 536511105 210176349 866565167 423717021 406740357 66803577 310932209 391546147 731106991 684218873 847627673 483994499 731986541 505423115 405545371 301765777 548077953 398947939 675008827 199529250 404079085 104612419 427457153 364829 4907005 55000175 213452861 747532907 143617349 20009783 660413701 83663869 188397473 314316911 568056891 186635471 477603383 163042935 33147655 833392865 395659377 976903987 452476761 272428097 606979333 811616533 696794859 830628860 989275375 389459983 204104763 953628465 941101171 308260513 38806929 350305279 517879325 921059539 48264191 233745043 814148035 645930289 901015645 966067229 781498749 458756051 747584587 565298649 833241269 696109909 503858993 412831753 892636433 585333727 943903551 945970933 130138507 717615647 355495023 593856497 16693083 402349131 178228605 891538007 672465159 458785057 444916471 363048587 210595165 94858471 832840233 374856437 318002797 646866539 91884587 536574727 810908311 125304839 729785057 414003261 565099901 593735827 109520881 297550103 811739405 868889211 400531401 935782945 191132795 964777 732477607 4663023 779760451 392892311 495926661 577501975 887499815 803948095 89506095 309965119 966041143 316675371 762181429 137576973 738050501 135100775 58957549 4974905 647403885 375611787 380744827 38390903 671222549 289246387 32976323 576526991 569996007 786583943 219187577 810562119 13497433 269527349 938401811 992168821 740800807 126550131 633414353 467622383 414616149 760455295 647261885 62300825 758582061 771488799 111012261 232159839 348368457 783547043 750609189 393280307 251445375 813671135 523473817 799448331 465422327 996292659 623189291 42463471 232571677 173368195 736606413 768325093 548877731 44431425 482981171 399238147 814776711 454518111 157959649 816977247 186867213 681599071 75387423 844987679 787815105 429165637 523127803 617738857 496260217 128348830 50454351 93852533 884160077 841792133 613350587 701557369 921951911 326132115 228382375 430705335 369732143 626568945 250922053 147150717 431968473 931618893 437867657 951288601 160109285 513075421 538627383 60068839 96718291 776770143 137598421 180599115 948061553 885092891 138059445 675040940 753984213 335769051 373779439 800554111 989159257 36185339 132507747 395397437 198267811 402691411 393700025 751556713 995146397 332964943 110676577 449655691 61446269 513758683 898134675 232013113 16811965 39187307 699713873 65629705 800490021 619665665 775361633 502455201 650684351 775681057 702677589 503502761 69244383 285754585 979901315 857765587 965900833 603002049 654254351 846448603 206883691 218637813 313519583 533102723 494264551 354128925 670035361 251753107 208108299 363015015 764334545 562698463 185773203 1007497 422663855 949111875 214628227 225694403 823809089 469479583 982043175 800990423 226301783 791484381 197091349 976962583 828920973 401532655 159959845 281477719 489633087 427385041 357167743 482856439 510595223 758520709 643073935 345048797 914390151 428085523 854445319 893796725 22874309 528717969 210678247 224129977 597893585 955704085 111039087 392366117 960861173 318982341 607152429 810622141 223083583 926604233 193313783 760068117 481891721 889690451 597227239 102470207 269474677 207526047 10591585 612883417 508289383 862756335 465061651 989212939 776550801 330143627 171907313 313148035 239750125 256864969 624082997 840096889 929206585 283984127 671485799 175599015 374939133 571381395 528734031 276461141 636476811 223565805 340758021 386064723 599959803 139344001 953092067 210262775 952818733 944926151 260804239 474816541 708899529 187466817 252983283 954340139 724959039 451890813 613535557 254464787 639965641 73512971 911190017 882524233 173566307 188856451 872041195 430179273 343186651 342934155 509394703 117357597 642316221 944114379 876815553 776166995 423304033 800640245 8242333 180910847 927487467 774728389 8941705 457088831 45688641 188579581 141402289 781832123 785531923 287307367 597767303 620318627 272541401 462261971 494712777 328556969 995254995 843481119 810300795 726259981 108290315 320706347 920169705 492444311 722143569 297680097 460588199 81274259 291364669 944131891 195731347 515320023 560239405 172015647 962734031 496927683 103458637 713491617 71219145 890705213 252505225 427168713 792100149 161946290 248714141 469926821 498581517 742309145 507257865 675420243 769260951 449629169 717910803 934598387 174750561 167551039 128523467 568013999 916325949 661868435 500835083 531536827 248698183 867214593 395871861 881523279 953174243 5272615 827820397 113111983 973233599 105179183 741290277 266846499 108433359 44563139 885857942 556616961 693643599 287080219 534249345 756124063 652985793 688969973 281442669 232898147 216165109 775826841 996646057 435292853 753931773 468052179 105175887 656301321 758597172 524165115 216856127 518626775 153545795 135481069 606603297 564250275 29147409 241630993 826127463 31671543 274168021 386801235 118640197 861019491 402074635 458286125 164253119 397399685 20359287 5629083 230674075 25068541 791336997 914794275 158218093 414291829 661114987 878741461 605675143 292757409 147392737 528877637 775134991 538218297 715778671 815812753 460605931 809870337 38008385 274319971 704853195 975253443 420495561 736531941 50882855 568110927 200832197 936894671 871810369 330901891 343008315 609199969 62814495 855829055 549675891 717621085 586928531 864065389 874152963 401390869 396362037 916625409 371632073 787545183 848745315 478968563 189546985 278457751 482618697 880380999 697414093 832850597 967333589 623876615 461578281 18244087 516461503 169302339 196968445 131324291 980148871 496521497 447882121 360500167 313718647 629424041 954885981 571122377 679644575 286301981 639918411 302078233 919359445 275259561 283617135 272477387 925413821 750208901 917265709 533099645 559982267 545566709 27195445 448350809 898367747 147776579 141992309 259263753 762834059 245354433 443648047 51080391 283020307 578601929 933069029 234590285 12591141 51896507 694205539 254991333 392115215 516999431 865926333 515225179 817223915 646286875 121231439 220830213 238978713 794852721 925631167 754351045 852774083 204584333 432474617 338370557 737527253 603410681 399070511 480780189 50216459 679208261 171159007 49611547 427303523 386387471 64743117 754904949 721487781 566005751 561863941 620637489 470190947 543338919 454944477 3434333 509526773 80295635 835086061 905194643 362607227 699420981 119660317 886984171 127389661 160149901 79146905 518380049 891681227 163141797 247313877 738614831 587283134 118325843 794990475 865764607 196191735 120879727 440014785 716594107 301556859 625682395 67504069 761430829 855774749 75299713 792008743 305346209 854675573 937872213 293923271 374946543 924642785 764903761 393264329 952913267 42809485 515447925 783094679 831927573 943551335 121287627 870487015 537904451 657012519 346301801 458380211 839083763 699876175 573291367 442798659 139173283 563563301 877092583 248224033 849433691 819513019 102210837 389682975 128685221 876238311 112088607 283037535 454018973 463032141 146024517 733796927 815206107 445903697 409154245 508298865 862067595 585838887 711613675 320135141 613547865 325203909 47702793 157884121 940102521 560204523 873383289 909676753 701541805 464396323 486432669 358339993 967882039 64247741 416164063 506741829 596505066 915283407 466123187 182122033 595843865 50794301 314535057 753856515 616733861 36751019 504405245 834824359 365558769 761447307 132696193 564265039 871558893 356327703 217955759 126255483 485199119 789827917 146185505 744547307 973918293 465019895 889839737 282525613 105811015 818543523 327346531 892846613 569987311 755606187 726135951 859135681 588550633 9742383 507447479 194736789 462842189 874826009 342199711 878160057 420513479 842868501 626624785 564026791 205664387 799412637 378303967 739868697 897528373 288396019 793029347 324165649 951387679 568199455 819574783 992366047 592521221 260714223 107000606 684738835 915775029 239473917 258426675 120966029 387932295 557040809 569381173 27075185 950379351 663491353 379364137 146181417 462580879 434642499 4808985 557378155 753206425 496843225 895317015 650314035 801816429 811194975 606535485 151956933 228597129 97680923 576703149 492192427 670975731 762093087 972116627 103601597 347290683 468167489 161493023 568132375 697889143 857577253 970528395 16680987 982034755 285423921 73481757 687448693 411508165 965821843 525723419 653398299 262511023 998971977 386879193 721060169 585222451 965786125 552089777 265682307 452849939 264361835 465217797 776079509 482149779 630746547 401863231 12603029 232915331 249907707 124529107 733024731 20653365 741935143 541434683 933637649 522550669 331128283 62450423 162415389 207767277 198082955 629822355 334097977 692578373 412454253 381236897 480510685 572586507 938397313 151304123 589640143 495788863 477278097 265677187 863773 839385187 795823147 658875045 159890455 887423113 551681449 379665617 86124637 995873351 318574125 459951043 899097811 604980409 288800155 535072827 297237923 848737925 729586853 359905029 1418819 826598109 975323077 503953907 497970797 566202997 423396921 985981663 413747497 729633419 368042249 210174123 644098495 182613989 649796105 905612867 88959687 649520593 175238861 289333655 493931291 283019559 320901047 684402851 102979809 305933123 735077103 63813735 515679877 126291727 524178789 904110575 978599865 901765621 466019793 884787021 695998585 991829741 628970421 700751003 683363853 118410103 140994137 992568573 550542335 400914581 412237771 419252633 701336355 654761945 998924259 227976869 595196567 348810841 279258949 961630299 652093629 112808369 827400791 904862203 284467777 632849159 493927497 46409425 215957787 695240205 278025235 85206319 798674307 638531575 494917495 956260721 139722495 822914691 70969339 446982901 525167963 798785783 85654001 193426217 736678829 901037857 75789167 531278973 78631247 790699097 939413337 930545003 538234597 477812349 841568339 379884921 74807645 786399473 318422481 679472173 792697065 842424743 688185097 507396123 981714441 184628753 160846331 641808861 381683325 382320687 610315889 288674583 750552149 118773129 175984379 746057583 955520225 52504107 282476015 57301403 239359937 195710893 824405617 390492757 303427545 566019115 394734437 377933151 378128467 1363789 158093439 36127873 813722533 783105855 961467187 959911567 530736267 617853371 531658695 609504355 372815111 160360701 907750973 627725281 184952169 846393035 917796715 700015342 869768515 216747381 729755109 474360963 416295539 290088143 170671373 854039447 371658777 870876985 363789323 24631853 826379687 129705623 14353103 942797901 770744269 288841561 759992083 447506187 392843145 868864375 297402197 336125825 555600671 736042859 816848861 934084563 82124571 143268159 227996093 201971751 734416209 104552319 500011981 654348725 169542111 330824771 902971821 674628529 931378727 627519527 308431045 177174115 246938583 781537107 689950533 278137873 367674849 890582133 807598887 64626191 974707075 165126593 588246311 28184505 296141635 919565817 522464211 411441005 834730985 471738723 859604087 302097817 418745741 470191817 497975851 358622637 386382473 56124549 499096787 330006821 929471105 593078133 667941397 501450369 315602787 879821311 450725471 348213839 414429283 27005711 439581167 388110365 332290299 593010461 134152639 862554503 421366771 582339369 40625819 257852209 72928339 839534519 43931155 702534595 9062003 692422613 210182525 541835503 719890669 123364889 464352509 91614833 752798119 499156901 556046967 885702409 531044555 38218011 177881247 316792709 750851023 887342507 435071467 990745011 700455023 20517387 669453723 111736687 401639855 155267449 464133305 785318813 366182107 122774715 476537109 388372773 377398919 271127841 371933765 939298809 264653201 404230015 737997483 365252117 220044315 230160181 268344431 231104121 845827729 25407783 496156803 867066931 649993385 715478727 228127131 300381521 504053857 390019335 652331835 507118575 697822969 617549673 312707755 917523249 513776127 860523249 708119033 944970303 85863495 610157357 158801151 758900555 743209711 428699955 114390621 722331281 657376857 286930597 442925179 313757523 671875379 95623333 238523531 574705369 882750833 710020323 641586049 936634743 23994189 951633557 252419873 808329609 835430477 572848505 920180977 287428205 346041919 188811477 100345667 270272401 396421173 124105849 565262383 709547879 336655243 61010361 113719445 390286437 247015141 424231029 142672157 434568211 541612849 270091795 184492855 738284025 902107299 897243263 795653659 890575015 470706103 715630387 376678859 952605881 550734895 282392619 532474381 729877459 274303515 195889387 647898995 229891997 582292685 161858439 713696851 432762569 836704227 116598159 919892945 41580563 483717693 237012263 814927059 592778045 294542605 98719729 632379655 661958671 895717059 504487453 752267753 748722015 379959325 424598369 677199801 502403075 315037471 388318203 425428093 435546593 481971221 603189171 144303877 971414753 880499859 691252949 373727213 850810869 86428279 744600375 401900177 927388185 755673315 725592377 670260763 303659343 96000323 82240703 150547581 257824671 120783439 358889531 545427821 754357791 487148287 69116833 289645419 722458597 330143641 764777837 382719169 953025303 887564459 83187113 42246269 130250205 551977989 473909987 590902137 218359657 116369863 425626413 124005719 65505017 296293715 270901547 765657467 194163401 464948823 232942847 178023959 137557289 249213383 255638873 354004261 831450471 921264351 976525423 488226147 159071969 373208097 916807425 784451929 156873717 60420189 430885713 110808665 620279569 633164197 130721841 467247483 320863143 550903381 664906229 473787551 463521583 458705937 802533757 52785517 610619437 834467017 476615471 876048469 733290793 127624621 312408569 911119761 745383353 588662329 476339791 786892829 696966003 993167669 607264051 165529287 195477757 416924587 39569193 675727643 243747071 939757551 944893761 400084593 957372717 525315743 550758413 44121325 326933823 467474845 402202801 81242229 571108857 45961493 404308943 869393337 340169763 126400125 578970775 330157873 207331731 421259665 342734273 332215837 670374943 984684885 576267399 950529929 240959661 328141079 112336817 265466175 700053541 833370471 709287055 989111005 297704571 94292773 785501174 30578367 451022759 672007283 602574149 985334545 127904941 161827263 884276577 655945919 79334549 98878139 463930295 801580165 645127541 654861671 677216065 164245987 567079779 22997763 299805051 6941727 347542405 621553437 200235883 383278921 73905411 278628491 277288607 619006779 463778321 626229863 85139502 933984407 551594727 567634711 510127545 777609153 477740745 40999749 31880289 850247147 167656193 189561063 640813529 858238991 338649567 841139255 160962899 622331371 340453825 800987837 706161295 307736329 889036295 571202115 872062165 962252215 127644187 280209371 261298161 917285903 668638831 794740455 291616569 508588273 45838209 660040199 193479821 657982213 671936717 258294823 534096723 32378301 602323939 823431549 196404089 385505869 657105747 575183493 308398709 702732473 894464949 831848707 748628037 864541895 11037871 840506115 991283311 167495435 67793385 16145369 175657729 412217815 348565527 739757859 460964243 563149393 831406065 737625539 517924419 124387679 190960955 51749605 856531637 20738225 949099455 465072385 198181659 683852223 607501391 785881295 978966311 375835339 743409091 306868821 769107737 780082139 295600129 810162143 689225401 641185729 706607856 198659843 500902483 633953045 220753799 960514971 184662463 308008757 320331451 331898059 522591065 703135565 300843665 263050753 141910281 871560523 738581267 767650801 370214717 629608167 222551891 705716629 192286187 563827361 320055913 698029877 869866897 270840003 311960187 551092569 758600757 933857884 769466291 426502617 710085733 503084613 104774975 487809231 340026937 619581471 205172319 914522529 285111375 620256079 170357585 802507257 22976717 232143881 174005855 721015501 860669535 947538499 206792415 448581977 147636029 487149245 434424873 585663521 870086183 63284737 916333215 173432815 509202785 811826525 556864171 174885083 191437241 899078635 162252225 774857025 809583493 84928907 43698009 646031043 498848679 211283431 966222839 71846733 822595713 208701803 447058981 61003285 211163905 92316243 345578869 812648089 359684001 773838237 819039615 170671513 426329437 211327505 919244521 810642467 679953085 515519297 710073437 39361675 15253195 941269125 946391435 530908527 482740257 536498685 166626349 30254769 187820509 870997905 419516679 356885631 728515749 722605553 244719331 729072715 10684325 39617943 20417425 536713685 169374103 495330753 710333679 893961757 128911797 374169463 373273053 675918961 444339401 539341963 414868295 953835879 876755487 586527381 782362397 581976024 826306191 988242933 171044697 76111851 32643957 705456337 813311743 801983499 299869625 494838301 537512729 730840045 14682825 889199247 90408377 801463693 678701979 203503017 816020727 106562093 671457709 117012657 524806651 666369373 864195589 39754681 137058793 985212399 321248819 179616919 7862007 273295103 822011211 218559983 928450397 922800371 687443181 452495397 66717791 242017397 45977663 483578477 24865607 984690043 442268397 155546557 344310887 318000193 771081777 319299541 731694105 119322699 779450309 134681151 210239423 532128613 353406707 262311243 164866755 572491427 40693127 510017295 872014745 111907171 181186265 266221167 816962235 57938503 665603271 609217551 992767401 87345213 408303797 760200033 243046383 970316663 203757715 939798943 44224031 209039987 176902103 329441991 39864529 904930549 357813887 683112099 596844461 888471307 972908049 833130945 595743831 479314437 745147549 235749499 207089541 148032387 450989495 191609659 390710767 885517927 284888959 927365901 983555419 775840735 222654363 54422395 841812877 308861023 125563959 652440757 766628701 615964833 132916493 922885885 609955235 14169773 860542041 235905115 328574019 64355531 693432801 94672285 318938915 755547795 10113523 47766365 185807673 117208543 847372391 111427835 652100989 693646805 643576729 589011871 818895349 935367647 501064049 12024633 700153511 201456819 590825565 163248001 856577701 591182155 799737941 361373433 412916493 41714671 638350291 432558054 748412929 185949993 490440927 87442781 161097127 258674893 639384585 262484017 374773557 313069815 313991525 611574279 971599845 551228173 577623955 561224773 588567543 780349627 342336697 939178267 196022199 236551923 273776517 844555393 648676983 804591347 509038635 442046263 22178193 591479103 527337325 276749255 673277287 245098147 148599695 94880641 539214949 653656371 482263391 389325179 640638459 187752781 164142389 745760153 758013859 757183635 735329775 552726399 563353057 851241203 103795697 569642913 839711551 891718559 708072491 631711797 10766671 457032727 312711955 838759483 900707245 849088795 447922089 663344765 457586935 792093625 515493487 825134729 636365273 707138631 545127031 600620985 804628999 876987231 399106133 986279471 649411387 126996197 812902185 587593679 566511157 850402055 673688473 350831947 933452225 610335033 784939731 907566365 125598129 195861815 779955595 357268099 189395935 70887939 391520003 887329927 686823727 85484781 704119295 28248823 785292423 975777415 8714191 500111725 777669085 917106605 269630279 146636361 364507435 361480837 33159109 803132339 593528689 934113145 442866739 139592859 456070587 410962495 488432635 739780537 653688347 777113811 973336597 204238479 314693805 546275961 501848063 371774053 400772239 902341821 579805377 145246537 84328685 891338355 651227111 904385299 414978557 4234935 76643463 153393767 881535475 191734767 627242049 113070507 357441559 467110599 744122427 987829263 43162543 326777649 433633827 186542731 766281487 993128299 630064431 172794081 687505041 544981243 971222813 335542935 917858199 339486121 592692531 595703295 828303757 257100939 453428031 138047791 432162019 597705471 610106521 882875659 721673237 511686567 94284063 104848439 204170403 583074673 236945973 781041703 849775641 924571281 835120587 786052113 537161481 595036033 537845592 681681399 100825103 309523977 419226329 251016093 959860425 756312113 191462869 318377369 478174437 275719505 664128089 167987775 828653843 31186179 550824955 765196979 935994893 870734379 506266843 483779033 320079257 532998137 156717215 809703781 511269245 262700253 160882037 389790411 745768077 908846995 422695699 170810961 287932835 593662499 72540087 842298873 303292579 770948823 77936935 997291673 960266613 683763523 144961459 288411333 424754955 216401731 340453679 900251103 110498911 944057853 732424697 530146063 677437303 362279643 727815163 801918021 956907609 251305109 473461663 672206651 968285209 857353251 505901277 540212847 640601555 534001097 901364277 844551209 615792037 315786265 2516395 852761981 983592893 569583329 41759181 722411325 364643659 801573439 290735793 999502607 972233611 660380059 977310457 471949401 750571709 219928219 494149317 72676171 59183405 160145465 403561673 274638303 273190447 938080685 935339321 675470545 667875097 79982461 419312339 537907375 957758543 946060919 125460445 478501573 852826685 128798379 95297319 890024491 812193363 509377657 925950213 675818693 194254861 908500869 495717975 603353145 293510637 56744889 70919553 895165173 529638523 268027977 990741877 295682359 939667275 915579573 689239717 369044473 472919545 322875325 992786963 561918983 607579939 780903025 892781633 450654961 945288055 100449059 890554947 348450829 646790309 72101999 849903785 603407743 151494761 45885499 248239767 388070699 874141573 212925105 247076527 353553861 306090689 851235142 167392801 583972291 884681713 736998841 106033569 742039141 342579439 17032459 665862769 376284853 634686111 63206537 940142423 406261891 871605737 466132679 593478045 389722981 76923583 50197153 380952607 206553021 456359197 735978045 439332917 437107635 792559621 837842439 665666251 402762297 198057087 94162865 508169035 437657091 60820127 484698937 261445807 296306837 673458817 679920099 343132787 575737655 593107267 362773307 307401115 401893879 732782611 952432663 106846651 223172271 656577313 328128913 177634787 720135167 196077225 155178509 699546551 710675535 395305453 46497337 896164441 949319377 857003061 5446663 85751161 380433529 913491927 704904119 648086605 988526859 163462441 991633609 883951251 611983373 866456977 804796171 200915857 363019729 3347061 49741715 453325591 860533871 938871885 672607675 742024313 540603079 645155215 662337577 285824919 568237441 573372349 779492295 956040151 913257485 539257445 349687499 849377573 967704483 748641301 66854319 420876539 40949829 196143979 606603835 256041299 26360249 59878917 842736761 400010167 292011665 656750993 748787133 629720115 567772963 572021953 838576035 498843743 624259219 413235277 685159185 873870425 539268039 797158903 629868337 431291845 288769132 336583565 243890809 800293587 173634049 569889245 2994085 216455993 925098691 831289795 251501241 787631413 184715961 6379811 766093825 648375439 545441459 428460517 676058387 795094417 463641421 554962685 217816519 126748695 997011427 870113635 473793565 635817083 573369249 284863769 622627065 821154467 295592563 549230125 459206549 212389633 278646293 647202733 107802137 199427463 381620997 602345143 968095941 771179703 857754509 556791145 175032871 431437973 915557051 902190065 210271765 79838127 589790057 930154881 453533353 846548509 677202745 802193233 717378887 566175869 610960271 795191715 2403229 194343155 110056093 67132613 186074271 983619631 884691549 692686853 867471239 773311079 836030861 214424257 60531421 929756249 556123829 778021721 708074857 526542413 826238247 581960759 100165955 436022031 617779195 981084365 819600069 174606581 669856529 936030871 606527381 597784799 503780881 167537175 462216093 716642099 705814379 472716759 227509267 269717213 413768025 219258727 291946611 964549719 848827607 993161317 198366593 874924189 492476595 302827887 385058377 621537845 283693177 948208435 39233823 98776621 880914305 135062371 616995487 890486557 413163503 386569143 173980847 906666019 615707561 314760435 20632955 927208931 75411294 120488415 974242933 276692877 682996617 787854929 678631771 592618967 648729447 631809569 214106417 345938433 904507397 986333231 235412291 23742157 862418733 301771113 13270567 562290061 801971325 71233985 10431157 428488983 42974289 661276975 198702357 809830087 952364757 792609975 331860915 484309379 912235253 113307489 466341443 10267325 561923437 456483651 518924991 527502697 834076605 959779445 825417327 28603141 147793707 78054935 191888603 829298839 488078279 227937113 555418331 412975533 392337259 841524327 925230985 377992543 305704121 336452479 172099401 818848587 912571413 413446627 242335945 334055061 598873265 849282781 320144381 892399341 789841287 623391933 881985825 788387723 97097301 761152993 924063671 23428649 390621861 577699241 509727119 423033361 830514885 511847807 695699387 786949903 982234319 290183639 896009111 383584889 65959331 920658217 591479241 138756143 737639401 94063865 600371003 674283927 311182099 106499791 588925989 618285727 381807701 649961793 908193533 737874621 213633971 62628583 456904077 932961773 482657011 145978211 837244895 174479803 48352425 761326687 92543817 251402799 579155239 743579789 71116131 975903459 120026003 524998827 821463317 291356661 453852371 480575093 972413323 752396553 368506007 974992827 439436598 434239057 775578711 954274637 596953817 755543935 667993173 501918725 675663985 111796947 703108759 471568323 227060813 101656085 681565167 361446007 644559873 522397585 687578357 630700813 22153067 440752927 990932231 263151237 66868143 403242779 730591569 467508957 745266231 302566765 233193921 897170975 895072183 85065859 539238415 981695329 126313263 250172497 433563835 714223547 347544287 714742617 590237199 282230607 877960023 325731233 955887387 432106055 882383977 477907891 167846581 884624343 428730417 90137513 593080961 282618679 767702035 159601697 303408099 759431851 719716799 791919935 565230863 681130621 269281829 438745013 105942011 218870781 312041089 251959221 806775143 243248777 633205083 884454913 475272669 390307457 553171325 653460187 286405803 277020239 858849019 412213525 205625579 698587495 489079857 383550213 687774845 955652929 516931781 241977735 760733451 512672865 431790755 265683715 448051457 372375377 889423613 77967463 82643099 534328227 169490257 666988073 47009495 487487729 121405027 460953927 116102269 715893213 974543679 274097735 150815519 533213969 151857211 871193145 310600725 340534337 841922031 946833329 836172159 327486245 49313859 933502927 928675141 236483713 790681954 6444343 446183959 393658143 181596867 203212571 245159023 853823697 830059037 798038573 992414603 838422897 814551671 668813743 449335411 740271073 289025311 49259621 383017209 631172875 254104741 757864349 316948661 929386723 818297321 613014575 977441287 360593249 488773391 34776951 838834453 753563529 585901697 237704797 880152787 230806629 483988981 543974991 117145591 771187719 143103333 158857283 268662787 758475401 381486617 567243703 923266109 130181389 364311451 741644209 256368311 462860989 477425855 745560513 651394375 8232397 356521121 282386683 890001 582993013 84176295 700531967 360135929 362428409 736231035 814154483 631950771 799749027 950600467 840612483 764204981 400530373 603561387 836187369 224450241 820677817 496748999 116330463 302390875 511833057 515645747 455524015 79779033 443853993 809822467 933354277 482538574 631245183 228675731 334245017 732060065 509367523 650402441 864994023 657163635 947679315 440144337 143373177 943598903 273932123 85306525 6857273 462351399 229333645 753795949 154296991 111017537 775460483 781824001 68198057 117862735 783635167 319100007 673547741 697054175 818606411 301288949 990761547 711404107 496681595 478335555 784328071 166206389 601787689 32983099 606992305 183854337 112245525 628731653 708281967 911081953 360968715 947193621 14816749 794617805 400922845 790644523 564565989 287009031 968489061 363439431 703637649 432845207 210782853 760491449 888264123 163442251 743673127 112761361 663421873 578143165 644823871 659109423 809259591 115741517 711032775 597375799 627772891 70418467 608227007 340293267 617945685 751100463 767304755 170888953 331632163 556630313 256909621 167331685 781569851 589025683 250444511 535528987 360516635 373419443 229394771 908844453 98078411 349531291 425157819 497902043 444472279 134951713 348729931 108446937 832573781 552168681 195210045 886408705 184954341 548186969 858115025 83771135 638618029 716234913 870756435 934788297 36800857 924630201 650676757 531018907 644314915 995638881 32996977 228037881 123093959 814372387 408544201 863463089 629808523 583421263 38015625 974678483 774716221 20595451 584105505 77726911 558638901 923913995 203180555 437393175 771298895 24995619 244929229 680648391 936463605 544579511 559978733 712025351 561333777 22398205 877023743 883638095 778992155 77509109 669254045 178367589 610751505 638969193 856381545 508733271 5543035 154316519 147037455 447853173 181302373 894160329 360245567 847282783 719145061 527498289 362912435 590198521 917000603 550403 636450863 459674733 69439149 800034801 968492671 706004529 521541833 856067701 588523889 360660479 402085539 692413133 440093921 181148383 364810621 293961219 212291505 201760281 763072027 547645413 383905997 17811525 447767501 691946509 837080613 375010367 658685797 146831067 383706547 785845287 659348551 942628983 92337789 958947951 607385941 735019473 165298057 492916423 400066561 773482401 345230571 431981355 544708925 524853609 922563261 957185251 598099593 351857265 101217313 855008633 932880621 476209863 778689091 654709697 183868917 356805187 470223699 671715545 489185975 513873289 125376395 961501987 14515411 931311359 671006257 441213773 453523311 490057685 397494923 437069641 949400121 557790467 218610413 949161813 91048551 211352651 900007857 705729269 423876533 275039539 787167803 755607029 289733485 657037837 397731825 148007787 795557213 227587311 465779529 931202737 635432152 166077117 403645 981633131 229074881 335998491 383779788 283523463 918908281 405720189 862236679 413859383 432724465 188413721 662711289 777467131 457954463 459720177 566551615 12587411 763290499 616171209 16518779 338226191 920046625 222472247 474192473 219921855 203664519 729316495 914228361 331638339 941298763 260761845 593001415 992944767 549151117 9526349 953569235 685340573 580524019 884448843 466983545 614076435 47632299 572778083 719193227 643038365 759912555 184623323 629146853 552137021 903916657 24559029 214140261 964332611 741944707 374393799 717209593 53728577 194703855 50073509 547733904 799875605 453274509 770316465 921451817 493668831 593678523 875693587 789222593 617119761 394903391 748924859 304982117 947188571 975933925 98174819 116567337 665514683 679668292 906140041 293020195 596533365 410230015 125986421 493629303 32829205 403132437 568126267 20322129 888697967 800907289 834181805 441986273 782692001 878627105 474319473 437108579 45324 623107529 590680557 973163287 277129057 198604345 578110801 62692939 617578639 529867551 153495703 794913869 613145047 114679473 16995963 770775673 724636601 397717421 98809739 284590899 551088387 812115033 776794899 311482081 99168715 537433477 975696427 145298683 906560107 297514373 249370295 846543095 974901383 141622585 654234205 707295575 52966413 50791685 481709453 515471015 704682545 179043291 360519807 897554554 198301805 764204077 800291379 109946985 665969545 386999035 522777971 622156053 128101005 194850509 31957455 643188523 377290193 136118959 24153757 239745115 503625713 199920441 818962433 661317729 925287117 629252999 589606367 8069119 425836693 343848001 388004075 16333821 170380989 428180629 706671515 865504303 30093569 188831033 584033583 303198321 416697445 606291819 326917808 776388001 790768693 545517043 271871985 191356077 121859845 580840987 598121093 629037957 540838835 761825981 502469327 598016037 599527521 329098039 553407735 155397007 972119419 286660719 830367727 961515723 630169783 643982289 45667435 65505263 590191635 307189847 913744879 813377809 192039631 364937595 839310787 880450389 58393209 54066759 570591221 42950119 164572645 937031 479409759 350950137 82667057 68926099 146124705 80701635 835348415 282823879 187708451 135548551 108864829 653369355 599979799 617886099 700088991 721989133 140783473 597930037 768464927 854383619 584365301 244414153 415719747 9065901 850695465 838411443 531785177 467502157 264628321 539530587 26303731 967777205 457778351 604870451 804135917 312347449 261872889 670187191 767204203 378211001 148551653 180445545 56197723 277815705 826683619 139274449 788094193 525364171 153451307 415334275 93990825 668703425 672155327 296636443 841083463 511493245 446986085 246873145 595077333 16986243 415260079 1622405 912717995 347245281 532712435 935127223 972061541 945201455 348213589 964508293 584912867 371713417 568189627 762213041 460183895 952921497 250876371 884407049 898365489 240210825 449416729 367468635 204412719 332055825 468069837 48693637 620114517 297493103 75000053 779118181 155463663 638413673 52684385 632955113 470996369 97642063 332999341 306745347 705919257 645979893 108618037 340616363 430334377 239392187 853844773 989995747 845752495 314115719 454109801 352778937 547082973 843595719 716434621 161050427 945283377 293645679 488572575 431393671 224482287 358352385 381001817 279695805 914746277 178806145 18262777 735351815 847822883 819667581 274206041 660558743 193172361 195822861 204414747 174539689 784216891 777358797 991164835 45587583 542948577 168978663 939060515 712585825 903611253 830655749 109077397 236069541 869548593 161828447 189977015 820272289 904422295 73241523 297518609 777667259 238967415 20036425 160476149 52272987 743471843 386505709 759220859 197188085 296941367 831778805 769679235 911801345 176980759 802078273 160102069 661588481 624348787 1617207 252564097 475386499 386587771 302681539 617714465 954518293 698754219 839843423 249508241 368726869 31012299 943718919 364252318 159075811 152445669 462080321 806265815 314205033 839809101 404315419 287529617 843549593 963252385 905039405 456693489 806986799 42869699 63236501 50418909 124993005 866577887 930520055 925767429 87299485 287475307 852118147 892746209 685805327 658610979 764326383 788238001 562308641 953955085 178492281 332527233 653522355 633423729 488333289 926863131 142012591 636233445 709760651 123062301 677538055 167356487 102532149 101466083 498856119 120085433 353665095 558020249 375407809 874506153 763703719 514935083 600652847 892432841 22437315 224606293 66900753 933288985 702392721 331572119 659423109 654503897 963630733 456075831 305677995 370108569 629455811 348808261 82845613 875552553 801262779 356154779 30897341 990478505 375402639 115992283 723685401 66942845 299579101 688268393 910111485 303088207 927328969 913390455 824989369 280599317 752946691 457486591 716848541 381809161 840406977 795964095 17551361 642409139 538731971 766761537 859874635 77407453 505406283 889653715 492403427 321797531 578777131 558457743 157924669 339840073 152807353 447235157 303456977 210579853 602169297 134823629 852145955 513368145 720029659 21420649 10766781 562568907 218601413 906962013 628579119 399390583 841388291 976072365 564076567 349408793 299315607 804668705 423537173 439749821 623009029 991098951 541603027 995066551 413181789 917201015 436869893 680733093 868130355 26625237 340681571 953117289 660021159 170908743 64484273 981100079 42346333 359829117 80816055 169193327 263650181 148073199 650212939 4743393 332682199 331403743 829931589 455554187 741322893 565100371 681386375 292255931 127095153 801354269 598399483 979465473 795675855 860863701 58840725 528471869 492463229 731166937 923052621 762615441 65891549 129620821 796893479 757821035 168687055 447266871 440571181 221724543 543058375 269826871 520147311 322364103 974529209 724755157 934157579 74479755 21777187 225655643 408240673 270097747 125627659 391297497 596317915 567573239 368004353 239865637 328618093 741162385 353395481 582541027 81159695 166155911 503625715 444938871 443376645 843320195 50745267 144424981 562353305 58613115 626541835 114282419 737337117 740356523 876321325 109441041 444594921 707939991 366688729 736501689 885063779 190625033 254947927 654843385 722672629 449209113 611907699 494857707 212856077 220762403 205976709 45973873 481092395 121624777 763453289 410433583 116733133 880807927 456111495 254649495 705222269 717468133 446388685 731122403 303807953 799779851 925492913 495805969 383530081 930635567 150234417 365456617 270173903 82665565 711439827 425684221 729859525 936351209 498519975 398109095 182630135 166686833 651717441 282679553 224260125 192788951 277041601 402269433 496378875 840034376 812536779 294149695 548349787 331075385 326177937 995791175 519621647 75846247 267041989 539923285 587942897 947622611 470481321 419041647 883623907 778646475 427799039 929317223 463907023 909657061 898533147 439056085 21959337 405966331 812423629 986211353 158282089 738197553 65627001 337190233 253163539 607904501 658081025 182991241 101903281 477689851 536167893 326162271 722376789 145947455 637559019 890047069 727203865 155621891 752223681 528128969 402441247 535954391 236364637 255623605 952484753 524862861 442477903 698244089 18042531 796595776 464774315 806973235 896727439 698168409 923129617 845544911 867064725 16271999 21971365 538074361 660106241 229365929 480795673 398318509 932431139 819427603 806471583 292942763 430112601 592861505 241366009 186112119 652715011 645007103 691675243 445132391 448073869 300896609 858585283 741470607 200934247 339547077 707243609 126193875 432504075 273320653 674934025 239641815 962514173 770317159 149248571 251422477 871790279 592628165 957592029 833980591 271827707 288491621 811544421 294052283 143814195 999942411 776466129 599500283 853924881 523056581 647765929 669913085 162262593 173077987 904482809 643470365 245457777 679759109 664411991 741647735 553839201 751612429 911774691 375237877 984499407 37036585 8154945 324005959 32105607 604115917 581789603 347440869 921941083 224535987 942477755 802091793 323215141 147938787 944468171 721394387 533657799 222844581 759262615 500059385 570126125 242581393 385368941 364426269 547849541 778846337 961968677 293053855 610073103 456233627 946905117 741635239 555865481 222990665 155486008 295174949 777384383 253622081 526718441 692426961 50110403 242368381 826923555 399352365 835532463 491323461 411166821 275038079 648420005 815616035 817319607 603988441 685367761 90845419 405396389 890258963 308779363 658335417 904353093 835092427 48494741 472340211 441529399 133025389 132328363 482340165 775786145 773984295 152680175 378780321 166560047 277227761 87860147 735328837 931463707 134368651 203049297 166455989 569233441 65691775 732449837 218574525 501998471 575620381 533404845 968340081 194814235 141832827 912493639 249230383 706623285 214601853 7178869 626847641 401135281 887441607 379977655 557858461 203799545 931003853 996869273 157837421 908008439 533672901 508677293 438038153 344499491 364914607 217659277 462513585 446564475 34309717 596413915 69301491 779695751 593739077 677794371 516916389 603597905 213774299 146290293 746272097 292158069 373347891 103106091 133824779 189902861 279705143 100537387 584554449 26043329 129059479 813483323 664803111 5093565 612711885 33929519 393186505 339866555 871246615 291188705 670236089 263042039 880950655 473207347 864748359 271331895 690250451 441147153 851006981 805961673 733794477 410068587 468666575 6893445 834561901 737564219 243787723 119984841 457878843 108425095 182856547 812366457 624151303 43106133 42535245 337502725 561473929 62954425 784529285 4591205 935320643 30777037 504655183 453361427 516469885 623259059 722063927 43894039 200435269 564108183 640952081 745786881 172922741 999068841 23312121 686384871 76237995 420863269 680873045 933220197 498450515 6269515 232109521 86742691 226320795 622669671 677950303 315782223 228842363 37758667 762083135 512667036 337430965 12202193 702554865 189414991 347279823 615899357 999067203 667088297 788073499 925827157 850412105 871260539 422975151 739438001 844953185 108834073 347283567 747237221 100212013 231633505 123753471 861899513 403949979 291151037 431722707 542274035 773123551 21522455 224368673 963485415 236845171 758219239 774077419 881043567 415074591 565263917 125944311 33194029 136415211 223915627 668513493 370757581 311986735 47608499 957044961 683160063 850813317 931371163 11577655 13907327 545304787 458704959 763175105 543670285 25294147 53729607 3039025 392433015 813073227 441284577 272188923 272669835 984386981 46259139 284870501 207347749 775043673 569638697 16906097 77024295 556473777 199505375 22773493 851243133 945220929 515905069 668180613 124448279 779791589 556159469 914004867 551822321 457052611 429285757 564038423 638811659 222736197 583809729 780089137 908843635 826211363 637798955 592053643 785898039 800550229 68749229 821029027 539477107 670411041 799355335 887272641 477778251 106583059 189192321 19653369 224190693 191518719 863045735 520394783 411279993 227034883 454767505 722388435 775875387 879847553 852600987 21656961 35788147 653868581 780401581 273181527 771803495 840964839 372868981 140539727 246450283 415782911 934007849 480365605 24679387 691518963 593960071 641903719 752855573 7017361 269718229 952325473 612689799 322527465 61009891 803433003 255249825 534792283 83362821 47377577 998012383 310936459 541590553 319828609 195473089 91871843 847148681 770197539 922022101 557529623 427425343 353056711 80889769 918420519 62321077 147199597 295117529 464341331 816310245 553361119 196699401 724517035 335520089 298722989 693204191 42870401 287090461 898261807 531054099 874301809 578872777 251685507 833287259 415992161 214310009 502623379 172812921 919726203 779865557 102899729 726689081 443515445 647432971 355819891 903579759 271007307 945987281 637851641 238182385 457052097 230352997 318598317 67885733 130243555 380440717 837042527 976738161 921160517 242441881 800310181 657759309 628050627 743819101 899589089 495338287 29107843 904228921 571743291 757221145 850368753 481935891 92665765 348625175 255956927 883118679 336955091 427015485 534394603 936475133 670168907 382966177 762492857 310057605 68335695 599356265 444726709 855105267 838687219 757377981 132551093 384500437 113028625 37310159 842563283 22651203 808413509 633597147 707812723 773682137 560668665 634947873 764693059 213573567 826278237 900300015 507859765 512108195 230027369 465897619 480816265 241576891 467286751 879683179 488650687 657245381 803689541 455755221 572676263 756712201 742690543 432622143 477558865 422388817 504853231 335494681 598611485 133754873 15663915 445883359 414266543 400651227 762798153 439095571 9590513 104348509 813335481 313426749 849506585 721554545 92945587 748935411 660980641 853271689 839858489 686073035 708057169 960265127 984318737 874442347 820745523 187367247 88337101 131348347 597944731 801508239 239359685 591727277 896043301 429975551 82681879 937729213 578869431 614191291 42703791 462759277 496272251 683788139 780560697 623760005 94811623 941784125 982523441 141953243 935805623 598218471 598784727 318750533 427037679 602855337 958141233 880583081 31385563 925355077 878937103 363756015 392664593 748826381 943763981 488850697 813110377 238940629 459792007 774651891 921274379 211478781 76321449 886786223 678623330 714477675 379983455 129013573 702042659 554440843 293332837 369315531 503459403 149972311 275579449 327044695 957226267 542366539 717299493 980706831 279520545 40712813 175797047 481514523 443745331 156371787 500052811 874222509 269554795 432690685 271439101 170576897 886673197 21309215 212089271 896068953 561146407 213180121 142029737 856540159 511852621 600630235 133595853 368700739 462996185 253321303 187411425 664409219 785398867 906573069 325751661 96737309 249535875 367972931 191746755 16169087 205052033 467740873 709817595 217186074 119658919 138903285 71199221 521077097 462909083 144802211 870806361 66085869 219048775 640662329 896267671 177741615 737482977 66947753 951473897 69765829 247562469 346638439 408754763 865787973 684665879 686001007 231145610 308639829 218502018 31358539 44778293 759349661 125665149 549541897 580387235 772543953 432964257 529557309 315380211 90838697 389578965 315372805 556514321 297199847 43294789 865575435 771812011 8163161 870614115 573421945 631674425 461484495 651437805 543971847 911745531 425050657 51610343 498558707 536641789 459726645 924568477 118483717 641577737 250919923 569287589 221176201 926397373 478220367 576158167 364338005 249700213 87979073 184254045 290066889 636295261 964090059 622556573 25555915 828952417 861207803 605291345 260640457 194042685 50237153 611816304 559895479 831293297 523128981 909913925 620514839 145855811 919505213 940052053 474908909 470328003 820022273 598084473 824670665 865918413 425133333 486880203 877830079 472379133 551582897 741446575 150518381 141158077 418896921 727944147 77140733 710982717 547786901 91463211 525894937 288183415 85930107 307262706 979035129 855834921 647698979 258658221 891834205 714106845 638212845 490741801 536622215 307384033 444128329 300917625 862025545 134589007 969103011 113221881 140928249 390550791 704417913 439283535 94074227 507559857 530518349 225082215 540263967 923003327 491244201 657950067 332422889 410571877 570856223 986808305 22138187 850059175 549388103 202480291 510047041 601440589 188062919 407758745 366841425 365914085 745782087 247573031 498769547 297320905 489046907 688771045 402397571 974386711 741942299 307319739 525643607 186372539 737638123 678013653 866177457 376183907 645152181 539312549 744595131 862580615 986257737 620065003 947267117 377327977 301649029 712951975 121479239 878104591 470978889 916734759 647276237 33588299 306904959 459382273 129892365 926865077 887865371 921714445 147785181 542233259 795155989 85897077 185698461 423568217 38138737 52168353 483558963 866635949 709707321 604845381 516442893 896175199 911322495 567540321 283174177 991901423 396784731 377908789 507555053 743988903 719789299 181732177 344028791 595204247 473619311 700418439 203086927 44474775 482304259 488915187 969425033 563824453 127548135 30319353 365639619 111432459 652265311 929289545 274886695 446718747 600297141 548850899 347560031 599638379 498462267 978579667 670686373 382307003 726256459 690386385 346415027 164087189 982678087 691269783 770271187 54728519 127933337 878383929 935312337 345786091 192303797 987019283 788381189 268562531 220578067 761990859 134326091 129058131 751716151 616568141 822617611 837634605 771462059 788338891 963035955 567810347 592752639 141994179 269036857 710879051 328133585 911541241 375561499 110193493 605860289 933909881 162655071 141458141 786912891 766960025 234564885 754185527 683033005 185173745 293298897 307138179 179730711 314837867 11708339 122143405 314726263 425721133 188060767 318366821 476354457 571959729 66859013 553716767 868561229 495025839 663527261 580271391 83865713 628947245 847965089 55658091 140148197 786409593 782265755 61534165 132119701 846886179 478818455 636414709 712132207 176203274 681754477 468265003 859161459 461902677 309836665 43555741 851258015 341047147 454029219 588391487 752050431 940081667 742423897 740794055 337964707 994176279 524030865 652282039 468745129 487848943 554004937 735603541 230679857 845519893 932110601 661996723 77769831 657408093 785483485 975111337 2387323 19192803 939438171 61901781 178260647 124516109 92155683 304918691 621722927 526575749 695632985 709067839 888116829 131084865 776836527 194447269 535578755 112121468 233369687 71745685 208627707 18818237 34441235 252703379 544573479 427159757 557629479 5442037 492091505 307744705 221501025 314166479 798967629 21444343 242853913 477206021 216172339 839596817 605778219 535321659 860841385 886556411 193318655 752104163 521264181 594778347 801099139 393710391 610884457 631543647 371973677 738557749 867363811 731758615 214265595 87795367 32444739 379695905 54187893 932979739 254320437 507961811 333124005 372344301 882805353 61372357 775097127 972809017 489194905 566838753 962381845 993229033 344939657 780828495 202704917 255567533 233806595 215812227 524924249 833434621 740241881 758650429 110923667 51254043 897634277 853183613 97154309 895010831 433058057 883046803 77582707 206848935 568117553 391975695 796202795 838896253 516810573 858410195 122529285 366436849 425239127 706781181 557545055 295951147 839093331 976061949 377617437 868449819 490421067 998369671 906158511 64542841 539790929 619645847 204317451 56405191 225368703 228301425 27529903 722383179 555932153 839846561 842941091 385799447 664851173 477011451 293654385 674756867 719573113 477899931 189084469 26142893 699355629 58626535 695291529 91875713 491467655 321963401 339854227 888905133 114865037 259453047 485012741 248016169 576880979 123852269 182242579 324751029 971856435 278213743 724551801 638271195 47200911 976160459 802671489 868291819 79625425 225397009 467359481 801478651 292917869 829957025 290445109 496664047 539486941 37493277 704927507 348860011 891483809 851372657 44093691 638568419 296376389 591973845 514321883 174947469 664592731 88392641 373268523 120796009 418104189 544387325 486051045 590103873 881326927 502896273 146320017 483455395 125604215 878379221 748317247 459667435 963051947 954439777 832127109 425263157 133410213 201967391 494170751 305747563 74294821 436267831 294320339 979704637 927460343 692275231 144031923 29635877 362892013 284194193 288451795 865865569 696820961 685016725 330974833 711116539 626518711 6524531 550824019 809673665 876578645 153485251 963867079 309220684 439133361 720771425 271988133 543923711 660878533 73340269 180607307 132549119 79395473 968314969 651352989 881446973 699780385 108088789 872034315 618748273 610914439 907471327 821571979 490583325 676322525 837501369 643512733 70641801 326308679 278308595 667430723 343426499 313453291 909632607 958735375 358383781 155515903 732970267 878765847 837438925 435454141 240157065 410724343 551459751 53626981 925382231 379536855 703737185 52080709 719256439 716602467 336258547 50375339 578414887 275523797 277866783 672717299 907381995 497535721 198991467 135871871 396944527 441684453 36908585 787407035 806213929 845531545 991685743 180574743 137038355 562918745 155592225 242161166 899943921 902763267 236717539 711258147 411384241 941193729 217931049 536324575 95822725 457230909 53071657 417382357 971455981 242865967 365147621 125590175 979906729 197055701 859723043 293982177 158888905 842591927 727193971 915094849 956156573 383548129 251821361 375929207 837528263 596887787 478887801 501294391 112612133 896532721 295802677 526480969 733959399 416644251 537912855 495369331 385809537 451233303 310033811 346438793 773904047 937724697 345120751 946550117 448412021 123434467 211770669 908186859 568938781 852997177 394569251 841738497 895656767 917720171 505723237 58234527 957243831 466138189 635285077 676599993 321984423 974659647 49235483 403487063 211992699 157439013 829164199 118455423 446124777 770027631 818579379 49691973 416514029 642176277 19249085 87347395 715099083 75773073 422930701 136758045 581208847 145407213 152393911 207743611 687355789 871017141 277214607 87876623 299953507 978398209 770786613 206762773 270548979 653994861 480762133 368519629 644839147 705937185 524301661 370165891 460976957 35935179 563362823 133874315 881494057 504568225 352225743 689238331 262175279 396518753 535519043 174824695 509258269 664426833 83317679 630823467 560461833 100380223 251731499 108648007 231319629 555779717 829063835 428206279 739131533 945654523 39128229 740393517 781196471 188215309 789898937 84192001 889902079 741347493 512900879 368155351 454160863 546597693 649719975 319715657 141747999 512811727 984340555 465562875 968025289 793990117 480425355 701854869 522520367 750090635 401549247 30557641 163587315 631452761 623142661 640372819 722858995 856934763 417876807 193448691 914858081 844668777 379273527 495165047 346500525 254231425 802657611 660751021 151008147 63617641 995207363 401158513 883934491 262162271 4079273 785743783 894089615 467352361 54355661 667959351 610558851 528141079 868762309 285457171 954145749 165049853 142072563 673572407 251284647 860974907 335146367 505954467 706411621 144522677 734432603 969671013 909214919 156609757 655681851 889153163 979956165 507311013 569308325 598193201 31057573 95147407 458804443 699170683 535808755 174653343 291937777 518737297 634524547 699422051 709684161 910948517 401380211 318625779 123055847 992539379 842749733 830713067 625892813 524534205 518669639 201954163 135333283 37638731 209174989 409734457 424986977 979337683 698032369 890784115 364128969 188216331 862873659 67225055 818207073 860372727 134930291 974380483 435239293 48401187 75603377 341892335 490391343 357668097 162639951 619236023 351204189 542679305 55148529 94584059 769515693 472378045 97662853 613092641 402926223 537319850 388149567 353917205 885089851 658053217 365082011 488358993 994005427 916060539 481539165 674779857 348969661 747327133 588003215 130030619 91487211 92640111 499158153 69517885 678297493 81788579 320618215 918432463 288907481 156124405 551312777 433739757 754009251 814251559 288010145 934519615 609111711 352328705 958320543 613380339 834199113 525059929 628118593 80998591 29018081 445858053 977917323 287128801 276897133 797334251 415425993 211064097 117487039 620879091 816685711 138699211 120205677 252887055 101249979 183940277 764567513 847209787 158370927 997041727 883761197 553545337 753075737 466041935 887349845 689177043 353182059 15634257 494208013 45926489 825805155 27887935 66945491 244945191 75465797 629741203 631485937 399174753 254151839 921486167 153341301 762261039 737031745 331765785 772532539 865853381 138480459 507355373 315418335 368271963 184417057 986744945 570513867 657092147 283286381 631550157 675311663 383160219 812302627 336660143 55643141 15758305 833500547 868585037 516007947 886870115 275455245 288546919 9152713 787625345 695956625 727470911 707826065 818340261 16297505 482857383 578262907 947427393 124998169 667750387 743705191 124298449 466706973 337268995 254754813 953314263 153537565 371040061 675232429 675448283 753593161 619189647 945102513 733932147 196979487 328324717 45873413 75115317 583084641 623422681 842931831 475807431 911811615 928189271 758386835 659965905 621618859 401469687 429495475 252016647 406615715 879049805 10275573 810066721 888397289 705505911 655832389 126774242 471561897 372615197 964895313 521984789 210614360 459620463 281600657 306417805 348380343 437801503 452628807 354045473 552396483 260449901 980696953 91575991 699259339 535604769 668696311 137990455 549919331 977107079 134775645 825846677 349466985 872155253 471070983 654406089 378539775 973622091 380922401 226457815 288301459 692579311 757914521 966537671 653186775 536291279 104842789 30678191 387986635 919300063 737997131 66352551 479697071 745965985 352873551 448891855 95623187 710177817 228841793 201755221 252898759 515018967 918236157 800420203 738568427 344959727 979825951 966958409 435732963 158913023 598146833 810067763 303001944 699115823 507806467 931966067 763348291 164870191 648688111 96005977 343589339 294427697 994509715 471056451 922689193 262105845 870347641 183253137 666742647 823543235 901607919 211270061 134324569 511240295 448420111 761735179 433339307 461450807 325517241 993462819 130241811 484564245 255676055 961788281 903057019 132571745 264232725 622509973 968528409 276746255 922249837 556232973 258667113 84350355 995092129 390300793 940319535 305841387 182556537 433203065 99981943 145499037 542976899 121088957 774950293 234474425 769462553 260208113 104813095 654550739 544170841 211231955 939185935 301556489 402021679 996387365 613030779 815928325 909625929 105949105 965333981 935254001 91812383 13229129 104060659 734643333 209016563 431020229 983700161 347283457 494944459 137998603 412512149 244446759 771040889 556268293 912174847 264912201 189208213 329635233 583871711 984514365 676885631 324254685 644105303 968394335 186105693 598723515 302320853 879891095 826082083 165121861 643475213 505097299 92057479 519083917 75260921 205391753 140203273 348200365 996137953 118856887 218599411 186423237 666062157 13917667 393041237 796172293 661061141 984849307 27511303 580137881 477601875 298494969 282597799 589685697 229413229 853464469 779538335 876423355 42120973 640291995 128973857 679126737 430920233 225813429 429209891 598255449 733041661 207577883 492916069 458464683 161576205 331729293 365592945 974777897 711795747 835904335 863771797 477755197 677764441 517294895 286207467 184428635 325609733 804075395 123801941 244101883 320807631 433797421 595720311 340607393 956358305 392913039 115697091 486891735 755303347 513751705 960969587 339896879 164292989 890823103 821600389 313096515 958196933 368139011 690022849 438202037 437757591 936111851 937676475 481725231 538444615 6593665 629735111 531452517 757222771 815755873 50216965 346736655 30384381 470382499 360976481 166788337 297689107 713004275 50054795 636708309 870560295 324654971 10306807 801719437 438090489 263544309 85555945 460201201 115970441 755577243 62264679 316090855 663493413 554201911 732250179 255887449 872568419 277749269 302141205 942405687 601377309 178742029 706482749 808608635 237154935 112954747 792812513 575386409 147805665 928645703 589915381 81982027 279172617 93774559 184558127 550660851 350438129 757178937 960124689 779965243 906479067 778662867 561812705 33673285 16594513 873915573 151178161 900490555 644180267 695817833 307772761 866109521 288192387 216390155 352561271 104088511 732883903 636005683 594846071 145967305 412978825 460316429 370639237 868389049 906490841 571781955 920375197 446687713 457334245 286007085 48462719 865104539 795842615 324226093 780116145 329292873 137967257 470828001 799768451 959762005 331631649 606198271 339445775 242203443 842252839 183234007 633810743 320228701 620985683 707489101 132938143 14875731 76022929 144513475 975357113 628669345 714898451 333730089 171153343 684794841 961107031 819679989 304545455 916819349 242248993 642926373 2911059 132973175 657793663 222270271 565984825 21874217 631855041 284404051 768991677 298504031 853916807 72612085 21447419 641146579 712759219 421305413 768774365 159347269 640180339 422690537 916411667 694467969 428018491 962652943 374096149 777990489 644064453 7927915 455822117 385564837 706492697 206386495 115041611 855935821 951571583 6368591 197229141 926570293 397846671 4564713 885188317 114267987 450623267 98933221 160503875 191258785 127242081 904657567 247673263 36220703 922819251 506983167 276023569 717657817 492565455 721558389 337714209 749038817 872321455 2400755 695581025 145403985 484769435 405545721 480293143 819936587 615631645 19018893 160659541 45443065 225448713 51575103 104226803 166266767 151595131 346522915 101182863 75573063 505450713 874192601 131583637 886250849 367650767 506770055 307793715 761092649 396386383 846368987 105223009 623813873 522537367 217446921 134842847 27211539 324212267 968489683 968843063 644424945 202976471 287918973 539659961 431433975 148585391 147209941 587581819 913137813 776769297 692967731 238875489 630862661 552107679 752839029 557794319 342694797 288543303 784543231 756794873 263717875 138019643 266116545 5960533 53308427 444010235 999137585 64459555 91555695 27615303 901050191 355613229 836435649 308933165 985643165 43901441 378397355 136554243 353819181 292810235 29922529 750729059 564640915 653081655 735318301 990446897 683328239 130198687 143564831 183864987 625089511 583703523 197600947 473320725 846793897 608276093 246292139 844568667 754087403 418170795 90486755 90945391 592211177 676445815 128659257 807436193 743604333 978114223 19828633 561191299 589933509 811341805 106009335 543441905 112218565 258310801 149213517 561320721 486250955 980503235 503105947 497930061 427441857 470785907 215923949 507650651 414048273 358757209 331885399 574922295 285257907 894884855 604851439 484035109 666104869 749085333 39207641 726684593 87758191 580874049 678433345 880056751 734917149 678712789 245435223 825336125 465761605 692885743 16476245 939728573 174909577 656479483 563726465 555401947 367148297 429425447 728673569 41917837 934655609 947309163 322343561 373848337 922016269 861039241 351200531 341434087 417030019 509153543 959287329 404971741 629935649 640548407 6588191 687509511 833036725 72538671 606047869 503998403 120227223 448755155 465676471 233480371 522622885 144008649 644845901 754780613 37452611 114189183 619480011 304584493 186388067 764387377 223459011 790678373 15606903 922110943 151284433 681611829 980247935 827605071 672913811 935188901 515597571 178758161 863467191 487383821 698557711 714807681 882315501 292328455 621704505 63683515 998006001 160047481 156349859 159373737 937072259 480830093 450213359 990163709 94123375 397124537 435144779 568575787 572216967 32469943 380746865 316382841 429993127 348206223 259293853 171527401 124897709 493611659 353957525 583068497 877618567 271620927 310845609 165813317 560953125 474989191 991202477 477359911 441091971 515987337 195409663 264695071 71624353 88070575 739462025 530417181 684808331 705455537 573011637 622357467 742129747 26311303 608215677 525617879 72147221 349287031 485750107 608378201 910433007 381250573 115853145 21977717 472946703 765388573 767150339 849964799 235913637 645267397 690170991 194349207 607224045 631305063 24531007 444645545 392393255 185882031 689879189 688846691 170085793 878091669 202444831 58968767 672812201 426161233 347669783 200633209 443207835 607572073 544572473 617415711 432060379 415015083 743294413 547482109 710574287 934297383 320981661 548902443 773635823 423322173 807180035 712503437 447238063 31685009 963585501 140545737 76135319 318610189 101702545 49438543 199188269 244488165 237735691 79660119 177441285 354579353 751899843 787924705 115287483 11367657 237389753 385622455 162071789 878685925 459525745 488976489 856557129 19525087 862450681 904538191 427965311 940873843 62604519 193619847 235413067 691007623 719175261 677336059 655818095 571244613 459908349 329241693 969704883 444619043 627330551 419966243 38095083 780467421 757519873 859281293 926136563 24079479 536414809 805030053 676844201 262654269 17597893 576907323 894134011 877214147 207929749 717238757 984314329 401558757 402356381 931903493 837834047 604090057 84492349 798115523 659332655 432406491 697134425 249230097 195704753 108531149 685935459 586130851 435842009 940225181 539500365 887265279 316177091 714952079 65889945 224784743 128352141 235095087 886913097 545781233 38101861 490826067 918156785 454891377 535932539 664146965 176413345 566358153 115434763 70216409 600901629 79063457 384123991 276509773 354267431 153880553 953230759 653740643 8755663 853184601 247037265 105356123 62992171 172561075 579408811 868136117 8310009 52582527 383055387 264214593 247499903 980307467 420022281 261449999 600832909 152184687 778697191 474172031 421014391 6628750 479796273 12819253 269850653 868018449 993283177 548210715 262912741 954337637 277521431 155819367 928355259 29814211 350782415 315159955 567098393 823776301 247757357 94768231 395722745 620326505 99296463 836457453 823732453 384824073 103040355 660862329 458479339 250174053 765408411 75500199 905521053 487498651 41892655 557358173 72859935 13949335 72919265 845666757 306192147 707940357 789471615 954758999 714207145 767089761 277160407 831914441 316768407 51441387 132872391 449745189 864434203 534277545 775810093 389403573 257657341 400341869 473630199 391055119 76415623 524801229 922181399 542263563 708073877 746016555 3083397 338950865 561690497 730218929 278134851 392421837 201517105 320027723 23494239 177869491 8464407 933469365 624036327 15160445 315527975 707619181 901508089 257255281 567257053 579875517 394067123 711969819 554623043 186394547 370005571 877627473 518374631 357613355 100102619 923124269 780085722 911187649 994891443 597883667 141225411 842574303 758730511 713612465 10101953 15898805 75069239 744158203 261731717 571587901 444082817 627140651 819377221 171964469 585513539 135492553 478986689 194519589 441445091 465116061 845583931 906555487 803477705 229243839 28002437 601905147 456054631 150204553 202211059 204757721 151195705 960572833 928997477 930808481 656324545 805354225 501871937 969428419 413985929 157475759 34156661 547759737 664593441 515165015 559002229 871132609 407610407 329895085 466543171 239834723 94417723 551920829 152416867 748424177 913021959 351086043 366719971 666656195 791808061 753084579 888657243 92113911 347705753 325079803 146524649 168810617 789492445 191774479 142206513 27198967 216455379 111992913 898506083 104727273 711616843 449744511 832444471 972919441 593882147 902665373 787254247 155652085 5504057 180020215 881752379 652276965 962020989 983877411 116320643 501052157 252851931 309465337 703335829 928841881 612804433 349498787 460318413 985634277 471461089 225179015 828636179 846597583 936993429 743613535 10617555 721158925 641447037 214896675 608933383 926758181 436660407 12668955 137021739 282158939 372866147 850856911 209464645 949339583 580267179 908600343 664893411 757987885 951021505 410450957 816485917 464452417 918680545 929531925 522962321 805244261 654402637 652566237 118945123 930597323 849641039 136922713 153180997 666522983 283276857 526732485 918916713 528760829 486953571 946173859 68151439 402856213 217776691 761656515 442835199 19909885 988776721 613731639 641087877 698135503 762744689 646919259 766598519 229503595 151092683 16489173 463863477 627131771 218684323 65536913 144724645 984887403 981710979 596800705 856960821 322449737 322486523 913766627 251354075 681248155 338935209 136426939 229439125 737983397 134529581 695260501 997990121 703559457 4683313 981440773 458071269 725236329 299357801 468124775 299407905 26389658 811010957 373261409 930774715 258354339 345233249 86869023 801199191 751696943 71986093 853759507 884769063 486948023 952778567 597227773 751827677 128178813 501798151 744276701 592080825 918629767 595169111 861406721 980209539 226616487 526374537 943662079 710404231 540566133 176907559 657700527 759428253 609924177 185338279 925015355 738439713 461222753 946378759 370310923 630653691 840255385 557805649 305430739 110440857 702079151 887163803 898038675 649961967 843777827 795265789 188118411 641557119 925932351 146465433 237566283 30584655 370120723 176521881 838680741 835489513 694177399 967153201 120845749 590294887 885555209 275735705 614582751 554276711 865653811 946951701 57403603 152077583 677220647 581465327 105297793 364671243 409944795 833239671 419625253 837473683 727914511 329012747 693503559 942193511 239031117 742925323 839603121 719545545 340066787 125867233 79255415 622264973 664049387 676476417 492882423 644960515 430280263 101011171 390404305 253562637 659477403 566270987 978231287 75091729 58741593 296990723 100797593 634565117 201422267 73909853 424770613 805072967 547276223 979516595 314490767 319725 854720045 320655271 632344499 621589109 915158169 711264739 685173495 451423727 275662935 947280667 452225523 34611695 643547017 698247431 654866065 455373717 888879125 347958378 376716535 138186631 421460657 907550737 22356127 897423601 508146639 690490827 826504513 103021707 908256947 799744883 163568101 917433749 801165923 158333931 461590483 766046419 4626609 874390045 554246051 774868371 239417653 655280125 323801647 261121197 154576463 601160067 222117275 540006781 547609637 453088179 321366101 265409771 151442347 582366615 953297937 341382245 933213593 984650561 48212681 165330145 688649579 356188875 760841669 292525021 331403373 691477335 123465359 935981663 928540847 482421263 314550267 786197495 402387977 283855655 148885285 96090553 394492185 213014233 704029299 102692165 871402059 660763237 520944271 51777985 850037963 62971671 986186607 339902681 602083221 911510335 121205583 610646983 258665 228041531 355223475 119259717 995974861 858309227 344628839 618515869 65116945 386808891 155232895 827857307 375231311 748527387 618129753 231821719 444722281 835753349 350521751 71318383 91543811 367803645 746381861 299904135 809745553 139928845 46447419 651322575 325464135 582036551 206177617 788058045 681195561 843787589 994334765 794095951 415197182 909923753 596443099 181983499 520004183 331766045 77654961 425266433 173808525 152137301 785564999 650878149 878488765 321313803 235451271 761242743 313203409 933110783 386127257 978739645 499107705 322355197 485443057 63734978 491950127 795558615 491593039 366299459 8981295 70759783 483830195 205388665 704627335 49616783 911265133 966074155 863973635 705752377 856975375 441795751 696348989 252596057 826897269 417761733 287747733 403252457 974308035 73469153 59894323 435109353 215743335 696936419 870752775 739767909 224670741 693954361 245967305 981464943 684131785 899757273 751762939 422630433 699547847 491994947 714633955 580811421 896683931 830777977 164067731 388474127 135402009 851683597 923992291 122549415 84006493 207254803 386775665 54600351 972481997 146305835 327771049 917582651 974346771 871584635 516680377 574500037 411215399 943932593 664833945 794985615 757332289 848834305 141738761 628766707 705614311 339712301 716185491 585553237 905525989 815373689 377500807 53138715 859230799 668719283 728452859 739754683 696716419 596540723 678927571 1484719 173085475 846116823 432591795 715960951 537357853 734269699 204373519 44886943 278410915 588842407 745675293 553306809 302219315 295692857 906173661 939363679 686655379 213214135 71575321 195065395 115482571 186930345 785961567 932114401 16258355 946341915 733911563 967321625 114596965 604709027 769331257 881799829 53934917 559684961 505093331 13806107 218441729 888787195 1958025 553258865 93867021 492134047 81152469 166103659 535381795 294233857 671090677 417288931 924308555 590997859 480018419 846128059 310138063 171597961 549181853 910076895 650705217 445114307 752891533 823514431 639243395 613974501 260603683 27301845 165378227 212520525 375342983 337805991 550289585 324112355 286757545 73167547 358780643 825286167 586942275 320370213 150044305 343592923 723813585 853351167 913202831 157269167 157857953 351563371 132441197 649396123 827702463 660570517 911277823 576469547 849107205 653024941 375382877 137253237 878763537 2218991 208616943 303470873 919257679 406832795 788649825 665716285 748710637 866225149 896668069 743698575 788488931 509481063 714009337 132234565 523337715 516411955 265168609 887147035 813914531 347647173 410478889 709535325 638053445 487870339 516208359 879152595 273783791 344322275 103653237 133496791 955869573 817387359 432828279 841688647 724810157 785718391 260907483 338278535 188930517 848242617 553119955 594392711 628049721 290323891 411387615 880668095 304978905 919798529 273559487 56553513 620584827 334467909 934604675 392520015 803450543 313800235 429527933 360094525 165755345 41771619 874096457 372115337 346825213 626754729 981960139 370078291 434648093 921094333 866110001 285195585 142295523 977343595 553006319 561778305 519125189 890245255 250395329 211184073 551580419 761560551 710782891 371720535 338933925 743399023 831414263 694699249 801175679 19151371 140212029 923539687 711955237 605230507 775270745 538316557 453749753 520287819 176136045 946566081 364985891 110954475 473768165 782718189 108049811 358893209 982085751 828039419 967610371 936626019 903613215 935899619 5214705 850551141 901216033 45357093 88836517 777387713 440290057 594792901 983520819 641382819 994665643 143073617 144875119 670742843 18262565 839775455 549835769 375357125 882551001 652927247 398994493 717351555 452072565 198623751 842781545 936110781 202337259 326467701 493670263 130104519 346050171 694173327 902168869 845726203 198162085 827627283 974512891 516703933 730791223 663439943 542660171 906185077 86004295 636523259 522228779 917328277 247531567 920940931 986602111 715034265 481439891 536892094 242942189 484535041 491717473 76601107 347889637 721528153 984106957 221535601 472811423 147995957 357639505 760851531 391699227 973117483 967275189 632200867 396402979 591410399 375017731 212354299 263401799 344727549 898963085 662015591 658133727 352734519 415814645 807468407 565065737 710994499 755492633 294817101 161690799 445249001 690047019 25703057 4668291 728961775 353480859 564588139 478985979 826109739 440587813 713809303 31339095 66743411 853521361 196329809 775231137 907172267 877564649 993364065 297027497 984890303 117837313 60836881 508659973 106896545 912089079 703921981 414269719 513369671 135107821 929367869 213748231 936371129 621025615 203633405 121582279 157656573 492110037 222258151 643295245 810884393 539129718 160856309 627769177 223204691 684150395 309771169 801502707 766956449 197769581 446983413 865842671 838525753 240378145 773038205 105136929 697487955 295771317 686922577 793608747 559162149 699625099 512643343 177796981 314178289 363031889 996204251 278459439 800600837 313448699 391452773 770797393 762293167 259375555 830280931 669747869 881759051 286427441 300132371 264122779 456135997 177027853 643698491 195797145 323330285 467960943 723942443 449183663 226533069 939299505 71696439 950268865 118118233 139930231 86992703 126396789 194156563 238329519 931776681 646582331 309123203 126357901 770902625 386787147 786945855 329631117 713846753 360013991 642835677 941375603 375385891 218552341 914960131 334883913 178826161 449105959 619325785 487299687 225270679 466216757 122301073 469758569 946442349 20081757 127811943 292382513 304622673 253984395 393450397 239763435 109433575 979167595 852492027 909732109 302444639 72636539 680158293 798269779 141386351 78343157 175153287 258747073 678948181 592143333 113663345 274370979 946868439 521302811 401380605 781843853 412419909 461176365 947828253 278907997 918819445 417659517 437906893 779958069 640838337 659684149 348416527 219459971 664190997 893180993 763338987 194248697 852939997 224638813 407255927 165327253 802055437 632483591 123725513 702181021 251367719 455961481 704734471 987583897 835413807 31100401 626844761 374328927 667564979 640880411 92835825 899416845 970888907 325058211 218337035 406359303 592571669 914985459 391823337 787965943 405166261 120139067 415404243 108923601 700372571 188891765 279365919 259799253 746624061 313272415 909412387 536477315 935660825 189929857 580020293 632807595 298534199 575711023 735375853 435534175 897268067 889437819 117391 332009723 963355123 33710923 133040547 767032101 50403271 47510853 148429227 482747847 360355141 697545945 719216949 832594455 69036377 469370945 500998095 751175569 762443901 13903995 666164503 348854519 558032813 52012623 769141165 237217625 183241071 825260879 406448187 859014409 12820177 551812307 81627763 742276261 972875371 992012537 856594449 553784335 90925403 497670573 700364759 253365619 515103301 429690269 739518095 430480967 909095001 72808257 818279945 937246793 414016077 744200667 398187555 78451321 204115297 345483889 768523709 367329317 888917079 784135891 43601857 848769505 339518081 349053597 821353505 338587787 995483827 896855595 249186521 775938629 395190863 464294313 735677163 915282301 446374453 408694277 673309025 985093605 623688665 207283703 165953611 986278269 448084527 101819647 439956423 147720069 130327221 668424295 281035509 459909517 137419889 316549693 837463295 274943077 366365937 210950237 252097561 466921773 973251917 103078755 853048955 403600969 610809635 508459961 531717993 502483043 892515735 486473873 805037099 52854641 564070489 298378975 4074263 652514221 643171489 706070631 643505795 940270239 429089321 179518641 72574933 581916689 931556409 300322827 980634229 701683479 536178849 202423951 669372631 851529485 298529463 421541663 687490931 549649561 411988187 201624159 424262093 470000293 855718121 973531585 53490543 46291303 399100507 836625021 308795113 360458075 507244579 768538773 665487577 64816709 21525565 568267217 765045471 662883889 73902133 807775423 733724837 920586355 6447635 335094201 786724063 608420009 311273329 582800349 544374853 664661429 605472365 827979799 460395675 999218373 833131691 693938709 41463211 389045323 540741211 860960593 745146949 650129157 424613173 17420807 908314951 180711159 369992051 11021379 639605905 883957359 736298207 142901973 106660365 390746365 976037317 464433749 821412015 824678017 750836219 893589539 44358511 176281117 581948387 592395109 659414609 468871487 359517535 962526223 228684127 148463259 712734429 801041879 208593833 420123947 295468631 947573567 94655565 982605111 842567241 520246925 859911019 60022599 118488761 52390096 416120109 742073651 337598007 10954983 348122823 814194453 205093591 767662699 302385521 354534995 78427641 35335367 584372079 210464919 986191233 38769197 901029131 322273495 336932961 58342547 299424151 163764815 261552139 655359161 67870315 466172803 147182911 802030889 578747885 449971519 758182981 91520305 817988231 434378647 385090025 238192109 446141351 326082791 283834499 776389433 202960589 973175509 143140591 948228287 471309431 289922379 306930069 405589231 408004401 418724225 330935651 657431043 443077771 592100591 905503439 598174969 319192099 353853019 683176663 934957209 157376665 717599953 698286593 524535415 552368791 290814629 786769245 242360295 140871633 950152821 184492927 817731851 216270337 742954531 709626759 757372363 674274279 412750301 914940953 903551703 227273293 822826261 103667303 839121063 496204553 830891403 928326947 670658173 697786354 98475071 296884623 745245535 704207853 822327935 748762223 831245599 427834849 347994849 500932881 21229909 203321283 55079487 715795531 496454241 753024397 3093695 936541567 962959465 322995775 113625291 357352335 458010209 743872739 669952023 305699307 929894657 923343759 391297187 687390601 422482885 344982619 349051825 132750311 659470841 913316457 360036555 992510987 489906093 286363877 907954377 558759813 734033081 930272253 455086277 277458281 304262587 181533680 697177893 639200087 60465439 856506367 355159701 205773941 363934225 505772403 380784391 863993455 187224461 286378143 669361337 364410493 124288851 706833885 17670445 239174239 477717225 273506958 613456435 607041369 29455007 157087263 49617119 231340857 209642129 844349185 916960393 750392151 348589467 572415917 770277337 986462607 409939047 102932903 466204603 588672841 904599655 411031161 871791201 310106739 236955855 570956469 544910409 261203075 788771747 319492341 741385527 39683449 334751403 347906267 784550713 502018263 284833909 521155603 830500767 242785455 158274397 384699213 676993033 175675541 244410495 463502147 728750425 455778473 938359493 341562809 328424637 361349265 804235231 915154553 914204841 775771257 308493639 493953109 671929815 431962139 12440889 167682087 80777295 138851249 696460227 970090961 92217945 889647365 240117681 914717503 486647181 926088805 745948061 134617441 429475269 177455011 581819623 496975665 436268070 979262243 707313847 204004019 837370909 400316615 277866749 77545969 162502237 673924863 274169201 771763709 328748003 985036225 959320213 593591793 901391601 593396619 309861039 176879599 897995799 11715173 460691665 596937763 6116135 636308699 630217683 924417469 89784895 730521347 978401107 974283255 790220991 98807677 977218237 605470999 427705945 610245743 283006015 628158819 413968381 931399813 204114385 245770287 423988969 7779321 632085043 455277269 354152353 927211911 846713327 392409527 740499185 21510005 870104149 409047871 409368815 996810897 222206077 140397281 247174643 384027443 986108997 901214230 373138852 833765943 583075671 454912353 915103217 621497863 780377637 145615179 136732683 888986509 453830373 573640039 502524781 216903489 365244567 662878031 894050525 893868065 17447941 792082853 832025449 639446709 49688765 974171925 130841953 273282057 153493531 54893391 606397285 887471795 923718715 545824271 126972247 755606483 20672775 459767317 110075751 426167311 166715183 172059693 939327747 227723413 539636013 802245161 877070317 543792153 477105215 939892195 511841061 641385437 74073455 345937981 575360507 165767845 475458699 757334563 569578753 428055487 697817901 944214405 429330707 615373827 294962613 410324575 52713559 64703183 851576395 12062641 571271991 354012423 993755103 1413767 709748585 926200347 707717419 509078259 355737833 345548547 681612715 637790991 303502587 503977785 921092781 152469503 108585771 516995015 169667645 782918889 242732109 985529913 686305845 343379971 117308287 394214821 990995763 350588807 937131299 114224555 187345315 973855413 779112933 840165745 749608115 447428825 953343931 507422885 627581787 267605573 394719971 76862275 572496733 766653781 580191965 916425909 681674303 742322023 979777911 996383383 446298195 716649961 153313733 457396721 923147697 511742283 452673829 434820119 645266743 97925639 350639163 669801705 457277841 616669603 387757039 431190986 91485227 117321125 293739131 247400109 272643649 185810081 113280087 950799621 373763027 982739249 218670923 97367763 318049959 972805881 455594335 811853721 971450189 662618527 67214315 855232873 406340129 214394841 882863753 531976153 909173311 690122337 154109983 241498885 383142033 333748985 370385879 121639573 384822473 292529513 319321639 359631543 454010461 402558085 619391945 785539361 992684429 626032935 12619973 343611409 806934625 651278131 193847653 346890573 261795245 455259791 338332477 777078051 276943365 983823921 359696425 915472235 868423371 170073875 499757391 373607555 693583655 329983799 410987035 740046927 786263817 481635493 833766719 496268609 48756779 416147057 331128761 303811915 602474251 549037493 629837261 642009839 158826483 947290261 332170759 7199279 973036017 855279415 814693435 351181213 727399903 36884691 652693127 257797967 873361245 447980189 414152269 835911649 50654673 473981661 678738233 417156475 53033327 750350297 764900419 390868683 204984879 541508325 296277667 646284807 144506575 875034973 896387807 874282989 914888151 199738270 412763077 471403203 557141657 382477849 537935717 412955993 271366189 26971195 241707039 588449795 949303409 942735745 390277015 275345313 485823249 289605739 198702007 960752791 885353083 447391623 752988083 519224789 342028007 338170979 721949451 108318675 770284373 705134747 433227905 338514315 457933455 717100243 76053279 770909575 314585637 243203507 714819901 794640595 913240943 134836461 508501877 271502343 707317899 339572797 711106989 216225855 922462053 447069283 730763791 472741411 756903593 420878893 39396369 384506593 771601619 866507113 831675247 19628847 834178337 247437299 708032813 956985419 106155677 154320047 901092503 896445179 38643479 150239365 78952513 856853647 746721829 75059559 667657479 856650203 581603369 704781137 660838159 451589183 946608459 963581763 395510981 676667553 725433981 226577995 476997595 5133421 351206005 306728055 319701071 891181725 486025395 715114467 946319205 992604843 94502015 324208051 446905003 28552609 987177453 511465743 62364913 356138251 265039057 710522921 440516439 540034561 571562445 862524733 621284927 293819935 857009993 125597069 273885783 273586317 545870965 212629089 858135953 92348665 245095497 955694605 845333549 753123481 52844679 504662253 78718891 70848299 910648503 221498975 200447963 888941559 138844455 381414353 85821901 466149065 998675953 928099253 715842273 693823223 210707955 557763201 888105403 355851361 594665433 189015997 976712005 797138539 718925073 517796079 692710325 276883207 174528211 474124461 406781319 212185511 1450273 72005517 65179261 354454605 393866177 598031157 672189095 234319997 654511941 278142285 92264279 377610821 26560005 282367623 743172649 126079805 697713439 716464031 640669699 362491265 974864767 101364311 959924751 954357947 94718163 740103799 648844997 616142101 812971667 904490709 958130397 791738439 411432703 455426119 890438747 244791439 953504289 716556979 562212241 750365619 402825929 464398337 526468109 255353347 112452493 703481635 283108781 743785811 23213007 716090645 318981015 29263363 536277177 522569689 446923062 426520057 840049207 959188343 250519361 501180835 83666949 49896709 29332143 166054133 686487201 457179033 148549575 329367665 716058197 591171929 715089685 787803675 231481903 444809837 726894703 532758657 298367243 87545863 301112303 559650747 293658757 86006115 880092409 338025573 393051655 507088579 151739707 531411113 54959553 288329841 897010089 175055153 184820141 617616829 446845309 231886901 217540233 348414981 580086079 28972147 372751069 435613607 376366007 594141235 673900029 249174289 507334909 55577663 729423613 947244469 798107499 684746483 348639165 508601099 658283175 302219561 694040553 172744599 92939931 965162825 949106671 917003745 202020477 89026623 69160969 412076927 472143305 422301317 364325173 860651527 713907011 658777879 259437115 224265247 287248375 619478651 38501549 746764399 699389497 737353663 745934307 451446955 763713189 767358331 21471739 19253899 889948449 392232139 343232737 145746643 47431129 951676505 984999235 250722891 72136767 169627983 977728409 237035721 921258513 688762469 789783845 20588579 586358355 474383065 622048493 427003199 253514321 648827763 7817409 721399045 481054369 905083775 841700413 764300137 268054555 945568211 948441021 507902051 834097897 253330383 301083501 148186871 421601137 729273433 818149435 366666797 255065453 477367519 728397023 647486491 184910549 495276631 138256089 352462039 833152241 531957821 597082483 711793031 116685129 368245659 936872635 154734931 941176501 61321727 803413645 378294895 932627023 214690429 440414085 248614675 816651899 749309107 624634893 483110019 827757543 234939339 991078743 960716807 231307910 991426415 791395415 204664309 987074199 838758103 543725265 940042917 156397979 344420803 427959373 880494457 574218077 366372725 970814233 971725275 489379573 601628095 869021521 229187133 444223935 880298487 160411089 2261789 52692059 360738809 277439811 291511799 873925563 443006253 469430039 484285531 419496975 999003009 428089477 423767257 7092693 665285737 536078735 92396041 68793041 173626855 43244029 189743505 361562383 412243327 345420893 474541849 577526243 307312961 349497609 262273365 535281897 65478849 614394143 833522429 278566663 149047327 671013259 136824277 420600169 812288255 527892987 922645927 97310337 71929745 634833385 492368709 684672783 109502861 818713489 344388999 119294739 435259181 984680703 907705427 972048091 505025595 793053955 486048657 790843901 801676547 143932469 55905845 347178067 895384923 532364277 465725751 304781057 994212259 554322281 25692827 810735477 638939073 297479301 937785963 481164897 84228643 533037311 257302457 624739525 230560959 476408153 381885853 297773793 498723859 466895321 656045117 357461317 11126821 794965391 947642819 870998467 32476037 543298391 478146397 261719671 862898247 955997389 358181451 70218951 487427339 465746267 108178635 966828637 908515317 289584435 411403559 63220783 416799157 651668555 622500533 552174455 821253251 151830883 182961357 521895613 215558937 961642245 474386897 310170315 417459649 905908351 207333419 855421877 950562631 476180205 460024655 423222233 223177731 750521387 398783669 251385047 942498513 661730787 439100641 89101473 107101209 545247877 445281373 311136359 728827081 859052107 496714427 985143207 625439063 864434227 623407507 209592613 998614209 390061317 963102091 201977325 345917837 875664981 841753421 130511957 179130059 600863095 32131207 940013301 380409103 413954189 583326457 909573559 616348025 948687231 800867681 515475649 512676013 138126589 63949963 247318925 441757661 94601087 718910023 262136275 946219963 754922055 237121139 306791067 198942601 606621275 649380335 626566957 524788233 975782285 434757031 530908705 764654223 860825461 128001929 788224593 970817515 14996595 798485909 208564705 68098433 471828653 32779465 407703871 627186739 183050007 877299761 828105247 438401905 860425833 110542815 332788349 732583985 746250783 671867371 960186779 515479537 981241221 887770491 920212233 388023223 340133035 313840569 783445913 225193747 778671465 111229653 871703143 261467417 686833757 728319241 492059609 83990377 189456371 303975321 530891929 367612199 308867415 120119759 640503965 327876613 452620677 637174269 787044385 369576245 548418621 420428413 385303721 162826361 162519301 486574257 50369537 33714965 740880941 175096835 686880573 281128663 981497809 858133735 435284923 681617175 383033549 400138199 613286941 604425649 327045579 232739923 472324943 8404493 379567165 857329639 924650377 885275673 714082647 141059877 505273667 752892747 136584989 605092005 47863875 757153 951540567 620437519 580826773 982148771 341232277 226688775 353999759 634100829 542140717 74876483 67466443 621308517 990521409 789396603 768416557 46899931 435441337 820801907 427014627 991726435 904746565 192224501 69591391 438352431 645737567 504890835 616020577 860905201 758872389 550019303 323625193 290698731 123232511 624562707 977276231 778438881 427986527 203668291 72550157 487757345 637097469 451548007 640348183 314659715 227071289 976586617 539617673 297197925 593659707 750383487 820565713 770476971 140670451 601599871 564325027 672954565 446794521 22518411 798430715 927783593 573266735 674187201 939186461 246466005 911195771 577687875 382317717 166672465 866927119 882351415 927284279 176947879 497908931 866578131 343319583 156974323 792557109 712075089 947505587 659649999 266126289 260372209 732859549 608252771 862604741 515785215 215187413 502074459 820460553 243008461 348455571 694946545 173938525 65881525 560409949 760615903 199073867 826938905 193754879 772998511 805245987 134301029 620838797 36156015 707217405 482694409 855324005 857394483 278494135 750743679 864214057 427098777 747724027 892599883 909897671 773424905 984394299 481699575 75804017 292512627 20220333 292276757 201993381 426290249 741875281 484093247 714706985 165177995 174089969 121579289 77594373 232457409 235388187 691986505 315701137 441774581 512012843 922095237 25717863 237490371 128258109 819978119 114931051 354812997 18906427 297486351 668966091 517731619 719773653 522077417 215247355 612185737 476125317 526111207 150836917 769774385 407283849 783268579 949194241 517816919 461177067 374971073 125113641 449066689 820106105 420912231 484326593 369000381 748789197 530226635 846465445 783703075 754847303 3397351 501106681 867703121 82291471 152387771 540464685 410172971 384826645 482293331 259011057 177504801 544599827 582447041 25482563 290283049 352908421 114775327 944011623 692175299 474015929 860702097 849022439 564756977 812142523 936421437 643538333 164749381 845253989 221343067 895889311 345630677 445636693 738081567 315066965 155183165 805724407 904862927 312889451 797084325 67891321 275996087 573258195 828754105 191082451 533945381 742372043 900944307 555484871 331452021 17279191 504367951 459674331 755513865 919302085 378238675 523446369 426595405 261884069 83463183 628880241 35745201 948114135 257317463 845016297 587278513 728985341 868017545 511043445 670820557 773190661 364989199 180735105 3862417 500283939 770930387 728669001 809488271 543941073 30227533 997512653 781134179 371857108 834338173 630611923 932275883 917120317 94017509 43898347 717399317 564564059 790664087 607014001 170347857 738278859 767067177 442167425 250569241 851229297 483430327 846381317 500555571 474244475 970686953 730444719 938908773 821161821 707015405 195242485 459461763 219705043 349736567 112235543 897097831 739233249 560432329 847455773 693945845 662730449 482713513 177831643 775894293 942118715 980101985 514216677 618145465 670509307 349764555 564069789 364925915 204822835 331564357 524674091 675798657 693356879 55249843 908877953 223129265 748959749 418352519 480205907 655135103 283042897 91050163 932148773 174467591 444288631 51657655 873634879 398725223 751240451 556886683 645125551 616602317 495034315 804119531 983124303 679373417 414424295 23096767 260405439 103574135 676226495 672267443 466210149 382805303 750505983 632004335 96080757 907034357 85874841 499016993 819991271 3032837 683688653 324285823 94675577 200851645 702384411 773531847 456170675 883370113 527686225 614751551 558571751 74078397 821482629 273540535 333149229 650062561 243094033 602635395 590026851 89755241 640973977 839043201 676956981 473697751 227168267 371803163 469939985 522771891 102857627 836776507 816338479 866570129 535285957 757308251 753565583 312175373 722403915 938234485 499858427 614129349 481208125 904839699 973543171 978635623 541725677 58936641 630316543 634812067 18523383 928566935 222325005 94117429 642204735 456542513 831301657 477316829 913659381 551842743 117167055 914557801 896817033 585457495 730846891 769915815 935446201 660580039 710213611 541975923 324414087 491283269 381266585 165169585 274351171 48766359 694085253 138912585 37653631 955905805 944158021 351948333 900511769 288593531 297681723 518211673 809761587 886125889 10559631 280110799 767638073 9267779 254860851 132371607 692360419 67134195 994660061 948585925 705353513 798037571 226529293 59090036 260853329 791811509 248560395 288172997 176405479 86719565 295027691 409144547 786157247 989725081 281019009 720001535 353224695 545247409 25825135 112083797 554673651 22126385 144122653 328906791 923824475 811590721 762719931 932774845 427956777 824948111 173404993 713255533 129369749 203085905 159268465 396233869 556682279 730024516 459018195 120514947 670590631 990604979 438444469 190250165 717839149 942119269 709284913 400767643 790788883 349683639 226594853 898849195 870762237 707285889 280662589 580272487 939939803 727928367 820696039 250490717 478018011 583423917 833602651 791244315 245410175 695509359 898545051 667770431 920062601 995286391 677010285 483819879 497531651 849353033 481800291 937294145 810708549 762312435 741917397 15770751 725456363 999634445 400740321 570823127 657334999 267808435 197985395 632759569 896802869 852106892 85367865 770637813 236936827 533610441 450367659 232061267 862059109 923813917 633829897 188153863 641428983 25757641 471183453 121377781 864428413 959947919 138198647 971223301 820681355 515912385 81741549 700488235 646408447 760768563 756066593 973903967 853860347 223144773 592894525 908586915 997095661 402623453 204964909 951967749 604946567 683261031 893879469 104728723 700977095 966490845 14064699 138926187 744732915 706748347 304873249 101254059 947686035 136251655 244196461 265614465 444121213 774873935 895528187 10163743 413179087 676443819 972721255 765800381 828938989 66304951 744384539 304403357 689560705 564784283 596838983 706665485 268772991 19344903 665807077 785040987 185058343 326157357 171414195 360118245 916640761 917202893 580743225 829534987 591715525 599075629 818067147 629312055 856419997 347350301 589407101 784681691 624977373 578417139 618317359 928766067 517103659 344544395 429006477 711620993 303917937 933940555 942287109 923143311 919021285 979969829 766606801 995789101 697442307 202095245 752281583 913579769 88043917 410934911 262070311 713759889 620531859 931291525 309095947 301256355 886589287 767072429 89861875 411106017 87300775 977050251 141291261 928270595 478178357 212492860 167083541 20003789 144048701 903259245 53513961 107564551 131925559 298093637 971110897 339278727 392533979 932733565 90803823 185029669 992355375 792491091 167781225 778151617 539567231 833222799 685969073 205423689 687508319 573971069 901791709 553874607 620561837 981641459 357440849 974449643 862008715 560154961 219416881 146595073 397059943 100046461 439870065 217286905 542434037 562050533 518081479 590613993 704525359 49154173 731272883 860464105 358042715 618306503 913425023 135129113 835218695 956013255 195550521 875266985 617054467 722215693 370192573 944007877 472474479 341261741 353792423 423022507 639890607 597052485 719909473 318591389 63787373 702103039 472175133 710326245 692819871 397912709 282132431 480612563 976421247 356598031 469076283 25194181 795649685 232750427 435167721 322139931 134928555 464211633 669416999 686680383 768533205 301915357 956364817 549494693 1925743 164129079 483733123 956289221 87819807 129080731 803052071 123358243 205622479 955388273 412361325 860280647 109362869 273150629 935726221 165946055 971573325 820151985 724262537 410501435 311790939 768091025 882563113 402271301 140968427 342470347 677637115 34611599 886185297 787489391 938898521 205720011 368872747 817739281 291966049 31362487 329457243 274318287 159550207 400552207 131087375 578979155 455166945 743416739 103645881 297280711 151221889 544750147 781103895 752934371 4597531 213390281 865674029 601489127 982879165 399611413 737179977 937929109 500556081 425321239 40221947 876859967 121922069 493277115 667443747 291514555 548806599 295260929 208355811 129747813 50218349 33588965 719215017 972972069 188933371 606933367 451221545 134866793 562801703 457404871 204659805 424271143 155613043 483948783 683024013 266359261 170977573 513452305 464491843 193723793 243411021 282093655 495017553 83610835 496923591 1744373 338324439 334043063 606291247 260324643 40920889 175529179 282835439 229855269 980925473 624680041 906658873 424894277 857271173 177069323 697384451 188926419 650036385 508203770 195451917 703741741 971386361 185986803 906325729 311404467 316123737 845456701 160941517 39621583 574289877 753036453 256510957 786268917 570331849 845853571 461712669 929303709 715426259 542817971 68145415 982564683 453821429 383699101 387370011 435197833 311684431 414595631 815697043 362461417 221357665 328914399 5108077 413643525 595915249 767770795 370835313 991801471 934705419 983430425 599048243 647218177 877868035 316537911 491497223 610255167 982160759 437883551 453265935 62833649 299329353 217968489 703251763 433197275 835867047 382724929 237301539 176103111 911443971 700514641 597041239 131029383 820545052 671984723 313014801 252272885 295120117 176892289 738559831 731695603 216448475 416049573 100370427 925298539 319829343 515892747 621638549 482401617 764522593 393987467 454363781 912977821 655030533 229899137 438781171 80296275 266591669 548840661 520637389 293447037 604682277 89624821 257875921 239723053 706165845 248854231 765224057 193961341 182809991 187423225 91678993 844708495 587831109 996720483 274529193 96943245 180461159 278598815 2341401 690281387 713830409 737999049 129091327 930894369 269431947 164944761 303870663 53304115 543790751 743366619 131703965 769090091 16078901 694216091 415214973 500099419 911225739 887131117 709037351 897837341 428132387 239530643 28846369 49460947 802576845 504884945 717810619 165468137 88932765 801438837 778403601 196673741 561119467 737972437 327478783 829103615 40726111 34534867 251729199 760663293 222735077 317449937 533277715 604616531 777839279 513956287 26578399 620058515 786067003 366839315 465029785 243155543 487270221 639160779 865596931 302061889 864626163 182027887 649312947 605656059 633291133 847052809 836634877 463149369 257016715 63622709 398195715 822737333 238733567 418257165 535395501 585768239 982614791 779471415 11286699 70868339 777207831 118696421 735758199 469126483 574941929 890014665 780181327 321655209 98917253 884603429 197505595 319722583 366848051 394565309 340998413 881144647 562165899 516853215 142853213 577041773 311824487 697619811 5939595 568289219 2328300 283334053 412220863 122875465 198191495 440126095 973813993 353368843 628152043 71304331 368327361 457330459 947747861 825686417 208354761 431156627 731108167 167787551 513672775 642203797 94324497 20108859 977124173 566811723 288085829 116443765 493547955 123234281 359775233 556434147 805106455 375625385 885415589 176775201 380696293 833004235 295079139 571235925 22917451 310450843 745031595 109138993 149988929 2326379 356680251 841710569 344393863 848886421 315484439 228402745 329616551 899707 852693259 107341163 380767728 283141001 435097133 281360461 1731965 954405679 478026965 399505201 24857897 329616615 238640299 56017147 545397919 11373879 129476507 798658573 854730833 199133349 458443993 565646167 513621621 708203717 650195423 647626063 575502859 813910833 761289075 208020725 940576221 147076235 770708131 675358411 793692025 692077951 184186303 609281507 760888379 898898365 421305703 470288083 233169983 857100031 162417535 809800887 371446127 112804873 935508017 504234037 602418299 242217383 887936241 664537215 922626525 229740967 347435903 68361289 185451731 800017381 153037531 13698257 704147559 209791811 130707029 642905821 65388647 410307245 21855871 858070971 119052909 413472275 372054581 76697155 93969625 32280431 968206749 87573459 781865427 887862213 625390369 86138703 645009995 425578017 653810295 980548647 193479419 993830545 283206555 125740368 313289055 261039409 542910417 288703053 902040261 176447779 718486693 256818717 550434617 583880083 413384939 145947731 622045845 662074545 675519937 381895685 428544375 883369655 462929289 564293839 391749707 480185579 124863215 691331545 620744255 685320851 716696043 541701327 435681867 673869827 852273845 502054123 780036657 919688085 178550483 180156905 605735287 939172525 445550097 281580303 797979247 812654769 462801285 221831723 119735601 544282135 637214855 843146901 804860059 265946969 181284289 126560299 364262745 841030647 875200537 547323473 396458711 462827389 275251145 191531257 505093713 249836159 171973961 513112469 27201479 96786323 606104673 528794661 47723775 26656349 318154521 807702065 510591113 934919305 35371209 704676805 108172993 749083335 569541899 752206457 996985539 721256403 957601989 227794537 735181689 977229677 376861985 732900157 860124821 714167649 3749013 431913761 384962957 983121537 72215003 730596303 442139297 327938473 417427707 195528579 253955547 459503287 751228737 693453315 61675529 460426137 899052347 272476575 436952517 711017791 380148683 239119915 545171567 660216485 308790037 486559751 381602095 956905419 653227653 771100951 110159351 804682941 105546957 444869579 156890235 676677775 332513003 275684379 958803775 92553815 202493731 461202561 818230923 862005305 561790977 378379527 755933037 537896545 724353881 503582265 767951039 302981631 537210185 666772015 37531681 749274703 598246707 929040261 951479033 634661777 13282501 618087523 628785533 188786195 326503153 684991863 445123487 901135651 993455861 240447733 440349731 391352349 957949783 555001247 95345039 568778597 791615711 559127995 744791861 855360353 878101411 404358675 696654381 683913609 97975809 526230273 916267605 696402257 825859997 418653539 656362841 189992769 774786145 328425375 11302823 573017567 977431425 9706145 434836855 81993409 406957693 781406433 641745865 905654653 19326486 312751967 682018663 545505463 38683481 913475231 59682785 508244251 163862171 920889775 949686415 191670361 224822391 944886055 541204367 776766509 744606419 997945891 529665229 601188697 869063641 543508811 837836533 277044901 241866495 956260813 457130627 788113381 161758209 843422815 751158965 793920757 978185699 284105279 82485397 405192371 168650225 301935155 215934963 391117325 681099967 726956939 964402789 769484019 313217321 786655515 426282061 898010977 339013461 408582723 18437589 323563097 381293487 495492583 254639081 356668131 375375337 348329849 798202181 968653587 529566721 171030507 954551655 240904453 925867835 163653311 939025303 59551703 340941093 795172601 285214697 3401911 831060623 475422247 978853425 340318167 588224665 212573025 452834065 206380911 680548773 904799811 904761585 384306881 338180193 756039157 265293569 773787417 24485567 851401253 42099257 460597451 967558399 851220489 6305371 555803693 340513441 876134751 247435503 585516709 803954549 315802989 741667907 73440667 225015947 146015235 479708785 161910145 680810307 862332533 256709207 421363411 69207105 771268259 243440801 380402451 756836463 781983219 601225405 111467465 584777731 795400273 992595427 56979337 83037561 438361911 800730645 110392047 489591443 918949537 446858521 275525529 579687265 763447315 711215489 233427253 576557365 797159841 602871717 101710965 306575787 771606749 471203 113088017 857886121 244999653 415058791 372520395 530984539 2729057 503424415 442294129 900640307 164244095 286190787 243372497 941001711 484050421 277440275 657089481 637495187 236481280 657228441 805647671 972389739 38245739 179559461 392188937 492348171 532934527 142099533 611988273 571816015 16993555 159423091 895374247 411091551 17260679 684618689 384264557 492776097 164957633 502578211 492668049 874646479 240721197 320012629 345680417 983615713 522211013 640033749 295445307 339616797 620738819 627506669 375358975 19982351 75534321 313780909 291738263 795570829 266949661 928527595 505209909 349754289 981023129 637594697 775434773 933212895 364586249 164223023 914354809 337270213 681233551 112190669 923351977 505071959 857255643 438800413 347965179 539620559 21062179 42437341 24305093 118135477 339532071 481722261 933794925 525480915 479494185 86436761 930031963 313666619 36995579 937820157 479030275 300051535 736782065 370885281 523779549 465505197 77597163 461204273 978492267 833996357 285361487 577701915 362984251 466032971 158278155 510867865 540682459 215363131 116046995 76948649 415719913 245723097 165324777 620780563 22164741 556614449 537627281 737863017 496574681 265047703 669503899 73734147 60379927 572879015 546129305 672009215 266165627 813780807 344979375 200613193 609491655 772520611 949839487 678060687 188182469 995260973 193891129 245868105 496403525 632275875 62240917 260506553 136099877 742794249 232368589 386275813 48206405 457049771 234344873 471686815 825303951 864842271 834760569 93275517 201867253 988095806 770990099 877053155 584141171 556554287 491269331 293410037 48889611 844396381 922042017 767418023 826417095 964759163 578573033 91330223 218493879 968536967 868754085 764982413 641211641 430571975 16466769 352164235 850202797 989283523 475438579 597442487 180450813 260602707 81381401 728025837 24910619 521175697 162463963 858240457 453795909 72150241 591473111 10610869 259127479 825839347 500080689 445919459 27520961 508254901 728117659 957477191 137923507 125929065 978322758 619026853 778672357 178734993 803131125 129281925 480030909 420294647 121869805 34164021 29999267 911754419 571837947 22376657 967798027 921688865 572048501 641249589 359242861 807170529 717445947 178288907 222726221 932121061 100000691 280824259 256053813 729992541 146549707 167989397 743426229 952699591 904724217 902653315 171410539 67824615 715547451 677218901 157042423 599046345 714684439 474089369 690841603 70936769 994303386 434655145 746965059 768075115 482106719 16507301 850542191 572962223 813720961 434602611 876585035 431397555 794532775 557750727 702489503 164367089 274974205 591875353 944073537 140172065 780700731 577296037 909650953 776709961 733503137 218178169 122528217 671237045 146938609 77285215 2821787 856165883 351518077 402542069 115190083 466952181 346189339 177595289 327570633 844210887 304865063 294016881 450320177 416080863 53689993 861090161 816285829 556132337 535358127 264622927 301418965 134069751 845631375 839174541 707191871 876662327 451992487 158098033 461931491 553930047 390738685 342777611 142596843 832478945 151920671 736771127 324203147 568211257 167703845 104472465 296333819 126823853 858603181 143121539 89026943 128344551 909605597 546854207 885918049 616508125 421626465 191345083 504776435 53102539 143199089 72868535 949228429 865994547 258037965 372299965 561297301 235101157 88713913 344909595 608329589 712308211 457948675 217560301 91989147 374460859 133697793 88289807 44381831 74528991 14262421 256650795 784565687 291303755 275013921 30515121 302588597 663570485 924270483 706721499 799184151 89921817 969898597 500268711 100801653 116447419 862999187 97372125 848145265 194041383 380472485 615634961 45600437 487895987 775558053 165167767 495663093 945473017 591542829 76336017 337313001 227659485 17311579 12334823 387300949 303740555 685972437 372557641 331292931 80998011 87861447 368522543 412481221 487834213 372633323 77799387 996868469 928917329 245298043 152665171 646821365 943151239 564602177 387788393 938639151 641150111 225153417 926982069 328637719 276473459 71695147 797950103 732325797 970971687 477044099 706849078 894113245 753278505 434448249 835679363 363366089 398653485 660717179 398004025 764238459 114713135 465555839 183645907 597551373 785354097 945618947 135561885 152579489 257311107 683767053 489429671 808025441 928370999 640215597 623305 153166977 655413673 336682103 867220385 226520891 868389695 139627403 850231707 794888399 9122979 897962127 528469475 256394889 287925195 257413423 441763701 641550521 137213683 989154981 734010385 267045309 218594207 768274603 13874493 104051445 496642459 27927179 726931785 802504653 407225339 657778707 268861521 787406517 880424989 682260629 390377777 720196135 366526115 27266549 132463251 989627815 945230969 513394069 194930665 178824383 234368471 890958693 964821607 447130625 795641653 796689627 753734675 93813767 582777945 506672629 266887343 377389171 875042127 960794681 279768785 465534705 311851373 197884343 622274253 29232175 494461005 476922371 638228421 814891757 485265107 231454525 669682337 721859817 185363501 26174219 86228753 569930735 272724685 156393883 580435599 207283921 509322099 355148961 138842969 296025193 772552223 965255775 601271159 661747353 863396641 320274073 192057787 7414605 22593035 762279325 916654269 842576243 706278073 664009539 393224669 656624651 251923023 272056295 677304387 318893331 772915771 263130993 1499103 92881559 441417009 590010447 653176937 670259113 999156269 348290681 829149795 871361379 536107891 373431913 472065043 990160871 258046351 185904167 17744011 152284513 417448021 336873027 532402339 620316929 723606497 358459601 991911929 952966657 533424025 458518129 207643129 403627173 649178407 444946761 950488273 315423543 394939779 266028039 230730873 730312457 164031973 849763551 840162737 63944053 371239123 770265235 127315715 385788639 972976921 891208551 564314559 319876013 84048587 47160873 693798653 411553109 722332743 692709169 633723035 358011729 259578159 671067485 124640835 964416033 951378801 305806609 831609447 803648081 818303039 603267389 583707453 289837939 644459287 65076311 936134085 644129056 568133311 124945247 527961801 173757949 701230655 857414871 945036247 161862835 51048943 293003217 630380619 555395315 883197033 530043105 370085441 869393527 704486289 393197351 728785315 680471557 249582997 666176329 456447777 210618979 351845865 63018612 81089845 772922213 568200775 535733601 92229917 345306853 168695223 493407049 805551075 716899269 763450243 889341175 454336853 465213169 698494527 973782457 142360845 647030873 819242695 862156387 595210091 911641079 630252353 78900819 554096279 946539217 427759127 274940531 738184577 13412333 703182079 26242093 777359587 146255711 82006517 81275001 976549433 882487105 749014589 450336981 760008913 878220981 30499683 467382345 179851447 607199975 731456059 611131489 782205893 349258759 591425505 602956339 466352281 163462737 100196027 898606943 221113247 270601989 480487797 728981259 804706309 128414063 754008065 69320933 309033155 343196641 580499613 931995683 92606875 240243381 324463309 422649475 397808659 34154831 304703071 193139531 207415933 369262357 18096227 696720457 773767409 34080383 737160761 24401109 682036301 533535233 688842371 615009485 195605309 720673059 41199663 206862229 917668653 789952363 241782129 194975005 110885721 604369261 815795395 212718301 41430465 190854083 965231595 322450127 759352363 10360847 8369399 982877821 322604327 361889789 464774969 503448563 301427473 430315581 906880589 572277447 213852933 524382603 758539543 887923993 241769453 909421479 729656517 718907023 265918331 346702431 503781323 283982679 734603557 393133697 838063845 464490791 155450155 373139177 942784535 763020861 298360215 673744249 185979307 151291999 117193527 868609565 285269819 163870685 818206885 534553541 50474653 400567947 944866113 730935149 128602873 463427783 838039603 341548821 913397689 340439675 84627309 96904395 571858835 467687441 402770595 74834333 872827267 347391361 407770713 19709095 933207501 407359819 338349783 905649677 406955773 666454387 549995307 240744949 822541545 391898247 287596079 962295189 605505449 558130333 180602755 373114407 570078373 824630359 162979981 479755245 232077705 670970839 308009347 599387439 476309321 351648715 947581527 451443009 281723679 925117549 348558285 116254589 64246673 307683449 550554219 718422599 741624683 42548277 313643395 71014919 640210627 189437041 299743789 795639343 344111603 271780225 507379783 602472507 237778079 793891397 231808893 771541675 269421749 858330401 718580285 804374029 149593961 94687495 428093119 632727023 134293047 895348329 744066051 417118701 166856161 693270601 745151699 106861227 837829495 976529707 613571263 959193807 434701131 888662557 642900255 15765521 397304313 674703285 514176529 830807079 342787429 993446165 898242433 643760595 756988863 498045151 740579867 557310945 639827575 995288131 433813595 421149221 492327755 553758709 160194943 137281653 996082493 118932281 973144209 432363447 815551389 858259663 667353953 715837137 465367293 751091207 610638213 500363195 907825723 599019451 250284895 429677675 765607801 954443075 625254681 1861091 128635683 336896907 38461343 570005294 224498929 719499775 465732525 461433955 925306587 658618259 254718657 766975381 640505383 504140233 310674467 766671851 843967585 908496803 753045991 876656781 76772959 716394677 73739745 536567725 109910329 112275471 978195123 342556551 308322649 300945749 645702341 862575963 482920293 22557097 441093447 290219127 87362903 756558011 98317617 254565673 635076967 659027905 21306949 802832335 562015005 619259513 853338123 947295687 47234625 410631721 276482257 815868543 390027755 893017249 167356593 138964071 953791861 773414197 449251465 405293051 387305859 478143941 481800453 883292861 304497413 127719351 539011987 857742389 286317609 709163767 801623403 420059385 678715249 783689471 507766415 831860127 117069983 197866953 294405317 137627085 798010815 306059487 302871199 93635883 264370725 38517327 411098741 80154731 555478893 697711531 897897317 55905865 896410749 785725207 177162331 116483719 232477311 827431477 670112005 193020653 354981353 685840181 552517339 639431249 155586423 898240973 524356125 556051337 645563693 520625211 654910677 315291259 87531863 876030535 500578771 916218127 87922569 807050811 417282989 59907639 971004833 619938803 647830469 26836207 289542849 557089737 574028613 707781945 257276503 456810403 376194073 341317917 308846357 903635443 206671869 436101041 519695353 281602219 819408239 762766347 22208329 377858125 858862265 982005841 566074253 629596893 786313451 144764075 990553757 541249257 262306011 217204811 866123921 13526665 255104043 522045037 352583379 811008090 829730371 228296019 569429771 766258307 958390099 942170951 416449069 501708209 80551765 222529433 106283897 957527579 407704327 900113831 175667567 85465727 332551409 159637967 774100191 682964261 557233255 786473599 332137947 430212313 413038717 388881193 480706239 542704625 75117845 423885637 266648369 861989709 819560405 66287959 889882907 47136595 663462195 143285735 966640563 329924849 11869537 746257547 173934709 767425179 578277219 179001049 90057251 384234835 504446463 702935927 603949517 618199453 784472775 879874317 679198661 731652231 889091347 199557455 29073577 990632617 745256705 476226037 271558235 532636449 964772989 329220545 844587271 722619539 509475893 251099009 38518821 244812847 133492385 498907907 631238509 53848235 270989059 546529317 993578469 108066119 828743777 214245831 57654489 703801541 137683597 329771219 639963357 38340215 518820125 470909243 602904271 91479859 191186037 161709309 366345937 982156885 126860985 112806165 425572689 28038853 584803549 684725907 980376067 688162799 32426391 224601479 930042081 372337869 644141671 680477705 220200241 643093211 298199191 566238527 182849153 971555103 757986869 721995345 512285089 230890791 822307101 475518835 43124657 658626571 480391659 188262109 644001557 460452713 652814089 114730963 208535671 373666405 718916521 254732701 47963597 824200879 5204159 643507857 761989459 964919167 301311505 448079111 437456523 764615823 497805089 615668831 347328837 936657705 2574405 496116233 899663507 585427225 436072849 181338225 301081041 37690805 490712551 491109909 713582501 166759133 61175279 593054327 801861881 216091127 314083609 548238113 273303555 936196337 95126685 5451429 948757311 202583873 760431229 226216347 380712049 918474981 506599041 148218281 675403173 867380067 35666743 660774519 946088495 534446281 7219449 775788217 622855085 494165167 368878311 413774119 782786305 360457011 697434599 530703749 281472857 8811001 37251501 528260509 814630695 182807347 718552497 280766527 833084713 549304979 658649135 417437769 678693731 705160281 552438581 212315035 95271971 74039885 846725005 808500767 314812153 34805947 468400085 423953609 298525637 286504315 731736939 297896593 290056105 724407529 279380341 264262011 925158931 795212013 648730599 496703377 865255351 587635701 73041015 554235363 986126737 2394101 782106535 527906703 796864483 592338799 432329149 360450229 430702909 335668329 858246601 740669823 673589615 580761965 339902119 799594785 646413979 604532373 196207603 864306899 257400863 303694975 352422681 987112153 754992555 349305167 286135365 516845949 750446131 663905207 931460467 76125201 287834867 67679209 361175393 957915119 86238319 350760615 838473881 155954553 142895987 603836467 245588585 18914584 141643283 979008351 357442541 864431171 483947691 879639169 748327169 164710511 394056417 146472053 76304207 698799137 29414561 988625827 93887303 774343651 729613597 853245689 11854627 36065605 678612435 92295405 769736161 86745573 964750215 404924029 439064139 265458787 410110789 536888367 445347311 753999211 44263777 953773843 992396839 608260779 919986297 366461885 414795539 798837219 719553135 347256653 98288795 147478993 249939825 472724073 75114351 689069377 431843059 93131837 441051143 925622275 254758063 144346497 611307429 895366133 474665387 948406645 82586959 722536439 157854005 591857373 961449687 684790005 472478685 970951431 939776469 669462749 736194179 542572235 209019049 970683311 742692171 165007237 640596347 151069289 469474463 757937181 211672377 107407895 618027059 22458369 223944353 958461129 921592327 621081127 56460077 868410525 586578781 135749645 898816553 221121715 712490943 922337465 199245221 328992311 796294149 213209019 718910841 114280793 541229899 217715239 206696003 462526035 879755761 735920029 44866671 689441385 841641641 148051779 826413353 744596709 997224803 270580933 249723757 606766105 30634077 826055517 640623867 338475103 316632859 227914949 284975961 271585561 948037479 209189959 867557079 511350705 723919963 264300975 10794385 967834779 80703821 936509013 249613411 772506191 571993317 793489429 258496503 752240723 627487247 525419097 133473215 115810859 216865533 452896011 697004783 650501743 532283437 966286755 752131981 819252663 548149093 224360991 345378651 900319141 790915757 127261189 422909679 382718437 784885083 464118117 820351645 612577575 79830797 646604755 821162375 59403813 152173733 70655855 919948949 255109795 405268305 51500511 570413943 777546347 201877893 909111119 821911463 231462991 619910651 612811129 67276643 218161961 281400507 346262679 897791155 477972187 87460877 856402035 493555305 651784017 180154761 434218331 861098781 750460283 385569033 330344739 121036335 386900051 785214899 639039529 372647623 36364253 987667697 872200277 567544533 41446435 843281785 70613525 795248145 324653623 406196295 764114783 460469501 839869235 263323549 100628147 952238559 70461241 627195915 268900371 233323465 780997237 465316195 259919889 650243987 191253527 668567491 213767873 799153883 261300057 281396365 211672259 933167885 812379777 371260269 234501693 191599703 423905749 685005657 126437851 818419889 822462121 886907277 360031703 409171163 159613527 608192141 954551021 798707551 863167809 441492261 581205859 844176269 999262673 799597931 888415239 831858813 32858491 65748407 829421361 693481485 666686905 168656305 172469183 574631399 195356427 393405253 852262421 183533693 740723197 407621031 342433059 120272389 975914017 973962833 522030943 593402239 385649425 38352393 925996999 96087477 225398129 317363165 428657891 89726005 588243943 930667037 830270911 601590875 221557289 271231849 522727153 269608003 890080241 646509477 197760409 372641239 526075903 241520891 934247005 333726153 185804575 102969055 245749355 513203853 637628707 103372049 977623671 261508967 442567653 253612179 91124675 418140511 343689287 844839599 809784083 750625859 214744373 611467261 67022775 271194541 182440607 899632983 106853507 122345981 346594945 345920227 897672917 892202843 885640667 181392139 869609365 268491447 865119673 464434053 605355059 691616459 134225453 25165901 275662241 508212501 365919057 381083815 983152479 133334749 495376969 679479327 241481333 606279733 658090043 136674185 173017199 921314549 469149021 907486211 518824547 274600891 596519401 596531695 466900977 390525171 556442399 114647033 885023807 776195531 118538827 636441625 245622011 67313467 778640321 902740615 672914267 91378437 61364183 246044873 171094811 662491311 583372785 533390507 120292231 99340939 917883 309416771 673122919 858450097 252708069 824874985 444265749 615707647 670030507 984694087 424616815 584768289 732289613 208535621 751255769 283115907 751291223 382756631 226912579 576544865 653041243 883756605 523205669 600724923 914430451 22738295 647465849 766557527 47868355 56026835 838422217 89351109 215853425 606831015 374567457 895949665 574141877 589046669 782481175 314778951 483174211 719222635 467085771 806642785 631688163 551935083 649400803 739367009 924647771 155901699 330440077 476240573 312177279 247683567 916960895 263429045 726518313 672164657 316637431 373100371 53424701 53282073 737963195 566327909 599432865 818056505 864466969 901353349 881509965 713664877 642100457 186739219 722389045 91784411 56946569 228424503 7011425 96665327 797002207 705783011 30653655 235329115 986683991 112779467 632571051 477143069 574689513 303867251 782925559 775764089 906200085 908381475 978560479 621344251 445056477 253773545 227113355 768711287 231527125 218092959 882731309 134474763 117692685 255416037 792294401 922222105 236662566 927175715 528028231 52284495 667115849 29847945 511395915 986984351 362235425 654957839 570094943 554309447 309669861 96909687 353799903 372110797 480309075 19296583 213864233 974151161 521617585 52902353 484836523 929649635 242998479 550597165 942803157 708167651 111569409 71372345 929172259 768543651 35807527 252352417 200694807 978034955 160060581 980780243 542703673 452481873 866983789 925135879 867570973 266348527 591823345 300476989 18234973 469133229 542077747 738519105 261718173 497678739 102885301 26475933 698770053 239965689 599072393 149770159 916424135 215939961 523476549 682938003 648311839 691933177 826249733 218750517 190874189 88147875 866784881 886298945 923943711 766562285 21041847 992388147 621314659 917909139 998347661 328521801 116133877 534007961 890711601 474912397 232798905 266747211 159282027 991886543 262830999 77614909 876627589 865915557 966441601 335688011 692458073 624429681 48523635 316997531 298284101 494173789 572740461 662589081 117987631 390337877 22930301 698066423 52310659 631861269 240019377 836631987 499193147 531787291 84355621 643516177 80627409 89182383 59393021 989968287 1408079 313959909 390169697 62216749 514265921 31716241 504041347 933890011 574497471 898345557 128703903 977603851 67100773 813468313 523399671 922097259 457480029 225379213 534053331 867322349 203596111 179133993 161043335 688513489 998074231 751241775 675369839 832344983 967937939 213902119 577932521 916415759 752784613 971368799 732098915 714139465 117922623 850795761 669432143 896208295 606497269 652935867 351783717 986234055 748333287 935177065 101420135 281036185 762721657 163768937 854341795 906292817 770365341 359589107 498644583 970476907 185904837 939916041 613977679 956895401 162658547 819682929 644668927 691081755 216711595 37011901 974696735 38269715 374486779 396415301 311199329 882776365 752253051 964327463 632568449 648154959 533513799 865429327 830430529 311036581 226776585 257355371 511979625 185443745 156578795 771871987 941375183 47338241 932954021 376800551 988923209 680832713 511927157 916025617 837382077 940972869 935932705 23712641 313130515 794120201 856967929 40086285 726424381 585704179 856951504 124229911 462382647 45392165 988110601 296075977 286617859 622946827 611404167 40976399 949421995 584914525 624123577 218593445 260498239 804045587 33827475 876492041 667367643 880627315 224373143 234096005 660545187 519543561 232449993 606844713 27171519 828314795 959204791 393027787 551434851 306621299 843774841 861364237 874046663 836654277 333522349 456790103 915534381 731946063 4844151 331019225 836194019 52680453 106398855 918653581 34425399 471762465 836731923 664440625 145655175 440072747 903220697 91494989 679074611 814394349 666091041 18232629 962431397 623094137 210513335 833307901 830648911 713738545 678534385 429986183 998562477 222414003 8006831 233515129 718124353 840078831 237939031 408706633 419078803 963532313 330425301 628836649 380417593 131251373 580516515 556470301 494707657 274999919 478738109 124123115 590940137 791635051 242142377 139678757 988385089 442906357 640661877 846203427 757582213 486555817 135121337 91637251 360589933 765920621 167708307 161270705 944901309 529298797 801587367 69941211 234705725 176795163 478912805 545485561 8634819 790241589 123353283 94348365 541290021 191059903 83447487 599292637 433217353 393073925 443900897 747120763 449481239 289965469 83356021 682121405 533697155 56973409 499818065 582720007 292652677 57556853 627525589 733633149 536715553 194540871 481899239 556419859 983395679 997292937 702234357 386045567 62290773 712968763 789260021 653890625 664549145 504397981 954447973 297335203 702012369 490202685 737668171 53387955 782833317 731154929 82946613 368233805 610740681 182584531 49313083 816169485 354131317 425622855 162069243 153294685 225984237 408039933 169195673 327967343 896186747 92361955 810619845 621238327 653183343 979910715 987439541 533216379 843837223 712654727 526771241 358296253 870938115 842081425 924989027 212681043 519213421 514935921 38246453 54862417 827104215 896894595 222317301 470770841 32905151 479838055 766216831 330894547 246818979 641613327 891179067 571534959 502887437 242820267 37414423 696423589 160116371 658546105 628536199 738504567 237104843 823953661 937689741 81314989 830726235 429262979 830527661 612931285 110738669 445565343 475889143 586922057 242221359 172991983 58415103 220387881 963387871 55333973 447475941 559375707 808044735 871451645 2759245 275145619 608350617 469976415 540239975 233647177 6676799 590273843 894605547 831776697 849672329 467206527 740132883 898735601 146493789 390589583 421097385 791583675 432308645 183773177 837420025 632159669 331941967 724024215 210899673 934303549 991807577 982452365 184040619 690559865 463790021 878285385 359929169 785094237 399176861 355445119 671960377 62857631 888241139 453605161 854553693 599161281 662506209 693543823 993917241 339406089 67976071 848523065 513737683 16279175 398409237 527145983 141632187 581322519 473467319 567452667 304283653 28190805 481958829 112965779 19653201 87902125 534053429 515300209 820240323 71812427 91263385 180206475 947022605 494482219 409047343 949985309 863205473 927915531 228687951 614177193 553147007 621962869 37190491 336460031 838391727 351268279 555815613 573555249 211848893 614019821 770709993 924944797 176092673 611113459 249702487 179366629 572503 915770483 776905355 806458869 543207975 667008221 65746191 462567427 438064223 620003691 901261173 246037643 69177205 643395867 183404375 974646353 975449703 316518071 668543319 91367011 231364027 428238285 738672671 211536145 488002689 694407095 637757795 475092219 287715661 199248021 300758747 509551107 591010111 961420367 590021451 313832535 613416187 687284117 726544253 588626793 633800627 25615071 469988163 821622519 493370393 65505135 500878965 438968327 839502703 770125387 244443129 903211489 229805687 414198085 612996281 330143005 223791749 753652213 686611109 265353365 183456873 961413307 563362231 538420333 528758151 963438015 450562803 469131539 822403777 543205873 7203171 730176059 986262919 831586825 755100441 550217697 124653775 198488967 273722415 525748039 554852887 645837749 169625031 147274749 457978981 489731747 901487371 23666901 98688841 213176873 9035311 916569835 301175767 153507045 117460843 792811685 31517615 453915971 17293315 536996525 828364277 242205807 447472449 933431545 926578779 325468517 563170679 558140357 589529619 155715557 129532159 324368533 377831647 710036853 223630139 184353589 936432131 906374245 906057621 540281529 606129997 672704209 144751233 849458303 443389461 634282901 487179385 570031401 973100599 218563931 821744381 967617443 880792347 698749333 301246873 519303205 5157551 543188855 609097951 934026023 979342953 320233223 270565225 598033007 984265801 692065287 154947801 671471113 941594065 38849293 984815321 105934155 303659795 430487661 683862045 662970831 427357091 108754761 798603101 465406073 67783073 17141897 220589151 832467575 567105715 426215389 311532265 800337979 725476613 462065855 891969997 387980421 498859601 747574637 550800361 410464085 601997009 879636463 75087647 530924795 55514191 449357591 523820373 41697545 632273689 150270333 563768705 731688283 795065601 723539585 844170395 140306197 529762411 312043851 323915945 55180199 830752569 596665803 369157553 40797119 713505243 450239417 964246215 262669919 862321735 357327767 564699909 360613321 655895291 719031723 972268685 425803401 993556479 380006151 954915721 350552179 168688607 462854275 52423469 650458019 782113969 673012669 698723507 759319423 304824597 153537057 770745947 364974757 816362289 342861277 999417457 245902129 674120625 771218153 485363783 351254327 73693391 448644613 44846391 897823817 631018311 61935035 245309347 735060275 514321247 8128859 76057591 694032905 529925605 3961341 194988451 295192361 192505137 22721407 505503265 908904501 220320287 453978507 575966197 533608730 226502937 179894419 806538667 400310029 148341001 302672077 885035729 837062025 271945319 27379513 850401027 766534997 594107953 984663201 325770467 229100409 397969647 387945109 278254875 667474509 447836589 814845035 997159263 384997995 272901377 243237957 721298281 252710327 436752395 764600331 415328761 951716959 879396209 765472879 935334363 346850263 1549407 10853349 314872033 353769435 361557391 264358321 456005861 572729709 120901693 843968219 256147147 776380893 717121839 616389425 159360377 447933373 916820915 249371213 543098597 845473257 768523425 949219983 862388489 872345735 778859351 801010719 313602789 188513281 173241529 80193005 752779141 815891981 178601527 160794803 300514555 655716007 767425225 22586863 577491299 908064531 924308457 166795497 506943963 219068125 453317791 44130227 199352209 158923993 453359227 565662245 816008885 168992803 109829779 449213663 80193921 482507041 646357123 466125895 678289211 343121535 655981427 812134289 809219881 563515951 383081745 248110515 456149407 85136495 875217553 32871535 963277047 75097795 23966645 378248523 507552403 938045689 259321281 992170137 22186463 828989985 85836421 742799473 7985483 177794459 934833493 44522929 176578387 281229321 314896399 189776645 178805111 535714393 528789533 552196057 2318659 672016575 673630057 350786921 193881417 784208821 77969259 864582581 109570597 642573569 774209571 858278531 833340277 229902513 344053523 761907299 363652327 275847191 685490765 983863729 720528683 206520015 467701095 119858057 19830013 14383549 687136381 921514197 400259101 794601999 14878519 72012615 876913751 785715257 30493635 902202453 210175613 252664567 624378839 579392063 902025067 551476301 361461167 31512847 605748991 542328455 215583511 912431507 713164071 504258873 3551319 990017637 74326739 862289471 481260873 583797477 129698559 215792319 583426123 306297915 232117163 945445923 593627969 778724953 766986979 174353697 184175261 107001587 774003129 538748597 755779665 321210509 38363977 238273827 784887007 523360623 400985009 368734455 438644809 51552423 49294623 242490887 973835553 424382223 118875843 178890347 5214077 708151879 404912601 404281739 862892537 900584887 901030049 59043603 90994365 41097615 689359209 498238967 811083383 742976455 643549055 227095921 975666013 972050209 73191999 872639495 521608749 109135907 876413453 795184773 452941101 921176095 432478543 987361025 640545581 557908013 612650877 437454805 138012801 897151019 345465867 300934309 624630793 37368261 621596033 789771615 371906089 536723817 413355109 248914231 383268817 584676175 495063627 541087657 115249017 791050871 940035791 119718775 680311835 112410029 504167567 637263793 942573121 467618427 923427385 142679209 509067511 421715007 984383357 660186363 545963221 838344469 492698647 706453645 948852983 312514281 127857353 902935945 229715973 27371623 614820955 947232101 831379757 454421515 708789921 958939101 453239589 989002517 274552695 38313971 972858667 821439625 433763771 693547255 227441157 971283517 832044635 914553725 513818883 533416901 229836615 179752541 844837113 131083139 639533691 151345599 76102983 879179681 644637433 985891343 851412691 564596491 86494665 204086015 747224329 171319933 48212223 456760973 212558051 259804533 998949047 873276925 58928603 488616763 476108303 862268123 127977723 353198563 297190965 916249085 900855759 918680897 626937177 324043899 879054703 48442871 761963447 49019071 401464183 863620717 638070417 912126831 695022863 936362451 599449903 665424517 385375717 531687713 15717351 513624633 248963375 803330585 762680591 582792211 41288363 307592771 679563789 738575835 649123745 173912045 906500681 168933545 285211099 378397489 750041653 15692759 313291445 195832045 549860429 308577803 742377993 901857229 858353681 264061999 855406397 364060479 97515791 547200121 245674051 166422651 491791829 247056739 398019725 196425091 17389313 292119733 185233437 922209821 380233265 138254969 534411895 684844251 213769491 302496771 1694121 139338773 864493657 606575343 720628555 370556649 735592123 218561059 970987897 201768515 258983419 717566665 921457627 167275473 726539751 397501783 215536799 655686411 601051981 346689161 304430971 947575857 350037259 330359395 665142959 533517645 498741503 904979761 800199677 662379311 352745751 857908871 123064759 783565421 404295749 378801731 65705905 131824235 637769089 346283911 284970571 723918925 989530829 802520001 372026731 140230149 837774903 191312291 132259709 619486029 551511245 828927019 167022203 356747427 135727533 824011679 757251297 158307921 560392949 454233735 959253173 540556135 261057235 287967931 393855109 586661051 442868857 546149459 302354025 321658863 468771615 125991609 579557629 821537899 637226761 409959829 683518059 57771103 318754431 685587931 655079773 119792069 760045271 724683 880498187 150506843 79946087 902448359 52620595 776182185 783732373 12605177 175928091 257210883 93044937 418439961 93662867 906293629 412083573 725814689 236686321 733433849 258437141 925131319 945550353 510836511 386669355 882254021 885479769 902956895 986543425 340171905 336070331 191311601 561766375 46435046 808776363 21282519 713489083 464429755 30738981 349202903 470717019 918572807 528917429 143533955 898944375 810670117 683536995 675330867 645322171 753951403 504670409 552333573 191712997 492688513 283588099 191440613 161992631 747433425 937562299 710806913 307590395 565307411 565393947 444563793 816082049 510104831 717637339 62419863 963943463 671011227 643394617 368750937 691237067 934103859 15802109 252580457 993417565 31690331 389985907 45586013 282404297 471971825 64318833 795815321 502217741 728097815 423110999 515571739 988418859 573141819 886205707 576856393 452329005 543134993 90539515 326405479 125550883 40217491 947847451 259238427 570161195 383335431 226924013 444022959 616935525 515313659 118297461 108121905 134290683 336517697 549751619 11713405 515288095 194397685 134983787 871562799 429954573 846043515 14139019 668127665 103413767 749170561 101780173 669611317 704380247 362501115 170683099 223550383 532319309 45832485 827515373 391392485 803482951 85805185 798650307 398772313 396760997 941181919 274108831 892451425 764556497 549284945 804840787 76929809 533047103 225800499 829365813 610007883 503849831 737430315 307584545 986247095 897010381 900329763 593166975 412060101 137024375 142067025 366172475 771296429 816543361 319585841 175714255 5408881 764720637 441367431 25483831 480754393 907765519 749018463 53200889 986127475 848211297 964571917 15257893 565373337 395782565 137620527 20505935 151896427 92413593 574375335 87082645 332269263 264323579 801537699 497070753 182591865 371669909 305822613 588178189 258656481 352493629 72881467 463553857 107939651 591648971 618726299 182597581 879696045 761437473 279270141 659779333 354961899 123420457 719054583 278066999 538221973 512295381 125438823 429764359 499329295 264162339 749950321 298673259 460965757 816121361 188706941 191643059 194896595 984248745 395545925 979686015 87716039 547682305 100624579 89731781 835801051 647534129 724110137 783377667 54232661 494690907 851551543 649405759 181029189 27846313 252645005 486411785 436552071 640527951 735912797 516647285 285836471 436808325 434084613 893140513 245312577 860437903 404473653 926499895 90429521 792821175 15817441 194478689 806975203 599552077 985119045 700386521 50697397 791002799 210712293 903862361 39882321 906698045 771969677 548471083 48697093 572761697 120331857 130431515 386434029 768389007 64380045 585790849 504274661 720050239 322275047 476783161 153789335 573093621 334214643 676022955 959016563 212210235 396082411 274120133 121477043 453122467 230674757 555026941 310871637 101165767 459313949 686163025 590088483 901303369 566394239 173295431 365640619 827299027 953764031 125641199 51786055 803546137 880696187 589930717 570362391 115533267 32707989 611133745 943698947 830452421 236327739 268933519 269968827 82622905 227211233 498687783 375378871 518514817 469630273 105820337 292872505 468061431 507412065 343215975 457967943 360451069 949505679 90820627 578998707 642820733 730471003 643086337 881342997 732648555 267030181 542018569 38527181 976244159 115291537 444415367 869106691 119619453 414211977 640495973 93645479 562458287 843622467 132461835 224317809 778341735 714451897 334283125 784293345 29456319 430659379 659190815 51972929 357500633 46015033 583996945 746131361 928060383 439860131 19950807 668936409 571441925 45313677 276944775 414156167 508970115 557231447 814554049 694734359 529091999 420006067 375169705 292003255 518546845 338241169 699677681 96006493 235871957 584844591 540564171 817216207 160190879 972576273 286815993 516681617 862835549 541706499 525553599 361799155 481059707 228920089 687353067 102962193 536041577 763611567 25956821 572969671 734137505 102712683 196072025 661652671 321194407 723099961 697603039 839575403 620803333 124561227 44608597 252463103 411396941 59407391 939570481 847732353 529040665 314967931 997389937 326082739 835436555 995035495 622670749 608345899 28088269 559623993 622686911 844292669 612220691 843398799 194511219 201483019 855715991 18797643 226103251 572590717 883565081 827931035 653421445 445174851 891246949 902747891 954118843 442526679 820521805 133897997 549666599 891511671 628907691 156865521 16383243 238723883 759784289 685672423 89792555 281406917 393343321 34058375 506375893 96832477 494361991 776813483 994818785 504703187 993873637 514523769 499769005 479230414 178961779 897737819 771496477 322102465 817967933 992741895 829656481 361214817 482582357 22117497 740598575 544542257 70790357 86928371 875434821 66965367 614802911 108095237 973752299 112394309 406202015 462335361 604480427 416070515 857385029 603545989 603635873 179285663 372886539 827376243 435730791 644886325 708799029 818505207 76027939 531452259 644712716 68040455 251679623 495045921 225092069 981993695 922123207 425098543 868715543 821166083 598210975 704431129 893130757 339539775 557225305 254013737 314055195 828426921 765784003 147968381 565057993 187657881 173861681 799769329 894125707 192268985 714840193 851860785 660454625 869145327 566818331 559512745 36508503 809375861 487730413 320187285 776068479 681272003 88919407 367437555 449285363 775410847 130285723 934426509 600190037 424251159 184297721 530447091 898667601 935073915 483031449 230599803 511658647 264204651 425257745 661840455 746082529 428461003 732613757 845604415 164268021 600435653 671546501 803552021 807665305 819603661 598594133 306558269 475532961 600595619 912370343 833640955 938734567 743231049 246601911 376048727 431351117 849888009 471999819 114788895 577475007 253903227 2719665 999689965 210225453 368366713 804901057 59226401 44520337 786795049 607616473 73224931 958478833 691981557 779381725 777430307 406293331 625956499 78040637 888794779 859242955 507650303 855208431 984681673 203490675 218006397 370328691 765934837 322660205 782918041 567028427 459541809 301798629 276875815 134164105 780259669 64484875 520208453 185470147 696693249 522065691 947917397 45240085 74307995 736603477 260533507 487162023 368426839 243402757 136665159 836353829 398049835 501859197 803892313 21050825 44951513 783518231 542397119 91345487 482256359 358643511 665877317 737219581 823422631 747633219 548398337 989275299 685252145 646453169 13103947 438776213 826234211 632652283 960782029 496716977 709944553 473723553 840466543 827496801 374239279 829733169 271423589 861161359 353532529 15881273 215951663 861104307 282949551 447498325 578107021 835356363 35575215 830741799 400313487 718649183 710451969 432894555 175552133 632844411 675369473 939124897 528762383 712820663 200912843 196810421 48950801 71987503 197713225 950719063 177478069 245585035 465462317 530869075 269154161 212127225 364182509 958966909 993504257 823630637 294469321 482898603 766749031 660771945 605776075 227342273 665647091 166400369 68922561 218856875 770713911 90792597 156741957 94668121 947629327 325013417 140523447 688105415 988401825 427579149 935780159 133896437 843303769 593221797 946758095 946316017 237132265 560039139 501549339 392676041 741380431 150142393 775066535 92371865 399818703 769042855 118956987 681190275 642960373 141482165 169793125 799189171 872293780 372245359 402628223 785566809 792637132 290514925 984990633 908553137 996057343 281458891 98577227 798637821 77617113 229133361 528302485 155134597 931194445 741309645 539229823 767814557 126031257 264546005 841522891 133055391 727761475 511536903 17570559 168529135 331733267 703189417 535409261 497866229 446277153 286749577 559024685 582876707 549087685 443525377 983173149 742363381 367027113 50515177 385586665 495951083 30956469 231129517 236698623 442704529 72541471 538422839 817153175 274070395 917632353 719080705 755224755 174319423 542370115 989363461 377365785 968562305 875617229 324606157 208649049 230647789 798368599 606165861 239322319 148586805 889369723 37042021 470878103 465591823 701786399 43948521 580867997 40551747 721103725 218040729 284951949 328212887 328016603 915635619 142368227 115221727 956872485 14615229 994117087 866164983 664904015 269358629 434395269 730925757 447130277 803765409 369220011 872723231 603090875 382329217 886641893 634076175 741557103 484209049 44087957 727954307 85152225 762990665 84584165 184839299 640887683 20137589 165378241 661432341 569669125 505076111 898587877 459870799 448341861 926526089 834489551 487490887 98220265 706398949 525100487 717004323 355285017 572473255 666069473 488663561 398950859 959198301 910223601 280415537 834700573 125893663 895755673 260493777 242046065 492310153 3448897 486918443 897444469 461904067 799751193 59036813 211758365 255522939 702604313 584984645 265970851 253578983 305438723 123459247 134066317 548363717 661520735 984008495 140278953 295931997 112079483 183321389 426506249 39231609 308084593 8743707 368523785 426403189 746785055 390089589 497437005 39922985 150445105 235859901 891436227 754059009 259534357 242739067 601984671 700357865 90830339 257782597 626357597 104643157 137305085 884150193 166560959 997239111 192980425 209312869 498240725 699196227 326098937 848527625 161808113 587082839 851610341 800648783 838000303 867590683 927641515 547054323 671782133 750714027 507061047 367923383 761822959 991906223 200451895 35414883 636891407 391211861 846102307 918440907 714781203 369174867 718260539 923146443 600304127 264197095 770275209 315611715 890539807 359602905 928969437 514435101 825742599 704944757 361411533 715447627 621709205 234062993 94199229 638050505 140385771 763979661 81416145 403868825 418794357 601582927 898157051 876984515 95856363 269584451 364534261 202685533 868010821 940666979 404609085 114455165 180602569 222759465 866653981 420899657 765006341 64147871 523460517 587621097 869271753 386501459 528277163 475775119 408397109 638953817 192747473 593738615 499881643 477065807 101137023 53642723 428733145 277714013 34741477 52858395 544816819 720550449 311045885 204949877 390463861 29238787 382745477 732442439 314657697 392461453 233410823 55687159 965170695 669080599 61944017 872818669 69697207 643556721 851268605 850627229 755207699 600023791 393983595 743819135 77708729 215101297 320712643 344721685 333695387 307918173 765417077 291159021 819116775 412571553 118771385 758720917 67514655 935856307 811637137 408040363 501207301 271441295 390740931 895722703 304309157 838107327 716988129 388903339 36989267 17739601 208275523 851973105 391614125 34420185 558462985 643078493 126150547 973033845 696738329 685953201 719255607 291429069 483937063 57444023 220693001 822758673 392415657 292644159 191647943 172115187 728197345 68116519 990363509 870874547 831160789 325121615 612819809 912261657 836841047 701273761 501082907 78034289 223489021 9344271 661044099 222072465 523417899 905585557 605421755 74200281 862202373 375838517 864486705 244568367 909478783 753025785 546555031 775072001 488116303 808370929 274950381 787006275 984559093 673535291 44548467 27362679 583553979 250428663 631955383 978607265 298393009 419038543 97492111 133443153 48840109 154255991 923341077 485902747 62625873 272096935 615703471 94357021 53901829 147854115 437128967 17755393 370584059 303155507 168479505 97250801 68317479 808078637 815829005 626516517 653891919 436925287 817365373 298343771 676026357 95787847 971708203 290879195 389470063 846196789 683844655 649176177 820963793 116024997 146132453 921125235 286820349 764827919 629459181 550376387 856089243 726936311 634975801 900536513 895054619 20592615 73540601 538952801 8582325 243079279 810545323 767961111 822183275 950605101 806453779 332607969 415528709 834263489 103959101 274921797 645051409 30482901 26967677 520009811 352259305 887017501 636903025 584938143 264908973 153760081 685474043 402161223 336996419 404928821 552317767 212438773 422477151 316418451 438222797 255727315 435722105 429289275 301787973 502073753 480323277 235644683 79161269 247188871 647629161 483453667 852170089 252716127 929633305 591403693 48007159 506677363 849063797 66295133 825395513 980563865 850399969 670333419 379811411 983587885 335101313 309631579 659091123 923062295 811891017 473227447 363439885 301138885 512866287 306487311 30024795 787539757 645498357 199403393 268018917 87369933 751712673 738796333 373370163 476169387 698574851 241526077 759910685 958457173 521372151 175493349 966445245 772723429 295707929 546056541 569333625 22940147 301303509 806404329 418606331 834993835 708399959 104656339 768334905 149904311 846718619 153714029 399053423 41166671 306615647 733680399 636744735 192412723 690758189 756618527 635797529 301258919 817126995 114957831 834008687 750006649 801454317 455293237 910330239 730831103 7164887 705997865 415110891 944753691 768960187 69714273 276178079 396706095 888602633 710429545 602529233 597956395 585051131 920832465 130365949 102786179 721665935 241893431 312827879 118968377 309036943 38726971 35121821 722265299 597607305 387164039 755642991 793955163 324476631 426559183 825806845 558947949 950218137 45298892 724078377 979740961 515748791 754099777 237689889 899647011 225733089 815313909 313906775 6295709 641965711 50607039 9666441 667811657 145889539 350026615 716283069 183662433 29063747 236545535 348429115 915930543 348181537 513956928 471201179 588760959 895834677 340010033 162379447 695609257 603624159 563744201 930954931 856500105 251848775 5909513 897388029 985627655 48029021 194551803 66888265 452338833 737261273 131725749 957326227 949641245 919143995 411833679 60707613 126183977 261999821 323141611 722232951 635873213 284396191 60420277 224057971 958487651 142162313 646978523 952107565 244968759 294118441 14063517 533641739 872275921 112303851 95102265 986320055 823710557 892989693 590700027 291555879 253055364 98925399 100818485 966821015 931108227 941898169 258949695 282479499 484051731 991899565 930058625 236594895 864313209 871864705 431305055 761418103 493094537 799238993 69143119 630282977 456051603 444070393 733115593 723202479 383711355 886049315 263067217 61478605 664912035 324898625 310851697 844687987 496255483 615206025 555941819 837423385 540616185 84061691 26668745 562902661 635642523 907715423 576581949 111281347 430657895 501578569 430593731 900010281 489170541 282545677 228068363 980511057 32950595 970655949 772558287 798173727 378052099 898138737 270070739 111479489 740692569 128385705 433993697 265422763 243152497 285818607 427676875 809253783 531800575 902338433 795601771 826251403 873345861 118324839 548304291 282821845 550522375 493056115 919593311 404205063 156128403 63775805 454614415 193383933 498362049 777533733 280803117 925325275 293510381 328262227 589877309 428587281 257850625 668570039 447392457 196615247 790290279 713555209 543011299 906995857 358939671 166547659 705777317 531275807 766279567 42288451 557545265 607653251 814329813 956435331 226756531 890358929 440334201 15094883 651686235 821837669 637574801 293835649 280859491 764853093 712211895 293930569 236481553 774201917 608549655 63533801 423825323 372028127 893194077 907430233 137656197 66353289 896947901 726720603 609462521 429568447 65625593 153890421 499287145 731751757 157485397 959541495 638843455 24619335 970979233 73087229 211209711 760259595 446802735 313530979 893508339 721658171 307089123 626373333 200975819 118329541 900919583 882227903 457008899 416740827 725799123 942108253 6850093 465714685 516856949 913779373 994231523 488737259 116434693 404704377 602112967 452558003 138187013 267350353 457029509 628226219 563635079 210339467 745213389 828056685 265637151 845953609 826823259 498236893 298606831 307436147 257193967 228072233 351965591 679696827 851768149 265493957 585582155 901755029 790492255 244670317 187523007 821836869 195594983 930057507 372210479 376686547 325734863 646735927 567174501 608471821 969547779 716536123 975093167 795650445 707218291 461327115 883272929 85946291 247405595 666534349 909362265 713671079 667939067 284469227 164097 144213593 606779167 12187419 543227971 690095747 503885977 303869273 298048791 799253923 220652419 599986665 487026939 964951297 831619327 735764567 747263735 467952815 248362041 610348919 938727575 271266437 999802721 805910117 546205937 322514723 999658163 892109703 741244839 371146479 482033007 182663561 413808089 123023133 44929761 486118493 277653819 764270757 101269851 514054721 80952577 324773699 221931321 259100857 681256681 962017923 278530521 822804883 211549753 641196725 261627049 849289695 198619839 953282545 155800601 797147389 488700371 390452501 138370211 936255887 310489427 794259149 809390541 999887491 995663011 227744391 718178077 445267981 4961205 33497467 626621735 186308775 275809275 365136809 479820421 163605017 391722356 668283611 24682715 114877035 812310443 125295007 889394639 50963701 994151081 670601297 590027799 44712273 73040901 258420749 897593965 867346447 933430241 776251837 138269843 950953819 233044959 711257875 256058961 321244327 223969325 564574597 318922875 901148425 760640133 811911507 563984875 384395395 728690467 18003079 634960515 924159841 181699021 847677935 356648495 163875639 866055891 234834469 435805151 642123745 391415305 819223177 773112975 956753029 324818895 349767747 51425345 832140429 419454473 844149573 729697021 31743151 784984871 219334467 151939031 948644327 555978529 809870017 601109993 768509049 386345073 690205191 499161943 718379249 978541345 673163299 798893639 38261541 497740221 308219887 817773041 731001133 394116187 471860491 410865545 737601137 489603485 398829791 60990295 693145757 676583845 28707227 263204257 395879077 375900449 90787127 568583099 256932803 997105227 692487797 912659201 407929469 488758751 172295131 271259601 180234657 190247461 264274619 906073753 837788991 385767911 953089069 700464841 990890935 701418879 37447695 719539165 909851819 563493323 855616525 967903829 770604553 226721585 828563605 256100543 995734277 39306397 571726303 562429097 963114779 357287559 202753261 131987375 750779149 400950255 513357957 789255285 131257835 965677597 418789431 107334051 410318855 167446483 922787167 619388651 583460861 341918707 182487577 530923017 523051443 144929499 845136465 933902269 112728915 821812525 120969395 412576469 824011859 781218841 377795515 451238687 551763055 479169109 905897129 435046007 330447531 734523679 667046017 862129089 869637201 791076669 728212761 424046565 539937275 482345983 728772613 430184661 953863295 107029049 817156006 958648973 926767109 474299723 543353897 972613645 100633337 217707033 156562551 238411875 423982349 487093781 157826893 518283677 935302719 580003377 840468521 826202583 197358035 8983023 822766675 860081717 662923093 379928145 278076383 197193183 49244571 781365483 541672609 959253767 11150781 525540045 275441467 411369961 267124773 837324187 98579477 530143173 373699963 83814519 622150239 417039337 577188275 817990929 939023123 815111331 31822603 802590367 984403949 346970193 617969929 198216927 443058299 52254289 47575413 820202263 133455625 637892113 688636263 305743639 248106929 783041027 162848313 178952755 624826707 852972189 175266961 322154571 560124053 347956583 630188889 336647365 319651563 466130919 873657031 110637453 213639053 115290803 807179093 708973597 511988343 475418721 324550859 39874671 420934005 5938327 240328499 459624461 321917207 635234045 669745633 318241029 413233589 968155205 825868401 268985065 96825453 70050603 472998857 465893853 273019435 953087345 633943827 278432643 729323165 936805087 549348549 981018123 635448123 635838027 762429339 492726571 621787717 222199947 976182681 3079457 548411333 295197061 209667851 76772789 36387467 217317665 465233799 641959217 726549805 333020241 867248869 298669425 605772047 318085649 744641613 519402191 113070933 697876579 274437419 342846769 649538033 707462479 266363441 766171913 417960605 158780907 904519775 563028043 164511703 849645901 209351157 217865075 944103401 630715291 34742657 41396875 800094691 499791101 781536473 810182689 893909659 825243813 759229463 393712199 749979059 57110991 288824991 194120097 781274771 475238589 672892959 382483025 918792043 922670521 850974603 286563079 249035829 686306835 365386781 565028857 708054959 371834153 377349725 482053095 421445219 376501081 858463507 183050515 40338847 416247569 99219031 875445327 85450365 403329475 648200835 160447983 290475741 114634983 751830845 827458259 222639719 625846017 682521199 413348193 795160459 838657177 463699791 916088967 770440833 490912581 752584537 95594681 808633931 698814619 979921233 372684025 827681199 310081 867362881 588659659 379963455 474847199 316110979 450918461 644728147 297440809 379001005 728800999 951208203 696693719 691295911 688541927 557853517 402110891 485160605 203941601 210999501 422658163 717272577 638799365 890477569 519267327 706008209 163864331 534095403 688332839 14571857 660834605 938761297 311949265 190465932 284373299 33381445 792098789 966199257 277230701 498367901 956503639 335793427 750944689 509687997 917423391 266794845 995632219 181530057 427027777 891444005 749504339 858941877 315902405 535178271 396414981 865526583 863591105 601347653 715960171 184282575 891154507 956983517 742736129 211406535 371968393 444097397 492285901 838612015 228533667 253514463 336158557 835072989 321907917 624257079 31185097 985282163 9296191 214846433 900408751 826430553 579383357 87181963 661915443 57621185 555588879 641413673 654528263 222809761 255896075 975143159 175112285 277748665 342466441 919520887 725866741 827748241 819454699 749131385 991713815 632218237 779213211 581673487 266815887 75083409 383858187 773533845 739753651 410174639 505892023 308062385 594881891 349286783 979269409 183926605 571638533 849717873 406204627 20120735 70696327 79042751 818650207 830224163 98923615 467942501 576561245 492713117 701288843 75604785 74185331 733178137 235212433 831227311 413816393 976742893 477219199 339190329 315257491 919656625 187295725 29706735 689243145 203624013 395978745 475335097 605706863 83733997 229294919 325063493 760927119 402333699 311038985 356658705 578332219 348200781 546537457 660702295 577019211 205372369 107252031 825161765 200129701 301687255 500744635 848119367 905564209 66898165 503237553 987927893 606829283 915436809 450854137 411101363 4927411 308596535 204393967 305741701 822117029 441918697 827157115 560793023 36207043 756626131 118121227 892465431 657174047 105411573 746178451 44033039 444592337 113903759 332030101 897198317 539642879 458139953 598870551 214480577 370582995 267291053 38817443 162003047 483649915 313822239 741304915 33667963 88184375 899540459 876611525 442076009 443174979 972007615 611090719 992650845 629522927 957852559 386986253 429698131 278121611 17736599 236023751 392381961 445027697 993951067 747911693 71575049 887617283 695212967 143295009 453371811 937160619 656042127 454600918 78353389 977893085 899013231 763880575 888045257 277537297 160782573 595151867 900788703 779687371 945089525 331940785 545288095 305369749 726137529 65219215 430202947 482359809 144354487 657386251 765916361 306937255 249393843 684938787 393970171 343821869 945750969 997735007 233995111 905170493 991289373 420210377 934215271 385413509 571291773 668627963 189035803 763538885 498072251 250869523 839670123 656356795 657800453 546824375 735095815 93205043 63295695 125313555 146942823 18556157 432485331 386104287 186587853 271746551 511933207 204575067 485978943 739225601 32057321 137639755 665290895 145967623 478726873 659975421 1336917 750682103 944414919 892412233 110416113 321426385 682293719 821000075 715462283 238513811 862032499 570960555 190366739 394152265 166832721 816673303 254186561 628344837 231937387 918672069 367536276 277972703 124073225 831197747 1592923 946603773 549701813 496847719 19450781 360341385 385500481 646632945 638500409 140487859 711924687 125325029 499896523 770516661 321903293 513461731 853661631 405719763 261270717 790126097 971386947 997325911 44109247 480085787 820598607 624920979 790340097 141765691 666664611 544755425 685367047 969040171 473894345 977249187 15199901 678676277 484669199 251227971 639040470 727955493 490288785 381044789 26395665 36084051 575654699 644483827 763507697 465476765 950806407 923627129 620614755 259659623 513600791 86231519 293787033 976580513 849937169 721144873 275397651 706323137 999811957 734159481 86168977 921119429 557640203 192162417 908601377 293984563 199305575 538529207 821783831 99736603 154932701 310605569 263759889 907941649 997133967 962290951 687818227 526896693 904601701 235307917 463185893 139546925 967903503 18869341 124033121 761336869 703373319 935086665 264096801 751437527 791315851 625083947 305165095 567388543 670748579 267982821 703677891 609885667 887144225 812137827 338853253 620882513 875370653 7086997 953325133 361959073 785747831 490527605 509785407 987175215 672932567 24393481 570013125 212972003 270335661 179253333 910682261 86246699 531735217 979713649 661293739 695415037 68292453 895625333 961644619 284248025 718363407 539846277 669152255 949299649 87376065 148741319 963550111 37681991 406278483 140099697 880749895 825096319 343225955 820740285 782633561 721444361 816553309 364763627 628238465 179809803 775836783 349574727 88024245 112098611 465505681 729130787 439319089 758710709 110474629 936804825 124193657 712189011 787680465 475023051 388517209 951575889 613001925 224282213 804963303 460247933 496021629 920175639 260308347 813294895 272015317 343446875 269270463 606838085 797404793 641159861 539083417 427349027 186347221 693388463 276699971 748389561 108556581 276881115 38932789 99661693 795776615 186589395 91037493 783758701 25655141 706013499 412408913 978071313 409025455 559860409 881813721 215885685 74259099 27794691 116263277 558348591 927208523 936489939 7671793 347106655 680971943 690013673 764442767 81538219 745257569 65399313 351345341 820623425 468711405 741723677 567196213 112364757 500529295 419961831 271036927 862105001 138896207 386694227 518103395 144701825 40982523 964693063 642608377 23035821 149986349 395680697 835957659 961373953 542456389 167122083 969212783 269766875 35698795 50419717 618900703 599964709 255001487 254970603 382592929 25839689 550008427 568180583 578366385 804656191 50929789 425842579 522951763 832206725 959836941 42531987 981063443 458160418 864670765 391265165 988714181 378224805 574010805 416225975 990491783 411600673 853311557 60812363 845654715 761739319 153865283 374777225 314713101 282255117 831313635 846681023 632413301 591317841 593912605 191609659 891828779 606358073 948989101 107014745 66563253 23397763 45157663 178901627 155009503 228407925 383011523 579246861 343508159 588415197 335009713 873530495 507875501 916698643 594929863 674233165 958761043 566054901 330941617 189244663 61904025 21835239 932872925 134221065 475915699 721511897 421181571 575860245 214210593 946441027 441473443 587312309 502250403 285534239 886118407 879128205 953461833 373597175 667063869 651209029 306324323 546933463 591365793 742886287 284597393 633245269 753625167 74061861 795999415 94862481 148842547 878365389 535363839 296923953 181837817 499469133 878170079 234779235 744492829 921760377 645776915 681331165 433427933 249167659 350323613 139589597 821530691 664976711 339433165 733147689 162115869 255209653 690590517 428944657 877734149 609084519 798081203 787944553 94696795 949131607 728238183 540241039 813408583 281603467 124688835 525165421 575484091 47990025 816451447 750880109 18903915 5589733 443249281 352385671 270569435 571439673 193230629 832733499 181812819 363167017 528572911 93384589 497675745 370504669 719508147 103741963 47386975 860014983 637801871 385838283 794810989 609433955 668965349 295661165 586516083 109122993 670639459 489676567 438407585 26387645 583217915 228290423 434792431 252443099 155300331 575035843 682936351 680693345 904240825 542266553 61256375 296363187 826547757 199889055 605099785 540512573 283222111 312589381 447767085 452661103 728764841 13146111 229263361 877554885 231289263 704046253 365805105 319290817 625488990 206524083 221971243 478891755 142077677 1958147 857807143 469705687 927105235 693390351 433839399 35034145 648058585 266780377 740479473 870403175 194049543 743086051 608923925 450454359 822963893 590492737 243659247 376946849 12365181 866051203 703776411 560120321 204275781 644040139 916719365 213881399 178458935 262168257 767157209 806303249 230696905 327528589 602774931 968618333 725327287 242568171 466243443 525271031 720530436 92469783 231509629 403424451 722312191 930403289 521488519 696025769 412252217 772767355 862991141 141559195 118208913 551415001 843747001 917116309 82625065 915317323 919539053 394350999 248248941 456768957 22673453 128232623 704716307 214243481 413703093 36543211 751123225 701830617 272433027 521501801 459767487 943587575 577607393 716106311 449404051 843647741 454844381 714750387 397014889 928859511 109122129 38612189 407723103 67361149 73872093 523198977 143219159 813687469 775405033 218906209 956160127 125679147 320743589 545571653 542130251 325892007 197635083 771980547 966740341 447432791 677643223 372291057 535081859 699900921 930156951 26185589 497094723 879497171 166521751 174712565 627419847 148199349 226704881 479726313 275075691 112584435 687709061 928047047 323374035 49100653 10077433 907633937 699078125 481139337 202780097 653362261 275806957 512098355 523172117 443242529 317489487 134854117 291065585 52353299 578823893 565432217 197064993 54205641 133293967 845667033 461581365 911048433 221513935 972691377 164604549 718072381 989828147 198602169 988651311 427293539 317588123 359028495 640655647 689807915 104964409 262496087 75113475 979237469 80095357 794863809 674903379 403035849 979944229 382289667 840249679 710819915 284286261 465200731 490552833 334122695 662771961 533956751 197537849 701530661 152005125 734225391 11774605 768360279 976767031 648413777 218783329 523695449 946312881 867548175 811658457 859929645 512892127 330068245 627612647 900330461 720977273 984207311 333922117 211801465 622190455 3137585 361786739 938095647 229460767 288321213 266073781 689956333 888500479 615459191 536667681 319663889 303362279 787096813 949526667 365991613 242466039 346001207 729982357 445893673 772107921 138027763 868283047 502919063 898411363 874286661 785887729 830431061 115117153 626430941 671419757 309163185 32852167 718729201 224174553 497007369 851425559 180191551 178045375 157418685 229556769 883994639 740937325 717322295 218265591 873869101 127597821 257949929 421908725 591270639 130919247 791577167 940854463 332140085 304909067 502841067 126401349 750125413 201325729 364965703 337253815 912334187 856245321 5599987 650701201 652026049 150682373 987675533 213749659 326436963 990695835 799215027 816701151 550222551 173026717 524061715 612086193 449059627 996359779 602144863 575952047 223466999 341555725 915462735 683431355 993187929 236372609 195793575 94581505 75218677 653409907 871306799 140973559 442597627 961717849 986963133 454005337 379000097 461248885 787770919 540688683 796755623 993604813 108153683 128800187 154575951 614914611 526230825 242853529 996800363 263339325 946765725 498271397 27773649 857636943 763491495 400062465 473590749 569753997 690170699 196358939 404623733 979059691 922075793 917012901 475534603 273115679 95265935 682057631 502783891 74258857 260006237 229848649 128792715 361779155 109882395 436092209 234049273 104983213 624550393 343507245 890231403 786123277 213535011 31343447 861739513 175202965 608496599 662436373 920054593 132751021 678331735 724661777 830268775 836813703 974943469 451140415 215244827 413521945 822037737 900493791 135317141 579735075 569763241 892850547 790272143 131889453 119711373 310080967 563857747 558215051 767591679 163139565 532305069 627407697 973535603 966338375 288175091 657953633 716580961 96209013 901128965 234443875 17186637 194081379 74375497 164614087 476320703 425079623 398016173 971001031 281033293 26207645 682379431 102184287 493682063 834411817 863173939 941397853 141823271 815516663 563015645 744002893 745436863 218139995 664408749 636366217 109889801 686940403 151696189 428177713 992406723 603043745 490905515 777718061 901728681 226186385 387949467 553237805 613461387 553442875 929053501 774187177 440377145 122421079 252934217 61365217 19142541 602492395 447739129 735434465 218156135 248360515 276560663 494155893 835721655 723209205 717164271 608253237 516589673 247871195 565333081 494440069 293634429 544725529 816121777 177642377 42467055 630305565 527598303 375355957 834243791 713752731 930510927 600801343 724371501 720073101 404997627 995970601 449327139 470388795 934456415 366107193 516964051 150021933 622351233 793414015 437627495 44348475 780400625 683777751 739200531 831928703 663043523 245383133 179879183 644626527 561975703 793579005 730505631 590453381 789589393 309595491 21389325 685360871 589103203 653309963 368270249 547499713 686649919 55922355 774631377 752784021 249286119 199962085 762153189 555691827 402529693 916038897 803164495 707757741 549913139 215245549 814396547 978253665 887933439 495186363 864398841 41040113 79037917 407369987 86390837 973296457 500400181 847763253 322893249 498502559 271302645 896540299 17074223 360417135 481320339 43312131 227843353 881676159 376044045 115308135 351968545 567501015 769352681 15884613 397903601 505137101 231158839 371141111 411107901 695580415 905325451 307867293 432129725 490257999 586567429 676535583 712999733 126989291 790453577 20752429 674818671 971370821 3412361 212764735 152607805 429355037 246299767 327699607 786334329 930648947 240649045 481466427 725952517 581765269 667807975 303039741 167967179 329628185 806590075 369807989 17744319 854422233 99200231 362428163 774537177 117405433 692501901 163231439 434906397 610369255 579973967 194089673 532311189 422809175 36879773 290086825 302449747 21951813 470730093 653844207 314160241 679637235 742101053 365202919 646663185 713287921 32084755 926471835 991139421 573689361 176458623 213923561 136681865 58962799 488277653 37479277 736235981 871690097 705227253 135134867 91975277 629928641 548892869 624248201 71818419 786382677 334395057 748286791 823735537 920513897 253654257 409829261 726489473 501948545 280002885 10421221 146291653 204599401 446336241 27152541 75524393 824331829 966994883 83847633 579053083 229386563 409239827 226502237 568360219 965700661 482292925 145172715 257639335 38369785 641224233 635908845 293893451 864803521 701038405 406259609 516128409 772643595 830851975 643901679 493568043 347688091 534253807 654730935 146143139 736668029 362238207 781257605 919250603 258869511 821842377 143512493 629994999 633438419 203854049 972356689 547626561 742846405 95007335 493757529 814347593 842992395 40995329 455783797 793373403 193604889 627104219 627780895 513188297 39952041 684697519 842077589 401107181 189701571 271856567 698491103 995314217 440124591 559681469 796192719 730217319 674905349 241679 493580029 183771035 208431775 573470847 252417481 657775039 875296419 615662961 496978779 770372051 55392891 499765447 351601059 593710051 213338845 88748785 309659737 985721089 88364739 248739301 984145919 886429767 807817333 906690593 72149211 830738903 935725693 393569197 740715519 793739227 11723439 928787221 795337283 667659654 304485159 715376239 12870983 690113045 869555531 921949787 159721585 343849413 436073159 85373183 264970741 195546339 607467661 951510279 915967945 215142081 336904667 379421357 264034479 709366969 76008245 806762669 443561261 172218157 975564135 626298189 592105619 825128073 230532229 608578907 336558077 359070781 234601197 955687727 374193479 374185411 837500481 154568101 582788637 553291681 978376303 583883047 971457771 71509597 521876137 672427679 718364653 354064779 668572271 210406021 313632289 437260485 15106689 13648343 948081745 575926957 213284845 473598749 876422157 864894447 489056009 7310691 423077035 869242939 808795247 418401599 636208717 167669067 281241091 210992593 68059867 749082595 660007923 739738559 642032903 976884941 642440627 852416567 569115973 829276637 388096255 953907693 902067417 335779561 640662233 30336035 24982219 190279893 925748369 535544733 894585577 12156043 248961721 796921769 626645709 218113025 434057773 996939039 882468567 808271659 862031123 103669085 113423663 953591055 287948245 591431495 193290437 431470777 785442857 636776525 821732435 565732919 173659147 903871335 144466263 694255013 695082175 101364239 194855705 775201829 3167185 274434383 154554795 501833955 300707349 954793139 394652389 979363343 508664999 941853009 184493415 552855523 998347757 125053641 997642647 105231781 571435155 897549377 290865321 691602075 945900171 150075239 143152533 617603353 203354131 378898798 986098199 668294521 575942321 297139227 599561659 321258269 579503661 564973743 567282897 84347761 763402141 392944891 259701617 137145573 841828447 365956691 288380537 520228341 572424981 423955095 19306133 146406945 954825901 382953771 677675315 442888437 516190555 406137343 735104395 601373957 178325913 276198025 201139613 201963751 757478191 957991113 759429427 968622655 574264357 722928193 996386013 354983609 55428051 667686659 907601137 937666821 78131667 178831013 87517329 139375071 88141577 859037507 336880295 846338311 181098661 738812037 497912543 340196424 175601941 72540825 126975669 288617078 649297691 412524341 451690087 121686125 850563257 767328407 408789503 34146825 583220283 693442181 225140811 154677561 658078517 818810189 389066725 107777261 387427203 921565383 219698733 472047649 200697931 919838033 559599179 402740949 454326519 953128657 604197425 251158293 388242493 538499507 564993939 437108213 318997273 98330607 592047861 69587083 993186767 465054213 178749087 183387387 408150765 151106039 707998111 15988081 535409219 321486423 775518415 137709853 968839151 105305403 339770319 201842491 60398425 876742975 838799367 433361419 945939495 673527947 414265255 927821787 833435475 742624205 267614375 95272953 527464981 229198651 219131849 816426945 968558835 411239315 711121299 235981207 448007355 359550747 926557527 916705249 244677501 971885219 681434669 497542679 360720793 52018815 386246131 466271661 444313265 662841743 525975637 284190507 493793459 668565559 686312385 17837335 404073171 151314281 444685935 353737989 957632653 271292823 577854817 294361233 648927907 928636865 928122717 346358873 512193573 558063215 289936883 156976907 401382245 221673645 641750655 170335831 164577535 553617683 875927325 636732409 470962393 394804413 616941497 945686195 958689053 939226707 164800255 507149645 514382145 52936451 489574251 277989275 648188673 101506947 818084413 570336121 281504609 596995345 80025209 212273093 356333997 654249589 402143221 428354413 676111481 843715321 452217925 949934177 56776353 185167223 287124429 308471965 1337419 81779021 337582257 49449763 155762147 920802657 838169571 932142331 110327579 737173791 710892061 339348537 618703857 111296897 304943837 619413753 773498281 846857729 54017389 892761177 438314447 889048489 111298011 803623303 630483769 254518277 968031233 312754357 279259904 851303469 236784255 272476697 521404299 849795517 480448957 72771835 149512581 793571805 821753067 358924449 357317857 562020923 605962499 282241377 636349919 969737741 111994305 207789457 136821759 762468625 59992755 928069783 824952591 19912847 148796965 117385691 624504869 22040659 322445873 616171471 392708251 870483891 194211767 826011375 435558679 440667791 858843997 517302973 855582339 355951179 968315543 459907777 381248789 401605849 408780445 39667087 625892167 956314539 53137771 576626115 443515617 724662467 241022669 818079995 646426605 306397605 516298067 893513445 230393279 336994399 497333589 239666227 749528051 732287625 354810865 861112733 499899247 732871231 691616787 23221477 254443869 673827627 499682153 840781273 234606131 310032247 76927339 792386375 678654637 993339611 675355737 723086349 291541199 36026772 449522749 969275401 732698341 211860843 915773415 446445353 303855749 901477549 271552493 404159583 323216775 519428911 527650227 49486499 112670483 603195729 391999581 186927607 945863829 25124601 637479390 266831465 778215103 13503125 187220461 306507015 594180241 939579416 140868877 35965167 988275787 141674503 187338113 577207361 149282427 981111395 268164703 968308519 635021559 28489147 490778747 503304915 322944473 616855591 698554743 277801601 690296453 886927427 838811323 276309107 50167465 938110521 693917815 430108401 447272761 723906227 753921701 750424913 527332207 131266025 798647299 436904169 898813907 866317465 590130459 860898847 974374701 929031947 370618683 701630811 8554901 663116297 685376893 851407375 24156005 404009967 904733633 323993017 66277443 30393751 546120111 428374741 273071129 816278377 372920759 486395379 572401693 167532625 444961297 822414497 739062219 448540361 838499263 975972989 506832871 663390157 629560199 196594215 181421949 141743587 196996859 843580489 769348833 810774041 52795763 464832661 491606703 342979335 989791503 802037447 657228493 979729865 74265013 472973729 758744935 425883401 42901529 742809069 397854191 801815025 817124529 947509115 426393635 623254841 532969151 200954409 373916935 173584927 698771273 280747735 958870503 554346347 534022689 302588015 778083673 66986601 612033757 42247907 90277429 480611823 431042017 448391727 352294563 922914653 930158417 782741333 662352143 692892057 574487073 472279903 560459565 583724049 225876743 726553181 940494583 446121915 248151939 295545964 221511093 572504595 50794719 224609455 211909359 138351653 712944939 69890637 127551357 768116601 137833021 204297593 399442553 257381673 399143095 907987569 659875399 761559251 898742017 665664625 324573589 488767899 325859405 14230217 78589527 783353649 288620945 452769737 927310537 358052555 568099469 836734921 108391021 910164521 226139849 617797679 272083219 724238477 805493401 715831907 861105101 799544265 805663249 222559961 651282423 748295475 759254547 607591945 35457591 560369319 390743879 373809015 943563127 696780685 189587229 577891501 442128367 87067603 184387279 479472187 567612949 211975405 584920153 253574335 114601907 318827229 732557193 971460057 529815763 817984295 744519403 242886963 556429003 568652763 464565977 331525505 666926899 204171917 460285555 15132027 639362291 219891037 436371617 618513637 409934647 870375407 727710483 491838343 827734641 278530163 289160001 6879287 995142495 747570849 154852717 255833037 677709319 151547059 830242717 263326763 414270129 641767027 790198947 971826491 153328883 948574765 723217173 187305969 204689579 620385719 344132695 911957828 524759293 374315377 524475279 746936635 667180883 776711489 69716139 678580699 842898017 630175637 892544871 291045947 557745959 91880547 116063299 340086131 75780581 910719529 222763909 349858213 673046315 570556653 371387965 534559995 590841547 14956351 122468167 937366185 276050657 488142643 17295423 329818087 374326481 366722921 892714129 388918009 449018955 307203589 726161001 703140393 581532733 338979767 384754115 340299977 523842537 324419767 284396893 991181361 255041489 845780415 683483073 372367559 454821057 954671385 342717503 758174453 622087885 719456145 440441325 161601065 994334801 794377087 887297709 297340387 229109491 15220671 967817255 442492577 968534175 920757433 996128971 789376237 913667207 743198043 104053971 702944349 627096617 229071387 203869501 586344585 923880521 483740151 992629971 856744467 339535347 635935093 53132579 232649125 671302525 674710949 655963015 612455155 468578175 922770203 147895327 134620085 135690209 780106487 897997011 159169711 275586255 971288541 143604819 447332011 483797949 190178047 340867863 174857083 290516069 335541007 370490465 147416825 948464589 25038159 27130169 182842375 528600899 828360321 504458605 319649167 351326039 499109881 615522965 793248645 484387561 273708167 813372181 628192225 993425437 116927887 189916435 442757543 795322717 734867443 244235647 39444961 191611487 693289251 659441425 847515809 391045405 134656021 533525321 35851777 136093919 144324679 488569715 602861859 706381615 996169407 911346073 733178161 557743329 570746637 473050009 310207071 248064273 843838533 622407183 459062503 552666661 175454215 993181543 553816073 417112263 886981495 777795279 447057681 239427309 119422535 889007935 463659087 734061267 108657577 607781495 743229473 924278781 6375775 298534913 169005031 910712887 884220589 718244395 108180237 528108693 444496225 428286737 470988291 345861235 817677011 125710223 485245762 293012087 244000991 827686991 326253649 772735885 696611565 469807811 238611639 540617191 166494443 374038049 918790919 447064069 17914959 396986985 685669851 31539623 787589911 900561251 303516885 954191579 665389259 198510499 499852193 316023541 962692983 657971069 136268525 808681363 996533425 186736147 360829305 68700569 495716505 806618189 853353731 252130353 875282643 272989147 836602711 529939407 128830865 360407607 743371591 576803123 457887367 365370783 928069037 195572829 81767409 54375451 677250667 633345437 871578009 424068221 263782251 69394563 324519371 452225885 957292961 631143151 940889183 71446043 268627975 919698949 734517683 24259551 115674781 396945711 151967147 965736601 502005615 482467107 527870647 481868801 924896655 761366237 398010061 750018713 685051926 107586721 700004971 467456679 58994473 741982969 940887449 972083517 184360689 594002365 576623331 867342643 588438175 378011913 668683359 159016489 697141101 766185023 241680045 449384325 544447391 843098891 201701363 68180347 854942591 450452067 215312093 15437825 682661471 354861955 810071461 773532633 306418073 926296303 908656389 319031177 2117009 789844339 698509639 504759393 905689261 704062245 440260409 191783293 66355299 400766557 957358383 498905785 115968045 18677445 80694791 2413505 500618379 694130243 389194793 36632833 387552265 985405969 392793733 241336501 177135673 493624231 93507469 306269659 738043061 445468107 208138817 101628733 226589215 884283787 924099881 309079659 688203043 815031607 515362639 157885115 369333105 295175023 251254095 694519887 382750915 53485591 393088067 589510927 38318047 135032153 478413523 421886893 874429835 874006699 539071531 285301917 304928667 979535303 227435781 989510435 487123433 536499637 421150365 747062343 713570135 101232573 762142137 232442327 202330833 342372471 665714599 328296813 407464007 428510399 366806335 670273897 696100787 212703925 406804447 80326131 515571739 654087883 987212395 734052859 967723653 919193777 246817875 960896059 309635333 803610211 244151949 835320881 813717941 995389737 451275417 865999653 978974647 995979917 250156921 533940009 752421943 956596067 871083711 88650261 183992165 25337545 347488641 612497545 433694077 249535777 199331163 929898731 834109887 858544919 525129589 427900015 314114423 317574307 838262139 60157453 546675447 14256637 659561639 402172801 33755289 988330667 40702645 83050583 547998657 22337657 938174699 242109151 612139477 729853565 777202457 114449713 823756109 896573969 668567187 909453355 596604573 528357849 574414135 397760633 463157581 735617731 238397039 282313097 520813283 539934465 785899045 945513619 552406515 16688403 949689297 384529815 994998551 143937721 670422899 597800543 696879089 147087875 318414989 423188347 568074285 633227329 954064177 950665537 244018299 434898195 863971573 430892243 925797783 219646813 758904821 131563803 478287169 787848265 168823257 741472197 216188743 987930701 25630415 312875597 120499831 872338981 729825931 398603505 105554861 652040659 6410575 752219579 399861963 386639271 243802337 839591801 654040509 432924467 126218123 140860613 323613043 262470229 10335015 207749375 726402281 40889389 208060947 742908241 813278751 33786413 557211187 735388071 610837283 996343557 877917177 121313211 990226691 738980275 301565783 209188367 401899739 26301051 589826253 846879979 48986831 246249 585716323 830077789 177057541 174630353 263246501 878199359 594864307 77484113 502720939 262470448 295740691 781121227 921566737 461497755 693975143 284055789 703571967 613141933 40578295 657587625 731822627 156966751 303661079 199374911 480902835 49000307 178484513 301532463 654986861 19902063 741479545 820920647 945968535 435527077 729156231 424377501 858261249 62271533 741458621 733042059 209938175 968133093 25998999 30673845 99977839 74606201 24822420 43505417 161201595 250856535 318416709 905305787 184310221 751839671 443708981 142473797 455029535 54619547 901766913 366051439 747265707 697408201 761540685 175040065 53342971 691302097 414318271 229241875 508899611 888611087 799844367 300965505 220141475 429543839 332701169 638548843 88952751 236557933 244840749 793300737 74124775 656210981 743955593 479584439 874917241 420012867 640166875 250849353 742100763 53134087 643998969 930039483 852599307 206121079 44594887 113843545 994092303 442376035 250146865 899057335 534471031 820279653 387744553 181682611 975058455 711579359 68027813 269208175 98075215 581150709 264935597 886162775 912904453 806164377 440295751 587544609 687430053 633676933 419661193 482103499 166411559 752823351 736935305 607496853 344999691 337409529 380681325 293875981 509949525 743258585 235137885 749853447 200226963 824559537 156840587 359958945 87892701 240484385 907557939 770457405 83595471 840103825 902640021 269537929 532800400 931783473 489977855 282522489 111227601 650378747 420814783 7304775 340043717 885640107 672926001 324796025 505038379 110517199 789212089 828544477 838759755 17800371 951307967 361025413 341420271 683187313 939944629 322865357 165126771 882469864 6721559 493127257 127715249 404710337 770336871 447114519 839050767 445457261 471952173 813123899 704166271 660842533 693555967 550803777 216814963 239113189 599843955 492126445 179922925 213091449 991722799 437922889 171272817 856246385 569088219 851466925 188672781 701489701 953286185 635195829 544859481 605333173 964538325 664982081 180623729 976980231 688912801 562968963 113503485 315215567 249832789 589326827 285217323 963017091 93943751 699571767 272314033 940421987 132686797 13145707 598454479 518265465 806831949 39985875 393246279 703484821 751563823 817052931 892618603 827584845 853306213 357879001 309641231 665510149 450831339 21938039 51692691 727252449 838077379 426347081 871817437 142574037 977059573 636089863 865544025 412395669 516312215 94160297 461002753 56258215 569219007 206027125 793995601 702931021 151435923 971828729 871850319 50215581 758783803 584796933 647519881 792671851 701834985 405250233 165516567 221493593 950932697 673377399 249153941 468995279 506892621 183619565 159967787 18333439 554652815 68048911 212040585 994965469 635783663 255671833 494779873 718119469 810027723 220163725 878582259 375843447 898186113 979803707 945598981 118186505 22388351 462757685 498558695 277546493 491078455 301225943 271977711 619414067 252192033 481194949 881803513 205395539 555628737 90004207 639518059 339215053 127781023 412345477 37844279 536962521 529390161 737555459 968789201 291904633 304804717 992479793 435765557 485011827 36352153 871006233 713767661 501478489 620820093 392211471 292496135 945324163 676755146 575739569 902861335 907929617 689125697 757293537 280533307 772351209 529044635 527083979 937465117 140890047 633893801 172814309 846046951 829479177 900954681 23992811 283257681 311287817 181510185 840991459 234027929 296948165 166548057 552500245 805609607 383549455 270929331 438918167 86949223 117437053 185450537 694759879 596876559 393166707 377753529 581140295 758442719 746924309 133306719 472030469 327471037 199038039 867248683 53395635 250987287 137261551 151441965 210138193 5524961 991101789 974508925 640151327 230647709 492520939 664608065 444808363 199012175 167356329 36394145 324438475 891054727 835595885 968842193 692948377 557292121 192773849 284778761 525613691 682486883 690543957 941329293 792632603 852524495 750466323 297291429 364429167 82284615 993704713 803909799 441350065 334501635 208913655 552776683 647617897 85045185 987423333 455598033 390357088 959587273 721637799 938499017 407031213 994292967 209062097 418106943 585158313 413487219 862277829 749360561 89038843 32630857 296342571 61612961 720419981 197204945 463388275 776457113 2932373 583501559 168804567 322575401 862791311 902002997 186227029 117396463 77615167 851110535 818918837 556743307 405617073 329575027 912507529 243326375 344638009 386577161 694755369 930196471 389843829 258775005 578235829 640897587 427059783 766071565 592307733 431394335 354799579 295724611 810854649 885220229 350300329 187452841 834167257 738724149 388273001 386950391 353453303 980909069 736669729 723758701 22661721 573042157 360590109 888162765 658704593 502801599 834421235 826754923 105875701 531352439 818069629 124517655 444017193 953990413 26921439 24453427 570099091 205311877 184380807 18298277 508336929 149377257 111878697 887824603 202236047 241705033 81008319 356756171 958811229 833282243 778964881 207600115 633034449 487227511 190991143 347815001 773836029 103094159 415566681 444692109 393341879 722667327 870904385 175843491 274940577 825519807 658374981 398674233 155878693 489634387 312714255 169049721 318312303 448361541 346331029 900891405 430978427 580668391 542517011 670642479 64965639 893050003 901886221 806256025 129701789 428991147 408141900 657352853 581435789 266498713 229909739 268928751 581223661 567004625 74950467 857037055 882967455 296540619 547516151 635657121 841253195 120791307 598790131 330275133 678879331 510036507 694188909 486364865 711455003 888770187 912552675 564160163 146763895 912959481 389698837 119613921 5907263 282950917 180372753 896812801 976240385 126506075 684032811 157487891 269782295 609874857 570255873 416868523 140237217 442951855 938713461 583469287 744482439 649998379 673669045 660279409 215769209 630547175 335803955 132767859 493968367 405484217 707236527 759046567 338271787 479966073 901152809 802502983 886302261 737160201 43873775 880969757 751812059 221090131 650082967 816050037 311467701 319181643 647455483 193801767 626511655 886993387 297685311 559443855 818418519 280568883 300013521 99503253 424301109 996156719 692340837 777185447 766664313 486700783 62118647 448328379 710822819 679313 671941321 485092943 876209407 114358836 132952427 152724587 769381015 339707911 167033263 810989721 462814793 856354615 534071473 1505781 371248305 196388863 665207511 62089753 113559099 362020771 818985163 369316907 468829205 276568429 602762371 88280541 149125943 610574767 275963451 787893345 568255841 603343043 622880631 557725561 155794461 666629131 990300675 898163817 435211705 834591985 3364083 685191423 371977297 513970153 943704997 503553683 131030721 905323883 966869691 911142657 587084211 749503741 470612259 4303281 365141657 156757539 653921039 708020369 142623401 8572277 707010301 380262167 718051811 562585483 481027761 352523073 84070415 247865863 329947705 362062999 641374145 617493653 337236197 659549475 209535821 78944229 619202645 850218625 802029525 225125553 139599211 151394507 634382401 497976509 360093525 953036711 441257537 296056787 488324231 384949063 653974351 966905029 116688827 316930909 764446121 19404909 909836025 580531755 950963031 509903533 545028233 307691893 582647595 182652273 598457347 103384457 174550973 949578665 73767745 691309119 776998509 186982991 190133097 899283443 828446819 929060199 37600741 331968143 917840783 304430331 395435371 945666685 533229481 571168797 73586421 1680309 109317939 537587175 479642315 740513973 369638003 484608123 311954295 606161795 316465275 412506117 869370061 752687791 768645667 8235445 625532649 815090255 817777419 958511813 332705073 857746175 51611801 917275515 434456401 423331557 381047553 400835101 547136571 656172723 91507769 637763583 429718317 461391005 907539715 706199675 776734379 876666207 611588581 247309299 197599617 145460035 609056815 810656977 466495939 510150423 810652413 358443657 895536079 509694253 63712811 818655893 105644359 405054569 803795301 226256245 994594329 170481453 881459479 796547509 379921783 966161513 396435325 94893799 191800033 412486805 654788501 20483237 814916887 248620715 646136873 981260179 634372903 628905267 98265289 327781975 823791463 427185981 768822475 747457191 734728817 992046431 362427985 964770365 340356649 226272437 646659395 544589273 939462333 527737829 616038995 396939335 611326369 899604513 178957813 839560537 341305489 900474909 804245357 127620329 173817487 58150167 358917059 592867801 35996395 556484565 7134917 514145045 199934519 929087909 648056333 325337229 60601167 618645343 488239099 535725117 478880345 884460129 600456375 353835813 899926463 851169679 550719793 653883985 841153335 966864473 21212707 14007763 301699261 354338741 947353867 659425221 602372501 268912419 417532721 602308939 333274955 259530149 507685543 495251851 914406067 39299277 362164037 414310587 684772585 147557297 963443627 251169045 10172499 311426029 586063935 722124761 381243805 71583401 339470901 356136019 477524665 28607889 370908293 524064471 590675941 119398879 915012843 612792251 84830375 253589327 142352115 369783395 220654791 535255847 644495597 366607931 615472475 445788981 977821425 800547251 249035201 66688209 306862557 363218245 739463323 588039129 456067677 553000567 742654679 355553713 635350495 843601103 829513385 495354955 741246363 47118049 607966859 79664921 561207185 407444295 64298053 854990875 992226187 998180261 30642655 890541785 198032921 927126945 443964593 483074911 10627985 731589619 423844949 764512581 355572501 966107983 365247409 806769319 374418831 108769149 836199407 897585453 293993131 35711555 191975813 912994051 644848101 997911157 635267373 460056547 456260475 245292781 150255 30181385 64382327 837729167 541060373 556410171 218373287 223631937 201844019 100071369 777516965 639283707 395135781 281348487 362817489 147951025 326522385 481098453 236493909 570882411 904970081 679673239 202295581 57887023 138253773 901122109 643046371 558490641 506551885 922085567 856360233 805435179 492159783 513568663 370147127 478157473 459599591 121674447 219030811 346641051 17313121 341668595 142042543 157409355 599405747 528288283 709605523 699291885 51055167 778667301 931260719 81803457 150512049 456270195 521067955 248821779 46085633 939516537 738966039 212850741 476333671 141905961 159701789 445621379 424828777 841856837 475545419 924616539 721594837 586578963 500681203 622042923 63264699 756771677 708009005 22355299 793553275 279832957 512101849 276915583 873148601 735804753 930044061 104433665 301463391 182460735 14163181 595913073 478912161 346526771 309324543 917587299 800488959 797542053 463822805 968666481 394017849 645346709 507662901 909526079 211687007 237807495 144034735 889250421 90724547 858791817 124566431 955182021 520603137 690183731 205808673 731575275 561192959 870457505 818051873 816803751 132754663 947364219 892225867 394860487 212231215 573253103 365844763 716994073 814512019 850464947 84124625 461166201 351720983 523145477 792232563 287533515 55571207 152239531 705348305 200582903 887866103 845221877 429582981 987425263 605558467 169271991 289413105 200385711 224269457 840324433 963594041 178927159 732636877 326105255 171947855 253940629 466047785 5081643 116154093 491601111 654157219 866332879 491146129 440736281 370457471 65106965 452944517 77998207 910506569 50870529 556099031 472096049 114177239 447992097 624100705 766162017 195110979 467009933 90961347 386349131 951518961 952520673 300893029 808971825 401820559 369569605 978084215 391742811 789636111 825596775 228209907 945059869 764847793 810299773 665166231 596199123 129265909 106980677 899289323 571627739 963603113 822769157 112078657 290530723 29722339 561780109 97048241 438735261 232404733 358288177 592159771 980361025 109497245 740214993 407242789 909408273 821087661 688788947 923797059 165100955 673929059 626196515 558130093 83321453 620192569 80319803 128106591 383165219 998670583 142216471 533434405 440126817 677586087 589880123 142053775 745249999 668846493 424866235 407917301 757749791 665452405 901070377 192423799 90479117 217765141 235235491 877879291 122980443 220678055 182599889 912227893 704592081 568834977 129299681 556211099 589611589 413389247 46033545 117026925 744018829 36156933 957052935 678258869 443931279 196135615 430164259 474090307 686191923 938564483 388148777 324272813 507529835 43641385 416977135 756462679 582588723 991059417 888200149 451341157 110278541 517775359 203369153 657546699 782005633 792100685 91422239 793801021 94500901 814905027 536439785 123734593 184980111 630059169 311682201 48008473 732889317 699786613 302583353 827870939 312672591 122764565 116200279 231753307 956802817 893968795 352252935 155044667 162871091 120254059 991752935 585297635 514163751 3525427 15292447 817023877 157518891 488501479 244530269 210536725 471314061 642791617 339617751 140582487 465964715 337142089 177323341 32168915 31225573 731702599 629534977 70902999 365061541 821816531 584353733 132417149 544591965 680298567 467458029 854314661 996866697 8132425 196654169 901596407 447850155 295515075 939031407 899281891 16012619 40035051 598018589 970829217 835065343 563126333 47124695 529690931 145838173 864251517 874767007 486695263 162393355 693393591 284214777 187290551 462300337 145238847 821491701 334915475 286472963 688190641 137739559 946190611 609061817 769381619 389383853 151955997 839268759 140507697 669307183 469557093 883980133 731650525 262571995 859956577 509142777 237557173 865254761 648684883 863448105 277684925 333424403 500253249 571801563 670933569 520739235 286908413 760882935 622067927 416613987 402862109 848556401 23321943 924237359 17853701 666757953 73931243 266358881 854045913 589537131 987869945 791326177 756339853 897136887 623960123 989252635 812711639 293603835 614916521 779123721 178182967 863564941 364781195 499232039 113146103 498841043 729720937 461064315 964038695 286349045 583670299 982341525 175506077 711497767 756637883 732762503 562084091 757028769 440408749 653813 895315371 956487335 573274271 67360257 327304665 337390211 499140741 535094109 886491777 641854853 708752027 325651259 510425953 246900747 351885411 143584091 44391937 774996853 872363437 576766213 825064117 510924077 652883339 350834693 284947857 598193061 455468377 346039217 815737719 541491035 298511293 127754729 710806287 554354635 221878177 163167763 45412809 667240069 191912765 692707357 843286239 488755225 29645577 856174461 655537231 636755231 476821193 840970801 911094241 582796605 151444109 546861503 19173927 622635037 678485417 366022197 257265017 505234029 574825909 161154859 192057591 461846251 721765273 371948223 917108105 776469337 831816321 675138711 713829087 531041153 176941279 115029215 231219825 447497781 861413235 6931279 779007105 298254413 845786173 517588519 465000725 104179631 108886923 487416105 893474047 497952835 312940275 271439015 59854549 751551741 580581453 14375543 747361787 145936085 8417475 31631605 7802775 244174799 975535037 405711881 685223831 177493493 778959855 194297889 724293559 308987993 674110553 887246131 369162871 465459219 608696635 422065597 71308829 368936265 337952037 88650693 885556667 636157989 78534633 482254297 642749991 140651989 144026517 966797841 395208963 783671705 827272631 535454475 68759993 992410543 527445973 551075565 733873269 330124385 900877037 267628131 718547763 5515525 839536699 16431013 564657841 210206963 454219335 989508979 146182009 394482829 482409947 736983057 539586779 262763069 53576459 582357581 917117421 697722231 57346099 177366141 660522129 641543091 67944697 669735299 826408047 35234677 471799625 927495617 634835449 511250247 83269717 926253093 138220387 983603899 655262619 320938793 282777521 900000107 882757599 165055945 255615915 184044025 700007981 22147725 706157791 446760207 797827291 956568703 942859431 93076577 980070529 442377785 305944867 740159911 564578567 550693593 608288315 291972005 601754265 907731717 408726687 111641381 203250859 380767721 943306439 805818361 960719095 603959359 793075189 157225977 405896835 887094081 351997233 665470475 760173213 917365177 988644425 911469849 622609877 817850099 150245077 538043667 465294603 416188359 485754681 596831731 487834211 85075345 3236251 385945277 376338503 387043129 218810091 413759611 452622445 159347757 545851873 143676223 578202831 521484643 880942079 484864291 456639669 860929625 963348107 300443977 67287465 76466199 295884181 402185435 640995455 330035239 898415353 39705613 351695955 351674275 469860691 795542295 39369611 622698025 473360655 566723389 869917393 321589983 794403163 774127561 827635227 134343025 886359343 210748685 922939301 962413849 128669259 826804579 208912115 242077585 860151353 601179181 130179025 666373155 406021961 168297173 460914515 973691037 113103761 995174351 719458005 289924689 971560947 998002581 420821759 763876643 302547735 650445223 760822455 203033205 270726767 523936657 888108597 121967671 511431985 703118821 431151095 713081823 347490653 565342525 440484285 80317803 95739069 553734459 333225877 72164449 480027615 318886281 607132885 629682385 498341149 818119387 194202389 140241487 228265879 972779497 420723007 184925435 698958901 82773113 177151099 465268347 632513703 960384081 475261245 564218109 109333607 935122499 99592773 908779573 41526707 958867757 228072339 52074085 130497683 611056369 196739447 450270545 775283673 675750261 509061505 675674439 23545885 833768367 98165651 222657055 101184703 78791831 584439499 674542133 654043879 797876275 369960089 783056241 141666949 402161801 21601713 72211009 898281809 357690541 888631055 968530077 897954252 681093049 593000695 504680703 64176191 676099023 929034739 823402863 539042233 620402969 47136733 809374845 414513939 571571915 631502027 104800317 375081965 752706079 208140325 168417615 853118893 781827925 274641813 926211545 851396231 726426297 288960017 368423561 310863985 595560861 166263509 145137555 662253613 877915483 97775205 860036537 748928065 498908757 675650959 603623743 402325501 294787831 860317283 543050995 670635133 602964657 966220609 286007085 647968669 432623869 870599627 368642251 477140233 182873183 376924653 236864561 134179629 914806115 299326175 48177231 414231109 225942935 782473753 830864795 497598287 575865495 547210339 656746261 732409109 555189509 382070981 58176831 113714471 860468619 889451925 320233259 326925019 213969373 217492849 764825965 651947091 305800117 585946685 93752100 581474679 272841171 584011299 168213241 566801657 901908227 820710041 22321687 922351437 154380055 464161113 607926069 899265975 681728489 939602795 305713039 52019519 95699549 731405335 950048751 691890099 47030617 687789045 707733411 380068525 324298451 323343841 820770175 900655245 262456517 827761147 951474913 807294843 307015727 669350581 606016691 537880679 271068701 659843519 958144095 817161739 12587169 210957589 53720797 355639781 618177495 805107711 420602795 45446973 115195101 29087239 347587537 871098917 612228833 404535809 551511771 870138997 156058131 41298699 22902239 952872141 262673069 179604871 829481597 113175445 229475829 464350243 281704923 71416827 142022961 906681041 84804007 552740605 196550325 27920335 129976599 541904469 524352219 536851616 525235177 55417743 739589893 510570771 262051683 403437307 842187423 801906747 973763411 578570929 584890905 296266099 613570833 928294799 620701167 878523743 454540411 561803841 18346913 733415149 722970869 976052277 476791995 828199503 91622513 212167331 874500047 480129541 290481761 300734859 921617785 262890959 72511173 722607799 267201367 813835197 68251428 511229623 359235863 131116319 32241549 308267489 640861033 635451799 674889107 681652567 383018249 519806467 595832665 156130307 583948215 516290451 825661055 467661713 997478719 82772667 792811833 534838653 612820083 9290295 139588411 207780869 294083117 251752969 762826947 677456179 935849553 538367617 803447703 984455125 52374727 801739569 540487175 21764741 496845953 227666935 722466791 228105891 531300475 365502963 773850005 674280281 963413685 451441815 54764795 749766291 642784571 662172819 38702211 393902091 685632287 595897061 57576999 489091139 125261181 368303569 302679137 794799491 21342834 600175587 953756987 50104025 265938479 982319343 499081537 731474719 359286241 178423571 132210825 546459125 409566405 960579505 672818101 254420163 907302683 199738999 236225255 794905017 745240881 339154007 349458125 171260623 679617109 704934033 332489633 247947975 766910435 978844581 231672863 215297575 187598909 516271713 857604237 29412929 940056527 204336859 871573947 427854381 117926921 969434477 944052733 887954891 289013351 674645947 700738099 231794881 676205931 46234035 760053953 185371011 876702621 17393801 293610137 365786182 64808081 190286263 653827117 635350031 495896035 575687685 803756671 809175969 334733361 831101565 881104915 458505359 828554793 420198769 719260663 310073391 556254587 572751235 779267777 635839139 405296611 443753105 901366675 951664597 17220643 377184461 609250575 805091955 218386691 798249895 245288037 708889331 119099479 919865563 932845641 473087643 694567931 172770161 922684415 320281199 987457229 933723315 980298823 434090559 190187451 688548149 315762803 74272165 511607477 629941717 554711383 695495939 931305911 853852853 543496275 88710269 630056899 827464257 463501387 548698885 573297121 162883121 731739313 853185877 308008485 378410109 859518583 814089963 716589739 240878187 813254943 15717649 394450065 311278983 796079019 524996053 875758341 492573861 430661039 372300561 114851383 458661603 388087867 614334821 146112099 83552931 824714483 88181561 952480459 580730515 339121913 66746301 867930807 847981735 409595389 526343147 990149757 354987801 461623605 57793409 506621043 682034033 336713311 3746823 776939519 737075575 868737729 659599311 150132873 602178115 327469099 352147697 159597699 398763311 683088369 70454349 727430761 146357983 208512499 45110921 297694139 16390721 783133591 241572121 14959623 57123209 793216713 780442421 527637467 413241139 590289155 170064089 187748309 306452227 103069247 571887571 217191827 724126467 601227783 863516333 878775491 906905227 2966633 77516741 183985687 960460087 705934583 936177209 370685511 33494503 28628437 415708911 890177813 417709517 610847909 483288475 113324623 998735705 130655639 987044275 740275395 840987465 90104417 737076087 250900815 76286881 165550401 13409521 7394769 393545389 323965439 739980529 139766327 505292801 127933157 834158605 749522291 651915643 478597071 413000617 520775805 157109309 728514327 308769001 282355031 791732661 472619171 706085313 22595087 914578069 121725669 475528165 815001523 730599387 544988111 906835931 599661409 280089035 61505507 918118885 599638327 967251699 587704101 947208985 542006115 458234659 496476195 783542859 741897495 193685627 307137269 535322909 21266315 352389215 632610873 733657847 719158019 505978487 500163091 875505675 422357447 699041725 805127475 267835469 643473709 505601899 767985615 762748033 263339659 890145795 450505381 277249839 961710151 877723733 488659453 896927141 254210761 727701619 235238051 547589373 149380483 699133113 902996717 317444375 217943537 9222859 215940539 843518363 147641493 677208217 42015603 852194553 75924985 288607059 895691523 216365417 378688429 4952693 526936799 962640365 430619471 135839943 562298889 204516683 59771261 258578771 23760645 294999829 34793191 36241539 624512737 361895587 384723257 628547763 162623541 526653973 304619057 957715975 938647071 204348241 109104785 999149717 953125699 970187530 551076641 100038099 130658513 871272889 673150391 877971837 645295999 996612765 380778027 650993817 675245709 961439421 833324893 836180591 260894397 426877931 871880763 774570901 415906657 921677757 34318007 607697641 540046159 758814871 140137673 997868173 151950307 924611229 178972021 272860399 88067589 311813315 273771461 320422849 968785697 255613375 76710344 587281667 115889713 394021649 59066271 274412533 235547313 536803331 137046631 850485799 508261799 488234149 591081291 84430953 313918113 393405645 507938429 435288027 482711735 513062685 402261049 414186721 793755015 198813695 701020609 153110565 159479861 973558431 117219935 503261597 915539057 804056057 212357219 295142275 993515891 79857099 627988523 422286175 384768757 983521181 307813143 644152571 173085761 463356867 466261649 689860971 153780003 111887953 699293453 249201163 378044145 767834665 674035971 277292417 6282635 222870003 984127479 966182071 933916759 704608031 606228849 231183331 731681091 178079975 886620167 476526977 187239877 672993097 773322833 5337429 139672539 788984845 103519729 6390123 89748747 144249285 999383185 680803095 523744611 552743113 486025443 452614647 996194939 583125049 250877349 997697261 930208881 671401725 578230421 330609445 19759337 518623941 38080381 842814231 119439381 601814793 773954867 246536571 844399527 904054795 192135823 831349847 157736415 660269521 222794611 860596217 21774469 716449581 427613641 245919217 792295909 67761333 829568131 823888927 388399575 558135245 872336031 966060453 250880183 941827995 382470683 962928113 281212525 764326413 923985665 751706039 740949351 893257439 976374887 29827057 762961817 662384273 662581605 474113767 390317445 293387625 153438237 47510817 287326513 52628089 874951353 28289655 9719591 666343063 725261421 610504451 700629889 833318757 892820081 340174891 355202269 808521293 617768201 157710233 48332127 168425851 651696767 765264451 293399993 234279147 420402211 420718949 412776989 761595739 741024595 493072771 245297485 630935893 270021743 334315367 170811787 876291625 621341153 564226859 854862249 625218797 31961885 958636325 138227709 328998275 163105691 792789757 247870819 71825299 587276255 485746333 440643651 833901967 537983091 144242493 349732747 324471723 345283305 933965397 992096689 340254443 958367963 6683307 141718451 602110487 574759659 706380619 610756631 762806973 799931331 267185289 349919725 156295735 862349079 857348355 3728329 486200997 708765343 628209307 373509835 139908079 799587103 629919615 284595609 364275909 239071585 651421473 491914079 771215263 747254071 870886721 265946325 886866879 903140987 267899615 532609851 86005805 834272271 447781193 489667925 987668663 19902685 305879317 864435825 336064757 912979673 239442716 69434215 554364747 642692091 321007493 99623315 407532511 196491591 317483707 80452573 591642017 73370567 290529907 770807731 871735625 442627469 943609001 712134155 628509273 3862195 907921055 138162275 775146518 349697115 703290853 932044737 106293907 862768047 338683213 519441333 15693737 474654435 374883315 994290515 744364023 914943023 574499901 465543739 348278243 148767961 65558741 770005395 390290593 982680613 574844851 911749895 177016103 210446955 360231693 303271377 835990325 541598723 173914221 579577771 639230037 994922575 606211485 914813919 739025623 304243899 43173809 424661561 89971921 252103607 70174215 829013521 615632165 854362045 226109249 192940867 42167931 511872081 700331085 589872441 245958725 45950717 336638813 33856477 639618489 81870419 857006319 539189415 504166103 775230189 603026631 292556181 355730281 95153261 732801779 535215661 494715389 650741373 589320899 540035199 326062829 534022097 354356695 951485471 917650777 136569123 906935057 189510957 501098025 573524531 654207391 722605391 928747789 438363853 445010421 614238897 249010047 358068675 477105357 479357197 498321853 21172719 156442159 181346463 326185423 5989171 319597155 890599211 624946311 922961273 48174849 952085765 122967165 411657141 676262371 471579647 48487185 208978657 419562031 906286199 144012651 599919357 426887503 248519253 681547643 75873301 157951481 458595847 250799865 178007355 890236711 267591555 969913959 251085705 946734369 179407177 495778827 253200673 988085873 197452635 575827191 199437871 627060971 398564939 250784771 333033441 381402283 317185581 157493455 187373431 773318423 751832993 860237505 259653935 179879387 886289101 555191309 425432405 495502313 805247069 480454313 643024699 381407871 382620299 76048727 970638395 350833697 828142611 518482589 638477495 410370971 640185147 483434443 292707611 6851841 623502545 110621181 646902487 40000177 788777261 250130703 678050663 845620301 290780461 160429 753847115 739304899 205989685 764697923 367676687 525541445 524683317 842855693 509017669 62973779 772928163 245481225 925670535 416806317 313906045 469959169 501833335 36858977 110217547 636115333 482717377 86643141 771069721 32770795 749027605 492727923 205246845 712783957 549641005 695627855 157575063 864581035 698336207 109074311 860210701 215459743 967989697 237384591 935277069 606853797 280006359 739884067 497184331 546155523 813140203 818927685 777375753 529449659 798116063 178899781 555208203 529738401 950746527 963412917 429979553 106357069 526717211 868089456 239439775 780337439 581410637 956229535 483967331 475470911 402650939 863556521 144784341 479545759 720011755 723020357 921492069 513923059 298335089 954799471 880176645 54870207 76775399 491645035 473187893 783940937 346474607 567769285 98082813 709936035 165127221 905655633 550120169 728800165 502984553 230141229 783021583 176706543 605981767 67245241 652210959 736598249 166175759 603514023 301315855 130856385 714720781 855776999 900224445 332149109 929502355 652381625 952281679 829816255 477316603 185748637 803927169 750385707 398274985 408070497 236517279 465491209 524274435 560225049 595409265 533985905 574541951 315703587 201559889 203361089 649040535 277546017 735487261 114797093 383279819 55312129 278868537 663300235 716122281 399255543 849521301 47113643 12451007 921910653 865721257 753572741 278032809 792572251 455658863 747680519 377973001 35244953 411196785 613340501 611626123 89887119 678572987 714549809 41481439 788853463 440750563 460310425 999754945 858056279 479175177 198606967 459539953 308708153 83808723 823823479 309241915 75860979 723263855 514409749 195915891 605222719 313831571 894621839 706510191 712495397 838972285 25160943 189820691 280510447 285751795 940676355 910088523 779065137 777265219 236594533 48795399 142054599 441167943 817134967 312206147 4457431 761476695 390705245 979248127 415616971 964493919 491422729 416006983 586244443 251815113 329065011 35000879 179145599 377586061 260853597 769266637 674449533 733994283 595227087 657127493 175686881 225526181 439179415 727364035 749276799 856796047 552725647 835977591 389954421 863664377 919725399 414596765 139681061 364691589 797046359 10611575 187708731 329964121 911645631 423038029 637783215 944512291 790480775 739717235 370348729 154859801 352113265 341751619 185760735 273165561 317039875 771727137 501903087 685967113 390395023 437953653 977957369 807853081 929473581 934522545 807482717 884947069 983570365 482984785 326981311 14614293 898205925 782741717 475487241 613168197 264067097 76582345 353887343 201851135 631149967 63339969 989577073 286377909 869404233 115515475 685518799 334082409 112488717 51898403 771933337 992117405 384832365 479900125 812939297 496927331 396550847 522967859 137380611 422533969 31135525 326834651 831863077 274438275 269813897 671167133 686602417 630733985 746159513 982094399 922540317 320103641 591731915 517363861 557664293 375871969 482568549 469176187 129987277 305014519 83281515 301313487 219095649 99681507 811381165 258140287 278711157 725122799 566567109 612343163 367463141 969494517 392577557 555838655 735224535 973130067 141194177 355415885 173382583 218123759 301324475 879995949 906189623 798434613 249186237 852807029 78276437 965257759 416860229 250782523 807322453 336154151 460955037 39261349 450863299 500160087 85518803 729057497 594797173 830240315 125131969 697686031 585322373 762165995 116079879 854304893 876999255 907414019 49520397 912982373 711983001 177213613 234570755 191683605 998741309 116335763 971786979 612929755 983612291 965067501 311004011 113073171 294772203 843924345 291775779 786265889 895142981 103658365 717498461 913969517 460040609 102966985 647557425 919390057 338612063 262068401 157030015 117852561 636230179 453028117 496984301 58250087 389474519 52569 158691823 667965043 56165297 411643759 717130429 585299275 167469355 140883659 754679635 445582981 279420173 674511721 158679423 726630855 346319713 235286227 501392331 426441401 319698811 939730709 460749461 711708173 759998199 395036103 588285179 508766847 876837051 264583431 722443235 606472657 344201713 879706745 119425281 204426699 344895759 117269069 358938059 956493633 823377617 411216441 383689345 236571919 319565115 28515963 505195309 213978389 432623257 546318041 714059935 582620475 883822721 630678435 250802541 901723257 735524043 892427437 459737339 9672133 238059167 67927127 172694125 531589411 332297065 542472327 212905399 39753371 441656283 507546539 412761741 751228737 833503989 584334775 421342069 649292849 424105719 810377005 967521457 191547275 818385007 631540753 472897367 178946425 689938227 730676465 833625659 273498413 999434589 689924581 748256511 813637091 248041553 749866379 731500811 22266333 695222717 389499911 850640529 71539555 449959573 56566281 503491973 957823435 969537043 720295879 161710763 581421675 810907327 317690367 718649995 981267369 142959969 509260025 494614131 154144237 702766097 826200449 451887485 322372267 904526633 440812525 297708937 755218267 606477903 549433629 470153279 218249855 142305133 676695415 107605519 103698085 991198137 5612519 163365681 108031835 851325103 891877095 190442151 450433087 111385363 609948019 559082807 572390385 895145969 240773649 224911475 755911451 368309149 29852623 687234995 661215599 85819571 912653637 388961047 158832297 347285785 550763409 981048965 44011403 382639355 659357015 814262449 513322719 133708235 298491335 954799121 653792885 106822471 420075927 318130663 807257643 6242419 333421063 503203641 108065505 929102491 518831577 756040153 873298817 592624213 974435423 6748509 924469757 850966137 291458669 308996137 613587537 400534833 539607397 373511265 210561407 800057059 146983 658506489 197372561 260343625 411066407 91539111 313853847 251161691 134598233 453440235 247299759 367674209 895855675 258970895 168832249 710558691 385638099 945315619 302813599 835960505 627155887 734174461 332296917 283227389 718179303 752212287 948185811 166425363 789672217 936983123 925576925 45866921 873677417 675701605 850557499 96955571 357114759 293023089 51617603 586277485 308634025 173727285 225052235 819791449 628231311 553080123 495417529 332288583 354894203 864483537 400487413 300639561 107729983 128188177 119162995 483027643 42108465 447665883 7879339 297136963 648887085 891586263 764435489 300744653 216588443 389790325 179608159 94585995 505812073 161509103 485030901 492169723 280322059 398092355 497809281 697944031 589442435 343071289 403008675 29679175 817375829 948361059 429319941 976991879 517650065 272286233 223630171 41830967 438713291 622747003 70451293 659784255 793933859 227284081 92906959 631251915 829121341 726332587 614089595 874038093 28667209 468476833 538719281 213822853 555344383 961015701 646820047 588941939 398444441 60263565 406409013 517667429 253354465 331497819 480706893 529625329 419639075 962904213 848607243 810365935 653553973 488830367 688562791 908270217 708060793 355912095 737229924 589489191 88601809 559780995 439330831 988896125 27656875 792967175 128373365 131380619 372038657 222144171 481837749 762822289 418874703 593791669 990149359 654276895 78366875 100483895 432019277 124328711 268903029 259771655 582295811 624673893 737608433 445515719 850549065 167843997 76317871 270915297 376677475 959479135 127215571 159214721 776598683 630418331 381062415 955951779 912299843 522077325 261372565 831846405 754192819 590440637 252548389 191527217 637683793 269847797 5378823 507981175 806541191 754531657 991113991 54342637 66007235 855300629 712419709 366208629 171341701 715408127 799965509 76748983 801442891 847337971 897430215 604834597 496994209 530374691 2384625 698723827 732673815 786110733 292368953 610359845 489926731 185233269 811375005 624334979 359254493 929102439 961970083 186754715 373436023 405971001 914106203 930800071 666766797 702190979 616957273 121160743 501606807 454081071 905441981 501441955 229002905 978429539 431111211 494019307 181425565 996439449 434896085 539383415 720802933 829521289 841188205 472126857 671851771 993765177 873231669 500959529 110064657 149352439 509737713 401980709 46848161 976985173 264518639 450950421 165331615 902661423 60059909 405670749 549820931 485050537 718440341 866188835 431223251 186438961 602444929 437386327 704892179 844267643 132531513 378925745 666964443 111433857 839566003 128085171 885108803 84666507 3249261 397017507 962304877 234866723 483083117 585852305 893809285 789981213 581859139 640426585 527323577 918728085 29300995 500233369 581787465 750842097 78387277 364704439 568353907 21176027 459357253 643993063 355238531 514228041 23426717 328487711 975038923 443914871 771966599 596925983 567186083 888923625 988830661 890599025 588716147 105214315 240796571 781807205 667576479 772051473 493544919 680635409 212195229 563738937 243361233 391314007 874006501 406215045 658363237 86155745 866905339 337064929 914134011 530102299 378274409 221625477 650103681 617047617 823239361 854206953 372362605 218921041 923724445 12472787 361147327 524328469 446666655 587899471 909841913 636513307 351246195 268939443 697813037 392835261 365591241 118286487 249217007 280213275 429141595 473481445 407652191 352643101 586198509 220634821 745227299 540604787 57364809 34269867 284667495 715145367 747843393 689210199 864522213 427503047 729306799 991554249 851245783 460139275 872737653 55672145 390794503 934474551 113208191 692961407 331708099 725226205 296133053 660366389 126451677 42491747 603233577 533089169 629415097 162473454 733630407 831181315 61579577 651105393 846359457 652684351 526371277 956033697 515599305 361112385 577448555 640463105 664491865 578636109 891343249 659480535 484946035 71988975 752256327 491487797 701903683 588256763 692783129 363557107 407458041 288856717 872767005 559977905 259584207 367777803 15299571 729486293 841079049 145375263 308680641 858846099 570925043 87884735 70012467 227357409 585715929 200585769 285083011 555188353 782740765 527007197 639780461 228329721 658156827 468515241 592132407 829066649 798406975 847556001 946624687 658407293 678016765 73737251 409905965 168142465 95245775 793866961 112977805 342417489 452098101 869339545 216147000 511835481 771470011 292731821 812091931 502813653 822600435 582356619 431880107 207678149 70734455 146948345 622135271 658889453 306245097 517255679 784871767 415586275 792010229 789481461 886830343 777526523 101706315 360021877 718766989 847401047 507468967 634137187 271265289 248013279 526533065 564084461 55063329 913363525 63257725 426632839 17225217 375050237 228095637 569294059 373982051 477776973 775482347 249106209 8347267 623829559 857064801 20106867 813505063 293392783 734790115 243647858 216518045 330617837 814841697 47590147 122837437 392090545 787637719 202317633 426458597 627885827 479373893 126430879 650951929 630042837 21064119 319075021 547818601 165210075 85371455 657152969 63060781 920119705 721505783 250547924 2546879 538558293 775175681 32646017 675666473 939121441 326300553 127519393 307065589 653344981 411146943 506142541 408244799 631897873 538487775 84047341 866346913 303883325 863769129 414001965 46041667 24908169 707109609 814780159 838560723 656786925 79252081 969433505 957880197 496548137 120314653 942165655 969549595 104179913 487723083 530680237 244870105 869717783 146537321 493233657 655589263 453203505 406489319 884270805 602495889 699365107 548354367 558985445 429627837 773072393 20014071 927103767 140448637 636872929 917580437 465309085 326168763 96715955 950476205 51213047 609609455 318452607 548940761 328383717 274801689 600405775 315104957 864675191 548320699 694675443 141074431 664267261 618695143 860319361 3099733 123829273 856532019 793051099 538003065 545691305 529353915 933309163 660036139 993525469 162525479 93768029 399911225 706397481 343426981 696020653 798018673 84206665 920185835 399389465 996523183 208668737 482289719 739161259 426977749 507644763 756401231 299941425 96275407 21050159 619560577 135697477 497954701 400672665 74612389 733359689 875209227 961357243 179391769 258926945 205733707 420293889 912914369 762045823 8928085 58154529 450404111 122309211 500141885 230482455 560696565 477875831 812715549 38325031 463846389 646847515 595179545 529780701 131758609 151438421 53014359 297299469 707841499 342081023 531490063 57686997 663814505 805267129 822032501 337963671 901264215 855919595 112251857 588982785 982724557 118086085 175415657 462066948 7917433 173378111 899225745 999039715 249942673 878460955 328255653 926095387 55327187 507953119 908376579 454796154 758468997 970375901 879528729 487376153 240084087 150728749 190471511 144943439 895444733 327088047 408177209 12418497 38045175 248652040 987288127 196958301 778552265 869455535 120387063 432108631 427409763 284771543 441852143 747417897 939611965 885291651 708743875 156306331 818228305 107124345 904925719 713467063 451072297 613769291 859871635 831969487 759319249 233876303 245545193 484396677 744029665 651983785 178710485 49998263 23065461 952675645 654933271 981786775 352568373 357227199 734954363 781609109 475940687 396191907 163564757 239307117 865659257 444402735 338104059 908958247 94765553 733986407 796115155 134212109 233340285 490316059 33555779 55066035 953872237 470415845 121553475 529725943 200524949 364052263 898716617 95837435 184326229 733881605 871251147 833381675 63900051 393704049 903939707 214554687 845750715 528699941 49668291 296787503 541559751 354400671 310498251 239250497 140393777 2724393 371843255 822649857 327764227 503292369 393254063 79386691 678549705 417923185 405477 829935653 168546203 302699177 939151509 521653257 269276437 930919137 141639167 410844829 329152607 168545353 286329713 141947861 138678055 521232347 588834617 866533867 872066723 912401749 534502325 587676263 277414545 410103871 912322627 64369425 894645305 804191979 597119569 395023105 413005671 130247537 636511823 919322513 447965553 299573425 71875257 431765349 814172727 941532499 613617937 389293419 97896733 34037957 428891359 593682903 987380757 47993413 754849977 641928997 15684753 331899341 767640885 781523225 527939219 253580587 243502073 303903677 941129119 6757609 486173357 191852649 72933315 428581221 889921539 73649849 172875415 849225149 456604343 152721295 955405367 769150167 836618379 480741399 128972875 312693863 886163783 313303239 257899265 802427363 869983169 30739547 784975889 358576011 205943503 62600407 129360309 537009001 669858903 505767047 969917877 609232973 793611841 551318271 807081057 757326029 826179967 565878301 185049485 509165645 834846477 21170435 941338009 266975217 726740205 300987167 916982379 641442733 413639975 801544483 559855727 689341237 976597201 917934605 24539551 811687695 870418177 971247137 634619511 362082173 247966685 596833773 868103933 640435093 725459341 907568449 700877759 357521451 795098435 425352765 860883669 240025825 647632955 948804677 631209691 543869215 374206647 207613187 269316091 509869335 938902785 141731691 802729695 365603005 150634089 630348989 188175295 495462101 287873101 970907001 158318937 143802343 261907723 354932847 318773235 70843201 529170193 868335537 261912157 552977405 901513681 723659163 993451245 93051899 29383363 973123539 147679871 990296803 522408555 178924099 451678585 764074277 775007569 31271969 104072397 880606457 362857739 950786281 566232303 462084961 316694319 214645085 608656605 300168995 954220643 931679373 815481117 137209297 992940879 697163979 563749565 681455811 155472807 90677429 502839381 955191321 444157219 843463213 28929793 533579193 819764869 682072415 957923691 994281047 709109915 927626177 624180413 782803049 822464821 333966609 995326895 645587761 986448427 379717199 502383999 958167989 373101667 471709385 445644533 47108039 975148229 353321747 341546845 820994813 461512005 764216843 956340621 942240187 91709403 969776595 305448677 403516453 241527177 461618393 941239883 870877999 449057117 261796047 366743341 204258191 219154279 559653301 774155391 530999493 114552255 2933451 696297923 244557339 312460171 503843745 967395325 950721441 414030323 197312263 705602749 604485933 379864363 145232925 728018711 884494177 882391915 877882183 716287145 907047591 320551927 977389359 535643805 410283051 870796823 1273803 282877597 720149225 746163745 138745685 52637153 509836447 157038701 745493845 352828457 980693207 479694429 682952597 839119031 76542431 817073499 576418601 787743581 532032977 494790617 605216109 280904049 712983437 762756179 681014023 45278415 724793275 788138059 93623521 769533663 741252043 153431883 704748337 341134221 583952119 492082149 894990451 367788115 400398141 652269745 607496811 631479597 412619877 355294037 990086949 649133985 621819137 950118777 800462837 544364479 636673385 497248721 992319609 864041755 11400893 633215253 463655315 855811027 725767141 466149129 324909681 224945553 829010577 158296439 215835013 831602815 833086009 373507887 374087053 385689685 131982111 185294095 5105805 823123283 98702665 790882039 991087827 183506749 661074825 247183057 761726959 672175201 458974325 430594961 41620417 327382165 893742961 560054319 972121451 898465337 704109987 287790255 657885787 571167539 705854713 354902811 757833029 826671089 968541999 788071045 952956195 93574249 654156997 939126789 674408509 574135065 917228545 318933953 202411291 956034567 503857141 518879203 46279573 141881283 458807671 296023449 707403205 27936865 677980201 764508193 649818385 765333121 932591477 469015485 997248803 382776903 192270215 717649591 836563185 864180835 989999707 406386273 858980791 83526925 753532081 808849941 926327289 759478527 735005965 199161909 56276611 278186115 93776581 453502763 275498857 665587813 662995693 637804651 464967431 402422525 291255143 736243053 317549827 447397159 989722587 549505717 745206599 906463051 336641211 313118413 793392395 69537367 901612091 264379207 461268935 4893377 521951583 315643323 432099393 815294855 413727471 791498447 286692229 255501615 497923193 64242477 939001319 166328521 936380759 776936067 973410821 816177385 632903593 920822417 468210625 598986415 453962583 285678101 277613897 627780287 89054993 406777307 632756239 708085323 330144081 397345715 716797907 6762501 991269715 187302779 149462421 43140909 950125093 940243475 225103523 709565067 713845139 680785511 152255379 138790251 989560117 177347685 46936895 226183333 613001583 732885517 737098701 536234389 931788903 237296733 755745703 16882469 719922445 269310561 521843841 115298493 61770777 449910313 804577883 22555481 194492173 574769619 275953271 83284087 93355823 736912511 855919199 885194009 939932305 557083481 243363563 959173841 598390537 881397393 767755061 257166003 324354363 984178273 398453155 668465759 669676427 515876877 531905249 125401849 301863213 405064415 7097569 833065011 997978903 561369897 440128479 330000191 649920777 321999685 435415907 948692959 141368973 524444309 894013239 250669399 172399603 351701635 918616177 423662453 853082449 392821123 606243945 475639697 847834505 746988559 883080647 850367879 101573957 898852775 129016183 882954431 11721713 987475415 337041323 886677799 243135689 725254959 70338273 77079605 651253195 502179917 422192349 727290343 321182913 150194937 77360045 815948229 514834489 766598247 579913377 650342361 509372045 373437887 725771097 998702527 187262173 973209491 295094455 142102417 394606097 796127655 417272297 134210293 660654041 606035397 487747939 642721821 99554223 855780543 977946079 711226043 241358801 768050543 218924389 156789521 385182279 167291831 255699517 533103843 506707429 597207427 989875199 374537343 483761981 58794947 312851589 594237373 216335797 585845617 412796149 749286139 753415795 666740369 505126073 85142045 385121127 174162733 404327047 536181139 867626571 674964567 984994651 867133267 874167195 577472297 567787895 476690395 200502691 110685639 985671019 682590515 512485235 620728407 319903497 104675813 258033123 20262927 749412975 721747981 199547027 897118761 31570685 246507589 586814185 366242021 415494757 249716915 829287705 56106639 876649367 906350601 308194073 450353785 39679953 783900283 377280939 864323069 788224407 563811525 785519445 140022653 335942581 625622321 628025703 746511717 605296703 605995661 602556157 474001701 84546451 412639533 511040499 934070327 906641235 34939887 62520309 960490271 784829293 175430459 465113967 452048487 673267987 735993345 52816029 174715809 668520389 232007347 804009087 703369319 870945347 582441553 289096665 931946333 142807451 971404641 373077057 275249961 432335395 525490931 701518091 72294273 89280117 249564573 25635929 913019423 896781429 527580795 202395667 753338819 160268369 332759093 592760043 826617657 64316797 176603127 728377175 549911635 832566197 564696187 846096535 993213163 685528059 141846781 567921587 19427813 306719135 46864451 635949181 19237927 454887219 956957083 326350477 11555239 513196947 838763485 27832899 516963423 23674597 954553447 449234375 454144847 760197523 427615773 183447563 245791107 205828947 948024431 765371331 6919437 980666401 721148499 356145267 128076295 71407425 686100297 864142177 691419541 608583743 834923603 54476447 858036957 138732015 734550787 400260101 384360469 842734447 528200815 743538227 308545911 419806497 670088755 330844049 611624003 690950065 952152439 389345615 563162567 214293269 973055975 183858789 2131025 125598603 108272829 149320851 862741565 647456915 560324021 984686437 620136173 924067323 294486037 143570725 903924173 572515031 208717741 953511409 598104909 108573317 49499089 666048677 8695273 395624359 98531423 296196077 171222305 935437099 646958785 785334583 556771969 119819077 86832865 699110843 896670363 156770927 455027255 325703545 884920841 42798193 252549315 357952059 141534831 370387795 629210631 535478929 575188853 848433773 740709909 855775953 356130765 60027737 887499907 850669597 231054385 586612477 219066221 450921823 441666150 470432387 72952955 359485507 477238325 21145697 711481307 201168453 230714479 706356561 914126657 14755235 747361263 216750939 447021295 262214759 73628313 882485961 806681257 275154783 150558803 954531631 217303743 381550373 765735957 565381225 20726533 630562075 185747667 613398429 993204699 733000293 691498133 88270903 472482597 204940533 702221153 156298985 406719829 318753925 915235915 852747441 105623133 703695761 142852205 299778003 679137469 424050791 224148971 997066459 396913277 832445459 684603117 365379997 344359977 314294639 371754661 757038135 611519449 538685467 859140175 235741195 750095401 916727167 223193643 749467845 609688385 310322123 656342149 32612701 393883599 417348855 954665649 836058379 728982025 395047877 105691653 601011285 317336749 395601083 470071525 741192713 292481025 368224555 720052157 913283639 72938195 200313389 82571261 998931263 187577725 677731233 485283105 433865925 551633111 911032109 562643883 117868723 445710669 390544197 435520547 914362941 35997641 806380062 729013789 321389283 567498437 102832317 797061939 992704357 667267387 603110373 507523593 684800723 746207157 895434537 745820487 551919487 323123007 183534047 652930207 712873477 669857393 929501227 933893581 123147851 240006247 752284657 683015569 902105211 645190089 579579877 124909753 769907723 621236165 33771133 668330771 545482935 618005265 740752633 435361403 135904131 16053483 984513635 338361301 449354683 712238105 123991177 256127497 944006131 960909291 708617477 792831753 348977927 675855157 473697337 185700049 443667741 122493271 51467337 2314337 580002977 432581429 429978663 126759111 435734341 924336193 686075533 412198417 747805959 288096621 561150713 411192413 954394411 562618939 537531573 930588873 21570367 452579759 103306703 630636163 296357907 948044119 136703009 587077051 746830023 117240395 770116171 478175405 736992701 937669671 658256565 918781083 771938211 411078163 324574351 485263053 109231723 540827581 11753171 334448023 209640021 554187355 528572223 180303701 402100449 526106027 627644762 186414949 871319007 78243061 557712761 694017333 198838879 602447875 289738161 427307319 828396993 372358705 166929635 869486051 565484201 511852887 548387255 257684667 662746625 364699361 106875293 54754637 652555775 436396219 171420109 944898087 484205343 258152537 471286343 765780967 275682595 984933821 157137111 531256875 75205659 167830123 578959879 343916705 337674585 419331185 91211829 779236857 30615161 594653543 371327 217293551 326327905 924492137 226524107 16713541 197336123 840105503 854635981 66801349 968797311 200660919 950616059 822012479 474915813 38203367 364472981 562385551 311553137 153035501 560646053 792306073 934029429 775984785 338917883 362690885 644168063 286426911 956841005 845332101 695800685 44837997 95450527 261222997 344031589 23908059 275863413 275286199 491432659 288222799 796795811 656011701 141928555 359427893 149872095 325287519 326852391 143158663 632372905 389515731 959306061 10696129 396321865 627864111 936693609 192684007 505451987 93576097 910370129 939343501 31263771 822563163 936277791 249573317 756297411 331417237 213320247 384461869 467543347 265304465 817197639 435176429 109026205 147845789 584900163 787248563 789771253 378167047 724051301 222615479 50648319 453439021 660728373 540738739 689953091 214875759 819631995 83355887 174156303 604362807 396062543 626913595 369618045 83602167 293262347 533710829 692892781 700365355 821106005 731029473 552492423 512785493 394800407 275059069 440804923 185519613 251003015 137165747 778526913 390424761 981047585 333140215 548089371 140818465 528601001 250908229 587616015 579736277 747977515 646186023 312581423 472018307 832518139 793730987 484883923 377335261 861812405 458255717 776079131 133563291 410985279 696100467 853207791 731758465 767012805 300158845 100827645 426643031 797915577 536807347 506907843 379729395 250672345 638060999 840501883 752874027 918283817 136446713 738964017 794418661 754927861 773323793 833560501 806543369 204215251 107362907 748495517 177879691 570659739 672296109 702193485 509815139 762215031 564826727 199321577 409987989 790851789 103863407 23386469 929559081 253432919 946717235 518829175 15769397 816553741 272953511 621391007 637558993 998949943 554415949 758844711 447986205 415207261 427221801 360011295 576440393 518501719 180050891 69350749 145418113 456016191 423269447 726990211 522524163 977586553 531677755 794764539 636593425 913645235 171583697 454225137 220883445 996632289 526836659 212956769 721617151 817658943 76446745 515536137 842380941 810551377 907874753 373480563 402528255 493540065 813005299 626987245 21547199 779228935 607973499 881345169 454127425 431923741 336588975 113015359 218653693 470482121 236381297 952374943 358159991 282166263 51617057 536978209 12343351 454615513 153616051 314115327 106830803 503405805 834760859 240435767 87797219 537692407 117048535 454615513 645499399 186071555 854227693 825250975 78808559 136355173 680896749 816356537 966464583 783981241 946998379 620395519 651816399 593080549 238724485 658563417 852644931 790628117 697728997 908648055 878452595 214454715 236613045 166952657 799458351 268854167 752190637 829242537 381759311 786515625 236342029 997186053 673866425 772741439 574347927 217571255 86796374 428425967 580217757 38579285 667774743 840278419 217875957 666776387 461286393 474558031 327310843 210280359 220472057 611047057 891300759 16683887 721178663 247491851 227804471 264587353 849013395 67711165 486535377 393305823 570992471 947178983 923383523 950208845 298245781 745112857 54854003 498246835 38524535 533134885 561945359 588784103 161151537 24043815 821304785 916640395 451898619 535701893 931096657 919498761 845500185 616925929 110580923 35033229 948948691 484689481 76320697 143370771 579567487 838274271 289970051 513812827 583751285 543044403 726425305 689066729 306335767 59843599 565455871 250622483 26534095 649481607 312637379 458330093 824534545 214816761 190071931 581950553 577988437 191544069 620067593 139158783 685160223 266442909 905518543 349039697 422797305 278039025 488247741 71202947 169582453 227085951 83639111 195363481 546933037 231291147 915251569 249745755 296292803 868500129 680102586 497645143 769318881 949944215 623787061 944587495 531865915 341940869 237042809 871650091 229830025 824242005 247414943 48990987 684109198 277419565 206318931 551947575 263583767 817130631 629984191 414737449 558342387 223984667 277953181 6327069 642868733 471791601 476005159 325489441 11438615 717689169 530692135 456740865 602043435 338980051 206027497 833403735 652294189 84386129 645156421 740648321 307066901 534801135 78423447 669410475 223148263 797945371 746478535 633326019 777938861 671014537 710392387 324684673 535267449 266586163 909560321 112870247 118869861 189961825 4472959 949574331 382744467 640735389 21617349 664355215 144561197 758397371 803709533 544530873 441718631 946610391 376804451 461949917 858863481 707128407 894370927 488559199 622367655 802947813 384278445 170505843 576131387 723290231 593777095 441666831 805126791 324563785 768041463 901681651 805369317 253717727 688862201 259425961 234439863 668462341 832191249 668452737 662146665 855477967 251352851 865749649 610839401 765574555 178072399 253011131 744257591 449105419 49113513 958568105 620190801 13532427 135067523 930081735 58710851 375317715 249481933 497168209 97553311 683555291 586221309 490342725 942586367 216778729 942763537 816643437 195716613 559893769 813187471 80754775 823891803 46102161 414379911 486386781 336762549 886907419 703928719 330237087 301550797 247020171 105680321 418185733 418252131 434258191 790116809 969858113 103220291 331563545 797796307 454443719 212055615 902913641 855327123 942112219 130708529 955292159 561771339 313875843 666659835 702011691 498747071 374680211 683498887 895435647 360046141 112265631 22082505 605643479 503059357 583539719 592570299 785692247 61564731 960829175 567493981 62482285 62494465 817348189 920853179 90247885 98482521 940763123 378817255 454657907 934846523 285778485 586822907 712748451 532416037 404328305 399452441 773293033 132017437 823104177 586532715 851442201 755553715 790115539 815968549 176694351 643500541 581746037 968392577 744497137 433661079 88739837 675281599 566340777 714514343 533443231 64628011 672338287 537247711 760108369 102751255 24124795 289802097 999804117 493113053 494358867 749480223 498129329 384740319 779922371 188222253 668087607 301843849 811464927 907314283 290995325 881841483 729804037 598944555 756637541 324768415 287879127 827343953 369264537 551822347 863313219 812064831 723092869 624695317 380669563 311772133 792722789 495060561 109755645 246896057 634163257 464672857 363255183 486280891 741579973 283093711 832033081 439464301 318958239 119853151 439648339 93672673 765202203 760566457 249894263 203097517 969054299 679009687 337718409 968952557 9445449 264081341 656610743 914434887 314551185 25629685 355980917 911782381 929036975 446017553 160716413 815694227 503594209 429511149 44862679 901990261 613451055 271321190 979849933 577211487 330120555 82503787 993841905 720774040 606288687 948778991 377540645 174121469 132238549 663410407 527249031 183604455 842800779 456044633 7715465 367806785 633321793 124095313 201355739 643075701 119848363 277098973 409006203 912962939 947573069 674249753 902525355 99727313 25974637 343150887 609103611 159607935 851308573 412045363 759626559 274460945 274677557 27981677 956039055 123219103 218130261 293165839 683421267 141131461 383620837 450836575 459690551 354376873 731287317 915759779 235759917 197084157 58962653 824274479 396054387 194128885 454719997 413478749 732911245 46069327 919015937 356501903 505244231 282161745 925082931 700934705 479203255 480040393 464177585 486891443 966561847 665110543 21416025 10564241 119469675 731908353 93033937 720726091 8621889 86432259 937884557 809816173 575861483 407220487 294863555 939511179 176617961 676518271 165019507 717962811 449951227 659269483 911835495 832834593 722186033 983323219 386313007 670232297 977339101 891429955 981950753 589326659 726648987 208472273 914540127 911173099 146514255 620869151 473353683 540014753 980781607 425205199 292900649 449488689 564300183 885606927 671994845 605075565 893580379 242091673 162045485 62908209 512706167 837222313 396817443 726911323 136152117 608773893 79220877 492057817 356159789 960546557 208488967 525279387 78423355 386988389 821748717 389128605 618300289 938328733 446849385 373702623 751897963 386486409 924691563 726232429 959073711 911088537 882621613 63249243 610060105 870818757 954093229 125388991 206152829 446265223 973085875 573834685 211639767 925318377 427251153 534161537 223080749 307652727 435848415 591226427 721761943 417748551 206422397 984269863 172552061 429071611 276249363 662931077 724622219 87317173 145215441 58506147 40345523 205780005 329340847 891466959 758567221 113287039 778454895 413067109 671923345 208438661 877995927 338374089 658044565 564739197 961651577 304215137 658415959 801021233 486407213 388516005 736374065 384330747 563639699 374229001 773587399 215476153 315300177 251925269 196654343 471523025 746023387 246303823 453917733 93326383 264751975 683690315 550996123 543109707 531780855 491884965 217442609 283234853 341184337 574941691 14518513 577880129 40198663 334201083 637354029 226183597 95401583 835860053 563033991 614512895 175188141 864839621 605983453 377757017 659909797 221638669 478915169 968970077 345464587 550744565 853746563 254361659 126410325 582925649 586563071 899922089 104481219 535219709 847111389 32228325 487616095 674933975 506664295 558813877 194671095 135866573 572438577 336355945 144606247 287267791 707653657 882902485 585290059 891708377 425271617 543245401 817366412 909642733 886301717 88543961 194158557 748674323 567671373 665736391 65474805 864068959 384428513 152812309 502119507 700431597 302083607 289288005 509640513 5619419 660632187 629191771 680869325 613557335 194698721 490674149 457061329 63057299 471230823 998643449 754515949 908638405 113840495 640475449 678056073 114672949 401492135 458232775 389645525 121877545 869915907 806092883 391002571 325718519 869004989 101584915 757698345 998592757 49716573 409630917 770995319 459978889 532490411 841696687 795962887 929293339 723453375 16156321 452868593 329793053 762375667 268368110 787682069 610802955 189524459 407124089 385638939 892347495 728078487 849259685 146151027 440263609 855925285 974144863 348106581 423790485 273480983 852382241 32852161 701161623 215781679 126956261 879446659 454888029 429001335 834780469 878626599 37344917 220771911 55933215 779999493 739751409 280738875 335188533 913032513 733677865 162323765 893700251 56595135 702473727 974572641 33284083 536793395 654604865 547048501 584630893 514935827 813074621 706469229 117336511 403603359 589651025 551939085 682952231 129443297 888010459 628397665 136700781 295888297 658649673 819405309 988450267 32468879 461488525 277085887 698888013 642177777 134622623 343717321 631947293 722703609 234892929 235983497 279864369 912204185 236448833 250756017 97616891 459090567 990331373 743993919 19803503 318280771 743129251 638195833 424995081 715461911 480655491 882125543 219160787 303447057 15458743 377971039 618598747 940951563 709964657 756925951 916776115 93064869 571611885 782154283 177696127 508855111 535698541 160331149 362514913 244720675 181505593 290520857 412978313 573906733 966627751 666526735 815243181 514943273 475464205 51337967 724773389 135497375 12181969 603813001 250575339 112974045 373712731 988169455 825875993 429606141 535752733 450581629 154006251 395175135 78277523 803006681 19832641 476114987 43076159 457921517 704230273 227319121 951545003 483527919 760538777 695707273 419915879 260969307 736504573 808023253 34220817 117272051 837196719 752095995 702907209 902820807 313629491 911211661 260943289 429898537 6801049 459003619 306960915 139447479 423594611 172162589 619123219 374327379 774575589 590428195 195002491 148173353 556498833 656083875 604313621 190242225 14099111 499895067 987429553 548207779 273627615 455866821 240544301 897462789 378828403 28027053 118898537 300768035 704177451 708241315 107177807 730922641 521230167 712049727 426138577 461253421 926742477 691867359 333786347 756143897 23028712 664210861 504249247 910111939 372010643 900042139 249164023 882496479 722281271 858769247 97688323 684511335 40216271 419820153 972924385 234735521 105453783 57189939 703738033 818422555 920730197 728371357 962397341 928385957 423982807 424863117 893539287 709653599 793298805 585175461 946106013 765913005 263211981 696844111 34414634 598556217 936356611 733749687 824145873 743830009 512048329 318071257 334309343 598708519 42077265 208112499 220156589 966897483 481778523 549001231 175607201 519269935 173349679 153850875 107315235 110849255 843992473 725009745 694414503 540073679 32218095 795962097 766138277 919220365 852167697 102814083 187491489 94168843 949844325 426298999 103293221 147198079 629029849 552442631 187558337 795056997 793990371 86740785 586194707 412731777 298441345 730203325 336562363 847688415 352048185 338901053 502362211 738724563 114834969 151731721 171244223 366146811 362401209 321039681 69098119 734399033 945941303 56105677 568875903 499956155 977202743 585955421 212505967 593960947 532074219 642788201 337708333 568304031 840518917 644954675 40613265 238817986 101894341 898985153 661538941 773615533 307611635 384722917 308086747 306372589 833304795 5344823 62455455 178265443 851616597 830488853 238079937 313420593 609506237 38029739 694482245 251640517 672672251 946666471 298187059 844792531 943055485 585073537 264998049 877971541 759188281 293576953 213464743 430019475 422438571 56543385 77500775 616990997 279153375 429731185 31641355 854457011 190013533 95538263 813162695 278667399 957336383 197611247 191201235 95742967 160784931 478090397 696970867 703137453 956892975 643851667 253119217 94890911 120851215 402881995 357021341 884878345 812076539 570166277 928483541 260857967 311670963 721525445 70963705 287052189 204176249 937126241 169812597 518450087 478082849 249553133 523508151 651645673 568810491 47845195 646952767 749850889 157944041 134880803 661074315 719295985 503204433 740589543 511631653 356171481 153396001 138580171 515672995 641656121 662444495 529770963 885145757 835734487 932383577 651968967 667215029 703624127 526065735 235525173 975568021 923495237 443943843 275615351 22293489 386210567 584497671 558965933 820702337 307930343 602710161 577282239 411165449 898624787 456266727 234047325 510367315 54593277 169281845 46328065 874673713 751901285 331837749 79330535 642877053 826207819 6519585 920067101 959952921 277774333 175427011 103894639 412623289 754000913 996987495 477139319 181970931 427126113 164134885 361939859 378508317 455424019 811060633 101954799 236448113 786093201 564647019 961607289 251128057 109853327 608723401 921894633 86828743 510807565 619355817 57780161 904210165 885573197 103461001 101412935 198959781 193284825 937386607 554428557 718016769 864967305 667930603 655324777 754278973 829753463 179638801 209457279 334580883 686793993 373405313 848772915 287773507 859635947 91360353 876656569 620936601 203987983 429133149 17270023 353089509 662846643 927974063 189625565 75989637 475631705 927429137 702590661 160073433 165704913 1775821 677803279 212962893 673836335 630002863 797204433 494201169 148336331 353583375 626389485 974969439 197062221 935786443 655938573 444423419 918923425 548441159 224960925 657520815 250044409 774101619 768496089 97902093 913302227 704013765 66518719 805588399 39022323 329148987 140424729 922211127 975107687 120437083 704453237 680417361 182327423 528214325 314462253 786493867 21343963 911058781 469867617 66560517 623607901 121783795 145290745 418352925 581347891 433640093 370337959 876288191 510938833 747818887 491245535 628254653 185507057 243263083 531986405 621678321 87200923 170246533 988463807 497663037 305595927 459906203 50783553 432350603 767189757 28099579 973727743 269201359 100602151 559368061 448072281 888331779 79300539 361028989 538254715 723752999 545151523 326859235 582053715 616263239 549608725 285012253 139665819 170889589 34735501 40068897 429797071 878386891 452338125 304787055 335281981 560914539 197605477 286275849 829674991 502310017 751921447 58063233 345389507 849160765 556183089 58545643 332624471 590093017 956674787 864450279 651660561 839420057 542792431 879020699 747791397 669560775 695558981 476138421 40234889 869113781 970830627 324097641 819983359 48379837 447600909 756096377 683274765 145217091 405930447 736537385 326962949 399029165 817582463 225569351 192156669 98333553 26624629 351684395 304418519 217714953 718816857 279830195 111707453 149079797 712526615 34144067 904976283 25338305 307438051 236363723 491824173 261089535 45053495 730001601 228539891 645929545 56672985 436202275 835404721 194553921 674282711 197932921 302834429 342405011 545275009 219155151 219483947 966811631 821321335 224057787 698708061 787447055 272385693 688138589 490487421 764219321 964851997 490657883 891366967 828881587 97104235 721134563 239232007 287807953 485134151 342773929 12301611 508834541 123275185 542576111 164011691 470206185 321388025 136536697 328489049 305430193 667288241 577446295 443932111 508761141 523055797 146898461 688701799 272869743 350559275 699281769 112896847 452360549 162170749 364555877 344572535 137607453 713663585 794200187 232027539 298937003 305334483 227596963 689094695 944771625 682278423 810269275 869347193 670677689 997913529 284687531 534990747 399913351 178424973 779633951 922504805 486974659 409422769 293246157 61662839 510506153 576293767 707870549 498671673 891933305 224911035 808602077 147786459 98295167 258568517 284402195 220713813 21630989 747454301 356818221 190797671 601024637 989555849 485651689 885633693 248770099 200261269 814245517 852287297 151620245 995973781 523971559 962228081 180155417 154776551 691488335 24246795 953565497 763042095 19982755 821610933 681001847 84005717 816192327 854432227 861870171 406250643 723944747 392942027 338307705 279871329 497411783 166729581 659038315 763604871 328151061 981705363 263034835 578266381 59732127 138001357 53812829 874328907 788125809 340005745 643681465 944369115 314397985 984626337 401585571 990063523 258674383 201868871 519835355 663497165 410293025 215237647 515376175 451914447 214432325 990762869 381987437 495927139 739939313 424380087 38009969 452508049 936817251 696306143 403068957 239882659 634347361 514978747 300657501 472902445 68509499 48793831 988445473 612238347 400492997 311402175 570407013 583455075 399476573 444463725 181357865 914356385 278596589 375696865 122401147 553912439 274481119 778134741 308044905 785129443 645446443 493119943 587318031 367101225 661683281 708090623 802690447 46830293 141946709 581419919 684552213 550029499 171272389 981748303 424360401 407658233 451808438 254658271 544305151 598513905 216845259 1070247 433396449 698559057 301110311 989179351 505306303 705872907 76658297 486105703 26797293 311103837 514101495 716355865 159333573 489667275 817625183 562701427 514463403 41911075 502166263 538432967 395812103 553650293 619452815 237320749 895037771 374386465 927932027 453588357 205258995 324425931 159989915 379803509 507800191 870219101 755045459 725928561 989178491 293975051 775686805 600008879 544102523 413435989 520928723 591957297 84497429 604978941 547521295 600804029 541019119 202035981 425290955 558946021 512943791 162903261 575635995 510832383 833857549 954083079 103071119 649330479 64135101 284260209 409458763 496875865 395364487 462163525 775241457 6231601 840271153 648735481 693819567 986638893 98874769 934198601 517142079 978003085 361623421 608548921 157854429 946373723 202014681 67385109 214609745 355451749 711952785 687774833 919493349 581564231 17679511 547552553 78888053 391776349 481735905 608877411 631225177 815246033 293861751 114753931 454500989 60188563 960867679 368187219 982859 422012253 218372271 220004025 544930493 171998637 283605885 990498561 297307725 534146509 306159343 694505401 432316165 321736139 993726509 603780017 979408499 265026945 102992745 856952841 32318889 322139535 598512351 371674403 455388747 907158621 890027983 214259629 616438139 400559899 128539527 605443993 7717097 624709315 508912213 820320039 56656843 446234899 398764693 141682647 936528351 528172435 165347243 674447737 791354475 396209301 506933503 871159069 708545343 48906801 160827139 118312483 488731055 310031175 746644531 806724399 549948827 862153343 811493393 162898219 438583401 801195337 231855141 177633357 217108997 87020765 100135685 537724177 782469097 586159931 65137479 166283065 685654031 200410671 307529361 304897749 792081409 386516037 83486859 826283831 640645067 255330773 730534887 13473275 769812229 587172355 838021473 65637383 566810573 690823603 518904507 712140933 19136455 851221657 147774397 283727341 467989283 317397547 184438075 96093431 858233751 777676459 382585873 190946217 883417953 635831325 563148831 371204175 343864903 812665687 561887055 554194045 542437017 287835375 176958099 811341839 955191341 752802371 139072743 687872045 449654623 471616125 294449741 747372605 635194901 32000399 486838989 496871161 154683585 51536687 335591805 682264409 452674901 184677341 177354099 336157603 414231635 604985315 665308373 657159779 381544895 799601743 403138507 819167599 690010151 251011579 682720135 591368929 702116259 576891527 466828613 635106845 828285137 734388571 905910599 121640657 517727701 454197417 813467605 188752881 833615199 184181861 422090821 993275063 196919205 55376211 83918317 304664491 48574309 507102203 235902259 184296853 277036775 863979435 62294143 176047245 233788151 731055997 206490949 733376237 827135467 317973329 933625597 151416411 264122019 679511759 565948459 95639745 228182917 42307175 698432343 312824149 860033917 691886161 210196503 578842003 140359941 431510415 398765057 944023103 880136473 252935911 338469307 964914789 306049087 743470571 436553197 983038553 471000965 334075379 864255561 612591287 394248579 975586591 583358093 228796261 348075351 607854423 85786997 575500943 657632165 711913801 410709457 319188391 485137309 972752755 25997679 926878827 169038837 643648783 2572333 823858143 64224237 597727017 323619563 690604879 970196039 33798033 386548883 850799441 763205205 874577887 558854423 659207871 566835437 65487473 627589749 188053949 94893419 102496115 901663657 652192441 758329525 994406865 9119683 727826277 513887805 209389127 508199635 167837119 433953015 690782291 46169329 778209037 967467105 644109119 250219843 616945367 801478017 30978331 753292529 76466677 588835301 616416701 819519023 101622657 938053285 165552583 290913077 22591455 868967775 888978339 503897415 638351293 146615607 875592317 834108845 912703759 372007901 812314449 650123453 738996241 449749641 314403293 469564623 424662599 193658101 75655083 60432707 787733883 936565867 295166217 499521929 542862021 619504823 860183569 852640781 497551233 310463279 499958691 95262541 778338895 233048499 714518631 989122763 397688865 333145513 348992973 320990225 995572007 503474943 577705743 343387055 698939871 750216491 790286891 588489795 985984525 616857129 588368105 703541101 453264829 292182917 643527643 327743191 11813443 213636423 34409305 992329525 568530235 485582089 223876227 708286783 481446283 109383401 930751041 479081657 62135391 245339787 113754179 649618797 221248043 836418593 202220545 748629547 113447849 657364317 281855421 155160529 137977055 933900927 316147581 700851775 895659545 555479887 905116691 441639775 932983021 171301401 422775319 587263525 847637813 916978869 919045351 685041545 916232213 950782335 231347631 997682575 912016123 188252255 899873373 237946433 918579353 122488769 544409769 220018863 238305263 182175 199918867 283470327 151684925 78333045 111649765 506628665 751627539 943326281 653426223 401223071 989359939 899124651 774720711 606128989 576373225 496814255 496755537 799617195 780059243 852667381 315212081 863566285 191724659 746960289 914821275 403746573 67644151 151468645 865929603 235784637 705124147 461603955 619304111 761036087 421565865 194142349 379693729 904290269 993564969 351466229 351129263 338608665 713281477 485698685 154396141 572671839 432830427 110408571 166751805 372866343 165696269 781376715 305301319 450560501 891370311 137297109 720429437 255297107 741309375 2038919 831744787 642413009 254035953 224961111 55573261 322079757 729438881 559174467 591330867 858748839 120648411 392207825 931999251 870406475 114153717 24382225 410565639 57545383 376125319 802720151 305837615 256343419 294078075 518396035 90357363 241595525 190662647 718377593 196256131 914688143 140623221 473649323 25838553 546902895 701367469 564083147 943143089 551533821 129380519 68351771 395648793 62350875 777182379 85311839 26991837 573819315 683449681 250853 433500567 769130425 897339251 441367429 50205093 71428647 76233525 678667163 123668275 415314941 373113605 894101263 779224879 359415879 767013015 810613071 198449745 147882773 661170151 680782673 733465115 27142789 651864631 886837395 352873939 655548855 6957847 506703899 704946059 330186711 811547481 233843577 106362137 442510611 851895833 774653377 162799905 907957163 637824445 883777683 325495815 672807645 317236463 162273045 816854783 43705333 349223845 472628467 41217791 100309829 311051291 890915687 650655687 432676647 122381269 364408875 228169953 332650237 21342879 365771401 248549533 378967601 455852941 724606029 504855825 560278327 621900797 64461519 125207839 120138887 808771217 679966187 851710321 563896229 312219189 1043209 665306483 660538394 653652769 846822937 736918625 44975227 66388941 534169229 179540537 872989023 633254911 377972837 243259589 65501801 31525315 887284519 276753555 382886213 503410799 718153955 504825853 391253155 967832477 4462381 716696611 451203389 189524529 502203941 76671469 532014807 809445721 84959601 653635341 123952955 81675143 611221821 322418935 745132347 957185915 941088579 303652847 824199089 809718069 266139581 322021373 86609023 558336261 588763253 918753263 742237073 271208573 298431929 790877279 901432791 650036089 271669083 763201707 738054219 311078685 673540543 529681919 953061617 46249687 151206599 493374025 831514579 519142747 886096611 18491715 825110019 606908837 100618249 851685225 339408539 225377273 510387895 159229705 393787325 473600739 178348789 416996141 579577749 111034423 184729423 189823155 525125971 882399249 806507483 17979705 570383409 298090455 646696249 231581221 108861557 109859635 338286991 129193899 293789797 346788125 167167369 365586881 965067605 894652621 108609889 295296297 89261727 699300041 852521427 538454121 362379941 451553757 607555877 802493139 92310481 625357853 64404517 474098557 601685911 111739879 472825643 152840777 452705649 492297437 453524243 798130913 725575135 410522349 689509959 920416689 389905261 696775497 635731889 860045557 402499501 912891247 635293129 306445229 658040889 365918245 732699533 430925469 160418229 818271347 127037829 715972955 900125895 114293937 658372797 605716795 619973413 184045945 717903307 355266143 391170185 545903279 428083663 636790449 139080627 843976833 701668207 503726301 584830319 143417955 923162073 40781663 746163599 855938575 532564417 224698741 304941037 436407437 368617065 881394215 72516459 862381351 456830613 104281417 146300149 683030129 296965013 232397423 634002043 601093447 834446395 860486139 230326265 951254477 446106603 752741397 940949615 885525619 421473159 691144621 366930665 201087721 631915649 26967419 286553465 383513901 843190731 165336321 727470137 879613059 794632933 128972165 502841421 789048437 194943703 490765081 344695003 985264093 102020397 639836053 666182169 748176337 138228477 280124825 337576513 416874169 697160167 892323725 574982803 182775105 110836497 214364321 743648859 413835611 78057001 224775629 250018285 454975813 87523939 724653265 134260639 959258755 947862401 121201977 499077333 156327139 308178631 862702927 741377275 624091509 984860165 636809521 785203329 360719769 771818127 942358461 698583009 478479345 413744709 61624217 765039777 29646187 414720651 902897209 59884615 644193339 132843345 562566355 420771687 114116315 21420045 139630951 730071707 617511697 299365567 987724735 15717767 228049131 888407787 460209259 653024721 644159419 97740959 159757761 888330289 441360669 50926449 513133795 534555995 522188789 973955457 657862331 407161111 169997169 868526709 798421237 292717867 440303621 226455163 329296653 672522347 354408045 935003977 923599169 665971121 692503725 439795997 792345499 109305569 505692431 884752317 205398249 526046689 380896043 870992247 965969351 537926055 438237917 459166755 412529041 464824621 5675847 402509855 419132273 111877237 198444501 840886609 372092759 650755975 498566461 637924389 550412541 603420535 591374459 518155411 46107361 134473055 751125971 452041499 744603979 641028963 196985809 960164287 350581581 586526635 265088075 66454801 738607039 626256233 48481113 663902503 429059649 407661527 963744355 590013597 807073339 793831739 307633429 25987995 909140957 240645595 369419361 750149327 104656671 175255307 430195591 42669167 375780035 203115559 155919623 773496121 356767567 170349965 728464303 91049843 886344725 159665067 351536021 322324973 451168301 730531313 750213907 971048699 756099959 928747995 97813965 695459197 432954777 893515753 797512625 24502743 958501639 50259113 267671539 209042683 821562359 129367977 47699983 934280027 883050859 96380037 818304711 571713527 892510761 839594977 165871915 177704791 911346627 888568421 982038925 238493831 210413967 516501443 515664521 70672415 953876913 804235703 721687555 497159483 664517133 370931457 961535531 823861379 913231191 281694319 429708913 908299045 646462981 896096719 998247059 266359767 632901463 758134013 567082387 62322365 842708055 956933853 593275073 881933805 549877459 433631319 156156079 590891875 412608103 866315101 870726203 811481363 637316463 541281259 161685895 262551131 58969621 302127873 447966463 13418017 392975689 963559341 236252251 160593361 219466693 569611261 88012179 112908901 975545095 427898893 599164909 42940247 46275673 610723073 137224949 616538033 231280073 63114241 583168897 335487743 35675953 791595327 859352233 198596185 128275249 275507447 700289751 700225883 621256241 115111019 415442097 621450541 454370657 59801315 455970353 629008765 250461115 69529267 629211023 800007041 611468029 799252535 818839123 225916665 126800559 743890637 43372101 524526887 167316259 621885923 733155453 904860637 45841009 728229867 643961941 335857775 463074169 796232029 919034993 570299069 97235171 967346619 904553409 1600555 721338399 315200147 729214579 380743339 367448165 352859763 865155337 801424815 581155767 769053687 173381 392674617 839678427 64752835 881735987 78741197 62741859 639633023 558452775 190223481 148050085 111684573 759046077 692959701 594613445 533419929 501449435 956127997 450090663 731273077 890627755 988673435 709079551 684771641 4438947 908916185 590077507 567819707 964155007 207332719 189429173 943532497 243772739 388170395 642184795 935504737 773950011 159593763 102154501 961839699 694474491 38952791 385417295 554301849 321708385 220712203 970527125 410842671 34215055 613470879 156525057 160921623 58463731 627184633 260769157 277790041 557642303 832561031 831180759 904801035 714821233 291188029 905679735 408603203 261815503 395504029 719151279 630724903 425574369 694743723 229415053 168646623 443270013 616551157 448570347 975284639 724575169 265348755 773574761 894520735 402164753 94236705 740410223 566779937 56070679 205417417 633552175 236420467 970521287 442976821 648702877 840565475 590496609 179401117 249041789 376659919 1739877 2161343 993228119 887215765 756493987 909793763 735593081 254032293 11731501 285003731 612857341 2165867 808060255 355065067 921024451 696139877 638533599 64630789 311226227 54714901 95559575 874627977 975290749 752044035 51383741 672194147 776475161 179356613 373142989 388096269 838370889 944838897 423573641 440987267 10742483 330327085 82974465 913737547 439859529 425498657 926306695 482372723 591200515 88742017 251663033 604844179 925992481 170068741 229577337 108330184 966045323 298477681 679325427 294126009 99023087 613390733 381260703 218097299 658000843 977407535 77953589 130027021 256327769 103677997 383055803 506684773 31526821 565529197 156000125 722473315 643195775 794415575 370621967 902765395 149841279 117499999 175612495 250823691 986317315 377751549 266435167 956025579 827526967 321246645 490148525 36233945 961836039 110160015 76926189 72699203 795233583 641292449 109048601 563901215 958651437 124477441 328513143 246017513 954828363 395628501 4679829 54246573 353588121 181731653 321797187 946549491 350171117 598003845 715934369 478123989 773596649 694720973 987744275 666761457 988521975 615820385 537718083 137089387 96423235 174100875 454500903 820220147 593012425 315839387 813185785 431795903 81890887 649299695 785966913 153593999 420300615 198889191 404851401 400478117 278900759 393115373 157428901 979887059 716134609 736626547 111475761 712968815 474746965 75948279 661255187 889378645 957120331 655913205 130073909 259357677 663941923 952132861 973579213 282854437 369190167 372346271 213340247 406123889 510571813 765906291 241016471 624074195 712824597 440597023 62024857 594023119 998730617 122307405 769929649 883478645 754458281 688276395 400714621 581293657 670531525 618999 769720543 142383259 373184437 129939955 137621765 941422815 112754729 517159785 691724897 27957077 487391385 134256427 625679793 559229877 861784903 239350289 310284025 486603833 101496377 868299265 930243719 199686315 291143233 26191587 444645867 813428055 313085943 974704043 760956165 641057811 535900857 708244305 10002167 726814017 953840563 127486425 95355183 361197761 630188755 180868429 906986593 897206023 37528529 566332095 131935113 468997639 247728429 727618375 30351081 727268415 760749361 43569419 483631889 361766325 233999597 879431733 676836305 521028345 302364983 876046835 441363785 689427999 260253619 864151429 338254557 474303431 506485701 955228969 437632055 136086037 265569697 823715625 24584269 571028409 638947643 21418203 535025243 59347691 238320985 110864791 196134629 813532261 441966717 748129727 647165111 463930993 989959165 706782141 456842725 830090715 691618029 878374661 755354827 17860347 347193135 406617871 630381839 620781229 269281387 276090463 689887389 596273497 378081043 39908223 616402599 108925933 500883803 967892481 32385195 905027295 82011207 789281149 806479213 976501037 997475999 885630105 618988537 167794013 97951729 940737023 195522211 241153663 489764247 147461983 401721353 407747367 893195697 509722739 697095181 497295989 930185767 880858111 364759773 443984653 661269417 935582413 870699499 502737953 495854257 937386671 943520503 771383907 749730939 802335101 66895617 385617685 155828245 176093725 857540441 282785529 460025163 283593593 864812687 566705507 164894135 595507073 206628739 853692195 378772919 501008943 444813401 147296157 928283511 368184967 451165051 508255155 750572005 524180883 760053405 587868373 318642617 342614885 380322239 152364025 125578869 943758357 197016611 281181853 549248863 700970187 676686163 193705927 841925257 42845355 358218791 533268231 603802569 462470635 857814459 671860081 28480451 887599299 579183727 42790565 715951835 938183287 851268341 742838215 27901509 306486353 290114365 27702409 580780279 753819811 654934405 327918621 712123569 694890951 984993615 298788933 593470717 594568479 442837099 692319813 309172779 594342933 583175661 940277227 357719633 35994396 993387309 552864911 589142609 49687729 787070675 971876877 125580501 392113233 651411915 370841549 319551817 133303689 679601735 93166013 971655913 317698795 832577221 180399955 459223475 56133393 692593931 751757 844797297 499619229 848622881 853251827 647190193 558906425 832697949 241076881 347546573 331268505 957114461 658957565 642546661 227491445 340660739 770852439 643788257 494822547 838372477 525020739 311805811 44928441 758798399 556764403 479526415 194405561 7747075 545427995 148755449 542668401 239583185 423823351 176409401 911019715 781285361 886668881 20662429 373940117 944908282 90777461 327732415 1982429 516319177 157505851 431869181 987558547 678353537 84325889 799231107 893982141 308192141 458693547 595641663 787915617 427946403 212706473 352556267 594762387 255942079 965909745 285812227 925534829 470686243 566316801 760626901 227355921 55505247 523657441 410501229 661077161 257708357 161153 119067043 488384617 269479923 67785675 194571291 487230859 458095817 948472203 244899129 204127823 613449081 558709379 753615665 591283457 556184819 423255391 722981369 367004915 501921909 344517209 712389203 474383231 429460611 897551405 371744965 978043143 342398953 368462113 882454177 366640631 106957501 29004803 724869885 828817343 642526039 225614635 599847867 159984601 20780895 958197109 747909765 24424649 274587329 976704843 158421961 814062361 672266929 814822295 556097981 337380443 510597289 626291409 467568487 893832747 493589871 367742455 268879753 554273575 62900753 415530385 308492217 510114811 640438495 629039785 713526091 220854363 386815097 509195227 480425057 873213953 662615747 862442561 909940965 94123949 95146471 818929795 964259203 171615275 230148953 486554061 604926135 12609869 434715353 891311833 173134783 541775085 541190505 753528547 938996131 825134063 355036243 159504561 310593591 515638585 156367919 358872977 184932111 446871233 904153559 314117211 630985869 471091841 26217841 180580461 476711641 59930489 240769895 440627371 277179107 832415925 71636335 907384453 319147363 283236935 486061957 758902515 661437915 418183755 852896493 99015023 599814033 548866527 757309235 363550977 624518295 427781681 359328043 624140601 491681989 650316145 526628339 168177965 879505083 202600921 86433773 177657465 831231201 660698287 658101189 116453445 788840039 176176953 182490995 701618751 18801221 746150859 374693167 638195099 783124541 62843583 672281215 371950619 604186069 958859639 778847535 250692355 184297309 84257119 805456469 318148131 106096881 459668711 161314633 447744207 94782831 875417227 699329717 612456165 881164157 275764683 73339263 340881871 723571855 888502835 982120929 669501815 303666651 975894613 28339285 52769109 3987297 192221389 765041309 354887529 180112619 255362361 90496711 918423861 833694985 454327111 331334697 7863499 132303377 683370407 38299741 802427329 320156967 22731539 327687753 60427827 162215215 937576785 399971607 290403273 833993179 800358439 483727677 799986353 578897061 108397161 752219579 902378143 542308811 50675441 119236551 920531413 717627735 562377123 964185725 703002137 953318423 467727463 908005163 578177461 973192871 86095407 818795949 490618499 78397539 567501813 833130281 512010465 355479669 453122495 226960651 867858611 847632589 172866963 392076293 252137067 873229093 732342405 952653077 47912443 757490171 234107825 566851199 533924323 487725975 366921013 526398159 984813099 89852171 143078207 457949657 695407455 161299759 782069503 228685243 884617111 115554723 280960945 957595095 177042287 470394319 525010837 496724443 958542607 561961955 576829687 21396153 919556901 171810775 124326187 591977391 929850855 34335853 103551367 431581507 566071315 158206507 417792111 545225789 958826479 203228259 410782799 763333299 694691915 475877421 801345687 111167235 135778171 179183465 854809283 557425873 71916637 614259645 972319061 714925063 607092059 413647261 584576725 677574107 398853471 588123455 207389911 421947847 147198179 234946981 638948087 631877779 937715937 495762325 784891347 635638087 844003811 198219425 537912345 399587387 441509109 334472223 623828345 637300745 931812527 759178803 348559279 224665239 724579373 103775425 862836093 17426447 976228375 998710397 513919403 573042663 806237083 316870621 157079053 50873307 133176687 921656353 268826749 357970671 693289169 649502803 806190559 315895919 121945223 559699009 391296283 374293231 429066721 911237511 66123299 969674571 568099763 604790913 485011699 250897833 791809885 733231961 773073549 948929141 68391365 686081791 768062457 998977889 15347287 623018029 670626123 821932651 795653643 677254241 119083679 905553111 622709345 721375461 329048850 662050355 945480285 914360263 874457045 261722447 761563021 355550945 623642389 622692171 7487241 649229523 197016335 519678089 803382381 917059077 480317701 320820151 978830049 596916647 437963839 201910983 324107795 805845683 304536339 262331385 583584569 381263079 309965271 102409421 986848785 853869003 636979697 146210579 348076003 756354481 469098697 571473371 78619769 941341873 668990161 266060421 581588783 924693931 560197253 29294517 99034079 209301831 13532517 970837 305699823 385079029 755838719 825286299 671464785 578739693 800122849 894321923 483279223 407533617 714330281 650691407 329478755 38431111 199561461 218740111 143833497 798127745 641915507 290951445 961546535 448740213 943811541 646657405 360345765 626795399 62202835 354043821 714219055 535660443 775677999 700171473 782205293 372226405 763796663 764984667 256040077 334855771 903460409 142627337 820622661 350636223 67850643 477344991 241899989 771130519 850488995 337557033 175172607 257642163 927813463 777662843 226900501 859036591 505894049 199214259 423059435 36214103 744539001 289624819 987464161 351102341 173384673 971924391 68411357 352394619 839648231 101399943 511510091 822497407 890990745 815849355 453160741 506105617 673934101 503289337 384882919 43956603 107217785 411399517 653020055 238451403 753696755 810289037 930485187 928250843 813075381 261643939 847125379 248911947 492020215 242997251 903502707 303055747 648893693 599976283 302045627 320029621 514397967 745854367 694245643 143193813 318060931 104270345 873932693 74062247 493724079 313530657 923685913 910990515 847684601 497739185 315003101 276356935 174001353 197444555 534380721 962545277 470275473 752000465 710593003 621889077 496064461 446622049 380943207 750885399 851464191 646313067 781855627 645473939 138756273 181642787 82861897 599147488 966644595 201966597 843748117 738873091 774819811 698270421 571083755 885870273 582637215 456929183 735511637 810749095 705644631 573567159 18509153 550574099 960578231 745671353 990521763 855525155 890944893 401659787 969116217 716521919 529495403 679911257 516285901 270303381 261328201 351807381 651098505 347524131 521577709 992186365 543221285 155421603 567291951 901790613 780139231 110834209 190481903 48132521 573382783 419726701 369957659 687101135 419453521 700760351 745089444 823611873 355545387 147302805 418042245 518226691 661525613 323484411 269893055 316138659 628437245 595377725 632888157 808121971 620195401 29754391 130189935 341625457 967939397 388950535 774518547 174725091 397367155 484825943 849188457 166492241 852724183 311639063 539685275 194262163 810355713 981585437 723771099 217496515 873195781 115810315 935566949 441101381 324222593 630905419 710765947 612437193 344048031 493295625 887067495 739572029 990180361 257117761 586247289 497482211 488436983 818309809 168757007 311267901 259546153 630693091 502664841 817317397 470920929 452639013 701633105 746263171 389618929 380468113 513043163 78387427 62789551 467499783 328958111 720106965 871120631 538971183 601366817 749316171 306962481 140093049 242130409 303333493 293202249 426826015 63427469 336543953 796134841 346841119 960499365 41776419 761291645 473408833 482012883 733192567 526773275 705399063 112635329 357063457 482781091 942723065 499565089 102479293 844998569 891165447 350217905 824281139 48207947 634997033 445942575 437198249 546911027 664947215 894225765 480296089 335701130 680049969 725278249 775179707 381974027 857283793 747766867 522665237 274123763 168106741 171085765 198420723 121964549 336603759 711944809 728590571 789998229 440294871 676758833 9763031 131331443 224258187 751594267 783019483 682052353 659563447 662203941 954138469 344861989 951748937 177430105 947775017 518813261 388390649 359276749 661700897 434153071 761309511 91490457 145099925 786342921 588811389 8570335 276268301 258932513 987847083 977270985 886962273 937801287 534373799 636212875 218859691 75315599 934285845 713611869 630511953 543579543 758756953 93508227 26000381 530414217 2258087 577060167 84777381 233740559 109780723 100379641 679885189 6999907 875656707 656724983 866109983 438702143 524946009 414754209 853328451 169007085 521774923 619024225 400141827 586761529 688501741 688628395 396212156 563449979 997691937 887489271 137264403 507086991 175364495 521042121 303479281 437527005 742813865 900879019 224653197 940796243 975539619 250976815 415181155 776229223 319353217 287586031 319781431 706015511 201076491 71118733 527228695 32537833 663370191 493593267 942744659 192355309 464630055 502397461 32390283 814075063 521961267 562847595 122867617 761710181 507139547 34411897 470349251 213075873 689989071 750675721 100553315 584087957 957811593 606426605 998797119 639855355 61125701 648907775 965487965 32246541 862396177 577745953 280092677 508876437 585772985 308752701 874670031 184932063 576043479 13666631 168139157 768909507 211420617 72878647 18812795 571534237 939729339 541700881 202854383 710205013 779275931 826026207 317113509 940810841 756177185 663986611 972061081 913641119 408682191 271053735 579910157 912700581 886529771 814251997 875729297 573108595 940542855 737897855 223772919 948724883 281946745 608422593 102351707 142036769 641656421 940965339 691629347 98970295 295833007 663716883 316232441 458232955 25953163 323570349 696496339 47981087 293162223 499119617 960635629 790418133 681763739 400682599 724953803 268790879 546762009 797264193 885920313 237068801 216295353 54036987 437452363 741496201 623270289 438721285 540232799 231782991 166394243 393416409 804742935 382125615 545639481 642064635 44680543 706635409 417923871 671039221 951032687 539678563 382703473 4550489 329769919 446931995 4813101 956955329 670922773 569394871 545070109 799107791 844475517 467412671 817166031 255189293 804627533 395150397 353851805 257085583 597745439 950389965 828278183 278903215 251748823 529968777 637839829 452426317 738649507 884582167 145428953 257031733 888558325 232561321 784578855 796698169 938967693 241953009 709778947 470904627 853274219 46839345 165216885 516819717 765813471 115739693 330181451 516382617 274490747 214291251 896956703 492262371 671376923 333394203 868622671 841516765 18713571 508667457 989864199 424310919 543711811 992607887 412544565 835429613 363453417 516447855 175371923 253775137 554992599 15040985 466547357 353178685 516506191 608261451 75143329 800970851 996517853 526016203 275885483 667877311 341888597 227605225 698575507 83970943 122010579 271939003 727682813 567901923 57639869 177085405 578329167 325095977 528122301 725273461 388497591 455244189 834804939 577967925 38983217 281514129 28652063 262680401 348870525 112695903 620142143 151009925 790711073 103965033 615539191 655730459 935518831 456131611 264089947 203910625 53164157 967487461 926546121 412017963 643897135 170309697 366914019 334329815 109587497 27978677 83288215 923439693 828130783 33737415 716348439 420243323 879841413 124083979 677676513 537348569 541795105 363179034 153893563 333300833 988463735 681304217 727717293 362741147 600314391 249209137 497825039 767973527 554582875 288332691 229216635 233587691 514339939 506034041 578222293 452749491 780563225 395060137 177859403 901786005 214250537 527628009 213028433 439364547 4960783 347962125 331835809 395579889 539258377 173477359 893014083 601295709 758486815 824754289 450017665 386614477 900007717 752111487 175488495 713030543 754905007 709999881 134801513 843132027 863978271 290216713 323546901 736645359 367960989 647935621 820575837 6525391 357003801 135310979 143383031 851124363 692850507 862845719 437420511 913638425 762025653 173516891 121402201 640070137 127164317 287781233 986020849 536056621 560726549 531078533 959156347 267235143 713884661 114023111 999621139 72975709 985409501 773037427 14001951 766664971 421142069 950054601 975707723 270760825 506987053 267993621 234371465 288582739 149416125 165846441 182811415 569304787 263880615 575010271 30229625 56903861 981313649 770001435 215031165 248134975 574720365 785273283 972043571 348053569 397443249 200278861 833998075 841807631 740299553 353989939 176703351 587751815 859927905 106035957 852946325 481681683 974824165 523844129 94389129 19692445 595528419 682088773 80190925 994657437 559557979 7159549 189759527 226364433 979032087 376643819 574646437 188788609 509020583 675262651 340097177 185436921 948739169 978833693 744769439 944232465 977518441 988824781 342058651 820844773 206640035 376349579 133493435 97129757 233112257 656114979 988688499 463523557 552537149 809721961 613882495 349265399 992283733 885941299 268549347 543330959 205358867 778525797 397694955 680382067 971643717 195005675 540431659 229416435 544034183 315131573 16286335 491747043 912462645 433811135 263145229 394101667 476477305 903020809 922189375 641520663 556200515 799463327 382127819 138528943 120872269 349121941 381870509 442983779 771703061 902121473 962648873 153598637 882164195 120744711 678200779 59969175 154347721 266238163 517793641 470776749 566121631 476068501 753883675 192810503 640706821 373394313 970818889 35425345 168196451 167586287 850972831 873694339 134186473 287443989 762793745 328511867 904581263 269505353 331949017 687917919 269117975 239910119 368002429 533502187 804778247 18734931 388119753 672680555 157242545 143155957 431012307 51290279 189945389 475109695 4043509 275301369 482062171 53434797 304628691 300160831 722448353 376747199 281406043 401869535 539738163 208442113 827136961 171596741 720196743 597285895 384722305 122690155 67465695 413551463 358876253 176218571 211548417 391644101 709722469 774732911 50065791 178074573 849917163 582265187 834426031 546061615 998962571 322145599 86288053 679113127 356902699 14532383 976750965 337303031 80296949 992199595 614019491 304506599 703384415 415687697 430895541 151674955 621551909 914287367 876616939 257907711 948210249 491077579 959258703 616283873 406557211 247531299 28974511 153809887 319793965 605036639 251559 158576873 376131677 486347347 858490771 538687483 453779405 685054559 750355101 324172823 390183401 802900327 13965493 454980165 114699369 257042141 276314261 915405979 554731333 711940019 382396859 273643311 719385027 902942571 114289009 170361125 863913327 403924233 747180997 199080873 699007775 469323291 469531793 564228845 521432043 858424761 711122037 141076265 720148541 441525631 70259161 206613407 554698427 954015381 634802669 997448605 914130271 285874345 846526379 399433585 174727777 907610353 892523217 58887543 603551561 808760619 47581415 866881811 139209695 568863901 211422271 962109357 887377723 155582231 874228977 790928311 151465655 929361901 304370653 198910381 879575289 356060415 377022891 782658321 500077291 629876659 612578763 550020971 457766081 5241845 691143029 881103183 683761915 42323775 814725803 42508633 912495963 407583117 345486643 867396393 614368237 316814949 852273567 238586985 8919045 962333141 378180165 75406283 215572799 36723061 273616457 846568971 199180417 314668385 378993295 567573225 330910453 890229057 862400203 583563315 510586641 37858627 313491059 302432439 891624849 824410397 254482889 748844883 487757945 848148237 645295315 255941093 263460885 853231835 201584737 939179611 400540153 906397395 952066831 653660583 877064707 669711051 952190009 995020481 61493589 528206115 398823689 38803885 930683741 222807489 710947697 43021427 35708621 272305425 100288295 948472359 148440739 788008205 531417259 698797541 260165413 38700591 524108871 73371597 188478683 690384513 301443849 130572297 138572701 223440529 836404171 960229835 616198531 406687347 859148845 837294159 427852791 723642565 719105433 582325207 937470625 693111727 409725499 779836587 965555829 510921695 995247117 770717217 130348211 511374731 706504657 643548559 411003354 893102451 278018575 809963867 244591805 230680537 513281045 286509549 794259819 6207375 418495741 98065593 752255553 806265065 419024551 283774263 808272613 514306247 967163579 809891817 954607937 857959823 441864617 903020893 347830923 457234991 288931753 750029089 33472575 760770843 561874877 9160915 952636705 622134101 218029229 819687187 304783931 660636513 486640647 473445515 469767655 476993615 103362851 579539181 664007867 956739251 494788133 488759797 779070623 442294699 850553075 74233445 617653693 365379551 756974141 532147463 616242061 43278463 603011195 730416555 959817671 214353981 774307053 757620271 826414449 788572761 9046685 995686771 828760023 545363355 25524571 622672481 307527053 143512909 450134207 503740139 24360817 838735435 583052583 854605069 640311717 447250415 194166463 115917769 193152663 427970337 379555955 178551849 559618043 506511181 308327679 78432829 989495755 875422061 566305763 511748131 675212109 209515773 558748771 20637947 305324559 122327299 700438677 888927727 532270305 511559951 516305485 281532723 110310627 453411381 317799471 750199039 392588921 859681299 262652063 188681365 247579213 802734033 402496719 306402627 838781525 595393311 121059769 808640857 767576781 461556527 660563227 745855791 902171959 741212097 874204799 523709483 241630563 745204765 744862259 910471605 101078115 963366927 231237713 460028481 385274771 712662765 617379769 143317063 517097369 389143193 109058323 837960011 893277023 653414003 726262735 777167575 78293787 220290671 20347175 804594555 886967625 383699969 338975513 433427413 22016941 109970215 700349293 641567109 355160659 419890023 604029621 225821237 467905679 798104271 769655625 196358297 213089791 430870265 457600585 828581737 709281157 368844797 977705117 683318889 220293199 492049287 971938805 928316259 822632143 937447873 242468809 752384295 873276355 781586019 390192219 493845651 790318897 350188973 267260337 975266695 482522977 494496609 553888925 277756909 741336553 790549969 227644855 135484601 856432295 905343187 878020701 11612899 791462077 192172227 281926587 69566063 171416473 182018953 908886463 158491495 188630511 597767571 192442401 800922331 400759995 693849303 995676001 82461673 294490175 981178835 590870473 80729777 353566987 248704653 270084713 708313437 898338031 382220691 95566359 632688929 552680461 904166653 204266615 815386421 696883651 638634345 138609901 888346589 192157121 995313405 901365165 446403427 49727739 132395109 684349099 98360601 785782957 655038425 937574573 777885783 312010075 928448025 936709173 905342851 969258961 863047529 434866329 420026119 655466531 79485591 134123757 80613457 252900013 249657849 467406099 826107617 988224789 169682033 642411699 48148789 49432903 269665377 913187391 574137303 399197813 743230649 974675435 729886813 80135197 972405229 486905531 218858079 453868803 629108479 781076343 250081407 54336051 285769845 549204397 15877991 729937409 334935385 185040567 751809227 427458315 366908997 742868661 798752867 835618611 514975831 633505679 878033139 428209319 776470581 394531317 998873413 855859931 806005515 673912929 164651307 738334601 85809043 430321169 335840895 861444023 792606471 398301709 903610403 276400819 76471857 476434471 98541825 639415053 325435485 248972279 26361613 382894501 914558051 121477083 492153407 905180319 597303711 411990527 885074333 862002789 803047161 829216081 46068779 76397741 440733663 546691209 155286529 979417969 852305735 697083689 875184951 799174137 109000879 988849783 875450095 88439757 698983199 496620165 887183955 57711557 802481697 478178089 785209239 439322365 404746959 769082631 445064949 104704469 199301831 862363267 300570029 88161535 334661935 728193745 547968267 749813355 426838451 204344551 462344545 793780823 769597325 696479365 429764359 662971463 564364407 255416117 852425573 677670407 67646395 188846918 372101087 801358507 182677287 260458193 105961707 548912015 453953037 714714805 311695105 493281113 600936529 811201437 916161445 479699701 296458069 28856053 330247265 860890773 462067465 548319225 484456391 675869879 446515427 556703911 315968625 321611041 115035873 824493257 718381057 249138651 59223689 456346349 518446115 523955771 847317995 44006765 307643271 419953119 152550043 564303209 257833703 277390249 432119481 780734921 969579527 880284359 773757931 937008703 198210737 416177069 987241055 170166335 363596215 831093013 447418825 168815629 593174515 366503175 410074219 210556849 210699591 3804619 747643913 299448825 59001247 797372153 109352177 861540735 155992043 267004011 487708923 916151201 325618981 939551047 31791747 666215307 472171345 76120823 615854449 988415275 955243641 814125105 117329461 381871163 465497519 196834801 755764417 229801271 269463053 511209081 53320085 217430637 383665077 520668761 909884087 548134121 682840787 581923171 968220343 604382083 426722967 605342645 69684649 764008415 219532347 675495089 730805293 478324579 3380739 199785987 124506217 289673789 78360633 993190561 144739595 881306217 223707695 780146631 384408647 601965735 33655615 322694137 361113823 582785405 322221517 457347075 156162327 168566333 825091647 328659963 194307005 106395133 214493707 339765817 414898985 454277281 33028267 832577637 302272569 972342733 359736479 863463531 668004689 848233461 964727411 362670463 988024161 891014477 521475513 451578651 741536991 829328091 108205067 401057375 40447691 860097379 454704651 321174347 268000679 392772213 124956261 821335869 2439813 208960875 913145545 271604347 605062649 58959461 382216947 506619113 992276259 590626637 277030307 12893873 692018345 15115983 941073317 177983815 160348089 102060391 243231947 418437227 441035529 465997907 43609327 228678431 156679125 573515931 117745395 728700589 750533863 55302163 586374595 556205997 719363469 865115215 784991567 124257529 960122523 312661425 802881939 10442423 810550639 841380449 621925263 978381649 21235955 834245967 766284367 764083837 795194513 372621619 68668389 490172471 955856193 572370319 89821803 163114435 463995009 206501289 129323779 899283629 886148953 735846291 596742873 784951241 524403541 192472869 962145821 311417909 653081995 184723711 596727051 499953235 122774429 219158921 382606563 101562063 779832491 106120179 642941169 410145185 842902121 453694261 985053575 744442625 72549899 123955473 19903745 584009845 2223439 853773 963807933 561759689 888779131 842836347 757963305 565752851 949121629 119985777 634984885 485375659 7259469 206978259 524867547 233569339 218762793 476071237 79423009 65693611 706050133 6498107 261644813 732794159 30093763 7371755 918280243 558405447 651311077 256289109 735530797 635998131 525826747 574449987 23396511 219077761 729472461 796112965 652991023 374175495 937666343 719264945 553920659 219652319 860711519 365564843 375679109 389333231 617324439 632662551 758550469 731532385 78689391 778282407 648635937 310473643 795891483 721527253 818279015 406450057 51272015 976260831 745970035 326471677 831353161 767586511 764955943 7655767 818242767 173792371 7383407 824629545 223798833 581091431 137408827 182503759 270544195 38823943 628162951 202599151 964065891 766749821 100134483 316994421 495095163 892829625 110704557 966220179 137753333 718844277 937239203 272314951 672401611 514591279 384609361 77853141 608545655 623467055 240823003 277451465 260792067 70015623 107271783 543351031 864573947 818013199 113539629 627634301 529648245 689930343 101135201 632515261 263946003 915849463 621949003 135388517 357456375 582162415 556139313 933836647 610065871 870681927 347063655 775544833 437151957 657221057 770302537 776410553 55229381 263784931 854740533 853584215 578638055 536163583 111541145 286991603 66595077 531234349 709386725 736405733 191584889 192875853 244803221 42330839 630224417 316129797 789664297 933859505 556163171 896613577 247717679 779692969 823180331 346810831 767472949 194631481 215752689 570230809 531605463 423057449 629891765 319326829 913823161 707671425 807942907 986807901 56723841 826761625 638354897 850601279 212144871 580107019 656167373 246704951 178932129 203641277 579393553 754068009 328959601 370411481 442725183 990891721 822043683 77492949 295274631 489974157 361858187 162316909 996320927 469880245 158872959 673573797 524977349 134280267 244675044 216437705 769524159 439968541 820604067 628603245 377186013 543084487 196755377 502214509 53641459 390848165 587293445 227979759 357123937 405613025 674441121 654849887 520041227 870188653 745177235 281873263 585625955 574731517 407491561 119887901 270991707 265533717 928565183 399027887 150995061 430046205 613688121 355821229 45941171 464797635 508825471 134461165 771998889 23525953 218711235 870666381 432252007 610390038 425332033 201048047 34013329 698211245 104010809 903175105 462632009 365595699 380173561 433296374 997616959 610604707 420104143 572287691 904416425 752469179 575031577 163619779 930387525 875310083 985546805 418737325 83687256 230804685 816510609 53478553 370031541 102938929 440584861 397745385 151017645 989538831 522041045 32080443 91854369 949899279 577648827 859864959 31968119 591888033 943156183 600495849 887977627 393495293 624026303 761443573 181243143 953192229 305195529 718825829 708448437 822157023 181522267 897648201 337207599 406451389 485396573 125635827 329844355 807335701 387210689 175889151 926592067 696833803 820323907 621656915 179846291 61736323 81777573 733749019 913820949 151011888 881505711 956270793 132682745 408246411 686901047 462224155 575198965 202678483 680333587 520406037 781288007 416988431 808364841 154124803 785056695 146886671 885374817 400008825 116794767 207367791 850610861 626671445 358593451 272851339 828238857 887923641 570082405 924575373 335489399 737409297 133147043 790826343 809731839 199730197 126431703 38841295 330529719 815435197 84893427 305918533 540381877 270750287 424242041 744577299 157957663 451159641 702127469 354405191 261631517 927879595 437746013 378746299 112482785 64169573 562699015 349952015 448057511 706335209 72542743 884311981 497661617 124012005 563601315 739370689 276639305 620036941 705925813 251931973 114674367 794164571 613036419 414939643 565140849 866152087 539010763 881745259 664653501 123172299 412917461 404972771 346313489 34082057 775986285 679336829 953678815 825940147 504300009 891784985 488999583 666515047 714752553 758791007 493244885 918627861 421099923 283153087 831980041 802188017 142435605 375884145 528496849 6652023 503199011 898027639 750239683 790298987 705725119 346929305 995960709 946085081 278891117 397521765 215804095 578959125 904708923 389892659 985147685 267540155 738123201 684964135 876230767 787826609 261772573 300042791 818019679 832434211 711843315 910385635 474819267 380109187 832756595 506795219 684870251 782694799 820502611 675015735 398607407 432447819 256101331 438282009 18474229 139509765 678929589 113685321 172636581 158293069 494234187 371976287 36466227 890490115 248063339 106129593 982490263 790853193 778365809 43371139 57691603 184180365 908760901 688315561 357436661 269105025 72743507 855498215 700141069 66008357 524741525 305539517 783218995 358285497 147763335 312336751 269388173 896491467 566426671 605742867 692260931 215519537 612551707 600238717 56514441 579929093 208138083 975487569 797037463 552646829 240253349 920219891 791176625 767962579 248903684 40696725 765500191 601835371 709102131 542556977 48903223 359926709 312655207 745554309 900570449 879388723 197065563 78973979 703393741 304354991 820640089 503155009 633682203 663773761 575676205 407262993 804506023 600023109 84615725 773101163 670357487 674681691 493408824 375733751 258552181 789752437 167642295 182360357 332336067 221087683 620349845 958207791 675287403 862897091 92662345 457565715 155400453 874855481 752457937 463995801 493804087 167022385 602830003 884932179 849351849 326829567 726587901 276165785 147791119 212446785 4688967 130566539 729254433 180349657 287430063 72003089 697270691 377558771 377913817 235336667 108593503 244851975 361694967 766462561 847291429 290663373 994951867 753181669 401601235 229984587 638985573 713059949 237719369 223220173 199016125 565968587 604026737 619272425 854434575 217995671 24021567 862824057 70571059 40391215 582393003 924132769 872969861 385564095 748013753 309735375 145638893 16251445 105239667 588331959 214843609 782682441 605832427 23811155 327697725 685197179 246113593 626893803 129901979 292530965 119015299 50137351 226373112 255959335 883048944 30852991 736363233 12676743 509995447 727794541 536249965 216890073 396741645 406590519 756709691 251348865 60265783 521243015 826348399 799621810 324947839 259659859 420688315 750497379 521435703 738918871 695603793 1169239 632457913 995249813 432014323 584306195 862223719 181329245 472975075 517009383 574096043 574338625 973700085 376411629 131510265 692346271 49281913 404092421 702530249 955461401 439495761 169667033 480909727 185670299 701296355 978723285 155349253 32537947 102585373 848478259 343357069 756173013 267655285 884871159 284447183 521919437 848328937 948530659 326674801 400239953 107203583 394993547 404559389 410572209 365963463 722031687 585406849 386513293 361127893 867418167 780342621 450271943 919140937 600039235 826732143 398352269 184474313 356442651 148249475 992350545 477955201 316426041 564352105 973018065 684781096 898704347 997144319 440349715 441140481 466624777 250382373 718288223 316534733 75553941 162458311 76403277 947113947 97441815 815326419 373590967 188120579 382785005 403696713 441948097 579191201 188099139 76031527 440385753 679812509 495495687 734342009 155465907 198537573 283505648 791400527 825807179 257964527 865857923 32373447 443372003 565578937 581883395 123471361 38404107 26428617 724567939 133374761 629153429 596676015 797114841 137794671 3951773 269488767 66047401 708505101 298652809 772180697 400786263 658755399 81808643 937050083 231676439 22625639 709836801 827452233 782624991 230022335 420509631 526443077 593687407 250896297 139201 894562449 357122897 901937031 924006867 80849271 164346581 333417923 655514377 79000771 237271569 435470545 706927297 350953933 253649895 195090219 286233501 198916721 571253504 807776849 783237769 317763609 511230155 886019535 802121149 126114479 549330049 85128245 39994289 273824683 394010657 94845473 799055915 189453067 283098997 370703667 421322551 368206933 225358603 95901975 394925099 384140185 699042621 543552637 843386017 631731819 832509739 876930079 232578941 540823787 803420093 662249921 743863789 674007231 478086821 947562285 167259749 759366675 237141335 65536821 585386399 817814689 519050775 842530483 665813409 806490277 874803949 290312073 516825273 65142755 21751975 361550243 769558137 875563695 165371871 274321905 385705149 958124251 758806517 824406381 48258217 918794437 761694735 865032731 537255341 661655637 837903905 958600709 747778167 677022713 706080227 303344189 164691465 447560615 139111889 100352477 884577445 208011743 722131001 415302921 962567383 399720099 983390759 147681255 887636083 242055301 751754355 861674925 363295637 420263833 578897089 421116821 462292899 367639679 190451319 558476255 513067081 650944861 634650563 524666583 431818361 166687457 356384417 100687823 692932977 521459519 809535441 745186337 417634741 907303737 295279577 924440111 54195217 796680467 360334859 108660324 652189337 264603547 873639293 117334065 841131 36224297 858614291 698515219 120680169 582375579 304849777 412113801 983614529 998876757 308251659 342960159 863472869 224138055 128711189 238093415 911042645 303405031 348959893 300578299 597482321 780639027 574191183 709341567 572883687 191405491 145535699 633296793 924835181 79835251 807948155 724750335 202986876 959788041 374569575 64666731 873822971 104350613 211783041 796193693 940131349 359549373 8654197 239763553 749662783 378072495 98175167 479879305 35087157 533924895 985702557 286180847 294021625 562897999 215818263 861054839 413608923 872674051 309955841 947028487 625941357 96648587 789062383 375112597 575086987 751478459 481074243 534333979 254105179 697518065 99740453 820531865 315897415 78303765 373298821 925556251 751812357 979150487 172940059 824376499 948115089 474648681 686135913 152871547 147493423 248210187 162471861 672139415 341188459 288030085 414615313 207193645 15896857 17400163 983419477 450227571 417374805 598377915 192988193 221510819 33569157 572839981 270777565 939198205 770548053 789490143 982778809 104731087 10872759 36792447 998905773 329907559 436305641 998851907 671083643 986788385 235228271 446644711 240244137 92228959 984317463 608141751 755333001 897789069 87849201 936532603 181460529 871093275 102435933 656575373 163664005 78102661 542710013 896227019 198712105 798336843 999629246 71824281 887027089 338276345 461112535 976412647 859257587 3142945 161782463 126442285 663743823 39521117 857126719 44286821 156333167 299847249 193593951 399614489 825917155 434223523 588652919 931495253 664659713 939559947 463493665 98027695 765670381 15558717 635205953 333516871 530967690 520278017 213395463 656289219 560531597 805803805 684753633 924560209 147999597 364757605 938813585 544770215 496463209 144710835 769481497 649419267 667199115 238423531 294990021 459597611 371641251 264614899 708080425 292151917 557934407 645170627 989887521 344553379 60936409 406443599 309211347 426746661 919586177 451942303 324622505 872383711 611404079 857581497 923263065 920519483 50470813 929847217 487592159 414749745 139627337 98498209 830639743 34453057 66407547 577085613 787414469 730844013 892485701 338976253 324828807 639258697 763839359 159134147 425353949 324689125 709405641 742664507 42988591 458818531 70385803 428751525 875747369 4879721 682368501 395735117 45580735 678681125 476033023 222814087 329609771 698862157 476253547 894128553 417706995 870431903 672472769 447632663 598309349 714200929 537832780 840498749 572213777 345791331 18503213 281870987 974667991 267492089 900016447 88841085 362861529 962326787 783968811 654700437 220655877 379094501 633160031 917686619 607612815 9250449 237255959 836554851 119321331 278813561 573127763 984908359 718496243 59621791 748742105 546033579 548003743 294178693 339460923 310062391 285133897 896782399 573650895 3263645 650639501 569531997 910780857 830023577 430131793 281724673 897312989 893965035 518099903 959007441 480677359 414987617 89819724 993696507 166374245 868574921 193605047 185009717 24243839 515797759 980413183 168403901 168095815 447283943 677612917 530493531 445777035 541437801 808011181 216019801 752983783 422645367 460553855 407586195 56602551 685758477 441213459 923370593 901776165 680586539 105404629 232461999 619658275 129322207 327610999 872765415 931721573 300750647 641330423 950435075 141487215 889753167 242596761 532680573 693807753 188385099 502509545 326629983 332835265 446361939 517070525 651082549 313627633 860708505 934275373 358597911 652508601 426793305 82881955 617251233 726794113 42774741 580489413 650501629 835134586 620046421 429246093 412961749 764323227 483645485 71851315 364672097 208583333 677857977 393772095 240651615 384810271 323766103 431488377 498894357 982217051 826222965 41358329 886961235 424628593 716228485 991888153 779162477 889164865 510090239 920358271 697153859 516665971 812008037 197550613 800007483 262785399 230980677 406299409 945192257 75147397 527435309 236231917 404777167 212626847 763549369 523564401 254170591 77512331 76221837 537869479 944533499 830840283 300400721 676568035 610519343 376089061 419191223 357320385 166050579 297438669 405666427 95691815 252767685 134966903 284072031 517928767 873160425 29603223 326655277 148800639 479075503 441132707 407172533 875305635 199295181 607511517 666714323 222598575 735309185 589219659 113937003 809956847 142829201 6966205 356349541 912457463 248144461 48182223 838287795 830025381 306736265 275338973 688987473 556176411 898833317 921132561 641751361 544581831 132652423 525783901 789228941 689936219 334532765 72696439 520642885 500569303 441503451 384109535 214586247 683415931 317456579 580779487 210905713 953155029 11680345 632834437 538261041 857837499 335861291 120731563 743523321 318666565 140363857 397698033 611828993 408945117 998659433 865259457 885228427 915572523 789975959 606088519 427690981 400222755 603785611 659944061 625810781 622181381 290161531 195565093 56873297 269046611 360468517 149865159 164660769 89657047 608767441 158311345 527273015 29199017 637809483 572351485 593650949 810299683 187561193 457730955 762629127 442847211 592053131 864245763 63742911 616425707 909052311 779505621 670599349 668299097 803147769 279481657 770464895 970047665 204870955 876703025 699406005 344566199 933443625 833438853 195483639 409930613 69475193 464342211 710071539 385837125 228920873 251003203 977692507 254314684 569300177 156656681 206196455 872020165 529345679 65297754 56247387 774713479 16048135 81888137 147352191 909205371 107839081 911013163 166398761 41506649 167399531 309000065 333814831 346111783 957167949 341741461 724315767 861242929 577417169 37818679 469095145 636110091 720963913 39272447 184226681 304434323 660881033 460694091 746047519 427500267 309831923 64831047 352950239 881894017 83456871 6180575 70276545 164721929 249923929 965100751 628537819 643876989 444738493 80698775 95348805 692891683 778951185 549592187 133832223 442421129 230055771 241962385 840627863 363829121 665795369 59161773 423876575 950484263 228284563 205442675 623923247 820622047 894334263 50132295 627750603 198919511 717799481 624565851 307305725 210177155 874867529 658169513 142721301 660288671 952019357 261400559 641268593 784786221 36673269 531989943 474050417 751671805 13126803 254970959 476278399 456259617 751278665 406214609 3595535 299555573 651002733 792416029 539879833 225380639 574655451 158815963 866581921 725903241 617036027 47136891 673689775 295491689 359021243 680973111 174049113 672683579 26734223 161595661 79052855 934558403 299897977 364380613 793137385 458198029 934732287 208734193 680125215 867759983 225623851 333219305 594343813 459946625 61403543 430671565 884500185 351966763 866595681 289986437 403251933 99133337 105067053 717000129 762426203 692177725 657584683 193659129 941202725 458286549 678060819 358540655 934655763 207561063 894755615 547235625 785778955 972648507 407705113 175681785 59546359 659693031 311451725 64786295 554230213 171695177 435006865 724890113 839437939 797461637 109157959 493820867 755212547 171762691 329710161 216635051 248020863 54443901 151329821 934426225 77617913 822601197 313768357 674821524 409438347 871579541 847555429 697865313 42646615 529757445 335500131 70390757 224601735 263621133 951595567 200972535 382970445 738721999 221255133 127888187 445710055 910263977 296075021 274137109 39339155 949099339 489915363 584085945 686792603 995433385 492437777 124211227 636445525 365241087 949491401 924945921 300224281 906926545 328841675 66263023 816258377 675911915 745843295 675597109 126438991 269045857 883627857 712965869 499395999 551796367 764288761 686591223 937449649 852461851 36878387 725804797 101161481 439543793 469682535 558625643 200573489 538707011 264441219 435528317 30122171 111968143 624986365 343135537 715385665 127559833 963656915 863280207 964934245 902562413 395142027 2070377 847054033 460306783 852966965 625994711 513030713 59843597 552002917 146857913 309754965 282265177 118177851 458261239 936668137 601042545 298485595 987325505 256812479 724607433 287215607 36974097 715643817 583022619 404297409 429334437 305548159 28939885 890871547 28642309 655392297 256419853 251503977 446292739 240195723 172280203 930537817 284372535 433640603 142280135 137266593 158607871 393007185 386251493 983249827 153263751 192438961 993103 934045761 451545789 851832005 482970811 375450347 182127449 444785823 754773795 369009815 319761885 539485273 391515599 259341507 170146703 217213205 680292425 139198580 820721281 477992445 767469411 423379773 884664457 981087045 170699327 7040047 709370955 227912485 992952123 365619435 298260523 258724577 912440585 761919637 471660893 371384771 417234841 433644767 643919063 227774493 115999529 22456059 390674009 462380617 278325053 387541163 728806253 617365417 362072993 703156531 370761827 662618025 492147049 305011809 521698641 654171319 1267185 976036749 751530777 853271379 635224031 636094099 303951461 439966459 404249119 819351259 505338529 924540731 987799779 97974867 254442249 475940517 889859241 742123633 667193243 545706451 676757815 464041781 410340385 501451367 249419925 133884449 904447273 615164939 581656601 893718855 539738381 273696627 407309665 772304955 803692781 788587353 881981777 218199837 787542449 385639293 639143185 725126547 560205067 532968875 497093915 307632073 618607727 483909813 572541481 889512825 361679905 673556853 56851517 391357149 250902569 71385549 805797285 548942271 410509141 723531687 368726519 142211693 821627455 579757047 469723405 451090617 59408455 303316919 182423565 375406343 140422803 411401447 540875873 283364665 894763799 725146515 832743103 506498495 103183755 11561165 133261347 179078799 509745259 792456111 264338639 138734119 275755013 934721115 75926355 780235407 826192229 854812923 528589697 530159187 466912611 623281859 680838007 863814537 618529187 879277293 577702551 614512849 71741835 411418041 403806861 890602577 789841225 806981491 781361231 857759925 561614043 307949933 482380057 494628407 377842939 387323137 6640495 528758675 6074933 382117521 472839197 614786831 188021209 771145865 757031225 849153913 882693373 453702745 235410715 129174825 846327685 587463035 413485421 834736891 495773461 218675317 650448917 353832281 707772449 793784269 982602317 964100397 12408543 212672279 494545805 246211823 631089743 461779437 998085787 955910045 110716731 579567857 581233285 141837759 258910001 952609485 533139867 397743201 21553035 113370421 2821245 11745817 772670571 945456099 533991695 1347591 704591285 957495191 820097915 765777617 426598427 522996509 774758709 70264739 435376663 28271175 113175037 60877111 660403943 974949617 355526357 654647497 928081299 211630073 975538439 604642591 146233327 573766731 670826283 965577607 30442383 662097371 189855259 174934745 532480213 599753891 332315133 222451827 917670377 381874083 656878907 771273529 458686395 504822761 924642187 555182235 207771395 523959171 944214249 528539025 969359171 740428941 82205849 568594837 20236737 445583401 445387303 786733489 862658705 834270595 190915687 538810737 511473541 192662731 761241207 128426987 426257219 614332987 435868857 74939583 492838961 190608153 597932505 334976275 473250175 935542955 766643151 634972821 511545381 966805317 533577939 719776889 42168293 13714241 595042923 458958977 46726213 477018113 690165347 183402481 121074583 699184881 910942673 954635417 610107889 365723777 253064205 151530445 938426423 293682477 616001473 661069163 616585485 266216053 522810837 867037405 265741287 938895845 791906429 894234637 609826811 794958353 307711033 643380339 641933641 60671887 546262729 222943759 615162267 960409603 686073917 118605923 318425473 655606041 97323493 55025537 775506257 214438273 725110625 160167679 459209263 321624567 844343701 272175353 623464190 516734011 940052395 730491671 71915379 625818649 646685209 9251207 294226693 260743779 231853467 656580607 555113971 775982069 723356211 691519165 6178887 805105325 571712561 195731847 68543185 266202233 557369127 543116971 17422887 930660425 880680689 530804225 522002859 913960217 951140021 397940199 978975877 656371433 166844383 226225729 825546405 851337157 520559393 678181249 70936517 921005247 891307897 49125785 662591075 170266355 779446059 438353675 385889479 108117119 132633795 365415385 686425603 813130641 371023381 36646037 28419311 608073049 671245119 647753557 845826859 405631763 472487331 419339957 228071967 488384767 186872559 572808925 792180219 50134379 387923477 766381691 347713209 222962085 239195219 284806085 593758485 760461065 52792879 948484985 809236893 858842619 99116145 356105181 240474525 614467809 988901169 682971073 359417901 979294515 316841673 304989561 302455089 6240869 38419165 657079781 265471055 424523519 578699099 197860713 18768373 654790535 844546935 675901685 871261281 743266193 887717547 666869505 495976589 714044089 677987775 526668423 530980165 841731485 730134971 361939473 508330009 715441387 9215735 934112939 614218335 967978579 79437837 776221421 270399035 895805329 241232611 154918899 278137745 447329639 563757475 300903525 15623445 961477789 236357571 78614897 21784381 932640519 825787647 166469069 921870153 462691969 24631899 25856183 952692291 201188841 961392419 852364533 998982137 936387629 844663275 601080791 792869895 598878013 962752913 915981873 728569033 539198229 551129655 679016291 243670121 181241527 514389065 414090323 755936217 978466603 291144573 518922349 152725965 768013957 551510991 449942187 774752713 133942497 829617285 725419655 640285973 73994077 497882407 710127371 266218431 423277863 86272139 838907843 985744289 975960177 257549775 207726535 373149019 864132465 675062613 849831091 722148181 764515183 192870347 433249711 140472513 750974897 83423013 125796457 144755859 75043981 187830173 959429655 868086415 375734361 24783545 559185015 333388859 723937915 393961543 402757841 403178473 596259931 462861145 940654833 678631345 844782699 920882507 816720429 971580019 733493543 765836481 461155429 555478743 678081553 971126441 991831805 574087245 179548337 157542711 502919655 825964045 440573851 815964391 816638101 52013593 969176939 429894523 15631113 412098615 356235711 713873155 288380103 205170937 140376133 895126737 522515933 886116021 240996783 479001217 259085283 946739855 434860725 607110393 725606645 979818347 560228121 864550245 779389115 810360573 886642345 742949943 835730789 173908667 574319155 792011309 53202085 61139687 881160853 19599179 994136251 14812039 299478957 252523485 688665965 174596971 301792617 944732535 40311563 837500719 289831611 629883383 441748329 862594095 662321307 793261183 139292903 902802325 544937739 154868859 784742251 20405075 953661977 866133155 207579489 866589983 472609491 67448815 527384259 610938745 847888983 227431077 614797837 977423019 91183299 148691283 753567557 901913027 983071301 617112009 569666809 328328091 369217039 775237159 514371393 448567251 436258137 225034191 28916921 488410581 166061159 966582895 377352075 966226893 476894593 466468603 846590561 796034999 920780285 329767599 354507635 325989457 378398001 961484813 506720127 160259619 960464259 321380837 975349453 842483327 165041499 721067079 196861991 726877821 915293227 252131221 68080617 696216573 534393199 20046701 207333613 312454311 264502185 664774593 520359323 328967915 625124195 838665665 316176095 68500739 884985389 720987880 939372851 917721067 677626789 509513217 776614803 197137009 262160491 675091475 331719301 497472545 673346857 564004211 376895255 467282003 956434833 65068223 265793505 340983083 571243359 526958039 978920958 668156559 203926869 254690541 438878747 84111663 17820221 708561265 247280479 616587651 145369063 846624545 941160067 229253835 337514033 304206593 95243973 431542801 380738041 515969631 101471469 989740837 551227951 137689035 294207047 784887199 170932415 917544485 34923433 339691997 541868455 726491535 387197555 682475019 619167721 119087223 554640779 407609621 508253839 654476943 669597791 861680055 967163817 26898903 754188261 877437297 843976021 737911695 79986073 816320393 494025907 418428229 987416709 805432335 156568813 815607759 943232055 608272093 477368885 186370119 733414339 193522837 87221447 86823699 849291975 458651035 218854885 626034397 936139885 370774305 965726937 923578265 396128863 834653729 856492021 943840135 511981013 284752985 317093265 118943273 969088143 571456339 576536339 210145097 910937551 338856797 52311523 159669759 535550823 956846737 925369461 543143 295130797 694869967 801675073 841976545 212527997 696339391 375039435 809908383 580076863 200118739 387413405 814067985 582469601 407162687 98908999 724678325 990141655 430693895 354963815 364560719 373358626 301022193 413597597 587397867 35501897 65231759 294535059 195453149 602417241 461081401 605665277 665686211 575318247 699542031 417031570 99378559 169860883 952536313 66529817 455538237 283623041 28601767 498593623 580149109 592848737 636517777 444676643 217157087 547154283 97913081 897406805 429722497 811488985 212544997 455818447 871991463 891718005 5998375 54397051 169818343 551653259 490745687 288671565 284653595 815680241 645551571 107924029 249037159 456280583 499655 199155023 380296761 126820019 425714977 337825931 845231429 17683299 902344601 769048839 61763461 31158797 989366703 818531291 467367745 781433647 443057069 120656681 196326657 770862287 759970979 764620059 105438877 371274109 225908071 306199781 690562095 789768525 92992925 959361983 367573277 724289759 803241129 537050605 540222225 290616919 920657087 844243385 187207425 920442981 663652821 188698739 89670185 348075841 295037099 759426425 798903563 367146917 109760459 229905707 118734967 428705755 578788483 250914805 980530815 4388527 952993773 680554309 557916545 657924729 313359849 670147739 870527775 391731733 289424417 873178741 299171653 183431659 862033153 805476189 879496489 405089001 966395589 318851305 415166535 169198981 880491115 503471793 104612707 778155197 565548731 949399383 761232779 730326295 599908679 420199301 262295311 313146275 438283111 155100399 426906255 943964405 311791419 830276941 886269933 684199981 789375147 442982243 256544599 878361583 928978535 493150203 539585599 252802925 37507305 460238567 370195555 579772761 764112239 86538241 962987209 796625653 778396417 575073835 933450425 322921731 250784625 661382223 24270539 824539863 903394903 893094497 511144409 728768833 132853777 694882905 135487495 924832165 510254795 261836091 786683843 578394853 181890419 409851921 876986049 501475953 356522177 689300717 480180477 124347709 113739319 562162665 412037561 936999117 8996635 976479271 917560453 911495201 170322303 863194321 2544179 715440331 386734393 989732891 374276575 537478111 414593773 901828671 487976943 417051389 240543487 491387005 785258765 964130121 766358691 517574177 763002671 318659189 675627727 512446331 436838545 219136947 404211523 883677929 408173239 33764037 118735241 90268107 917919085 531878639 266256369 854135693 983352775 684928511 491793041 219183775 119434019 631611725 946492493 746094971 392904227 832889013 708609481 525720485 280081331 798805919 789166199 801799335 101320203 113747961 693268369 335305491 164385699 365189945 945814805 528682371 298020929 730701661 797211853 694206361 493168625 805329901 264819015 832497919 668261897 342483701 146611421 89256041 821820963 839022091 178329775 585835665 391293219 57449295 874113959 695463223 636643895 408575077 384970609 862695975 931798483 989703551 145614215 370049075 223504049 608950863 219570731 780071989 126674647 687833367 311292773 90806799 63118483 71738267 277597187 504699819 141331319 529544233 312915103 745437693 670853471 65048217 11346585 617209343 949439343 486853961 26258199 518756273 599201559 933820957 383196685 586768671 566519047 396083077 67086643 193245531 984225851 628902775 477098247 361673087 499378427 912772209 832048081 210952621 84775889 485440635 832682147 955501073 893963409 885440031 365638227 56578011 842938199 51053945 439664261 291597893 651710857 750077219 308397215 462597011 816884435 309875523 831210703 818507791 151847463 551522443 193363731 231951627 444753603 415159087 874945061 528242145 30481707 314470891 732800657 687395061 609203243 306320649 139915175 977370285 474062807 203329879 541737085 480649343 991299213 905782569 305295607 539667429 183705583 250024285 103722681 232088927 343047147 461096027 675037751 523445113 262747059 384202003 601845159 323694533 580313287 53608951 155789833 302196189 285575143 857716743 929000999 269026403 965255713 8562633 63910287 869283331 960114123 532728909 510746011 7949421 821395839 396590121 214062189 877937499 392497441 16146553 940703209 175945107 232796383 670560229 320812737 328136155 467853869 255941017 905549679 370381319 583203015 998455887 52133681 124308465 39413679 455529795 593254159 975718011 646050869 439195963 917744349 676600465 198150891 215758725 761213487 998511651 209847981 188226297 630142823 704257323 292656033 971022069 138202285 43042991 603036209 2213981 464353521 404817845 211226131 643228321 872491755 390574161 12463427 236302519 425769501 137753245 837225733 991990303 984825807 689449915 876101861 256461275 404966415 240261847 429826999 120455037 302925493 43967009 478242455 223558683 480454245 912969173 196133867 57468753 741931909 7101235 378851423 861598791 674587461 519985031 748320741 10172585 768434845 141499171 182782139 906377137 254495567 330207329 333976678 88994587 878120673 960573605 305867441 621937197 287645605 596332885 245849775 168423607 894560689 816117479 453931455 614665741 200110569 271725013 716160643 852812813 345564107 85471647 692202985 260105761 202036285 649688019 519148581 109593651 49457923 612400383 395504561 186220475 59907907 769693119 328120917 194472632 850455751 699244981 336638489 745585839 114134559 585008269 184812629 394303919 853480353 439166711 894469283 422463310 736593521 416589231 131226599 385352619 521481587 893568629 811193169 731541611 103975515 828038933 842004303 587499965 871640221 736926819 656263331 932113237 744370813 743667509 484704591 831511925 927797251 591822703 629193631 318444513 587981823 671385853 439594279 827138281 963696391 196700879 536360387 637288545 25478269 475001825 274497689 262359209 578843017 351984179 457420563 299909029 280102939 492261843 716888039 81447879 624846829 864510927 816498193 254113537 757599613 256074563 243475413 66514387 337713426 753137233 366308287 898003013 687334337 912083749 661048741 348878051 467655775 514942191 359827871 628914117 84094605 377555691 790232343 322621319 395239859 521370459 364343731 75398225 867945473 532156551 292051565 197695185 643370865 144030659 800566909 716292925 415999167 347541609 663727721 567287891 520875129 790063325 841863423 841338969 431864811 77625735 708706383 273253917 72737325 58706905 548957881 567323641 988583715 127246671 472425951 614702789 618731635 551801449 786555823 621069549 972128907 869021955 623118173 708976475 547799465 956024001 878045285 342927497 348531911 1259305 486055305 723515249 945498801 405587345 992714713 71321757 363150583 460277407 142927271 557995289 453404911 786961419 546472847 792272765 585845437 648733065 781549943 701799653 837484101 574895073 146751881 158980601 246566459 809971161 13099323 859494375 438023957 455131975 400319561 327328101 24277011 372799489 252581815 941067185 850374207 782954219 829020367 766613905 572810599 344119537 365466667 482229333 986569511 147309061 301311649 836049617 270524891 143176733 144032345 619796581 514448301 674263105 354858431 257443317 233864079 723026807 879968389 105315059 61261877 253597653 794488489 298353745 270600995 527289201 868269935 424708497 55407521 578711921 945909347 780187063 60254653 262113531 201119323 427546705 464624977 59243591 685266543 199201399 239579901 823910795 457833737 759120837 900600617 148534793 355584721 956697955 908345095 705325327 535981499 508850431 699555723 721462507 767260679 940638159 277947001 607738361 658774325 484461457 588931927 917881245 642272531 410663821 12104823 630093631 469438647 405657485 542487025 163750225 761651579 736045805 965881509 121537615 241297413 945428357 235969339 888859579 938070847 476371137 405319971 444333853 118516063 357511309 625230741 691153675 199440607 349706845 912260755 593302043 362017159 14925875 195751907 485529075 194434913 707241875 300650007 231903291 356385729 82590859 807354757 512210853 780710979 581028019 644701009 30619373 630131149 241891879 908133985 295130069 263238025 832555663 874760291 640563749 154258413 440697881 198388947 119543985 62390197 682329723 856234481 538136149 88399589 251759093 325430211 842512625 674222537 423917641 982300441 320692335 214119415 712516553 228762255 887420353 588105543 161556041 987884929 303612899 436766433 367649833 143770393 503741655 71451697 841742159 618508617 242928805 234857961 416281127 684230599 669909603 499296521 611054251 301672211 87413031 231036881 433877847 749673335 358271767 261798607 413014063 106691585 918158939 525592537 371939783 916803467 403888165 838466825 256912433 658291639 28994481 194654659 151519243 299704809 889850177 742566837 681546621 186199123 437069597 809185747 639251253 757601007 805143707 623254359 746487147 263690363 978274065 754694857 306879193 640109439 984840421 4716273 969268679 544750925 613347967 751656423 837170437 30450941 756552019 689193989 819170025 195633775 344601305 400508145 350234191 422791499 68835219 542754965 983245725 131640833 141033999 846938151 747232197 982549195 50026973 278846755 250608443 620770981 566121109 8383565 166956283 417995357 740409565 890282673 65467791 247031166 2598237 367959715 395514885 759951715 832242631 798874815 233061105 959509037 534275543 597760235 302228849 800401859 837861967 902695251 440706092 798088917 844745721 274169705 689200213 286748635 112792741 889316587 938478747 878191637 433135665 872701149 915089983 69990541 144688509 565447819 153914377 793379091 919494515 700002441 873375557 472254783 297934853 902703541 627411657 487283567 793658161 956569137 596132853 859839439 985424883 608049259 206305711 275585355 452485467 376574487 681899877 650163871 520073591 758105391 682445323 399998283 766601829 312105209 207643939 377803413 478296901 317903107 593094577 801011853 752185153 330936351 177195333 593990925 292665485 832877417 703856883 65333943 426249057 890860357 473269849 121981935 365464321 664574049 538139809 85926887 74157749 283220657 936063861 909083545 546546899 767169137 373144077 12766915 936412081 723214115 523493927 664231663 152735925 776656535 539523851 102397035 556729671 736548831 282393221 966895441 326433755 980422743 378775021 748280449 486571241 446410917 678147359 817160355 206466549 619377075 815115651 769991465 539047049 399957943 386532613 927155015 828793141 717680941 386083103 415320321 944805527 438876633 815066573 454849565 348832335 203780551 354212501 225631535 320189447 833768525 523911559 760914057 661469811 958865667 212213303 748234577 449561163 67634897 559343811 491113069 123202899 46977251 334788821 261169549 105744213 494249899 106050199 216535593 109047073 117837799 258221505 784615043 283158933 202115485 83175571 221035681 33883793 593002261 53433039 740140373 247819263 345401829 434521287 849826615 669402323 823811563 730134609 525447589 583485445 176699979 239685577 9842123 248085913 438518895 169677079 996347799 425131929 629025035 475575465 950146241 564632853 24006943 278069877 883846601 599870763 452051179 827990265 232692473 613040635 333240063 846853179 98919265 5069743 56064813 356830923 473068503 95035259 697451921 611096765 378515455 565991575 818570639 849688751 24862013 872894279 350069975 404400843 166710725 151782357 935972439 98521531 4938637 564652947 729116497 592535481 799116629 859651035 851185223 216819071 801717671 214924045 387646981 507850071 304807889 292214681 751791263 10457101 34357485 922996973 838400625 241708023 163238619 731382403 772819745 454602231 529713989 728984799 552158363 570768495 277953687 705985163 109201425 770109519 169081101 88026903 924376321 273365517 198168485 760120865 56704559 472700583 395046183 713909321 124966055 831190179 929589029 841094201 71037119 973253391 119353591 791260069 176709903 172666501 92822205 323915847 176696191 709965341 234836575 530488543 405253691 785500803 652369037 205719607 11605687 753471713 580228033 289147941 915225773 487257073 875134777 372583041 218525987 771939564 377677821 696056877 109596519 442647711 552190943 755645971 678384649 329821267 877308023 75936295 191786985 501258977 768272419 14439523 446791467 818776997 272935695 3238343 390130233 976208263 650409001 608621917 865136841 498608117 510589993 739065147 254610133 52818917 472678033 597785465 733762981 695075541 363715239 820045625 174308547 978286541 688295549 760820135 112534273 163902039 189353449 658509553 459460481 850170255 478153103 217842519 793653409 184040717 734410707 637072919 16043795 279437821 341477865 623756413 707425479 256252427 894694087 449407195 358717946 607668843 582296109 633735051 820972595 260873439 403833765 573108719 508557627 53746857 677770111 812470641 510779431 84258205 995925969 588514949 757967955 790033163 986735487 784772003 771663973 719646935 434214701 547832911 168212809 894861411 302491725 993400851 364796209 978823071 495280665 161766273 801607325 537184257 799438479 406473011 346924877 600575879 163362681 113447627 810765135 532130745 685690725 85060597 579628023 447705249 740440749 598600033 626185443 437411291 237794929 801453000 764414199 471904639 854333339 327306481 926504283 154597689 34373591 315326627 6530185 974340405 811003039 364709297 498902331 222052647 864750133 676025077 890481011 150674769 448405153 826097745 319393153 105198967 536434353 304042929 223761141 846716391 652412159 282710533 781151663 27092089 148785899 432035399 256184019 108167561 992872859 415594107 335030731 946246913 57086725 773813419 207371085 716999499 622263515 862447081 392283733 766064735 604708769 634995535 28517159 785430715 676493213 692899583 742828621 949346405 537845729 652225317 312684447 959778285 603320131 276401393 553667897 531157865 207072103 576821149 364631677 771574645 86618547 552151919 457057559 803300919 116134485 922765485 54332925 60895841 759095115 318515371 115553387 214426149 877936463 666829507 770704101 593553989 672955117 961068887 640622135 379101445 114371957 781576401 145768055 761485109 369529341 505550501 105752061 748910887 644040809 215054925 672969331 488335807 918389853 15601737 387733951 228761951 590017613 977422117 947109147 140089079 795853423 279698547 196756991 269500157 462497219 514140621 54539057 187580529 240099091 612583893 754048959 500976085 370907117 280286519 939612665 181861947 406815147 499224483 48233087 819265081 309730927 544632021 64263989 421374699 971639837 618281869 448818245 824716535 222516583 823770263 914875685 313855887 360831175 767025093 435925391 272010599 13371771 107501297 211138699 509791677 923454603 960452861 296969569 937493335 696688075 294709461 125270697 216155523 595650767 216276585 927565117 159153433 928287737 672576949 721431875 58581365 416348529 112988601 327938343 475249025 293927463 535313281 258806427 694964903 580552915 937827615 995380123 656462303 160637687 731645101 600088943 794789545 901530587 352197455 117684640 571415559 597611917 786427947 621366533 734787979 884065765 319048567 652389561 393784907 181698951 365774189 914224927 77477858 653486809 139325261 728571619 686010745 513012491 140236899 736321533 166344895 777479445 30451457 659095717 229704937 145482425 645149059 644084321 824646069 372117373 583238471 167539453 820542569 483013555 673601979 234984335 521732307 122424177 149711695 162343793 979615307 567234459 402796669 875708231 401803439 603408597 669607627 436115455 718931811 935176851 835679167 454887371 598710361 166474251 424329709 423448875 268740355 768640317 128257007 785239519 109624161 282376691 980318569 623614967 900459259 103868093 38945281 605176003 607236061 488137201 273328749 211348963 30050207 469131955 432203111 131866683 966764125 426284007 976301233 897339125 440384447 448253761 629254163 916446855 947682801 702251061 425023585 523371949 137936557 186073865 331520117 419425385 173452847 874811839 486162995 78934283 179786813 32282413 70116225 790630693 13623079 178848743 535535445 629365909 181549761 815079247 405706921 578152571 45865323 583307917 655810943 528701001 845759241 798247825 591598559 829878959 731738635 385975829 723199709 486507179 118362217 149984407 191952787 661548161 635519645 806334815 772141093 2916541 933448881 950841727 787100857 104728883 578535729 167647695 524262023 186136065 748056629 451285999 586216643 326724233 276483673 647511367 367847349 993301625 269492165 215825415 615387043 397675715 486056231 289570857 791580641 19542181 404052659 981349993 915022283 131029669 157495595 175717205 703753663 12923787 626507477 199265849 975691307 553468783 201180283 566641197 878699135 679093419 856460919 956859669 821336631 266248931 495293863 813312151 129463763 41895941 376945777 992828705 481984481 236855621 934952385 447113457 773301231 238333469 850891279 140548353 257455513 276007765 471300699 92773917 371954051 954775541 611076905 885124565 31473237 991094869 396209031 641601919 970052545 321649935 852312587 288237375 771327875 486138377 845180887 267134713 982120027 597926765 454889357 925884257 608410903 284814001 134192733 677295341 507957637 548216721 883384573 944710365 371092353 700549393 167835307 564221499 409779695 512058493 5232173 119844567 974644663 767132265 458625235 796489287 830569675 127581107 954692977 665864429 612875047 668532861 160550247 727974129 707835339 399354163 475682713 666620741 263736773 31773067 613302137 232574621 160528675 973546371 443613689 513144445 396341761 7370331 368219803 673884717 283108227 810298273 991907939 620830651 254839505 981431337 739267295 96690945 375139869 891371281 432968997 796510367 844931491 560738491 713263831 819254013 175677605 983385557 256088855 64974157 46687851 857785939 335880597 274834563 907887433 375768687 688901511 566030435 963134363 855688111 656243883 498680947 346966719 503499233 230501959 566646021 343830563 262869527 977532459 574118449 669858361 902211501 959165867 430335191 945171831 88813383 139682983 626228127 857846117 436758995 841144965 295234553 431652747 41015685 604804913 452232989 248035449 205077209 278527013 192100109 187531467 483367313 923450205 549149070 338132517 919161789 931603037 77391157 842851887 523952303 777818425 881228885 592930715 562481157 687079809 963144723 196037925 40000159 164628825 180542805 514811023 194578863 753353315 723895753 796171169 139041189 762222287 447163627 384115505 698284863 913498707 114636027 741523989 264328833 962933549 544728575 878897203 165910455 520766245 642981063 883382131 796754549 594559111 525592559 663045319 796234393 873123625 245628627 287851819 684019013 28868971 286998685 335707297 737259493 217771313 544296255 997954865 635272497 972122349 300933743 656275441 309017633 781162643 600744621 248543735 543119099 619935903 312555587 640942441 866320461 843133723 593248319 144975983 271944679 744373909 742060411 12701755 912941033 917162783 293182361 378070539 357858741 244091229 416053245 127817755 888917241 288572785 452549337 791353019 828850857 33922571 351589927 665358649 567823873 748175201 405893285 645836019 289960835 849937971 897492187 238968391 215456767 337578691 172507163 926435235 942806407 573985251 121446781 544420985 147640439 422665191 193673953 622983745 56943731 381366703 523669999 809792895 867139947 735487905 696149271 424574139 535291023 632345259 201869971 794258827 911270235 212163905 815738207 407014277 145317527 866241637 297003593 234901327 554919757 229275803 113323229 364597649 872333777 92428531 209086067 534059519 725639873 124832767 272520495 957683281 639098367 532662499 522592503 151904587 759122871 62797889 635422331 96202677 871827295 402287433 73119283 431026533 459823283 965087923 527396703 275334193 207498935 559925177 550099211 592217855 480473273 766222627 930998017 32177847 10209609 527946817 904557279 277538124 911262535 515697641 596414721 197494457 584420053 531345783 131432339 308429823 292152929 931482579 85593985 632874023 559153565 37992553 444517767 40107335 551359113 767388211 523456293 788747125 303521893 677551789 908501409 437018583 334749887 921291485 314456843 979699605 158289005 459757137 731515709 364543715 563951753 949110305 227892441 907436537 712975737 84084203 256452163 228292123 929805287 660583123 806824621 564964499 479585737 88560267 419046673 758124465 105966937 497009221 573307693 199068627 909270559 768681921 968650379 335495769 607452645 376579143 363493753 193518765 568544701 336668579 344984081 424674113 226182921 254672683 801361715 763976339 361652841 961223871 810527623 253722655 672553673 319737285 935767679 604196213 446106719 507309611 699590991 862244645 769594279 138401639 685038075 400184775 620427365 176800119 725381193 574413569 486187173 339937761 69150413 94248059 707593147 297311923 633365465 481593065 759133509 646906757 747544211 924932355 781281317 218180725 696915425 138024589 363074951 159126823 607272819 911246673 140468195 955882957 575854273 455451681 120956913 48148505 490159629 776692693 530900407 583674443 6427485 637758547 866798977 954453035 830246275 529249667 723859685 239528453 94954263 669048921 171159997 875782577 788163959 830532557 897393965 544599435 805071823 79287779 798396067 902082939 143697421 141312677 313389267 135463407 443081193 897522981 102619831 604430557 502695907 879935099 375029399 934005955 891862085 448056013 155490043 997483431 313696799 857982021 795126715 80791063 319001159 393997329 343846129 925891627 840701537 433500529 832990723 969000065 715135441 57840291 844166299 7214911 688660171 511649777 291504559 249659665 544951109 860317361 998948987 204179503 484596735 579139643 336279427 916523353 150726019 542296305 558441361 491095763 51496735 595029821 713190589 516056427 254657517 4418195 940045667 889464183 354301901 371014763 91414821 715643865 835338345 522275145 806239215 659404019 135142957 937514423 480061687 655410611 274154837 345673543 958457787 601006739 24511711 596748177 57779451 158879887 622192531 212947771 852916165 57316399 801481987 306193135 661676141 290236541 219597447 170584157 989225361 943053331 322095167 703388991 879046931 228867087 965783571 365925465 797116705 779760407 790257843 982211701 636660525 407210583 226824857 402935139 148615415 623958665 85199619 338981633 822804863 471639271 418987257 884840495 647643667 43186235 123224653 852615129 821781833 585149393 249415319 805049327 997352443 361257601 364380901 347241067 658195533 960306087 395805011 743671377 874322093 840647723 751690975 229258923 495693007 537112443 859837841 637367691 91411631 982750349 870625003 222061321 715059087 399898335 199211059 226940493 175010559 923326327 870462331 633671803 917772753 81995237 357532313 952511945 690131233 335511357 435720241 23281263 809328469 684917535 816320167 36364721 519548695 734047409 3623215 903708377 91171421 439284639 257809087 984923193 147777379 38973219 651765527 241564203 537946541 358819063 802688449 216809489 589721351 985688677 644363533 852187989 866140293 917153593 403113233 338901611 784240517 163776715 711936177 958841293 743771817 336405241 69502097 338910971 116570335 215681831 404196899 265399169 862648921 429299525 280026273 863931377 799809941 661305033 88075785 739722979 576839255 275629489 878628901 863401983 372012717 413547395 938269059 410526441 959231463 637092943 131939965 33171031 829986213 892477353 562948659 87834369 867552969 303039409 159660943 606688429 989311105 983373837 719059005 858491167 777090369 670423273 86084535 279476527 530195907 675255807 529637439 465299893 525262351 593488267 224614365 413117589 126757485 650675027 989859679 181829045 203759221 423527845 74454367 864715787 943374849 145214041 485246781 722270863 640759863 794891211 793807905 799842119 490778753 773481955 21018619 977019449 124143509 660601615 843516035 331814519 640143981 679213895 908356667 268584223 60378961 284387077 274442601 520940115 794759371 247112273 296799007 267082297 54315183 515633595 975608883 217720839 217612569 664395095 178026057 621438199 56003439 547592133 122289351 101118281 140550493 546826539 301474269 303405385 709425109 830024759 545111427 723902537 611175957 593607965 263398009 242606499 398274209 44934815 844167497 545980857 822758469 699799809 498139971 827941623 593986325 198094609 193353085 665838797 715500911 930843943 151469019 624252597 644437237 150404641 387804673 431947059 263589781 265437795 491019363 251381457 808573057 698500829 944620343 429484321 832681273 557406213 270518141 29158847 798024829 356574427 613917183 44079433 36963163 859043809 229505099 492652651 357358633 912669737 789834171 216653017 552210817 334528071 900859505 747677773 514028359 190173019 88156241 999001990 987914153 389131275 183574029 358355795 791686171 861997957 183040543 238896515 952544857 148553341 576467397 348986353 897950053 361679924 271949321 442399105 869407887 11394417 546225849 877338905 857934441 146824577 516805487 658920111 345058255 644423481 119860875 910342205 887384807 370286071 484561973 29315779 74444315 263278757 902249821 198070605 765839649 350975149 547461819 499456493 426957813 788176647 228907473 388260543 659872731 953899313 565315559 23433441 483656799 486181427 175650571 935570815 184839765 413629337 89708821 93581519 299290841 739052153 6297769 230140677 420198993 743231603 254923821 577162089 962873705 142940845 615260881 420140865 981379091 246022869 914473357 649218273 929172109 351774753 852032035 787037859 436010077 886573135 516219417 477859305 201231691 795632293 644697537 826454047 490190445 940321009 612387121 994457525 894972193 907640459 298577741 376950055 836716553 518909777 939762873 321548789 212540435 121483430 234110185 253885355 282516339 97684093 631637267 258971867 218998435 114269259 756797241 277904929 482081131 930242059 451592479 378174747 196162003 32299847 957291355 174707575 873235251 1027083 720386625 957404645 215015205 477877229 767367413 302271775 850164877 848845581 478883419 329685227 499207835 287265041 306357287 629205775 995104191 199194151 898518477 675340383 913424565 690805765 463342995 823292853 464388997 471583977 359270267 623985397 421856377 71557785 24414811 941764615 788156197 662567269 376571079 39407581 601940325 861000481 494260769 680551281 8217183 423619627 925780881 436610249 593418621 187960941 5210375 319441387 297666423 128931409 429125181 271000043 405202245 20969423 574114737 685276133 771970859 742336871 257105835 733647863 906750395 495698205 712446783 931109967 681177795 137378175 993335615 451384349 264306785 425702051 342367057 438750365 241632253 158551851 862563547 218654735 838756157 750141751 783130125 902579903 866038555 384133499 452999393 671686657 841686223 979973675 106139667 321527595 506048223 706558981 90878513 540840609 969501209 868729679 731481223 782010575 934962317 781486809 368926253 645106469 664110747 264816375 915291911 99137823 892600295 489520777 117373115 661392703 841875547 493200371 409623479 633864717 408316715 68840487 928428089 774094109 927704023 854281623 291845947 294561803 61537055 950901573 252263305 764605301 705667603 981049267 4239539 35548681 697638661 94609397 19649039 446195575 683912337 481415835 509205953 646624635 260370077 207503049 807517613 734201559 427994963 478169377 174730887 345515603 957559849 511660755 121417925 360970691 850168027 691585171 364818855 711197441 934503533 11173283 756024887 887912177 882330155 890144457 403759173 687273595 856436393 770577231 726325095 120842641 904892611 810543633 368299519 773025839 121000607 297012839 898111029 129628503 710866089 371904829 709561595 791778833 85276819 162822141 420891397 523057777 41781339 995459489 787523031 487639187 65678149 251449765 820364473 25062293 515149533 809426701 743253945 762716325 196326905 276206957 477522609 708874739 310575539 299424213 630826049 484073403 164534383 320524777 293407953 716208447 871408859 67178699 416964499 168708550 128738537 380643883 527797115 161481641 989045465 866234175 639043661 680486203 98028075 852875205 110391183 33461731 723822765 58555139 884704147 830877447 625829237 420245705 962672241 811189023 338588637 129266283 513141513 774831777 101671051 614526409 15503875 187452175 814603881 964121161 183609551 96465911 719014317 980899799 806900901 839958503 11029201 706810861 631926151 13023613 777510813 472851589 842126138 488590423 887025691 299958057 135769683 499288611 212134303 565590501 278190373 142739859 363577285 371675729 773379797 993576799 122028915 385618059 639457865 774986569 28580307 843372087 730205487 671795487 531941211 29315461 931150595 479105967 369875143 812763691 718950405 365011925 494182427 650818151 304371771 825902453 339088291 450880001 839860853 478271095 640119541 786042691 800533839 179267535 867344361 794508297 358897189 170410613 842924967 567915181 76990499 799013995 374063003 604903189 252165941 969731007 684492919 135746995 40660247 915187071 240600891 826872441 472721479 978404041 901984295 880518633 181749007 498676667 956090825 409534471 306633853 215815299 236310007 928784225 890197867 720561235 583114443 555905039 808457595 890622051 984894889 704902319 203526161 130168053 580709439 913098597 302522207 133461079 856650625 535001313 154753375 417565143 810442409 410563417 800010447 359325395 857866303 994692491 429392439 834606507 720871691 946950079 384873193 260087497 116356389 671716033 997979645 886650271 865743591 970981095 329943379 729980841 991748087 21081361 114333843 59660137 126047807 975628197 231631917 220710249 667570933 857357711 324921947 646350137 466801045 957877577 512377369 201142391 523941603 396123087 3040309 649792449 877969899 643118503 427363899 476444101 861308161 924584415 356038531 42043445 234885825 457145615 881966129 754183881 35699985 583110741 766632491 722858565 573920285 475076693 58041377 821161841 596499287 705044543 477136011 190054435 539861117 877934281 909732009 297605683 524755603 864444723 344752519 880273537 783056101 379938367 55693551 799802875 54956041 557594431 654780543 342690963 526169815 247450889 530862739 398240833 67693431 718254329 170341719 367450121 473622101 742819317 630683575 830536435 20287781 438711151 939604079 391571733 949691361 357988443 242502911 366502535 61491153 817316919 493827245 28201065 363386493 436144137 141074825 490821099 117998781 113185631 666753901 367650105 694687659 569121105 995711227 779138705 742965163 229747581 18136727 276575541 926415723 338712327 930006899 472054895 353341663 106730399 150402697 428453007 345990211 845077117 103278487 463243763 997822233 464032091 831953959 755093499 628583729 139030915 170245255 387823121 857436061 633174209 408914129 327397033 835391417 925747819 472631781 314905147 269522475 632364641 265176171 810694731 846533597 732675593 637225941 348914785 635907847 630572881 754083159 697806611 579217951 231192495 399344885 982259961 653544687 609309983 413163125 743213493 203393409 612582701 657443435 953870577 50338091 760393185 188635433 246263135 716334469 554216661 278331349 265343933 585881463 798938151 291852117 316897223 764801069 366751099 157939545 224394061 643895321 670844675 6802265 594962719 537843195 572924529 147479959 900995095 482489810 997937669 610450457 283684885 484751855 57408391 660051889 668507913 372290531 407053635 538792183 379854815 469455757 180232977 857286473 404437911 248707601 696369997 840243667 971584559 963109593 657259999 391451779 66527665 156589209 958504757 115175697 541647667 391404113 517993283 161180669 195268045 444926529 115551371 535217553 475632545 596658425 707978003 58905821 55518937 11290187 485483365 329160375 138054825 324778579 573777307 635283139 88641609 860951157 61389907 880393317 342092797 787521121 394623921 673049553 817048079 825111815 818002023 851404029 581766607 425629603 524447911 458254505 297161371 844255933 965317427 63835487 204163795 817490719 74282061 906117229 623668449 378044125 416819911 243231981 421101625 110162515 292580599 765390015 129354323 888959783 945533881 354840973 235400115 959597893 57945973 813571011 886178531 235279327 597021465 50907037 431553397 605187699 396540187 360237593 14189827 471342533 128149113 646949887 530540591 503863521 998483897 735509729 583809443 707814941 362192875 690433559 674258195 314227217 609368483 29700033 411983415 838442149 223084033 263933383 483920339 652398085 22025129 173350617 461531825 910742949 712391117 179247985 53377699 711305535 565413663 75955405 308650883 120634329 509261537 605404661 768689714 378126017 865565655 907430075 581404061 441107591 471094607 463160503 552616373 229378571 326751777 698895433 38664819 286713713 165285801 542025623 31319259 131417891 474809551 569232789 992627703 176662743 137955073 988548857 377169881 524578439 263113525 592720197 531342491 234937723 28374249 10962367 786771295 352804669 201713443 512130169 782757711 957182113 271343475 597430601 656965791 201514179 623130349 473153235 985602951 535890441 177246001 761963899 679144267 680844061 953135973 80044149 220506421 104721909 821381941 832242871 65260439 669128909 474550747 920354307 715533003 580318505 856784657 192223197 163254835 787974357 224500769 693490331 57656635 721531621 758673623 690380881 868098641 5371061 105579659 569781219 548290037 632196843 493892377 92627445 192841637 173080691 708525035 743611897 332633837 816992127 141911787 436856105 410661471 677923983 951843729 381289859 370487445 31582051 427257819 534004945 997969201 945687049 128849743 102284705 155092957 202276823 747534333 901626445 181207373 673002597 408720761 315548151 867178555 474414237 135017443 281809283 98362471 195071911 966297313 511979171 571286429 778635767 255749279 152607951 934974639 167433805 94867159 396324937 431649399 156796073 890132931 253509401 859070679 626394971 51179821 551291405 446598073 337331187 179712867 541004735 403827729 428934737 826378297 923670415 633222873 710559129 282438157 763501221 668913681 860075317 859327687 208745713 7629765 113821659 17215701 575449643 546107655 411543175 456999469 942542037 388917489 853915005 605581133 980669237 853527973 473636167 222814269 985302621 302037837 918100413 204886409 458024227 345187613 939871483 580838215 107230507 643677775 175943779 15119383 472955867 899307811 751990177 126465567 582812003 743050725 227152299 381381643 349322683 364253159 356541885 484079125 709965731 763497091 194737755 817857785 443936165 443310107 452564051 844637949 360405777 981801755 640556981 597698799 121901821 448760051 948239585 364127527 415972173 427186973 870307705 605880449 241407397 634306591 587387753 128516967 347947641 901381759 680275433 134186691 407370751 421338065 115470449 161744653 580569399 438021551 759920583 237051203 570034411 287800507 262199545 211265005 30971561 993284513 895992407 712670231 680511947 550458385 713813633 34793191 128116851 930361797 766779739 595168717 512604805 83816321 300544783 524689183 845783731 100480529 193250579 398738811 454510967 217642307 653498145 724264853 123582991 392838899 84919873 624731311 940790661 808700419 415058363 93403533 299322791 924948319 493366823 248074623 807215119 577466615 985023585 302285143 778191133 823182533 137584777 841619577 228051193 49760207 854329617 378951111 782882451 63627547 960464809 722159795 186670243 768936125 910479949 570351663 744887467 314531023 15205957 745712571 1341427 882699891 458370843 464895583 814772873 279147221 60196771 359630247 155696709 931633189 392378107 359306921 899987403 173526685 313916805 542490373 591738753 591904131 885931503 378210785 488451223 992577053 743264811 953673451 417518085 874775743 268188791 243125081 562261901 865782723 961173590 882287335 538051253 85806733 24470423 734451423 230861263 788557443 683564365 478604047 562633969 56633883 109122771 811730635 722210047 474172367 332220109 844028915 147307677 53771551 488507945 516559851 47652671 619146137 35242265 821969570 253401115 265056715 61849629 587285393 764773171 299926097 52398325 97525429 897883211 176909517 643186097 880629651 155162617 919389419 692719009 242620473 121708177 570081115 205499493 141276221 673440055 38928601 571432673 924284863 170992335 90332965 585779263 463194213 879893261 454748683 424226037 109765725 992004965 479332445 847301567 956261725 988466717 133962487 404597407 359643043 943547191 722045879 670488549 465425653 367218057 765702283 679138595 993191329 620367783 210626147 716457527 902735743 76543219 264972859 342915137 131035373 64661 982243859 983923379 898970577 244809341 597612535 908197949 455342231 898386533 281840379 974909405 940005175 464873675 281626165 313050071 43298353 864930295 966942665 601326263 189592967 27779325 495376355 189640273 848117195 850949295 940829619 289373891 321605395 784414899 803572341 805204847 657543675 945186927 913931369 956165635 812911787 526207507 867834333 737878385 695810001 51183513 461254687 973330169 854785955 718163389 185560715 189946139 944619231 283988237 833073029 897968293 315059147 996156117 131723123 905222573 278583095 887772205 716519885 700993677 465701751 33169145 620576777 763940073 257481579 739710175 839490217 904809135 698058103 611521103 45750329 790768915 227566733 830323585 77006413 213802895 7581471 222244725 113414267 626138859 965380653 754639093 8342375 573975087 70503999 171127697 659920317 46740403 391555169 958068383 596576045 13744659 504143659 278840899 256630643 548337455 711580089 321246817 356729169 506520375 979639987 455035821 79293839 126302111 379690823 323042461 496144897 6479395 377793067 137082481 236676227 400796103 434431133 119826483 554168307 880948695 743275877 86688179 281952063 260286183 307693517 869707399 610815063 994148821 960308911 361224465 738810167 719850691 554602345 98974585 138013409 472001053 719523553 745669297 797821533 448487833 795485827 800429933 334146497 713056053 901835081 788942129 197019939 512139825 931688109 810455877 975078311 724684827 987328441 513280439 68676728 974663111 830951417 962579041 674842571 197721683 188961925 48002019 579625941 288185377 317823225 179651237 221288921 634921439 835275389 291565529 233949989 599572865 716383423 885451891 437549063 172716865 33109237 744469047 408423131 945737893 893987551 702014123 538353925 699611003 492133823 313863715 405799405 538938069 898790759 445940401 695048709 168350735 668374315 242883899 129738697 491373005 650117355 282979943 471050939 829083901 484033547 959009189 605854819 315260883 590671485 848389165 205587285 555330251 148336051 920919041 621385261 578714025 514394543 384266983 810933387 936092279 252342773 845964657 648952343 115622541 753112211 338635253 402118537 13713287 591044385 775883671 836396951 760501317 848761787 255059773 820279299 655894521 311698443 214913685 56085147 158563603 120288315 693519131 45270061 918172241 506431491 201083151 922549143 723868599 180234145 337565815 170088119 685640081 386440923 16040483 395823483 110799219 907215361 357211823 168592085 892977979 332674279 341210999 216213437 460624395 950397933 267286951 481009717 595622737 507191545 736123179 798668875 221681087 508574329 97828799 810507533 687334483 606636641 942420449 813537689 626835793 522145075 481830363 200507407 395401543 255778547 601964219 513025689 226971141 268527151 516604763 351856233 253572523 12763391 51325277 84363963 534918557 411577343 668455461 737039825 172887939 201389401 512596453 416848371 412678743 365473719 384104599 867324023 715778387 144381777 552818937 87945907 620339961 300452581 543887763 414082829 416885273 134371003 978662839 87650797 743445189 855164831 298425469 390102727 279721305 547494887 132581829 496350483 797250425 870111347 873008951 672132435 517148437 731377577 947227459 26136085 897045341 368364149 942013475 655614695 904561101 561335633 310377683 530238311 867499309 347542841 686908449 948604469 888531079 76644019 828692377 705423355 478802991 708669133 50686611 276100203 485938883 345009183 347618099 786167617 452815909 966322119 343921503 785865023 157286529 248492649 887613895 787183407 63795533 395329333 761001187 761271009 120184389 302880993 997294579 753577011 911084655 142699179 935872003 755737605 354057491 307948891 640692445 551997761 580765895 92047933 226620447 965576153 988711017 480920103 154404901 571330505 274103835 332463225 101010203 839324691 395315787 114243609 275761133 646720449 697667755 155862645 949902167 318269155 786581819 453404291 261381337 697761687 704258875 732500927 569007033 12283133 307268667 302303029 486238727 457903167 278670603 229552749 114902941 386696591 779413707 654797953 246124317 888682795 930502623 57244943 614324971 661989967 260634353 607769915 201826361 658505291 984390647 584462005 700991489 42518895 232733995 618082483 619965441 498071059 719644181 797952757 421514691 253927325 47510655 313610429 340553621 813946229 275319165 636389853 417122193 671591439 274392171 163840939 140487319 248513507 792475119 381793795 830093135 9476213 959047411 931898445 352865067 248808271 182437293 82356343 10552159 603825921 444323993 477719541 418252271 772320297 111729019 74439881 298096803 540355687 115137119 621220983 70241289 65385317 847142553 929912079 408268921 25128919 609855431 309474853 151652631 3573877 75270859 484752345 486225097 925088003 852359377 968803279 405225279 663003465 590015057 539311671 451007473 578400285 619573251 78473417 767836961 930781271 293240301 618927551 946179797 98484185 49324125 663135971 451499487 734899853 546700003 45738113 355423959 4642663 810241375 41412207 746335515 270639455 128481523 70672143 39730135 922389625 555457805 7664705 493495033 832150719 716376161 665735801 750783033 100104001 523769321 987790251 123352599 971834141 220179949 969593941 209007837 554737779 110971637 121899133 390176155 919777133 614379225 812722867 598682918 852111167 44834739 325088011 208440613 339578145 942504169 423586341 697798905 506425687 825527333 452127269 366675159 542076459 167467101 496852413 150348469 980180903 613948109 554005279 288146771 282406139 716912633 572697867 968740667 782602421 51681451 884845513 57472955 252504199 106911483 686708773 597167597 711507423 75417413 543472247 104511923 546710589 467335467 634426267 108110513 722055199 99325081 204170745 522376537 108036111 438187207 651615871 688618469 113569699 422660397 323486627 334717779 114823283 80889489 192608867 859355243 621171489 876709887 663574853 182304447 169883735 173504459 646070617 611935657 350842825 541237907 867518259 466884931 132220207 379357241 665757171 660162427 240118605 11493099 143497277 143959809 291623149 809201179 457833283 759951945 911356385 824246665 227933623 580265111 645796867 79010869 839118555 598720753 624169013 172866925 522159473 267454761 861575521 393465287 886302925 271398615 30941563 9533981 585672639 550823003 683247227 850247315 908807083 965582299 884683621 514855831 652107635 177493067 979331395 316054237 342746759 360501857 283170855 396628065 602618333 744234399 792812587 702093157 446830835 833167691 618827889 602108793 277584591 408606583 30618147 409946479 464280321 264507387 685751669 248451683 983805085 296954741 122966177 992303291 388907843 668052049 546255591 225775905 202142231 676831675 377862035 588745099 586366667 224873135 166367477 419108405 405584529 524965613 695232875 969311907 353243947 149875705 24646741 900712097 77045213 582800425 563572511 458601283 552653429 116165521 813094969 998282727 737983051 408984853 533619229 179011375 522594107 373736281 891905103 275091465 242321069 970066895 131990105 800640167 161283215 534990257 599985869 733721479 102447191 949157629 859411013 694719085 496659971 738560893 91693667 890498407 297942811 538878911 356433619 832623557 326355883 680344607 573637699 45200679 951407945 315687865 843094899 280374895 509826069 951724919 349006369 853542091 533612979 914227465 661464089 127219887 779460693 353228775 672472109 542075605 837389743 877101139 149274935 441429317 315495421 576820309 470647577 19741255 17615625 442671803 449066431 461379443 735519519 175819807 1327639 500205219 588128279 527904225 660011809 662908669 946483279 475624745 301632731 894887403 956109739 664600550 35738449 254801443 388261019 311969235 878227349 989190303 188070677 851699567 832025281 147431847 396307351 200273153 729499895 524133829 780780585 309173147 489253987 403798733 789996375 606982677 654022709 714964699 640756023 251958797 931058599 294187349 812547177 333857007 897438461 936769511 427717395 787840745 365100161 708504963 518849505 278162931 275324293 758496103 407148813 393706701 959470947 331061271 291763539 79824897 944684159 306346079 731500793 908048607 186820415 47067219 676061901 263869053 221943065 470382161 611494183 436007615 873719175 173106171 635365603 397545289 75348233 317563711 136158827 369941135 843220011 514969935 384203433 373385415 894508159 294694827 45522453 411443441 552657823 543852819 530532269 79384535 657969197 39752853 27801593 234976519 260047061 91423879 38811651 679566813 720032583 811984771 163108455 713068661 595335997 736928109 79820351 245292217 398314365 897422963 991247411 150430553 227770061 25627145 422450031 36417231 604339457 700370923 214942893 866936921 202237427 979165979 953771817 582731521 695659653 814782185 394866601 548822677 776203683 248409575 828617083 671089327 24995645 678681329 800024951 57504175 64999245 639232557 238121211 259652029 372692697 21032453 825876203 300732361 852848871 780372527 379812023 303619723 370451851 689491623 540865879 993717637 376612575 15418033 216426053 944320511 58324485 125151705 82273929 839968775 459828265 316042483 664862643 788189047 28494715 887007515 644944089 638560493 923642423 375108279 673453463 700389589 943237021 693908595 597894421 58805341 891453177 493870657 542408961 132725373 662427805 352350817 565770383 652309239 189237475 420667475 921869185 15050577 138899759 682922981 943862043 469472221 934729447 795726379 190995757 240639153 664705667 312428675 634557707 626593457 264899191 633973647 707646611 233881217 750097483 372196925 901745967 845265301 877384581 695944897 687535305 591948067 641641145 78943125 731248857 772196653 335861889 69691521 453700959 991084921 130936447 203780493 894522333 948043927 319702111 407617553 229155941 511853283 171969233 431618983 584486029 597378937 294568593 760850741 546162289 233557315 592801631 38667749 688865209 840786419 475428105 738969133 147643027 214786813 297885277 276593351 351059637 772705959 966385207 827107771 62189659 11035379 967417977 915687251 353703249 683662007 721814287 719583523 985481695 222902407 141434601 244329223 114747359 805643205 714344195 539451941 843273647 209887129 170508125 23527399 722075955 921115635 895692293 859486469 800783581 159009933 9004553 50196599 955080863 77275109 517546629 714568323 144409337 685094979 501824413 950935989 329526771 551441595 742631799 548978145 892315673 776260641 628080459 435726629 685456259 642713109 907949133 767045859 890318029 183123971 464647365 811053767 223684639 922050073 293773561 533288905 754651175 190557265 25210429 830356769 549798683 444842855 237091309 644138325 960668601 952544745 982657639 984697651 422101063 310748963 608754201 286088907 827336597 941424173 349988979 976800893 150504439 719014123 806345969 352980461 929591883 700211971 697320979 788104965 779995899 798622437 633438311 37479673 716076785 973304521 330324347 415490377 564246183 240985519 936007403 94084277 815231767 939611233 417387355 178730573 178771659 376028783 92004721 702964835 984115919 297699633 760202981 880538515 146084795 728773317 864763757 485608899 150683819 988498197 435544523 463832861 568903 998532307 457688779 457864983 466850749 673026165 994426433 998867309 508506563 293850427 491603971 435199779 161724823 26968623 95177975 559606661 296616959 351409953 617990659 375392551 438937675 509173671 772669727 388363493 591919951 628033570 325922881 572031717 117961323 464045245 990725739 155814291 112083589 79598695 62981801 238965921 852390153 415865813 217980175 60084237 982029551 811579533 611798451 824739611 505458615 968805841 141866939 342359895 519432293 555386293 414364239 76520855 435320455 78150675 828072865 277969653 620631861 164606343 688467949 642131413 893433355 214955643 151118451 589703909 56901169 85316639 566768257 631601687 826407765 5003627 912552037 602987947 971158189 190041121 616592509 937761 198185463 210725831 3527719 757941833 838100091 73054385 553992913 964740659 527834115 401976561 138295531 258869311 339292651 878341997 580328177 350692113 236166157 496746699 831698021 118060435 278849999 450632827 154014415 862962171 861695267 786179509 663595717 126714563 416366459 499987067 863709405 349898163 300371161 886183059 699836605 236164821 647896257 868603535 629002765 278921085 597261633 933529287 560332671 522472263 328527857 961582169 446183375 420598041 326243565 809509425 676722367 976211485 750370781 439879675 506605079 775223497 153573103 625570099 894193837 184187353 641453529 324023321 578271575 429865297 425040603 976489139 747827195 236170109 619248055 273845201 295279745 755247603 997428415 498364943 903131611 135509131 415230407 555903689 570567429 324378733 31347503 311942955 540901377 734288645 787541213 160117537 465955543 633756933 590482236 317044839 305072285 222375789 29235273 444724603 479395433 156493949 500633725 327451303 956102753 527899843 396773343 534869241 68255405 444200469 834586365 826997069 251620991 29414541 827875823 416751423 537263379 338430351 591554385 586976825 319141547 831490249 859075403 859250795 773951377 487346479 268970637 26460623 221223701 690676731 51836233 941927203 980770453 867965365 916462655 558093551 508258927 960187685 646895029 852231301 44264721 226808930 798806651 610833149 542024173 636884425 253659367 309598263 61374587 365266173 298106325 478808539 509943103 828046313 730960811 932457561 876265665 655823299 170824027 121921003 359759511 201747975 266955609 39624589 35399767 480130937 823049889 568700941 556138663 915187493 838220733 118641399 768634415 910027615 593106875 64580005 566200995 748704451 322536239 91555893 317052347 915435319 304737079 375270547 705607225 369747687 433351293 595107181 342724331 419895621 82092587 896468795 635687841 430781455 515977977 2302781 7454259 702258761 468617765 26537599 605753735 236132159 881217143 527997643 37493893 984350087 841046331 423259071 519252455 591386105 482364231 630304695 771692371 80403647 309455867 707104991 152620573 940354623 357889597 924453923 281646221 699815475 309385595 409508415 932778163 485444755 1579689 446128307 777335463 110836903 280393545 749136069 697461647 121066487 684418655 965386885 472402579 289806171 421575035 302767055 616974311 782523885 315125169 924868415 373844419 345766417 225168031 210129727 484996459 146700405 904025967 9784575 928027175 853662477 637757795 847634809 537550413 322786325 547329771 960785515 182375989 496987407 769945231 75536223 383947071 909900747 916731385 632068771 496004827 93262683 571561211 927531089 384694645 640752923 91493099 123960137 425685387 663545265 79604645 623695923 33374879 878152713 914990737 202332801 189547579 598257237 488180123 208162151 479873265 593394451 682208829 11837161 501841753 448863749 184220275 99831503 369553177 879614779 515440067 968171431 56400345 852062217 292942909 342213579 657643085 209158151 297050997 418686041 142717741 235274781 697993609 292391485 518312509 705309047 865845795 850223397 844891975 684815495 979202413 320415369 37481243 916709901 981550367 934350507 679486615 739116041 131596153 575990161 568716187 480540873 644331583 998390285 437992977 604635107 296474559 447447735 464824557 45825327 866284495 288962285 283995943 853659607 112470735 276689371 920078531 608304451 987033253 254925679 488658891 301342247 517800383 305087841 586941777 422686083 692405267 824094769 566307949 909413783 442914335 687109161 244853061 751628531 553640425 252558425 952722433 113190249 764717057 803602329 590752213 498534677 19447931 946102151 944146425 356936027 453858805 362591117 980912305 133260267 245093529 665632733 169871943 838664117 859010321 419563629 846962701 500431861 984992151 850854397 384460637 654898483 947273957 533257495 159174297 217189945 669839685 182760713 997059627 12080411 340973443 65419501 252302215 783634997 605899255 951021733 753327653 819898669 442419069 612466645 914263689 833156079 596106877 889801455 937987389 331987373 714074085 247027757 100260817 840315365 635301419 248155277 839232483 900112219 533135949 69436119 388997139 880936219 822237393 422554271 371449613 243954043 958556359 594747193 60878975 530097427 362194627 654701765 846106665 116715981 9382885 726636335 750044361 624348623 253847249 762987303 461204267 427000467 962039479 55585 997565215 178706897 707699279 750094945 193981059 734220943 304943315 982398445 727842871 673493531 744958221 565946263 842888487 135817989 541400649 767760119 122273089 450449453 284662111 938135661 806234757 45679543 716287915 380852255 450920945 506728973 504806933 240865025 500169361 81754341 971939851 30297545 168462965 711871545 820553859 209279993 992244667 884958033 632174843 271884503 22269315 587144631 734693499 765264501 959672057 695371327 522681487 654856875 584861261 94823941 936585293 32730647 983211961 658810735 688046421 981108005 568215681 659031847 567523019 301104385 238851567 33208611 517033569 913035431 414379605 433659295 973444425 892950999 778966029 845767199 667829061 193718805 951907449 973601903 850184089 420644279 454304515 988679587 224852499 49482961 571645471 450477849 123275787 787812935 14946885 236866931 182024541 280405181 669736187 470529437 105103217 562060709 729008071 837761997 684792885 954741817 41026875 375553665 336444703 831559799 578231285 319619961 146193453 382777385 309054357 675736259 669386471 28296157 761773511 74644917 270697303 749125615 870045499 15528423 895870745 24611195 847847595 160681027 430732359 780737387 992663515 735756785 585883271 16831855 857420437 588195685 779093003 279761663 833237419 204684127 448233605 264637533 251742711 325070303 863051831 227239313 674155867 98166581 312099045 167353705 378156995 53068017 490037469 751955583 440934943 308980981 238455799 781786163 8196969 44948575 121412241 743971757 875281829 987817119 388012687 612784861 102784733 395282537 444446817 487614842 281971235 167401145 21328893 361160713 305282705 559619027 562057185 458858701 228981835 469768771 525853205 743143641 740761975 610141149 922843939 337751813 198811979 657029309 213455143 767942895 471613183 570403401 577379003 411838467 106480345 570477611 926016005 222721647 413456671 194221401 686572983 608897579 23442725 942472975 63995397 592229367 218835013 568145873 214868907 769462877 161861345 40794733 936610547 629358253 898268003 344908019 706631339 36472317 472633663 469874627 884975911 910546481 974476271 735096447 719088965 885144813 908253683 771404563 367288685 885755557 873076183 666437815 343431309 722533775 267084589 757617379 863222557 173922475 194034575 343382623 648090647 961032899 878872993 57945651 317535747 642852709 609011721 856489655 527911409 688090605 645281405 997012611 936641143 796383863 194925239 850490241 925792945 808057069 827823991 648112601 949690693 149378559 88681353 854098689 542082405 711606311 189485759 793469107 187085765 889205411 611705587 556722679 252786595 730020477 379841289 701168661 467904965 537756035 760733159 630352805 718695289 980900175 243493763 308466050 394864023 650745921 802187735 789725135 504312189 183162497 435718115 347094267 377467919 949361407 56403123 863767223 144384189 192145011 826647641 16575745 219522173 269575775 670857455 488306459 573142735 889731083 840428441 668865685 392387765 516863365 69070717 482261569 771211713 342644903 588495057 397759805 815527177 458202127 618263503 134344171 103236649 317848105 82322359 2071801 187047497 132928035 630032343 202519641 85472533 717299957 958440573 747284041 409866183 310291553 516610565 835715149 603792411 405038061 488574417 803153457 850343255 887984107 699152205 309865739 892676427 485736049 755148009 791364661 618279755 330759779 378930977 364432467 450173749 548984421 662237045 321599571 625327219 276278251 794654577 657569383 200284399 156246059 306371495 669592335 829741089 938565415 347384497 227078155 260098567 741295269 233903155 876917099 693882921 645862197 532936147 233266303 328090771 282432307 303035465 303984361 2969309 820558267 362735689 892637575 787034915 748225463 392806811 757563273 864840461 980578521 658874373 764938595 721706697 978809493 942584923 931731921 941254155 689628977 894762359 738080471 934492359 243726511 486923069 649336511 797993387 366520293 699537299 976589601 908985885 538127719 154272625 738377689 194447935 695081111 413206475 385089033 295747697 709816989 759582377 514898205 691013271 788013417 955633681 409797067 826926881 945021621 406290199 913772815 744780295 145688319 220029653 133935405 983412675 182952079 726943087 479095985 229893215 219446393 644272397 19715951 92685415 385051025 47078113 637632901 757906419 183572855 39399463 757142101 905331103 241931159 890810655 57851277 278025107 636557343 483665429 652746783 484157053 848899849 690646621 128134987 466704019 43141905 163912525 219460497 493886099 524242629 101352777 595931071 646460611 43932529 318560957 608952299 802736113 458706477 622694169 389029999 693049975 680835805 615858137 961602287 696519469 336328999 327814527 800012121 996920959 189103995 902660243 220819681 61362007 7044113 62717097 321057025 487282735 348785129 763177307 188616833 201976321 667534285 135130957 728901227 785051991 369061197 938321703 450493713 448856893 409064897 626785947 853685525 522248779 290120519 453031269 97173589 267759005 151241161 155461701 110131459 120944091 746505209 939736585 466316943 151895091 544150605 637275263 347768501 709588827 397154309 909476739 4711037 327235729 360400427 847757817 969996593 991709851 611786383 504372937 478849381 224749257 857971399 369037797 679522807 432915439 212373301 538965833 135192841 982825325 947821569 715304949 424268039 271784487 965677597 727227639 915046313 153987471 731865149 688164957 566532327 474435223 730509799 897616963 822237191 18958017 491406429 124073421 553041045 40706321 245775795 681684003 630757221 771320597 539434947 953791351 524751253 984828901 106244905 58954245 116681607 134975261 34751567 315709711 830378473 886915557 23925861 629212125 194148015 194025451 552694883 302560451 845484563 351433317 412149259 953623581 584337309 175035665 213964003 41185097 944482581 702802229 108833087 599060917 105015699 771855521 499282737 768880595 7198321 444431529 268230047 927232027 532279891 344307501 826435887 871804431 319394855 636603795 127941457 497960764 165128737 488781255 599557437 712526899 423981757 905062723 947731189 521799053 775142847 161401347 598093375 98620655 966084401 705495949 274379181 375571969 405758571 105757679 873586071 567414133 839185161 650933953 791718683 175844871 507247595 1199647 443818789 310096761 60052547 299185585 726327649 102452115 626629249 417546149 369445195 76697387 8931683 62726065 919162659 256193815 388136685 198844435 663899375 566324029 653393771 911418003 116627841 656011141 50628721 746219901 997936495 175643361 746732509 739589287 76747803 138658381 861711057 656756337 374565039 215336395 2793659 898791617 628733719 372768613 109695565 743655939 952979215 343641131 239012997 953121329 824582421 503483193 938816935 233082821 354795379 744047283 987681345 446398665 41361719 793535681 46981155 679869899 386829117 354824343 914198381 361511135 521747745 356969837 665678723 703355043 845805133 707574149 91330063 62104383 999346929 448673069 121392133 468478305 179217671 575273395 160058021 363787583 14747469 126619765 62157423 231201177 370021963 289145299 947216947 351192753 973223763 184172087 687773187 107826521 283130237 180360979 774478395 352720869 620215977 555297251 689152127 615351093 780789887 316208425 256411327 702602671 106012527 806513005 117816875 971597889 164504499 107584581 377735745 627679071 119938119 298359623 85080003 713072651 927875577 966486297 346775489 808075977 526684757 623297635 538136205 284005033 717913781 191989977 293087941 905763903 544896823 38396979 628416587 631748777 552462279 178506037 731054411 70920335 403216659 476503207 579895611 144088865 846254995 184699487 923686360 313919761 127049865 663564851 524498981 336120223 859436795 776176393 669879661 831733651 301415097 466302409 952867909 634832953 407616863 373134439 626695051 320097383 762087241 884311259 944242017 714257789 182358691 215260201 881280053 477367393 121538139 46113113 964421561 650442369 902705959 269349505 999376877 932382929 390407821 752790457 459723281 27836115 948795857 83409441 827852725 756179339 963761411 176990439 160645545 610493065 65160703 143195197 249308941 641011425 337418593 722212443 879065669 231202353 243036563 685149829 789815291 143105953 399720389 323566085 92273701 981385953 17341169 868851499 1903869 234581283 442511061 695357525 360113163 199641639 670942459 766392547 662448921 246218037 682823601 329460799 623624507 83037209 608642833 274526941 118597293 941824553 690867707 766669621 34870645 706469703 474840857 5446347 831645469 320686291 364641751 937186599 156695803 934844097 206581615 243594975 195546507 67989637 168765923 833010315 127870097 20111901 298782459 455537099 786246681 214631183 541543749 973626959 469339511 396812139 41304347 913968323 814274121 182725317 360805787 634656741 240625521 672125243 441297841 12024695 504750621 488123511 574924043 259221827 873518783 569341603 847102241 263147035 569750549 467827063 649243701 311247063 826277411 709288755 11929165 821202269 441117495 62598041 633245755 547606935 502615265 857838843 288433303 613409907 438581505 402589487 88621761 820010735 142213305 496926865 185045471 612251405 633868663 638139657 618534885 376977623 879304175 825669381 341285001 195192671 661311771 421001339 988738635 395616191 181644611 261134825 545452917 174749719 323556079 608043861 992130839 66386071 367220215 754112333 619952137 878881387 500529269 196995051 884382697 949743827 135261135 320280519 51933217 306205197 655599023 179666701 807680739 303188579 239179531 588741735 175548965 172662571 381346591 577951757 423985831 111248829 820142191 418159295 894632179 745123963 790837189 5486785 770270295 740746191 325455675 763640545 825971181 350862637 551416103 700931445 12928407 298552845 548016433 380310879 707928825 485851891 649209155 72558337 295815813 462660713 168919701 730490699 855163509 150492161 245415583 875888305 819856327 59598677 643216423 551765557 137547075 788501255 554678329 893419101 908555465 76437441 772635433 747560499 820483273 134337847 379879829 917958739 904650823 817060641 596152159 637167573 233465571 309090883 471995061 864660325 962680141 327769959 670199049 612802093 922527225 153716319 184543771 271722727 147476523 258044675 541654251 101169357 528807657 356275769 641249991 855887017 985682949 444905707 594559045 265743815 464978711 68597513 964241983 201585919 245255295 223322253 330659545 2567085 101185123 628915835 460475523 797283513 363489719 455875549 872733419 896313745 333059889 666269381 423405587 864864043 862931539 225990989 962030397 860799237 951245923 296254615 31498739 728652839 667859827 751310797 52892941 699525147 423424347 268175139 576370085 162314237 96535225 62966993 365469729 281898853 147655161 845485595 886327083 323754879 699214919 906672715 389359803 677587957 332776095 875179955 688472839 669313537 571279041 495744685 111290777 399013727 491124787 197500571 633207867 731162451 554606405 744931559 864245763 9554353 347742225 190804485 348944969 563868105 435362681 682325615 137770421 862921599 101882913 248362917 516873011 64260149 49306491 128975667 740406004 817316315 94499521 882514347 302220153 47996903 717676529 488620455 941064835 877309527 656621269 463829705 660110881 683216561 650267131 127375547 152714147 247502085 628234687 660724273 3634345 626478823 133757757 713700837 879999509 20620407 670624607 165946263 211723541 843801435 712875477 657355539 696719901 123919297 403516951 417763627 286718951 164284765 151091815 723319479 284196987 226792049 827393229 66734495 173685793 106812097 638755351 123306439 949299313 712814235 162972383 233996325 228215109 184325079 938070661 112646579 164584899 592965329 552279601 558105713 872242005 437044593 277500371 558731883 143343281 86678567 357057315 240819379 998688465 156002533 205294755 63822947 639876093 40573483 640881305 451062685 174832831 601594367 932778519 678144651 516241643 775954161 506234357 34141281 931416733 599839509 930531793 202159705 335092539 477688075 72970519 136375987 897479793 326991609 544316405 610491323 674712881 116576141 977643107 815196867 324355257 385993467 583142177 920858405 307154317 736418309 796857 737169731 662413433 207020783 491979899 280966537 526750097 405171335 778601341 47816039 732748083 37753637 437018531 269767767 439056129 637652903 203450001 405821663 556645609 789365361 694464187 145981317 796984349 358992499 353648215 7484381 643229213 577851939 296864357 533819265 992332712 291247745 365782447 84864787 345875919 969732623 894139331 697912637 436651237 107235295 486670845 716428211 188102021 373379205 809179769 821716015 961623955 216806689 602233633 847607665 243195709 441286745 664295589 441736773 474144247 435876699 341252991 814793341 333612413 437387997 342354669 165318645 153362641 895191067 505727993 838323595 605265731 224378335 38835825 28295723 44945253 217982839 650408943 585526729 807139347 864668087 11628243 859480671 226580851 225862653 363146565 487534317 895504879 755925811 803228213 985089663 909105469 177104067 76790875 232026409 896043353 554264485 148050233 763935489 902817671 272124759 682864663 118105387 992968531 969952993 580512003 929414867 687711121 651132367 414644695 867177513 299094367 441320247 655349553 155044199 781419807 379852475 79544701 409107411 725174141 822061435 337554921 191007923 410393711 296368939 598250349 709080155 898997299 907744511 673112011 437166373 167287881 157754549 55255177 456584307 302174335 521523091 235009017 157156785 317181929 167742823 795595313 135781199 233433061 295503241 863292437 386703305 846565653 351769047 800969291 554394783 393680487 385402293 579956289 256627037 423640079 267147541 805963571 518556821 242148487 216670569 533956385 895138531 329142167 137786545 329443281 170933221 901689159 437336693 789627859 486185801 873393903 846630081 253196675 742480319 951795753 951927083 923838461 494797315 772749275 999983061 966587947 336512469 112473391 711813217 910942143 93222145 968001179 530398461 106083885 234055257 773345497 853152099 870113723 22977721 443162097 86845391 444116587 296803327 902040621 970478087 329211155 238494745 107190049 453241947 228520519 811701239 470014633 69446303 348311913 617446037 597797867 633936177 783077793 977076211 490899537 267659771 479769823 537465373 817394835 554294631 450840285 957177381 368991657 697238895 395444761 815039783 360672217 55734413 242957019 791714625 930481071 734768331 207040567 992712353 410136319 741368501 242774785 423239799 470509543 908262497 263239897 6086655 165359049 340086385 127940395 793325945 452530257 151880967 847235621 91478323 726924919 517379281 432131521 903385723 922809203 246428169 90155195 225676461 727140811 522684779 666897825 250589741 918041165 25639743 992520639 665199457 925848329 879256655 737219629 431946689 194029663 314408181 507026127 879871169 173096947 337979407 667949899 953442537 557303727 137310211 162935825 708960959 754822343 448751037 659543385 742601687 78531771 311557045 384566819 706339277 103297611 997967083 868052793 466757439 544033415 69058531 661109291 275708635 723695553 593426859 423452241 816744529 912642709 867262169 513616841 994402653 587889897 44984463 100230781 922453185 305942247 971967855 340753183 583445829 528033797 933195433 207655973 104609981 223806463 547538163 299474127 965079813 35037145 655079819 532753447 378920699 463297247 440928055 879764477 671754637 727246245 25054023 779534823 821775019 399360775 680264335 507703367 603699281 756404011 674612335 983270213 620701057 40865917 382105547 597981651 571675971 884737199 271570965 502655140 267344811 475945407 317958207 950489921 560893141 853961969 859158475 532073193 31949791 260184017 835418043 499373491 333437943 876808501 271799203 282787699 256326989 893422647 671947923 349224139 68094493 611182907 230723119 376010787 346093481 82791151 471140249 545221803 925506873 349038405 473376385 536430939 784036643 866860157 135435293 948724213 837949373 127225367 833077291 349418497 502762093 586311139 973999089 870325709 146016923 751476465 565652287 705847153 813727417 580195489 456145257 150683089 749923651 598339479 853672527 750203283 594808763 190565565 25197399 230199847 113299369 914191945 208028781 558256837 620727713 684651701 837754123 414611311 737195583 607817673 579973419 359264235 102474529 775009679 275243095 843536075 446978037 130573659 535478429 379584615 963329389 263883465 951670159 77349853 498794561 665499839 406579537 129055769 54959667 388004455 739088261 746182343 461443345 418768953 30639707 456706915 703852969 942968043 707648905 279172653 359685849 954656391 956401485 22423339 342334591 497597783 444170607 466844463 478033545 833844977 13071929 338534095 317604841 809152813 523808135 147459949 365279639 910209843 981140915 969460275 433325461 613870703 584230563 195342093 808819185 326865301 288104137 499536823 709180345 10917279 577523225 106811567 431382539 703073491 615945999 747804223 824336133 109355453 129113525 485595509 711476949 184371251 746706585 282199853 596435117 893406287 162845133 641663235 61198277 95436149 154286581 451272289 751514209 127482707 995461939 418915191 154346697 715292381 588010551 358875199 25482323 530767181 901031223 878056823 794183765 664331051 564743923 587236775 458434869 854794047 404383149 829930017 672194907 178373537 456699447 714458621 91845177 820197035 646645989 472957723 218941771 361237507 652775063 107365667 543596307 110492563 554397107 677031045 313571867 825714321 75631399 719437179 427759091 110235769 417605991 860559107 840598585 166355983 120160117 565422053 314000269 793289823 875474901 383837619 815680665 198524861 348891029 901854661 483438351 808097989 628804941 327665209 623684779 436879709 809919003 226503931 499954735 452433329 151253155 372844217 135949413 339274547 199306773 291665387 79186717 119335841 792887081 694333395 505218101 54353407 109584153 266304375 834018443 826609561 181937325 913526951 287668495 113226501 372053813 102492927 42808237 156054299 251340679 183333595 434433635 843912709 601969407 70317159 284979251 290119721 656156293 180706449 11686439 129690433 520129925 354553359 21458511 512558405 664075513 498976871 430030537 749546877 260259421 303726301 169799349 202428273 562618551 276669825 453571901 770886649 759723925 518308911 930454163 734097455 151506447 370146691 71562483 779560567 563108291 528345063 943807903 206273407 69803989 178238605 708198369 669547323 157643767 876353129 392753675 955329511 710627675 13138239 685644917 920179461 395067329 665554071 133082757 991971429 617970289 430337215 108234659 427921689 225232183 308828625 277563459 393956989 546927977 980372653 850939613 58588983 832996071 382328317 528101621 987069491 727466775 79056685 257779221 890959779 167485415 985096055 744234701 197851653 209091789 919881437 215891387 123276061 322800071 785430311 202020479 373612279 577933403 570602723 744159427 103216871 839173271 836899435 154201915 844851849 821185043 388040925 593065631 146438339 299835117 314077477 671491763 330243265 907030217 780934385 113744703 801860853 128675289 562630585 716283161 649902623 133927887 214225855 49563417 441267775 566639851 687716617 572698401 662172067 209734389 158904937 133047579 897673697 760144441 301623415 482390009 730239185 818057359 688516755 553673401 430703517 429771347 628918755 397349209 545397165 704271725 619617371 547583971 8013237 670117451 515072945 989233517 803765941 732545249 171784293 185209615 955048173 541867441 438298305 604422891 990532333 189437633 254457813 582864683 286293127 372536987 203121273 531850499 455403991 927549785 999145035 934337451 446186561 250289561 661577909 673143655 558581109 321215361 758204905 6060161 409751651 139229117 285504477 358511177 91678279 324510853 584635729 312357405 973544873 664280729 660428495 122527325 668547411 219737147 727394725 118703475 689007449 559895103 517198573 25004243 335623193 382263541 288689289 303592437 705297715 997620543 312844317 299553117 745154201 251170691 659109915 537600917 302765435 757539503 162698941 613063727 477465943 409281849 469640961 186823365 213314801 950019103 813463471 613261305 97865556 937216487 574341211 71236213 424113369 419704225 438507609 81059821 950425109 640782305 477018059 847220249 441627379 881990599 633198743 93034429 543613337 965989881 384836979 350356387 394528129 19071907 328289489 460755869 293791331 25222525 325403637 740914053 528559431 711791303 240514533 726667325 717763445 886422597 650078323 587189935 396595589 778996549 636554039 983246543 552963153 593665183 934931601 118980757 692518909 643763119 910248103 685441797 977805559 841671517 218798189 337118505 815589107 927282967 792819867 50962195 74261483 674454995 520011437 60721373 452583719 588966159 887374831 329877417 889841201 322571729 31317105 757757089 952143837 856687017 386948619 811367417 436325703 470490027 665188699 371352043 592523989 538608503 803123917 128713143 232480049 787490867 677768077 654467241 907932241 141272971 431748247 195548433 449688689 754178745 47553451 75094861 377040661 486047095 29596751 263048893 916159497 736393999 622719699 229374157 56882273 191369549 89510737 478392301 500803451 412497289 89769131 635873431 734373369 606209953 597735813 101541455 752497351 869104889 610816851 687881375 662283293 705018241 744641865 452160025 631623795 340816047 467519339 31606103 961722767 600637569 860638593 199854075 312911741 668889725 175998489 670782383 770559891 264489139 8768399 674547495 719615337 809012407 403857151 673946397 433193449 881729705 942267731 134121809 881646139 908443695 102424123 670048655 978911443 342437237 307271473 467833001 458359921 521915445 777921137 557309817 504838933 271537323 409974281 955074017 627603727 693553821 668753605 163886027 816144369 264219225 891477823 583334443 709188503 643793335 181109463 598023163 518630693 976938771 244023989 458096955 880512009 17324629 882948809 855084535 466800375 686179307 114715339 708569409 986919659 980227019 348667197 635151923 725482025 147413109 31823973 784392431 863356221 202780651 523642197 324012449 441989627 471525055 207567077 35614585 361815679 989346565 886419635 401179057 157989423 391099229 323585067 707647117 673748149 396526573 529103739 900620887 260007689 423834979 422430875 575764577 320025699 193938419 533474379 924165636 889884489 235852383 501007637 381340071 537443975 289785067 274651721 988131245 63732273 455194725 668239613 844801421 267079333 401476389 414908693 9454785 996931461 51155465 620621365 191551433 751339711 900417397 295654097 757601585 850325381 386019417 736532767 754955915 919690069 23762731 370920479 323688817 974712565 922290921 863539355 709783685 522576237 454554139 89655329 953400435 95445781 404562893 445829645 742799595 14896775 127052437 772508283 858743207 565636007 585227155 978829141 273703277 252749987 755575149 456597323 225327875 971691247 131886929 298138839 381339197 131685957 71068147 378350903 416189685 924989357 895549589 322485621 297344013 817999985 986211835 414709599 378837105 699990819 276340085 962153103 993594897 775725221 936975831 3928421 471676135 817514261 988442751 343150089 445101561 848871141 435177557 945829227 719511629 854077893 879320777 182102085 219811319 170411955 654830285 623832595 342133521 437449713 880213473 418171939 900065981 291364367 578592525 706605185 862513703 812089057 626892765 769712903 68871039 435788159 741886823 535477843 971246337 215682129 821117259 542581969 494370797 478482435 777412783 479290799 87643023 307974279 898528065 552398309 980229689 603312667 850074679 868635957 779403333 496861251 182229325 833588005 295393047 106035915 93432271 918383623 332859925 379192009 540926853 318074353 913911733 805491607 198834633 902074311 687820401 52641753 512722041 519205935 849112521 926814845 530256633 824732823 439421259 916784565 522682681 460133947 186805637 794897409 355487921 598250267 821179155 69000993 159187803 954533629 885347223 46872357 855367873 159585393 226162365 142308191 631586543 815756755 550914869 384636267 106177403 488079935 214493627 55273517 197311621 569264287 348410383 994050259 429832115 13353637 267633661 473248209 872019763 418620871 804013145 642445283 152808123 597793861 335298041 828896013 746607241 345411623 113814721 746580377 573021795 203742273 167871133 657838879 648563353 307258151 325580925 402127739 966837503 308538427 181921629 24204751 652617203 653528229 461551933 993432967 776200031 511034965 982112811 579778905 354109869 521071365 735080757 459328065 191554261 90596147 958737783 773346947 709182807 740527399 25424147 828607659 518284087 339657717 110048309 929549453 490245379 324951665 691534349 638428231 676662481 37446203 215146455 31748923 252077889 727866559 12331989 350035223 440303225 809919019 130031695 856813773 68266279 37648505 879053977 870383517 214913 153939559 281007629 628594183 196309061 808204925 721996047 718297305 725795257 225699853 882781703 58616361 781700269 295722541 624730727 339624529 568273781 187004609 318563755 408962293 754191089 23487343 427900499 248611843 168622469 758425255 668651243 121923759 824338467 861886113 599161095 946522739 410141501 648533597 867870781 552332311 733894101 691969701 666236721 542645925 740187245 182160649 291582095 827396719 345091609 600804577 429853705 446932503 706199913 600183371 171398997 632046459 455501183 467884849 912295227 451398861 953758979 243205701 677021313 618363773 719188765 326772221 348721917 318249287 528600713 853289881 681843845 682081587 219186307 86201379 965231101 30949003 265682899 988309355 458801745 697163235 148563395 77046023 893512563 959994393 172084527 967735641 704594265 533576015 78478703 464637577 973687563 188214769 626526063 940390281 488022927 556046775 316041369 312518927 750536443 921289369 221308391 355632283 868810597 218029021 601939155 876732789 644010483 837562127 957638759 111486897 440438219 993858819 918249007 732957987 110840101 818695383 901552451 719663725 144112695 665243885 977848641 455060471 232151619 851629555 425714509 755295473 498598039 356044253 156806935 852650579 722349953 831712997 584150997 406986719 89030493 60890771 171811653 484975389 530143119 609477807 787721389 184472155 689295231 465640017 254087133 870041009 610338719 195045587 787423273 374415363 139483243 171326169 35382129 147232247 303635813 69947729 202981659 235906813 185187348 314189935 995658515 871759437 296806673 487906991 899049683 589807593 480609007 182189013 476641877 530493847 585428821 141267947 806211363 65870313 779353067 968187977 603694409 442107703 227792739 216215691 776899679 459588255 187044473 599769491 554688131 407259917 347409647 269822605 200837465 401564717 192358029 617509359 51033873 589749117 706863655 297625205 531697505 286659383 462949017 76219939 921384071 674687847 682035651 611366725 619884105 537399517 720073615 61415791 478484727 353465903 882539247 64499327 465299559 81046719 506317535 257136535 670624499 379852215 192281953 309935141 587145863 75106563 405481085 423914203 184984463 562089055 885169993 931376823 170959359 845912137 90085595 478018559 6069337 82409227 5609817 356186427 229629089 94031795 743148267 715867713 626724709 189142813 800842947 781689135 882595005 342295269 236953629 129034601 821973831 68934773 42828603 115023513 245161255 475331069 374109285 959972275 141001997 432633207 188504305 47855607 65259311 399398305 952666165 375135205 15120971 407236355 68521111 348646989 733388969 329743089 853024383 640066369 279779093 202418813 54170977 919809821 218811877 985897869 302169269 863272327 840280057 667331527 575484669 887446121 604503479 25483163 552473287 322203897 719467531 35364675 79148449 247790771 480126319 262204349 73018153 967847001 635254495 760798161 852650495 292866299 339748065 620087569 593452237 504543979 185348227 346663125 839807301 973705415 597631069 921305403 45885219 784917105 521940365 269047343 674898217 112999957 15103671 26171487 780099105 673380649 156183307 315033155 400095707 897905003 348546879 865157405 256358453 627594715 103060115 70724595 936227343 48462791 553239497 726980757 301537875 571688387 993531443 772349087 749767411 942281389 823763621 287503469 827688939 135523495 738130049 915413547 560148541 220825631 86773415 65838279 88137971 603630279 439414411 759399160 993159709 397189279 255180577 347423809 495342553 449254119 945532391 908378089 84959047 28631855 567872995 809998847 953855889 659451975 730256035 17670751 183080171 381152591 117388095 139620773 149604749 527494827 128636757 922644027 131235515 900762373 530455561 142906195 65504701 467440723 197014795 372323809 55523049 739651279 167165843 869822377 452054165 9502721 585919835 406612531 736481319 644649395 919746987 683473869 967022343 588315897 633457235 816207505 492072873 865356591 849475241 730610017 359510149 357155579 568511113 925855457 305293087 572220743 432403291 114524803 746547969 783928905 452773133 462738815 899438779 880006269 29358357 834746839 132801771 68834215 635025263 49228115 183547697 811514835 934803367 126041217 935353655 208263765 526203845 548750267 37927345 959773899 117444451 362662431 440143191 67193367 413558943 752256153 642363885 892569959 672427805 140179159 546922301 4998445 954617613 459842643 627578903 648364071 156486695 332033865 288767833 889733721 637760677 235017157 10278115 345140241 78053457 488786071 374199967 45816031 333191030 29877847 744905089 712854691 49334765 392616037 220225665 497353855 816361493 832167911 272785315 85305313 638268881 371795665 161534193 585996157 532946831 970543321 222348155 952888397 544854857 808114817 582211167 548827801 591631227 941576719 811943357 686139113 22280747 403693203 943871935 88757013 742189033 878442729 313797017 827996471 451763913 27017901 305063043 850409141 1893739 78240073 511801025 787085625 965304307 514842351 881240733 631240121 733458707 675995029 790966121 747823473 865595645 610412539 846410877 815755493 945461873 318593195 53329471 617589985 188299191 602675955 595239705 44192121 814277531 547281391 881589881 964463881 451862133 67210107 18307551 123305783 595595041 456139585 397969865 318661101 860168711 69205425 848408771 686278243 450866709 179045637 615617117 103598609 899002817 497712187 742387253 624099261 19352585 317278235 288078571 429016691 252960115 516684857 252814121 392635015 542514959 100752873 710371491 631255703 474843505 212986189 499489555 968579205 956227001 926142541 516885305 50430079 898589835 560677273 176906719 105018359 679220505 590123945 999630043 146503341 465406997 615711679 357495813 680008609 630728897 479823585 525647423 484408865 568555489 451462369 129051763 528573123 500449475 495733591 637889173 448860769 709083197 691072675 949166751 358710561 174331825 522418411 629962641 702605677 821450241 991828259 335080565 949553401 235113117 284308995 75381601 267722693 359064187 645528839 883236461 5433619 203647769 114469755 532875963 775179373 971549053 941392239 561429879 111915691 145603895 260627131 188570831 40112359 661572955 873334781 994928387 59451271 186057097 94551457 698228561 193140535 993973479 43368659 106077445 968314345 511014177 867156623 150919793 402549723 479989103 979322005 525384175 313539727 988682641 626693739 820119265 38955477 463189195 972568673 102580401 178433217 295029995 832711315 251267027 662845611 321386825 419877341 446025919 59196475 751413185 365736681 241748217 114750045 517222331 195408169 581844491 55703875 324119333 363809745 829403783 652498795 728679797 941099749 168860423 835477145 919170219 484282413 82634029 402914523 785031241 155538487 438705317 83265409 288088161 881309535 681677855 173054507 417775751 56031425 150783061 695508923 657588955 617061703 812644107 345728351 979858691 668495521 632933899 790057867 612443947 932653129 504583207 150552825 587180301 198562939 28428857 403221937 110380771 417740101 995678243 191038459 133927031 461215091 560163793 540832623 303220759 651163039 51510323 424340455 433890197 763657001 830792259 55253641 837914453 854156601 632921093 225360063 701309241 772948927 922702723 213853503 553919921 374998131 639018959 295186693 172586163 807057879 855299587 126602323 709739709 986459697 378387009 989565369 643805655 870850707 360200373 246882057 301698701 878549461 497051791 343773793 922114293 791338389 176320777 489211681 245564335 110649151 540815465 664292603 20120289 13814529 596151029 691357919 130821943 399508179 511734273 755432459 179970795 130899829 907512039 196854531 452350137 57528177 197092873 852258963 351060199 594318359 175546321 478207697 42783299 753828479 907645931 29730837 419259685 432608903 443398441 881434631 970395241 926351321 657858739 672773779 719117945 787884775 254957789 668635373 310354495 470533607 927589177 25477263 684606515 235014105 154413921 723317311 892041043 264331143 948234743 207079179 80368679 979519103 742760871 317568835 646646203 466658845 754880545 276984711 594080933 237103741 868910881 217198009 533877765 689878409 581373287 486974473 634337409 168082417 847276479 261835749 8867655 853504047 89686523 939209999 465717515 730057089 198842357 898851463 507660559 362728689 434494607 561895325 605013015 608921677 561088693 821369059 672796017 890146095 709684823 326854453 218821621 611040759 634338161 259408569 317470465 496774861 736986883 860117465 718319481 562202273 270982169 46440523 421299917 502427181 893543109 783740427 768649717 991100653 801290017 671728221 673801835 231392815 895534673 638340301 963853625 390964223 810524539 274700847 200630251 814522935 868222165 362169761 398070167 805089653 195607705 967701893 385108957 513221669 268629511 877263495 369754595 885385077 353845355 445481117 15520087 297200733 128220695 716304389 317974381 743318175 72333671 965275711 496848871 967660993 925726649 131750681 223633417 405309461 130761339 107740071 57605027 131740595 546659357 605108039 270945801 475688825 963297049 15181469 683509019 822111763 439249653 678481041 937858109 70003437 998511927 410330973 53689695 559322435 989530227 736190329 280615415 931206421 206795587 310603437 64987653 917112361 472334155 781756161 996022539 245530895 500090929 494578637 690679067 670246947 277343403 252350635 140538315 905236097 234471795 735073409 672736055 278163219 394281547 891918457 320487175 79354763 329608443 516350216 855077737 447982943 2764887 380042475 846912019 584444111 55224120 901442599 406881603 809472483 235609989 923111687 257161919 373849455 257486113 695634719 304105173 128293383 308799747 806128715 464417117 289794829 781622821 852598705 258035381 185288617 620488329 696511165 669473473 525113803 40566839 185410593 127278067 119937325 574180931 398201051 196758589 546408525 657984967 990649135 968866337 30436213 876973799 37767593 705927073 382479283 908311497 548031517 871579471 418194401 616099237 246488233 303758145 71989151 64676783 396363951 150154259 227910739 678415919 805824475 909174253 292048433 492527979 451927845 769869693 472398641 884491959 736553925 548859641 521141265 828792175 274656321 484134175 564765529 217264625 482558311 484942901 950349403 717026475 239161159 184541963 961498159 269188877 842929216 846547957 18714803 301414035 612228089 776083923 731354003 434052541 661540953 759717641 655028541 287462681 155260565 73966727 452652521 750999093 483124269 147070661 859991703 548094125 258964451 282110141 68929553 937211685 933705921 987189497 853165031 993489477 25134367 160799365 712671601 275440063 606843287 564136953 211133645 956989775 835529231 951805553 844444647 429418933 116578993 877388949 865465195 158854591 643365107 598181267 591842773 390305083 31916689 338891809 210567779 313395717 802261647 803923325 14272543 63122689 964765753 308544109 701096153 485590807 605442083 715969089 143621671 236302393 63989033 285214157 875350635 7158883 933395825 420356209 995721677 963597461 758473063 427759379 597044543 275461085 96861885 338047262 975935863 600131657 436557681 533457295 632104437 807142389 203515591 215168989 80228353 489610757 179593293 572018963 458320303 755935137 401213651 733451965 416236243 191977211 264963449 363523571 523038735 834849871 340005025 855074385 838041035 425045727 632543481 85367039 161265463 391431155 585516147 9036203 988614475 944149471 997144911 769660299 333905353 125299967 885912333 19908701 668389945 744567985 751125885 801531753 389819113 543460963 739733423 891574395 79469555 736338567 428671747 389975273 87627317 85449619 583246877 879146643 196192347 711275791 424571367 457989853 384327123 770126977 57554071 407900601 109285333 410138239 841071273 611764889 803649123 594094495 481822687 513764223 531945283 310934919 234662473 217791983 892457735 709856735 32395577 157218295 162317319 20387673 55578187 630609199 749490529 953241777 885816421 158344115 599312385 42648489 955897521 884481837 373437333 802434057 467558823 57553350 120265109 717446311 563213823 62206265 593145409 370380889 768025533 147520449 63450531 883079941 435370291 380544293 122094219 672595603 920056815 181809589 876040079 791858677 185211343 500710213 711159313 826696231 330014201 350041141 239664955 480581419 4233689 650825323 791715065 93614345 838089251 35716181 934027015 415342295 163483601 112527335 596384227 196005291 412024105 889841059 593766359 77545899 542139063 882469773 221786609 201608447 440715345 852187699 382663949 13595865 163501585 60898733 180403399 392913013 755311963 924817047 106152073 901011477 989793757 996187931 124942467 881546243 725338763 470055907 27570351 169386383 298037407 607977255 856380363 571270679 536367777 611959717 967266911 830134777 16175961 914432421 841335743 490454947 894691039 541988849 505003775 24901767 901524365 760605925 337362943 644775453 308230409 308281691 600193131 44410601 365838653 871594939 189676209 28948851 371132255 908565745 642343179 770291025 758560491 469722999 454245495 687930393 862983333 660390985 434610621 777042033 464537497 270029805 336253551 153066753 591075867 549811057 713309669 582030205 59815623 756420461 697569853 586491805 278414723 630374653 621034339 879112741 813401723 823356619 304483333 466960861 368655137 103024641 657916059 338951835 61241139 68042071 893029479 751509557 280509365 570346507 804946031 59881361 686618099 87696101 804937859 657669527 715926659 807977265 528891455 735998523 46792765 524783557 647925759 8426869 387302731 648157697 261193711 708569161 565556243 772828875 261457661 286780863 614380111 749392785 931722721 347358701 367132151 4342601 229926427 515396329 147408467 369085807 898491125 888813529 209919211 56210189 68607613 850195941 365264023 784992689 278443663 985785153 325699697 48668271 70932935 33862693 13177565 295931109 572970639 237314517 377969801 30620733 49113625 779206041 335659881 172742177 342327129 512977351 100364217 164668873 559532051 403980471 547764989 251055861 752966095 616931275 247046911 757896423 89304283 400258157 196006615 362126705 278636883 965109519 622135777 501689833 790294035 281920047 483735741 244387883 472998853 529366345 45091421 74229663 419862489 939350509 228548337 355975219 80075143 489160875 769978615 632501595 892990673 725282843 427465779 987921177 690208127 274149347 578281649 144380145 458421279 64238507 778657221 406257907 338270987 515176487 749520139 336256179 284633953 418219023 468071273 726115409 837480973 250160423 442121227 565261681 973882557 56954681 299498851 746497603 189917931 509134103 645380145 961296511 414956243 603061657 177835637 265940575 976971393 679866021 101523069 618578861 844831429 49921571 5103071 566002869 126635575 322367239 119119477 604927309 923991607 314787913 598856035 581017557 78016491 287187437 756774423 883932723 919402311 269305341 171004227 914035413 201601025 378016651 792415719 707345329 632099483 303033775 931486275 366244677 230191963 297427599 864602855 720453015 666298193 232270421 334622629 556238135 492781401 40072751 142509209 609261625 952901903 870083933 387981097 92979517 197672413 833147421 926253311 287881319 623875573 1801913 423738641 585378919 444416845 865522823 765664921 192832885 377897125 92678367 508702751 890302539 596307079 239223331 123823725 948674867 4020801 44728509 392718231 721907449 444016367 997799969 173642235 592076788 56499821 692559303 394369849 14201603 56161893 634797619 977465155 397580939 854858055 361208303 562660169 405866363 143811405 87849101 553253065 888954953 33441653 837705637 589775495 161801203 329476743 476988381 757098895 29401343 373461527 808587743 223148087 813062269 657096569 942178649 572659991 235665665 424055503 46324235 141744665 893269931 924583937 756419763 631812963 532896543 952130495 565943325 297662575 501684879 859653761 671415833 613817077 577877677 990497673 370454661 203119613 931911355 839235549 739332161 352617167 634276219 333379407 460371513 87716355 550794305 795372407 94642779 833855603 35257309 266876597 17968295 17079875 470391731 311297839 199569435 407417313 859846821 945945561 760561091 92699905 511601699 741623659 953647537 247334303 576187171 653278561 679309309 218181373 861620003 828522759 503895501 872379563 549786921 13523565 403972683 891261819 349823685 399918955 894562727 822441609 134995723 8372895 661406235 776177723 71743387 947816565 714745067 683061563 978445209 123266073 484318049 632332671 620820663 485112967 157877711 693578563 346965543 273291647 375624847 112842763 265272747 269918855 190465283 38225315 107830919 122569199 798732437 610546463 255333001 946359763 146417593 932639197 293460745 753756943 802835689 674442879 638942179 165451853 82487205 471688689 476514943 742859007 286470521 894509675 120270539 861998681 102723319 183261797 905235005 7467103 161541815 786015141 693209811 828098777 934985825 399408695 352059925 9393239 588434841 264876913 796335631 996319535 152791829 903217388 118549079 551523971 967437197 841678223 540372237 896270651 176331973 563912325 188805077 211669255 915556487 955764289 872502497 101672801 878320549 494757251 76320739 654474375 950111993 865889355 198078237 772803713 435872869 646322409 719730771 238082081 911128021 430584047 920384467 95467007 970001465 225979449 662093685 280130427 674850443 971780587 252081047 555321789 70953681 409967475 412155421 581767861 341745936 402646405 660095862 622772763 225199709 726843165 992560539 144004721 260809683 410712191 34072327 89757693 262845333 76976695 239062979 619968465 339001289 559332377 798738521 853552325 524253093 581362753 647832293 911599223 934720611 78363157 98577409 269663315 466981955 334636863 493337557 595058311 880732561 78791863 981167885 66523403 189432735 46458293 404120035 841933983 130549703 919675583 184455441 508118477 545345643 964062369 718796513 529204197 376809975 891501935 81646113 33482239 335462363 747368839 3649317 377997305 402356625 684894859 534825675 568669565 547859869 99514473 683243387 490874109 272436361 306209363 368540709 905837743 993801191 928750535 993707835 189348243 718306641 242801035 252720061 138063987 464253291 198286503 727403571 664549597 82579163 67071347 580881831 859428397 151932247 543757449 599025845 334597247 133712537 941299149 686086263 616071101 296207201 396329837 837430677 910867095 245974139 80691933 795386683 89681799 371482041 396238295 136620067 959504843 176968949 60021091 336022921 398827117 825826067 17299147 992641587 394185019 485575417 976622243 287921007 947121615 86362269 573157831 138257941 996228745 582264825 480230491 807653763 128332689 501308941 231467727 207934109 325778391 839721445 65032915 324007635 142693909 706575763 929246821 415525659 124928967 818654001 23385289 39862004 627043387 394632675 637865865 419041635 847999869 945800911 324020607 284547575 973823847 161035821 923016129 338985415 589790871 94558769 817209015 799709295 147538809 832344609 597036301 224263959 371480379 912943433 184226997 190905707 88834773 689253879 94046701 743261861 314444809 315287175 294268473 110152321 154528861 309600347 245116775 449184837 624267811 635229919 465370759 71677889 84965235 141330563 738887929 44443209 133364011 672989635 656126303 784550331 948608503 267992607 696605863 486174593 665612099 349252387 826906885 895754117 31600203 835339105 773864691 985186111 282257167 193529205 807319095 397926575 997080917 105410813 465050847 589784919 408605613 525514151 633933885 400402761 627380851 982376995 154456557 430341659 355139779 96547627 387908819 258692073 114679687 500159109 577113117 113509467 891449457 957215735 452594751 777873823 896563959 522279509 417082869 121135465 131773785 56443513 256896835 231975931 809626527 977917511 504415347 724762907 172054173 867093927 467545373 749667091 533972199 913853323 4643613 489793981 605087711 852305133 989858197 954520439 311769261 741747155 171718129 100833317 737170243 233622083 781975783 544508473 502109013 667509585 758767987 801501093 727447399 568942105 340819929 422714601 688614849 725975737 491542693 621128717 861452657 889467743 73865133 758409629 96995153 892669243 408826633 449304497 513562881 432130953 239004193 331043557 933891047 281903241 994973345 854058849 779654199 252038791 543967611 545689555 13647337 545391319 407520751 994568305 178920379 428168399 767003773 125339129 825553973 318471379 397196787 178791089 244693673 51345231 469191271 402518377 133688367 262632371 250740787 61776501 590548645 949628283 314971387 833559731 811438519 604435753 703312557 57923725 882015187 720426309 217651837 553795821 671450417 555953507 237392871 365734477 429723345 678555423 416755117 173305255 978903933 704483607 926180575 280227205 194044613 877371385 161342415 147685107 79248385 973923189 371832089 556082825 777584975 33696071 822299809 207552355 571879579 170245167 812195479 142976553 379012753 497019643 407554667 298740745 256032173 670044025 765628379 365040569 523274029 104324485 841929193 73154679 798888475 119991299 555674085 490409225 680258631 201367003 369438305 326430911 962313031 83093247 243078715 677901933 85287805 986312555 174278549 774308211 470768913 677335072 695013595 268770997 232337653 645817385 906152901 678685605 996233091 680437143 564781643 373180213 83121999 352623751 398985139 164147943 227972749 748292631 70116233 552760767 574415277 871385461 47860897 519031627 688081539 994515665 256872985 448256163 585468849 697184871 953916501 779189091 971475871 324723065 40799741 296433331 398905213 47979343 808832267 112345153 660892227 814804543 757950391 961987907 746766259 466732191 844671881 257252727 366520661 398500309 117174857 441909285 423885687 202948423 955404559 113425175 583531571 948332909 259024693 86856105 139033191 277875389 497846111 365638579 665687743 120653497 772680829 958638241 435370153 643209967 357360317 19948127 360699228 878368749 553523361 70574177 855895261 629258833 969639915 12922537 733454575 964116409 3838117 659572411 103542820 985714131 547569703 494217381 949899479 401725265 791554061 469027327 937982499 30678249 698372921 630879973 496411893 576774755 336881366 681545983 683538171 421095303 375419229 758564987 930517933 975328037 760614279 554136847 961619787 964706841 27195737 729828091 110824415 491392071 461492511 727501825 442870841 404905367 537118829 932201587 559695599 428254973 323083553 728480293 341766499 890826097 146300509 514682743 703467199 355889397 909499279 527594575 688986351 854406039 998486889 630625561 980600751 73625701 100525801 790362575 374007677 524919421 123779669 333658861 696013475 668915709 121439797 701515385 634041391 298374931 158158943 476003585 948862205 469148913 443429105 656997533 491588777 706015951 244516687 810758633 928994461 747098351 516803363 825517325 844741897 869346207 172634465 190148281 310372839 55099949 706233161 119784223 5966837 808108023 848677723 324635391 635658171 145482589 813557351 395080863 451970189 39757001 464600703 421541663 910776191 81217965 312137727 945339877 106707057 787069829 758758541 777130173 704680719 513621203 162443283 802485693 558618055 359309345 925253063 939721175 959849683 969603839 781536037 49916799 155988785 215853835 395139311 606642609 46186409 110948579 807718965 76229879 162836941 202585397 242302281 70059103 962250997 699302835 935306441 920696445 446426943 619501589 61978775 398811247 564182167 818056991 294547679 916765919 379260843 544991641 109997849 238716151 632843507 156570457 779967741 757105007 519850417 483532343 689645457 645624709 421207787 960900371 202833441 697166849 800494195 104794843 591951681 55700015 636581855 354067329 232405967 611621605 718312339 143042813 176516589 507657091 771707827 638163539 96853001 316905199 842023219 98283658 390078935 500713623 395555017 247848379 956380497 961046895 431624693 287057915 552190397 858526969 598712321 590073451 341222057 192280633 18635003 24497211 828272869 775884479 707301055 4177815 831618961 344779679 50455017 862111933 776217361 682293879 585072867 183524079 654190095 126186609 574810847 371603319 234489985 158069047 332988625 121448101 123738785 775216641 509618813 600118487 137086455 329724557 360380267 907279213 835793485 29215267 105992169 312441809 623603895 645524111 184749587 393914487 822114449 916561193 307625157 8735703 889953409 490598349 483838633 323377013 753094513 641492963 754979119 652567769 548473239 263377751 55624591 200851097 345409903 122233763 544559051 553979213 293315773 462948547 119495595 347856023 32622989 117017149 767090621 707207713 748322099 975447585 836306011 655598237 633739085 143400451 725778083 940454089 523804349 60902401 830380929 350083169 178073265 596673477 364034723 842555701 459752859 382626169 754736515 591638037 772410425 794281173 345599069 515431899 602182287 786318361 185505599 178601063 312625387 704006407 610776819 160228265 151157469 309024241 15139351 187402893 40576069 182247597 406743049 872088083 333564485 500442007 521033199 437968951 11771467 484037271 76573629 502271241 251498763 475054619 223682857 999971225 665309055 308665881 189200565 593772801 131778543 52609807 778534055 329908579 749953765 8413443 217519631 189260009 643265587 535854725 30694857 645646535 213593081 649732521 513425777 916918837 398440859 110723341 786972785 776807799 211411651 174445787 271848699 781590743 417920103 28555197 167521541 79218085 270636995 237597165 155660111 729915199 403222363 297346597 281003107 681388037 664069627 657983151 18691471 692244065 196686775 666811479 25648623 732225479 611496683 305387893 725333343 866657199 281650493 503472869 542865289 992386717 389553815 711249167 105589469 881217307 294730289 859081441 116734869 88111291 504140675 333107409 86583983 174128407 833587027 267793373 250021107 264016593 701144749 266384523 356069365 524946067 298806757 98359785 58957577 867218449 53581209 747809937 250894929 161207555 866495915 675298203 628829621 927161901 498988617 619729331 500481509 105157209 357874405 164705795 338829145 617311577 686486847 278946117 302241619 904762631 783478359 219837619 201699545 285434949 894725501 995444503 188159421 440459773 410484033 238742461 269362583 466839075 940195459 308764029 936186055 311911599 834827623 356847027 410366837 831867045 693950551 320209735 266187919 223845647 662074631 337079719 569177811 379235327 137024375 735047625 999231931 15609743 490483433 368958251 183349395 542095073 264766695 811870421 752570219 457739039 340711497 570456145 510983707 415082621 337642027 281153211 495395137 209074995 633012461 34128299 99891017 758079109 197892929 177176141 143168351 942713789 569824023 893748813 823204991 692370733 118597293 897505503 467393129 744763695 976042373 794674117 887410339 815457573 130467695 677695043 10240381 102712955 914739071 417141287 997416723 82243487 297172749 801073351 350187585 105906961 672885441 839404037 475037105 46300239 760660871 505333571 22116565 157747941 571645841 479757937 218494177 360596325 751881053 384259333 517595099 971322473 317547183 175048445 82054533 272088979 370656149 528601057 167993973 457130637 359898463 985857467 814698751 816762891 149883309 5253671 770681413 255659207 456499041 763542847 91737903 951732353 16784809 726293673 224000877 554836741 301635833 761689751 816210553 691079461 751087627 55391419 438326929 426243003 497973991 938171223 917922749 941199529 203929045 503530031 203221199 576532953 681152109 274678673 66735711 122527295 496096393 136395605 573218765 915766485 294707023 143758807 681957441 760570267 706432041 713281793 123541931 333522589 881378765 306640189 121747907 830974701 145494839 648416387 375287563 277646757 597528745 776743249 277387721 6286567 879302835 713011629 416559887 881998045 759482151 554272807 389505973 761738939 769616419 997086933 992868697 254345659 495178503 168538707 277277031 985509917 629660037 582060743 639248397 647567917 703169165 488307427 649527619 234551613 318537565 848975067 764316105 161454759 109697145 641664875 110529065 418239693 358713005 559150813 747468211 277388827 355650575 66388991 34997631 183498753 957752567 426929443 60624235 316059641 110220557 985441581 986567969 724288137 238269501 991336063 793629971 187114039 134904251 36355081 590577015 182774935 478052609 605549633 63808333 545885507 136790229 945083431 405344607 42378973 345427013 284923965 484799803 160271889 8518049 434021781 644847165 324178063 785634185 376513733 795592321 437210641 352863201 254227689 398862833 73336667 611145939 406122663 565984061 179943225 283103699 50067761 978426079 537868153 963842721 60339515 628725781 74513911 615616061 44500483 433347049 628285845 406735351 171536463 133147177 200514879 202722913 670547821 116130927 66127589 935790167 362571317 142886683 11533953 57246207 684924421 961238613 585738007 25911747 198079937 11529997 206846387 377228121 629054681 806802429 523215971 970093245 833850435 840139937 80512323 431684915 734142335 740863559 585939829 364228167 399255439 863981819 629603365 420643021 380782085 893523095 511379331 783235043 425345015 365887929 916454345 73615851 322482433 191542988 55780925 663133073 896827979 555274497 927499813 194048717 617545088 695084365 729212373 131334103 326671837 329587 746827687 804549173 611575579 22843641 59216127 543015859 265855616 393160753 271409987 133218151 398325725 555801907 505745641 373689001 471036551 732851933 266829419 767875619 755229277 598010331 998004553 798919867 343622339 859861401 18462479 550419627 845227435 727597907 402644561 16785515 393043079 511414025 452603813 13031363 608241495 614602369 359121583 566045883 675663267 429054027 588377371 255064747 828728695 198385859 325599129 749836589 650405483 409613573 914395877 778446631 967484571 989629435 230796479 539258819 290358191 779899735 989431027 398035319 629298131 996440207 832480339 124260093 92747457 942519779 433802171 781802077 915880117 437930845 57493257 700964833 618324341 811260875 185617451 49707293 904983377 648051143 882284561 909345773 150446109 378516657 308192183 683637111 947803193 307155889 463890717 212683559 822605193 790509241 551503439 268001199 326837373 922257277 378929761 814700045 94430989 948978817 108535913 373258885 736097715 78874125 81584267 524542371 578282617 251310895 905296115 297257275 811654123 147966657 875316433 346475 662477345 637516387 655354721 599721877 663332791 493288315 243829475 92557159 271035605 519532607 882663333 123344339 729291305 767828641 957761269 128335383 978267111 584754533 757891631 456472249 798850769 916723473 197626807 229482113 844841773 776891639 700746739 450041733 110104517 750155311 751531611 990239267 366626547 721094295 522105443 109521407 757547925 891639771 912362643 152493315 372362257 708776041 54170481 252813411 509406547 647308409 772889747 357357471 310550483 376520971 541501327 859527033 570280593 231920361 102405385 549167867 328696337 245366179 421092781 250398845 53145441 891187857 744695083 840972953 497560857 30140881 964421951 428440373 974724181 821327695 729653419 698260603 501341117 315067831 450038839 347560417 789556351 646021 79977911 800587043 412779345 934337015 78060807 427305285 280678769 32549911 532018437 145814931 833717157 399023541 115627679 685349025 459491645 446881383 85937093 909380427 197303565 589979279 867815539 482789815 476845685 92549719 493140395 180443217 33554009 330793643 380208757 400965835 559436331 522374215 34741477 618796323 568804061 164656297 191541527 982935709 126296561 54678297 309149736 113100487 64514667 545527723 848563529 164199025 887704537 844588083 594129577 168883387 366275923 673708883 389537921 327997447 408784501 961112947 152149011 401216771 684090471 265781699 981505707 166146977 351069911 66296123 681608861 670717473 233213691 363369373 540798015 557365251 541682321 327636593 523245303 34702615 15716063 514639365 572257325 494301293 863474613 769318515 464207443 92196197 820737639 667795609 107326949 256168611 775016661 135415587 244759141 162202897 762763877 637338495 91134811 717133029 678479619 904772837 80424283 743166107 678676009 376361303 966877441 800037877 645512147 444605595 538620907 217570563 461009285 359753027 243571143 447635223 290672979 196464551 211258183 433726413 565944527 195859173 141038883 511657483 95179799 530018793 104476445 611950333 731826387 593726561 846028035 815995157 32379697 372200901 872991651 730837777 244375271 394305621 861417435 569442549 251717683 669632539 993531785 481103629 422873309 712633831 515991195 459055853 170039601 827675215 524233219 150555249 256087813 695940277 184789689 723453121 489897145 943903299 45815487 468661059 661255219 691635941 217688611 992540849 41449439 435836503 232921075 716688387 284076471 922189591 964072269 872236415 114359349 734885743 749266000 18632625 411224931 566295151 945478953 367957103 679735247 453191917 401957127 735608787 612056971 71845003 514108199 406504769 416788283 253345457 421227979 161576039 217621249 300628879 230711611 232018489 533303181 198567711 651205837 798904817 412437781 655448607 862578135 773479959 131561049 849142551 366444223 747294581 512322459 359487835 555173357 803357 763249581 237981183 9851605 168764529 985045731 822069987 149744879 226289167 496858141 838889395 546363581 765378279 996745665 512278749 578968781 117189165 938010301 227491995 325373101 404494173 654032261 77702635 238521339 748838203 645848347 336263061 398788439 240929491 947099651 149442347 237948779 122787961 263292749 934326789 111530985 160531657 325085579 949694529 16342669 750533033 689811937 269628875 787124249 605870917 285384945 362620241 712461655 102953231 61629419 571307851 933897751 984586949 982233991 307651835 47716407 780710251 642945279 922076007 796231831 358352973 233259291 785848929 442859553 186408961 216242475 608153983 666091207 740406625 332461061 182571301 475372677 670365841 851084037 580436343 786536541 287771135 602995475 891031401 713828697 278482781 624408475 435692977 438431113 7451817 543554967 246696399 95586571 833060137 749613699 94454541 128159487 505865317 620090213 104687993 828982415 817597237 265320907 659701999 442587117 854266547 925799629 904306699 301810519 596344131 835737609 635670327 79363081 533597077 151881891 475388325 167052627 345374615 217200717 300999241 536753029 674887051 669861433 737368807 929218807 738438387 300782631 378151687 519213327 926874009 741079391 260991223 198007605 962307221 349156781 92468435 825542109 981963587 336247399 831831415 230009727 788198467 947039597 966213005 810380703 924025991 491516453 778242693 841160647 145686591 501014653 958607255 233566343 535295977 602267115 478632133 281076861 890071369 791754861 305898967 269660489 634790507 310825865 523769691 962186901 632080035 121874765 742989739 819289877 861247885 632798545 976506855 839112577 929769489 729711027 692986101 677716893 691592021 86328857 692112009 641159473 601813971 511117999 496953883 105779987 169952322 712457517 545288679 890528283 348803243 722052563 833947131 923753003 13655 745752163 529209121 364360493 201264605 251793199 58379767 252386325 919467543 717942285 854390747 968143323 608357673 199468889 564945907 833122435 233860737 301487355 597193779 320974359 795296467 646592353 830179921 981757351 195052825 317848705 923338959 700523601 358328729 7572697 632851955 588484661 505969889 491004015 472725709 726871933 993799875 383246289 578282041 484590429 506085723 223893783 974900691 963282701 681719311 214160607 852473093 234135249 928215177 920562511 295492609 473548019 424326591 875908371 62322365 767295173 969070829 530235491 829320185 26811295 900477077 16352255 791338047 961899495 604569479 362763819 134977757 412160007 688002517 783857077 281254639 650440045 4693469 564593395 302364241 260779929 907159360 254076615 544148653 393722633 282279405 700229523 620472947 434811975 416139031 696354373 706200029 854624489 214869563 604532567 666893801 863070855 429477917 260008901 58882911 193581507 170635209 853174807 223664595 109950279 804820373 915607895 976344217 4369095 463541787 826799647 124621779 715567611 57242943 155835789 671297385 504374183 641137965 319972935 437463563 133967509 261002077 97364857 469721649 28842646 55780743 725045213 292844317 393915783 747819699 38754477 40099285 150071879 470950441 384050867 729150507 988879297 594100864 804602683 260493751 825633257 889548949 298431261 682395353 484897975 688706185 718854069 4320185 655936303 496540363 924738539 745603397 95985755 406461199 522961709 581450811 685881933 779310417 654934641 507249173 808620831 590772435 771859253 845259294 937595891 256824101 42067071 124671081 724251123 598159641 830283231 949280459 134328659 550107595 610057321 630838755 835075149 939367841 220196797 296784413 689457697 762966853 215343361 900642469 294013979 321970349 163807713 718506615 820281995 713549333 512212887 998015827 931616719 573661441 806584285 356092095 127428935 651798333 479643645 683680523 329087071 283751901 544420805 354898003 875602823 153500223 556700295 237752691 36254521 846923525 863153703 874189589 906429689 619527963 481646087 392062635 200964689 419805369 728615447 703030121 691500499 707342935 679530445 750598485 859360793 363312059 805885223 316499505 907721925 956777713 234045867 941267603 681438595 892189519 814045545 266777807 263884545 922635375 34118133 815008775 129123839 124769077 519274863 114279203 293533243 594997967 202438525 787480531 450002305 293539247 47737421 128473489 173549219 760555157 941147539 432726683 851154043 706663809 725163409 356107001 509824747 175873219 896740875 279088509 265946079 530466797 465706831 508856511 909855301 386485978 83890997 356956191 698847517 32452784 298688025 397670085 178539621 678187229 937910755 733052065 649023529 737484307 873813761 417042795 590010747 944429903 109185899 354892709 322737525 724844757 834206107 954449813 348061241 21601585 679531417 906189389 901221875 946062391 681461749 941285541 734412755 612606467 449764035 301457979 62976275 890289147 923007651 610139771 517434871 835016649 881340859 93694867 379794121 605228133 575740601 126300027 853679323 568449799 454948305 65075443 89047943 647437365 323036101 822136965 217981744 632648891 729755865 446951809 111394879 692492973 662449115 277133567 732891175 387548265 781515043 487984861 544947811 49227153 812396943 149608133 220708211 867605523 491237763 905291049 273638883 868239649 789574639 345255999 613114181 931991609 303269705 48018183 628948786 17949217 721866897 935565387 236067919 627271649 761812041 660705689 933059397 336156113 833845635 893951053 311140805 581044363 451619539 51206275 531216265 707075571 280733017 730036261 318734166 941621815 629952955 775231971 817771509 605185227 920581927 781939255 439594807 333291369 333056595 880648287 845617911 251222297 947143803 119041381 298307607 21130533 583239785 188455703 436562819 605933601 291181419 610421519 711098155 117316841 969113685 615305645 636299017 977787299 723859589 369094425 488131107 896373945 180760293 113018947 683156351 91548129 276510431 129362917 686238513 329693975 552464747 11808123 453021011 424938399 143614983 786921043 298297607 430434565 958566331 644283001 615182201 992911389 811601939 399397319 824095449 266958851 696843301 369565915 918687075 447362333 271244689 562075169 689586263 400372247 602558333 252410055 21356801 545810659 359643543 432378821 604427699 495333823 320153365 536848093 485902023 107275823 649919413 338950037 26010017 771629057 671983805 469638207 653352871 13574725 912093691 802687219 276893521 717658203 664229063 593184399 375504147 143716069 797376767 248473023 452854901 563032273 268552198 122212335 490785533 392917587 527629775 455769691 480438079 283369445 488281551 188240131 125560789 791689037 358289921 429961133 817048673 263582361 112796655 266989800 196671631 812540699 582348197 673330963 667107087 329484399 176061625 469648711 229832349 201036153 912959819 214855791 911713017 959456103 990829825 997527101 924454385 998407853 946886153 398791207 915784787 112389127 16709657 899288173 300221691 901421945 42004847 86816025 891606987 705157965 58813905 974691577 392941743 979536669 689788303 944100007 887233687 842861247 673468541 743219075 995104895 250879323 613558521 395307189 604463207 451243611 158973677 909332527 326098525 201238133 615291587 874287013 371790703 549220005 344066675 64989083 822347961 125758767 796431485 67593817 622897759 779900063 182230757 787553005 158276231 727004363 494286393 436049457 199523431 135184843 474376847 180478405 731418425 818055431 554329225 41089295 113884991 804220971 524959305 578610757 577090241 419703339 543661181 242404185 447807251 305842753 791069023 426317583 676586383 924093683 363465131 317182957 155396249 764759309 529634727 864401733 659221657 354252453 612999203 809013295 214094593 18287125 263578483 289192073 729986381 348973313 277436535 291332607 690884093 625856343 440295827 874132223 734174623 213498955 527155129 610796481 810859969 520729433 55104859 587589 667450367 361738051 893147003 978781781 445199101 11634969 911282845 407434881 231173473 726672173 394380751 169198881 567913699 344423451 742814631 399918675 731174713 277912519 346079047 54375427 103550756 884459617 293236561 15942877 665855347 908160857 688616693 378335069 710090743 546650221 569251047 5788353 128493191 944489631 501312107 778075155 935506953 86367039 480523841 100421411 147935587 650398943 945394617 350181767 486820493 945328733 211219373 543650721 766848893 196961755 712611189 156338075 369262901 277751749 444307965 565843553 388406977 629570515 740499633 214223535 57033781 423043581 469300357 110632963 420247975 543930761 87559419 585505701 1023549 502450179 161351957 756899753 330140447 528384577 341608039 831149539 84568703 435706203 115987969 32981749 468787865 652043195 181293959 774120263 717336237 799378951 684608539 397668361 354572809 437876281 687874413 152479283 319997179 891006601 664455347 30169479 47341025 635150463 633464747 18596237 970239001 549376483 419748763 300113043 76531985 558202317 597164627 185715379 91782457 205623191 833777959 421087435 973408525 181183461 677887991 673466247 386517519 179784615 448848425 750141525 888993223 119751947 778818985 831370861 104782539 288668307 249334257 54227409 158557105 426899969 262797563 666458183 259179551 345149281 190793297 971015265 341232061 127796743 434686977 832343159 638252349 811809167 817337245 214560167 987933019 721560799 563548489 781780189 651786713 252653345 226333863 305609671 275946111 614891723 108008935 147707869 290425891 135026329 79359167 602977631 943238043 51113103 697627501 952436311 216834253 515770105 48906169 844801429 775672737 992200555 704478701 752521135 531775241 229486531 900562405 607331847 743314945 378415907 241293819 765728711 479370379 83358969 385029653 323351771 45032111 198133239 178131109 194666751 727409027 294680347 161673629 486906033 469110813 276083883 888274815 175735355 947368099 406533423 206374991 74177709 285147965 168840831 295132315 101369053 917820701 25522867 184804475 837669997 514773887 331655477 321044621 145789125 413725861 168477100 878129909 379661333 730190041 124098319 123534435 688009815 984423275 991935131 126864141 672368713 883753913 182254801 771915697 95666803 604778017 183629441 842379415 932561449 680881425 906035133 121577611 304863871 169393659 128781025 442456035 661778263 572596311 404692883 478264191 322194007 484726441 662761917 371506629 499031029 423854969 420338837 139976099 394429539 246650973 536229783 466234765 819076261 687479019 66426757 590108805 54615937 364849097 673650031 352801039 687337097 737021855 726266279 466843193 700572949 148685857 244630731 375045787 287789379 270629127 488683709 776003923 378830079 372156179 967635881 970481413 725528823 207248659 732934919 189753057 675259299 562972885 136170639 369292189 108913733 116791863 709607239 516620409 70882787 542954009 684224635 898281527 994994767 291940197 886971583 359082025 246789919 204505101 973873905 354588453 203966135 821111311 796817203 374687879 761494843 282768999 500786675 233682231 183454623 333636133 157917413 461574305 686746777 842778457 943760387 400324543 70860713 618231323 758450323 259374093 350626329 332800401 487687715 324420241 592391671 735491299 342477187 985635545 260909343 266107973 537905619 652440573 518859821 781182447 363866999 714340251 830510987 666441509 622419737 424359639 138347627 217537327 518019759 833445729 783946689 995606627 840079477 109590129 670133587 330359065 962978797 803993025 982690467 833852081 667497191 380220059 773231111 251903643 294278261 477112011 850164627 768326467 678606323 412971943 400534057 45860135 551767047 414514959 979174513 63105993 135495067 22912617 839497179 561631411 284478693 754658211 989467039 376298103 218305633 586379315 726052799 647089581 791232979 705987607 960029699 443275771 162597703 165842133 278506745 995504393 244238865 222034555 458970363 255769483 552208847 650099873 908129065 646972473 160185187 136835941 275860073 198842583 352685051 635304043 569786991 531862831 371418121 480601573 598319283 802893841 89082443 432066949 306696561 242299995 13793477 348029835 894736055 231050221 245506501 685801919 992901967 252268721 452719323 253791853 679599575 310074779 547850215 900386157 699558317 987494819 970375691 943193883 723174391 410696397 755392181 669505375 295399081 246209315 299896473 979740839 386342265 576658869 835187379 943160039 559846121 330661281 169574213 717521569 977087295 872758535 237064415 192169947 197097867 338034193 484956497 801507615 991445673 72770035 654768829 701052039 493058613 416311269 457737857 49832625 879860635 344754731 910963789 1665473 581865223 81455375 133883157 571583081 115636341 615697891 686914581 463402203 77513379 952570369 871947217 196563929 923782683 662833611 131695893 519622053 431104043 139102123 868374005 37967633 448182766 931165461 489964237 752556659 256367427 714723201 333543235 626624679 969321425 102566259 323629379 511850005 138329609 527723893 999257087 163265963 962907685 326123287 833468661 537582559 14321955 896331254 920822505 199707567 95772109 400036021 203706087 559420321 247897521 349989373 885109059 72455365 660161577 563984765 482512539 297195951 886418773 322635509 379236561 727126911 642228509 73898275 39291411 93998299 814940721 129486035 913103829 687454447 44216073 816123861 422004689 242551923 515299559 731802631 551533325 121815719 246421713 199742025 423432919 532085839 258748057 435258247 924698559 137983161 101630423 104487855 674929829 560966333 78833387 2809025 27326893 782344631 295928317 998802875 306317633 437809295 859678203 978229161 434381589 119896243 293435811 387193499 298120489 103922969 752918639 924498607 697546431 448257343 488712619 818725637 632390497 294448171 44750695 436114633 894004711 930928493 10903419 427461163 5129069 221654553 540309637 147499877 405683795 58344399 164889329 678631867 882970955 529216949 911844843 802322551 378739269 33922935 657391215 667746795 873229183 742522959 873408061 404943985 807306365 10056183 424233179 567749995 519229705 700921785 960791705 972289091 518336061 562931041 277240211 753419117 78544751 212565063 384783525 283930977 528564039 760153671 430999673 375865765 805768369 274382539 801513601 362043837 831933407 672232381 824574449 704558145 107298127 894760597 276040399 667711945 496810183 547563857 780765405 296812023 345652303 318495607 280289969 8583799 86123325 998170391 924036255 743674873 51187503 299063749 855301065 830160695 602117383 570714017 395354903 527254005 907793395 337932881 403201593 628935677 176182887 79273985 339827881 786615329 244554013 509195371 58999973 98532667 267922973 22848457 59796533 47411501 353525167 960966117 978074667 48673251 345112939 584034573 255137567 525770317 39905067 791927061 354414705 579466085 202475541 332664923 336383817 894134063 777200019 538881735 763154839 458342837 749872731 552970439 472879891 805918729 987254121 643387473 808151615 462308165 641545983 623559141 365137761 847650699 557071789 443978117 153524619 189086983 918317893 481485251 825186197 676729577 805366757 435422387 403164445 58196587 902719727 469805301 164004239 603409363 75454991 677704879 444428057 141444967 894997051 457415821 193209267 32245883 631180975 623731913 21820445 583046761 224507375 557682719 720823521 425106323 733008583 286189269 124982607 753201763 23354701 304180153 758004351 351268429 694132185 569886499 829367887 698620619 94243859 495920625 445567593 309918813 304809447 390528647 445061439 918125455 389679241 574293973 999417095 462787571 438596467 511154769 971863233 488977187 300997483 413246713 939781431 760569795 72918399 808098901 822768631 947209337 484354047 297553777 157131357 913109243 421051787 639866595 242108037 208829699 918346247 319640011 850019417 746896209 547769757 250703055 360278667 987271345 842415553 76132125 1657743 797869813 25020979 751465833 166724777 743907831 3126261 707816693 748924640 693352601 681981009 139611269 913720325 703216583 172899807 338916201 173810607 434091889 640434041 505554549 286300735 862189459 699502917 150391047 66277341 166737709 25461165 159585286 414255481 289002315 145683559 8499429 104723917 110277119 431463279 690143891 934111319 622466915 181643785 425055889 371273311 821827227 901734337 261624807 283697143 793480397 690327403 669079073 607671543 884409903 629029925 23230549 906299901 59163387 238822993 424204835 825275765 894473841 894338203 187790513 80584845 237459933 670115579 900509613 487605309 150586771 521475497 694244941 932248647 361008617 863933483 994488909 261182513 531735619 847968845 163338489 491733069 865427469 667957541 547779097 503161011 672659895 827074059 575730439 682692673 338365885 235271593 670506913 668600739 764637087 216739047 848483659 982378053 462985449 857925113 858929653 596428643 567262765 751771487 784679191 582812413 183110149 426344153 269140139 453254873 224567829 916370549 820576315 813236615 397108227 830221193 618653139 973508963 376035975 441703343 391679753 295974793 456018005 940988877 406908925 991622883 389072693 626815757 696383573 455490339 260485869 908486117 480293951 566776767 942629969 42611985 10291057 533984503 520351803 83196563 705367593 899553493 786949263 547599035 979179565 994867751 378503475 33683739 23816139 34268551 550626591 187180943 866853083 302649941 648284999 469808445 106302907 739829689 451326387 501158801 682395217 18355621 206856809 369634109 951038217 263055821 599890045 646064447 339571163 510361269 537370377 207971291 260048199 539229349 499332145 292738973 866983759 816257195 269990941 342220377 638056071 337790881 390193663 508375597 664375039 417797927 348868371 984384123 111853913 814709413 373357465 834722545 82226107 143432779 638587357 234548865 903261395 14125585 171790641 475542633 774414039 580190393 33839345 861479215 378492037 873730249 294500219 60746139 800354339 175382931 262423357 533345220 594715265 538572847 437053351 52512773 665178099 293299323 113580597 274955781 634220377 338929699 742481257 901968301 280397591 177157013 86301131 642396723 852622367 810560265 728215791 156948241 152339171 841360255 48200815 65734927 124836453 678815171 466190063 932614453 437896487 720817503 84964631 664792539 508722235 804448177 363484825 91836827 996788279 608484053 716989233 215836251 55523895 741647031 177265055 701636165 679547619 713371139 133187761 355152591 904358761 10152757 922739253 865917365 529608831 299659659 449883655 319189499 928600931 918413327 888431883 548639981 932623581 266716817 858115113 190981407 793365047 705592487 748888403 292723053 506552907 639248051 987500677 483995133 596957303 864904415 443821247 469032251 564895137 422011414 271659791 820105945 443355445 197412631 200668035 939657941 483892781 86574941 314964535 781112947 204712451 735036465 3456079 312452417 417988545 524483495 907572979 260236815 92431091 63477139 251058773 312183805 779263153 669276311 183289521 235466093 944216215 516245787 180997961 970170125 632716239 2197583 791022949 994370767 597029377 405815083 155591001 624705267 286503529 345349488 925438849 619895545 70821573 187668649 351683387 988274353 951831639 828405025 809179125 289521451 548778737 510262003 767533089 466677193 658583527 648650493 147069495 835093801 944345881 688705515 729236409 924567099 604411371 22081835 392773685 487844659 236934734 640423413 150500409 128063629 287288759 159570507 345839201 723212811 6491685 358782963 349636177 565415357 349212445 187891583 505277361 111913717 413333677 138566471 213636403 456030031 257761901 874432105 343372691 392235953 158870137 102259665 193524371 458166599 475696251 20794669 148797435 597714051 872801437 198666741 509534369 583994915 305012375 999924329 314052443 418115627 61033639 282376339 878055439 766927591 487334035 642212675 953769637 964417515 155766955 928307471 773320719 822251285 179447491 379909977 351970633 119608711 623903035 562746187 183649877 67867309 681439737 38531793 566782781 103725375 232024427 581052327 450635025 817724469 331934085 802526283 867027181 663563221 252372681 313083143 523217141 90069163 110910779 512805099 819347793 830372493 485682025 629679309 310559541 17243029 615891819 474478159 285980121 649955623 982049247 493040345 555692927 113609457 153822441 619083931 979573365 69481447 474276665 166543759 40182281 701206851 664755461 933308019 259942297 545454989 625139979 93373903 451597701 129065359 422753683 968004855 282217015 360986459 597972841 229155583 235996961 738984275 110499555 34354633 715550655 194822933 441698529 773455611 882919059 761815697 765572553 18461963 690147877 77904123 201264775 880139307 492302859 965033423 620362645 209995103 264076763 822876625 739917807 531917165 613801019 434464781 601702427 236191207 896259027 777554135 27079463 581184549 90411607 637378251 305203627 362146373 834685823 1933775 220462789 472989235 578097679 420237839 731912473 870551197 78323407 675804925 702355415 616965627 903583637 865734743 894843317 75602319 115216951 323715873 990766065 759615071 127818139 633168551 424224083 29813309 520385193 440163711 254209831 715410111 501743957 353962627 644776515 765891145 175822743 192501719 673176583 38298367 573503603 798889449 101996377 922406357 858439921 606335083 652794279 732999553 744300327 889234269 940579303 87716227 721148203 737055231 14014359 162192165 562520099 181107167 769407421 97184373 916377399 872545235 738451943 37213519 499200155 137378549 863883053 609654863 677237383 318908329 345469741 26183647 234127423 835411103 388927755 190424369 547927309 113738181 789598839 148587321 273443649 65324893 765455015 854881725 632037689 302248681 327250267 102134847 463397461 163582515 783181781 699847957 608825855 1164883 134131175 656022611 458228905 300058789 379855079 562961115 326208721 402086857 763117744 991841109 495056885 905746097 293518509 887558961 819267999 716645773 580538569 897293223 17010277 42024155 178282617 275487417 424782557 570301023 877042111 562303023 802984621 675268645 712036383 931163287 254899071 108658049 753963433 905540683 444751361 835822097 100318705 921635947 777194737 380745911 713685271 771229149 538465809 351490719 664806079 378536021 952613675 713787457 639705369 230656843 264369425 80363605 318650333 332559611 974117019 423444193 427530053 879919987 988080047 660604977 636085531 915273597 303324215 631844827 884941227 532237751 162263329 838284729 956674251 356793727 665384299 607907567 406778077 980343291 569131799 199164139 331379139 505970463 968714799 604460641 195536363 36261537 438987205 979000907 153632079 533605123 29767411 414400753 248854123 387171467 571380185 696949979 306687813 565882953 883563687 727073249 91818605 595518745 354192009 834031645 211279863 924145303 554485439 586679541 956643971 755850287 820150151 915629587 183637045 206931469 387936043 596365933 638051775 14794285 711397633 139537215 276995923 776820557 365816929 378020107 996263857 695966199 255687085 422783649 285676833 994332537 636864847 499388435 513683567 344678127 61647547 15133631 380795891 414968885 289441129 272748359 530374281 376992501 990688733 943648787 934587545 928550303 195367073 287286501 726555409 605821037 851407687 729125293 915395175 198875229 94876521 321312691 18607001 691360825 377471401 299772933 804068653 478372751 142031537 204237555 435915827 241697721 355392053 970333469 504204607 266889431 425698285 37335141 422564721 584106193 870875293 33330425 692624749 454580823 730618127 289527883 313729125 624000993 820867349 886492185 987899147 531638961 522750599 931419497 123847329 883485133 291906635 803865475 471026153 720496391 228841803 139763455 607847479 176851447 75071863 127558327 583786587 279725821 330639049 436993743 321895865 999568449 289033797 997365173 991686963 581329587 600478453 872433437 178531897 588902155 886196971 526934275 790722497 620352713 339978305 629565097 863452489 789056823 954960921 175304607 143729623 128247397 184786333 296851639 775556858 940732459 88743681 26838797 805825993 810693415 223872637 341372679 806135265 860280773 586828629 463620431 453525606 333193521 690454227 700415963 867785997 947250279 1162057 735121639 79618821 119893799 634392849 288135159 294011921 148626679 688370573 68877527 67494773 9289255 236304935 461419163 536124159 31917779 933578067 579939489 591722503 819863511 658605963 40776075 630693481 24650717 697281103 247691845 360483213 300827223 637235499 371806471 46708065 442795641 967602353 830415433 14045019 543866953 957020539 761859537 721666427 15519625 552623915 297017771 530510147 965305551 656108907 636390700 385044677 126870127 316744943 955188209 55805333 172932491 780968559 712575707 280865747 136229131 499058609 906075417 733852965 563219615 999902331 946003229 204927927 792929217 111667615 573777831 466738499 310332079 272262651 187911863 225730051 130973553 561164145 348385949 868387777 93980889 284468711 381096171 498181835 438373247 71553619 137830781 888626419 869563075 942163373 831270775 630402205 362218957 204253179 617230921 259482539 309397133 692340547 185846945 424884877 253481659 612365465 966741889 749735736 699629785 412771607 957284139 681517613 85382957 953957087 529874475 329783153 684512969 477755419 56390229 67503505 786531461 753854463 51968965 14844579 453720063 647142341 793680865 396108103 705968291 733758893 936115797 336007587 48823455 125209091 673466387 296067171 767782379 796970521 623127641 586186689 211645767 92010313 191742891 144148601 4087101 912137717 965781717 256915153 740167965 427883657 100785131 666057111 415472127 705745525 604170571 645224739 83230657 128480563 128048279 406549585 664138765 264718663 747551165 408395659 101435221 557015357 241911279 866290107 391640527 550912675 376092331 602277209 554649723 827320597 299113143 2154851 996936739 49723701 301399835 962349153 371293783 150904237 647359023 401711455 275227757 229858353 944338061 765816051 380311687 272189051 122243609 62679101 211360909 524561227 469985025 318678499 372988209 506329965 610404537 425155345 660549863 753891507 910168829 301168769 39949043 493328119 787997391 931018095 804918365 389471517 851044735 982706849 81654003 159272971 350659487 173677925 729097295 126394807 106165771 929628819 429714641 334068763 279014633 849675145 246519969 229994039 595780259 318034219 579632815 685884183 357708015 474642665 547364789 497844941 518946249 185793979 892189489 385716085 461195893 264923419 929146475 225491501 981069439 302250001 807727989 336851491 162392763 45285421 943094823 956903815 534356037 25097861 982078753 775145107 646830979 988599989 487920329 480456333 289980193 277701605 265506899 199651515 877061905 313386435 168155317 134086513 305067409 820512643 143565233 661925641 455483941 884019431 837296333 837894373 578468507 866912563 396964443 512647281 777500675 650244663 26239091 219454493 799504317 438660935 440025587 606233189 305259115 884974657 728539015 997041865 927583995 71963791 38474395 300088533 38901153 635478555 308729451 341530907 530856663 95499869 854628599 577886263 431132259 413215061 694581253 694943687 173569107 649103493 737459749 56529273 892217849 244848639 269371827 692866045 87038705 262526297 699648459 125730831 463485471 802412207 460942679 637694319 252120753 837264297 235779593 435473385 534771995 177122421 681258839 614022735 55426073 849097929 28701057 317693309 342324143 369762017 618387089 349696849 310106665 90323593 494759253 612636089 49050907 416735753 272509543 144575909 504164961 17946939 890460455 472404497 297629985 92159613 204843709 172724989 584199877 316026803 461397275 935731317 552098819 475104079 282982389 837156235 387942359 759528259 420492239 559950683 297950853 23401489 848553713 40172547 825809561 237383611 992025705 852985265 52729321 235619027 358393105 981268373 404887181 652992879 496169097 504774891 318629357 794428459 940097593 161871859 119903157 477634863 760281169 131188475 908105433 150695209 710071497 575533905 823121555 749097551 323981411 747639889 909912937 112792927 844115877 266304607 603301415 993988767 198125025 864080865 629290211 70503135 347013679 488550479 750292471 903961715 321807981 341852445 240563975 728118843 763871303 160970963 298116096 100247707 416923691 26346999 422970393 662099075 666076753 463691805 943725259 547184747 199041977 385102561 976171737 565842765 842561839 700758753 931138899 268119987 405950013 169882827 148427915 443052713 707065409 51314255 952090909 485070535 916122967 304900393 557649135 204854569 335691115 836124187 190185515 240262263 878319913 499979245 364397639 225602527 509001997 807907443 578311423 90547223 548813911 526055305 698270549 466530397 875233803 266330125 464709273 161240951 841454079 875280621 404321119 543197877 265968583 593482777 543549567 511356651 920417733 456044941 921156129 715554169 232112163 514158667 817274545 818028869 982793677 811084123 671028705 18138555 106551679 458605777 463398831 380656085 267042999 852426441 642784095 454662413 519393469 435737185 737011325 178944109 122941861 343149255 718809055 633273217 887992131 288890923 643093149 584702817 169478201 260753097 378640673 416395177 864209135 3333603 699688465 554618241 305077397 804119233 786877799 861329559 133695011 245235641 198205275 701120545 565429595 303076129 422244725 263319517 592160709 929079903 277446525 227350803 626969007 956109019 309140619 772731277 582291763 418896647 92542969 827760807 678554415 318362463 950934125 674679867 300438095 815074659 163066577 868186543 332685825 898212513 214356315 669309173 670954365 485924775 259637893 896251775 22719685 20078355 552925207 718821199 61360031 154338947 117462043 915022825 790626461 782418341 34424805 893556571 225334295 716610859 795075345 792232765 747297579 800388045 808994437 414094251 384197317 636105549 999525227 80989773 411206291 552716665 110711865 846217041 646574605 581137183 448437163 748155501 168265587 658641181 437376453 326374369 230865103 53689681 436011731 209825135 27323633 349783977 221646953 213442409 427576431 451692311 781157989 490669475 446298285 455550099 383592425 373138045 448235215 506767903 763573859 54539229 241246919 243483081 677133957 164287023 669794895 176527519 379622733 644273005 13485029 403916735 293625601 452919827 672533459 45332295 643083305 849291303 707610921 460109669 971927709 322368055 252876477 865843019 525420149 265587803 838515249 345441841 820560667 336791855 10982637 867137115 941852215 58853085 804413217 863026193 58579133 448777743 441117383 615005865 462219757 547420925 6323357 430664569 845140041 729899109 339248427 369362151 300544667 419602061 654621637 413422939 648776443 396592709 529615231 867738695 726040515 971012067 818639419 118917415 650288281 346745411 521086881 22777981 960723303 386523595 339962401 122813139 632573283 298167149 223715315 420166585 838934025 779936669 850148377 669664461 151496733 787758935 526979929 878969517 142406313 693648167 777206597 903076873 590515719 571781141 467328309 856614029 318231245 50699451 13948231 920716279 315272419 5367349 603627367 990790409 884455027 841142061 678720067 913376909 427556085 926976717 958115411 437703763 814220321 535451085 350645977 116749369 377912061 28732267 461156571 357071133 975466709 962180719 423783467 38719471 132117053 261551653 517710431 320438939 873686547 151722339 31609819 483856671 665769081 861902729 305093315 557624957 65200093 391417213 652662795 590001599 621678579 129099949 328678505 476733685 267287733 513290765 282916701 611268669 947372905 640627999 554312753 406926007 70476189 709636839 704822003 322835853 946723875 546552053 703811967 577276145 386883095 830904925 2811505 537816351 540684253 567587005 549594675 943134041 787837987 490894143 267391991 800140521 502880477 859416973 411864241 906464799 436893767 709535967 479730727 303902041 136322531 510317301 723987931 849220087 742207873 727144209 978360867 652629347 934932531 905198341 657899795 283966481 132795733 949372455 467313037 991304313 482257805 273006675 592947769 528775199 992257477 352133361 981823623 559993483 706478131 254362605 11184559 654245971 885120339 71623873 277395891 884352015 381672681 446631273 832368219 162565473 821961985 997454699 552432181 86568435 859776239 803708119 253152667 216650359 122698321 128590657 478270893 62043563 766183945 283656903 499974481 842236749 988726597 964818195 319966267 401612071 864592503 636544079 105398243 951092239 865189981 318645299 514521733 70246108 943654141 884739327 932770351 441280883 566361759 538588791 808714669 586832827 224842969 414788841 39537047 191643815 292379017 284732971 258720593 787380533 547448787 206017693 149358591 305842019 307591967 30396453 752595861 718837051 326105127 435005745 34608585 351708627 900164581 627848631 518733085 804703299 891367067 198537781 517363671 423700141 339853017 969082033 694962951 146836795 998750319 897021883 716721545 144208161 38394239 405294439 833958137 784940951 228213607 461518931 957091523 979815649 527353303 172107433 827553043 166575433 203213763 989776659 686361061 680086047 443335271 73222603 794784759 355371713 400755271 495406475 116479955 971835279 853112367 108495517 432570055 770783987 812950579 525741517 669368815 188356705 606354095 592940403 827840295 4598609 17617737 906834027 565892121 612299335 103274477 106732317 900787509 583734733 933494733 751420535 584099509 959146869 529223783 452705519 170056087 860570329 704892543 487518595 885872805 379857563 958251297 66319545 665208685 673493349 956453025 113124257 390960969 999010539 795882397 272386767 697151065 306249445 176144887 224328035 967554693 840885271 193332701 576223233 527864957 405437771 895304899 824373721 581857977 414467667 29932131 296501667 493828731 140003593 453447107 948834457 73472713 182485583 493109297 522796933 776529269 759510287 345558077 975148979 358628887 859754813 949999815 504496123 157887759 353372881 255738867 683056569 779290757 964233935 821579819 769850839 95595369 34298945 460362533 100217789 213039219 807077689 308269275 534622311 804756771 450898385 855774869 814482257 891069635 465591595 489535963 934431107 760403299 612937329 46136709 875343497 85188827 193850327 690209967 872583545 867082185 911520661 816612793 891964915 299799705 813995249 120182101 834604827 142124665 291802927 118630771 448191651 954840159 66280103 813638225 74935741 685469201 978144177 567053683 897186859 97672467 400978863 456988325 766607665 937523637 956344333 733883131 799825053 697498131 343516987 4411345 936330695 801772297 910584243 535697357 335828619 243877697 233852665 522907611 608878161 847857709 682014359 491734573 238328583 467689217 89755423 985559873 260712995 4024259 688958763 552091357 999588259 440925237 899888733 579649801 609611535 366493421 320024671 886981915 982387313 45731391 942164453 464351409 979160933 348763469 804773801 801707693 892231173 648745215 483252075 190047805 290761207 59076357 761616119 487970261 363262317 789143769 900039967 888724015 298934809 608049337 185779389 182342483 917218877 302844077 767838643 361891209 201253277 839711623 272834539 286411881 298714247 122067935 630410841 942637005 71401683 736052501 342311927 927258331 337378527 818651217 797786309 420050685 253066383 15083907 802521295 123802857 390462547 833649763 902896423 447012763 397262881 353631091 710671591 419403605 733703798 700154617 696779313 283656871 351853917 264335879 98361649 578627427 621079389 441102709 550942999 337895335 327141011 890267361 108294429 731879637 91147673 661467063 449136007 762905753 971944597 282332197 44419743 690926057 605129273 726257187 953414071 259658753 453556409 801580657 4245545 711072613 112061137 219239323 790834263 697210081 517641931 199900906 18852013 456175243 123068789 538099583 163951259 655422651 929113379 367647539 93426589 443483419 144129715 723668915 598027827 683948945 162484365 894644075 525208809 967624023 911143839 991730327 226289489 883470309 821054561 506646069 755394309 906371073 789085133 138217231 717237927 111617721 284659307 346847925 270280931 789221981 953967435 909210749 70714729 950491021 294290691 25589385 754515955 823112237 662860463 814367425 366225735 228018279 704315639 754645463 304301099 884500399 585640199 969603647 798671475 979489221 778859929 652287293 868150265 973227 170032617 169971673 543611807 879500459 323872445 54904289 14743121 6241117 155392355 789015279 311404031 327656603 28240051 499259235 47500963 985064587 937064459 513620325 534608195 260255639 549137999 683609573 484087525 656274293 776803055 972278685 883192733 15557153 987358945 470668811 138606981 971775199 939610533 674608247 457748927 562857787 715409981 772449011 597518199 358095369 783133755 752088407 536354525 426686567 691812533 183788099 434604077 492405431 332573511 415635485 788116135 852751781 608047897 433911833 540811671 707831592 81582551 840785197 620810063 812763003 370008763 658401563 746833961 723281441 318012289 944215401 676305289 238991591 260399471 994196585 209063637 645524195 163325525 109713459 135163011 32002925 85113223 603318181 869158669 976133935 490742499 795864427 863059443 623876881 57081811 410149105 58597059 747894087 482796609 331836275 711851019 448079441 105352613 564214001 280599143 609749999 411582973 113710897 273038201 914532913 936872657 220931267 572346605 743548519 127878189 901315587 797825395 214821425 753867689 141913101 661169607 652809843 162988897 414013899 43349417 265630807 613520637 839488239 238065381 651656275 206130859 34565871 271231567 401908003 949885471 86174731 676512957 975413449 139243419 455878221 407184915 604181909 974493411 867139715 173683261 802288409 198346823 492131143 162352683 56187185 464424347 810619385 493153497 641222403 195962687 723759553 936903751 724192763 33352471 52593809 153133699 725486795 507497877 308354589 456490139 48524913 572970155 349882089 366380459 604321585 33272025 571498301 104386517 184038807 497244711 370488359 999159621 538158967 708659489 234141825 718809387 648408303 809536991 571323883 306787523 100077409 599294717 603454925 310529103 544389755 647899299 606662231 367199255 20718895 89845631 206479745 335943023 294144699 407260103 525233677 958023089 359978405 595995193 476165249 892119361 988863157 977208603 729441839 218950791 763412995 5286203 172197935 805504757 727713255 602026739 492792415 236521991 248192523 219229979 894570091 458385981 302418007 738650143 682953921 179660835 568225793 611231465 237084569 845443405 729603202 22779379 493452789 319253329 996161189 318714935 569610395 352548051 506623855 120387135 273202971 212064895 542656825 714572567 358151889 731176967 895604893 732736343 634335705 656784673 337378177 537015835 606618143 306231445 809606159 606582795 622905423 815200553 141440445 860271189 906001637 27438257 665548871 638695343 24834337 790504201 537122481 479478103 472120839 746793743 185753671 539515411 187280749 999377841 507259805 785015091 535005927 893813985 510952849 302982539 481133271 587148949 966093891 593819771 442656103 948590037 205599269 387188455 723676547 27030951 649711847 796908097 406306791 335415329 546335367 338617723 176411153 718920537 648217675 413288471 853158217 477408885 679582651 438037785 397909411 809222811 553602989 295440399 909312755 352067075 512445247 922701841 249127899 668122851 681427667 744815803 333823683 45570173 202173207 186070837 103874779 77068831 365617151 74662701 112940827 474945047 296749509 49676249 408209733 290161857 63421423 219497719 279827681 724695937 743970891 424513487 923772477 840924607 579604459 194781739 19092339 443628013 250078251 583467879 179644257 186377863 860711343 439497051 217015987 347984655 463854437 938272627 211666647 351232781 93259649 171779995 72193285 729215767 972125311 479421767 42406719 92619715 549789729 140471417 554090827 777514679 290709623 807615669 29781947 620393883 419189459 772495369 193808615 396693792 248593617 95567885 824082413 601308677 146568535 102291677 547446713 134218249 366353809 771945505 798068729 216100085 108145137 86435847 894339109 325858205 159298869 774329413 119262332 970308829 124093793 478087961 591360779 690689173 314392769 388561483 503487135 622956207 241052905 147052583 493701583 428937245 377618359 61323395 930596351 729042907 68207693 574225343 516512339 847165419 784239127 666719169 155698877 817086037 176624077 285889780 425116919 637725743 433915495 896891221 964730751 496706191 195025963 505986907 368737951 723381659 469475239 26358545 833842023 529530235 982685867 448033029 637956269 818126177 14891863 973516619 375961619 280163977 523784461 143280257 946069249 68580149 828280699 350066383 703090087 334003117 722064277 321238243 618164735 625034055 161174167 305207541 588126407 484741465 551762691 55568319 440854153 769315913 414122409 160874889 79674003 718676607 129964697 122622243 913908735 671481711 508091957 936539361 423155373 502875281 183548955 494651811 884462661 347933287 756640829 253032911 911905079 518030719 848192969 795881043 775344571 729742695 6474305 608477605 278973139 15657405 365465191 734639809 361438533 405286689 886824775 688734769 770053283 654443581 710098741 908596995 89264709 957133507 377225935 316477387 683350091 262455919 462726645 864624551 941882523 905627651 409720537 528344895 672217065 650800713 83153643 122754499 80528043 955831057 912129513 626530277 795562531 845333561 198930647 525466341 67494231 387660449 762811651 4907914 659169817 766505779 350504701 869688099 636742143 432259041 474845093 961815683 155347821 441290919 93371677 526536459 46060679 902934151 671232467 934723489 978364993 147644555 722535289 932102067 818832720 553684675 330503695 536720437 651153719 864300365 567901397 535225001 142083389 934980937 768802137 609245203 330229107 237799393 804449393 391428611 316677551 995113289 951327031 952938893 294253203 90629561 449186321 527677007 36174471 364239989 274836393 645884275 756752061 418150085 765348851 816657059 350599209 71132415 999767343 792754455 510752401 934329209 537638111 532564621 195491191 543269785 449040589 228521037 827699505 398393031 237107729 664858659 814746579 711696759 573871111 483299173 671855679 671834657 644931407 215302645 841547037 757634121 562573019 495828275 600789981 79544185 66024155 811715859 481257911 76996673 856459213 190246153 301341357 867853119 158586741 556467987 430509703 677459475 191584223 162646711 802940883 708055143 602349663 669435909 132650731 461246191 431458450 529350801 278511343 743848547 721427805 439952505 73425605 956319367 113755625 555519847 766516257 197188901 649438383 349428613 215385723 384199949 703676007 848807051 85002255 925019421 281097495 764348089 975400171 77212469 44595467 95176145 595681243 102810431 469643737 122807333 154422647 310590511 352376155 821208971 999756067 388211453 917036213 545756255 334461955 79520173 583856981 629462153 79607819 948080713 13543407 538802295 755671281 559069153 701518205 334841887 120944439 131760531 269489735 582643199 943595299 989199743 689289941 92718621 349519301 869053391 99232511 868997895 450190841 907469751 492572895 832271575 378229083 505775727 532971483 433044517 789402455 535235131 981462429 852576029 510657049 130706789 64454939 259809385 997536669 27837759 133808529 82943041 238183073 180886817 701053825 442208613 981794735 753092465 300530619 334104089 294358549 595102361 220834385 859195691 770182383 789500935 501898656 720639217 442224665 810570555 450928973 485391949 265460541 309486771 236909377 55995297 273217739 489006843 771018419 303572957 427799293 887561635 13016863 642202997 937619153 14379593 25001801 119056747 138635025 11864973 627342399 226400325 199672651 730763801 105806417 971094285 768921817 64932769 339643935 887583327 608320987 457903071 701037963 105557843 963712057 809003923 910394051 25295509 266526371 732598151 696745273 478525775 599092625 617618833 543592619 435371579 844283461 597954441 153902623 260640915 759585733 139005521 303622877 299771681 190521827 886574291 819176317 18916657 270275639 401037059 434754265 981343643 106778913 296770779 581473045 921814459 768575689 162521947 781699231 665331833 896037407 889976205 914701099 165798723 639550939 663441799 236371125 984080143 600308605 114377057 734542975 757608795 520425551 649776701 649371673 540754735 437039713 491893575 971230805 843004949 39852939 537044653 438991951 812322089 5913195 348219567 772040301 462818307 349072749 290648715 357343577 178014671 974411711 349827981 242968329 539858999 927300185 749114887 135684537 399526005 296972027 145079377 836116717 998951493 918098223 557010899 660826737 395570923 802630979 97159153 597758809 178251835 122352467 800093985 569145091 189061509 658579515 660628443 455914001 275334829 737667749 108636067 158697839 487469845 903028227 382051331 465045845 282679469 357896075 339364237 400185915 738476779 866337085 235264219 201772007 822528461 956500705 152384911 842707045 175704793 264098059 98256725 652204811 457141790 311464463 569965277 297811827 564079413 664168207 733840609 44245633 527694389 143205107 86764325 830231907 28837067 92378987 121828723 627689101 22522659 440930801 382421661 620338361 123053297 415654595 113798013 428206573 782266999 137782761 503807989 475859575 431230841 847274549 83076593 436682729 905366085 28950591 414202465 426249247 276899507 676954983 35798079 807382077 599072543 159735509 31885199 628588467 861893491 514482297 839362139 351687985 940543513 237858827 930795445 240458163 965066505 196000781 781972663 286855553 197215937 154160325 755215747 33411365 414518599 538557765 654412869 45040243 614224171 234737253 832132653 777282951 612963459 107772355 848788597 47816647 151138281 797598411 949417827 910769375 641846665 202843563 972148541 818170305 778419727 576095323 768417111 657170859 37598639 769747357 169339147 483145505 140347179 34096119 942758075 694563055 815423175 402536633 152208593 501298985 109568851 354197247 623196865 394685485 684798753 561458853 14151173 641916317 369646357 2897751 103289629 311672679 680505745 513182081 439016597 330664125 995725189 569864031 26625023 818310943 540559207 427541487 564482805 375697229 176072759 2819067 187913753 652287061 664294519 379932435 672625175 984573069 61456697 609471629 466163359 709416079 280935185 600020619 158462317 686202943 793838881 300494581 558245185 443161547 278050825 147049085 738679527 640051367 526275837 481469847 423221297 163484303 580206257 565771143 891804921 669302405 550003809 146136917 612207137 109489113 5677783 76501711 308806805 356486429 763602273 387830159 231106117 726061357 639506131 187880437 827218733 403956783 707780747 61311017 389530189 491942541 275609971 629813019 874794673 458428413 495311605 963748741 779926635 763813499 204576265 364754661 328192405 592393547 195827757 743398531 279038289 541517305 375306857 802336369 637254859 397254489 163603017 860428935 108501555 141760647 413769443 756650853 645633477 974379497 483493337 115196785 687718081 317536811 914585675 563235807 124016755 122709823 278341101 642055079 27341101 909674339 304233971 143343237 204997963 398101019 715072027 510077957 368721963 216868149 659699115 640051831 850138427 842582977 242977393 361833971 347222763 811044638 457759173 841415511 346877365 280416753 579062149 979956559 605362463 362582309 912001813 746732361 923668143 368811247 726917735 995735165 57149177 492687817 46604525 880104171 22724759 715566971 55256231 950937693 952498989 497972237 713854237 523251041 631533153 198521047 745778266 150371411 539404521 424569203 950587383 323246159 5177727 84721861 440691731 453128255 691436005 677615101 326742609 758671829 396658147 75706249 805368543 739157127 845459533 923068971 88259958 418180245 410246141 988624869 477605461 974401545 565590229 921708803 573674815 734978993 651595457 130298649 177804421 646058535 935434417 405107715 903697915 905815755 505138593 398426343 793387009 451145925 331210643 552973615 347463803 836277767 729671823 438511505 119956441 363647045 112203177 21100297 578097683 323348483 673072635 446286811 776048035 772387721 961007017 531204755 71539859 477592549 970358489 196726535 340281711 589856241 136757955 44552015 374659149 619125069 563069595 769808083 44339151 580917089 899589289 633958207 897622039 58027101 710139699 493510535 173895123 591708729 876288191 885391589 398865725 350976439 643230483 792707551 216577297 557311325 44468771 284186947 87002007 838519933 381275947 458066721 542969753 593136687 404844443 932599769 142236529 385606737 236357359 599722253 118352381 939821711 958739367 1964715 403185059 594451799 162553425 851047399 876310351 122929889 332849787 482741821 602382201 324281903 132899777 429843567 683946785 250885127 555910855 877074317 755308235 72694777 869244981 111016425 660612997 8612705 212399549 491770399 564346853 194239579 856190747 981040149 725662477 426079955 542204686 950993909 59010975 118608757 666542695 781246261 297698507 523606205 781894897 537487249 569720135 170135531 667688585 683124749 170915409 540809219 265611795 473017331 338157743 777423579 89717367 785929181 768163249 435503623 481803175 325639329 548717099 74592745 495993759 666392167 826462077 109372075 655037791 586417051 874956427 27642681 820234229 745060335 129798855 440839759 754768239 132526433 116814627 869623147 891182057 275397941 758011169 761491413 436668039 914967287 949854659 204945825 667054193 64307069 871518365 183411875 336392153 415203807 773589695 623765885 473884411 863304839 297621453 251995799 597075735 793404957 672895721 444428577 713069435 921070229 670010307 360495637 740658293 896029229 413288337 600527663 895063651 974714475 639371281 828107261 479388323 194280727 269285001 176979147 368125603 482560841 878382281 438838707 769164501 336336987 568890405 779475861 132644271 126628595 818442365 317622551 110246585 824530427 872506679 26943917 757122425 637116841 899549759 473612431 959813253 673877111 550576399 69605305 755331699 397885997 53416865 17904375 973576937 923223765 766513023 616312537 835719055 960898499 127158967 854703031 15010071 756877971 133033691 395198639 159295549 100335147 876028943 313916589 63708867 629173685 149639669 972923743 337661553 406581159 241572541 593139773 485993501 267142845 919906333 965716871 463518365 655259387 689519699 806620999 395230679 304020141 24893735 873542221 482853811 389220201 56200931 959991087 27495203 164454663 289335651 26193745 547952419 900463791 552512769 171305431 82638773 761699277 790949795 236285619 347106529 210274067 267541947 101689247 428288957 382928769 58820925 971529497 280911711 986453847 939251365 636852587 826398189 733023011 965543933 827511205 649192335 251826363 215071187 359410845 922508663 300309049 989367865 62680053 308375265 799679233 329466323 124762901 350861327 828353217 742130371 681527853 114875211 280544365 963943865 675465015 166276069 743635263 40321259 136194801 100928315 126737855 460943641 825885669 233534891 946619573 522280581 611834721 772865443 736969785 740984833 720925823 485172373 341487269 569813985 735780639 108247545 216102815 725384965 892509417 900987475 928134929 512428499 114260045 431859243 566937649 751080249 134373251 898486039 845879419 350402987 87120781 3405485 358856883 282081835 204171569 396395411 816435171 305396029 315550209 457392753 809905765 323643887 518029653 602324219 273174735 37677785 792431437 551463657 169799433 489964825 129210319 618002685 326878015 484088147 91813263 869248005 28011235 137873591 536854275 529873873 560282035 315475965 553280365 255110201 463319731 444318303 162090963 146337315 927278895 993947813 969965063 452475511 841850811 719955487 285752735 130405161 48910645 203622819 830051071 52727345 573220287 192495757 284101707 517353619 901134791 95263685 683523191 893382487 556147457 1870007 667241017 608376467 792744807 949774429 777053457 576595549 707848767 555095091 540599369 86105563 640820503 42948415 178778609 133107765 804775105 586311951 471390687 367105951 974973529 560127675 489968821 703648849 45302851 474266081 752577243 658158479 911673133 290168229 584726403 915219105 322708235 734562233 981735331 483516381 549767705 215845199 956195067 292452763 647035865 812596775 264913682 457234749 491541531 175071113 185382975 460168237 759655921 467526465 804102803 130136797 900721847 505203877 85555441 527282633 931666195 289267605 35925505 784044659 434423279 183467895 154554163 434422373 118939009 459015225 816481217 74253873 663878213 928310097 326952359 226378863 704739839 57816765 366825139 820669637 843359419 546106883 582550897 276649691 450172367 608024881 834103867 308439909 411947219 968379359 894179889 415639835 720695983 604942379 102912059 334887873 847426191 738501049 338896391 948123425 124126437 187239611 912312595 204447245 137346671 975190243 516541849 241293149 151486259 290028657 40501671 22696183 416358777 67964205 770488329 510497475 442383575 568992611 530333527 320898485 690715435 664542443 302972149 962997445 913996697 512107553 699259911 777000439 650757515 461798637 600628865 587305813 344143797 767569853 454120473 553586673 546153751 892943493 604290897 727352035 167458289 228334023 840770159 597164113 199487187 683467145 765051011 142113893 818726799 770206293 702156393 758814797 481536065 552993861 823269309 944256329 849529421 278527991 28918763 215968149 752518497 110542225 622656799 643850113 691145329 81201599 165334357 731044957 97157305 417401017 34810699 410538371 859947709 216110911 300501899 411730773 960448841 829173139 897156453 454511165 484627057 308138121 525616111 241746863 548050577 326624881 717859083 427535651 763983695 96977453 103596641 645498141 309848215 100535843 955493473 536532007 572742043 140200257 975500613 985451987 628019673 18753533 101253643 667719609 765649941 623780693 899936637 527463551 806461787 473062353 11752233 611838671 316862463 587278459 806354537 302233175 290626719 814617069 841581917 922918615 166685981 518750533 324613101 61586701 943499175 671043881 312363721 360042437 608945073 603725509 647458921 161453775 837331189 500689617 25417743 560295433 69072505 783382669 124259521 147582547 415753611 363109565 915056209 230110361 187525307 988497071 655608919 871615177 823107305 100718907 460494131 874986211 60752441 982690749 451604237 791820261 231161621 571160861 236983509 538561755 454550323 776623817 203561283 88512471 674401933 667936695 582596567 246897393 494694507 960187237 771575261 687058255 258781271 246968025 953464159 104587803 541766435 770613155 450632251 493486980 518989297 434539735 53306125 901941191 406488351 66707989 924940865 997633061 781333855 458745475 747238661 87344105 204545185 225069005 411255889 346633061 206634275 134507309 852071397 14911219 835137129 948620381 768238411 708416501 426573887 380863655 123027153 982352341 844759481 836398039 684534419 521194759 261129267 472456005 649064813 78146565 543498323 909240015 914886665 334107727 903503109 874226137 14127577 93334897 94750843 976112211 613346323 445168123 773093173 251562419 350555319 746516107 763757299 733227511 333109645 765039811 974582210 87928996 728812329 447581769 336301817 996896205 615165919 380375507 575731763 365761795 529175761 690881561 435052629 490008679 631965927 173834975 316252295 258708383 335052241 808936431 71147843 420758231 920114441 199567387 19697475 74438601 684156621 160202301 231150729 404285105 28220197 546080311 711857509 149605717 209957091 715210741 369324903 947423235 102908575 515171943 731424367 894008467 705790905 116714631 489099681 680579937 139012953 304990811 335960167 640344661 441859439 33209319 127767415 446350813 250462131 940308547 611711437 550833647 80725159 163218567 759226285 79086859 852500113 467589335 951953825 242236211 152743043 366464345 784555905 570163449 553020245 642971459 184782697 942132337 22732965 86853583 721291963 375376955 600049631 475770685 964847395 940764797 5939505 92046297 275806615 969634789 414693011 577222901 761229139 979239591 522409159 496242667 678928091 87802757 876352083 249471261 853764859 307377859 905654919 830981879 698257353 546095 801627263 930466537 539587485 304182049 73187351 430963821 597086753 452749175 61321467 233171975 418326843 391198357 576253335 214235713 583271461 365614955 904369703 881616045 729670743 5208687 557286825 886645989 361932439 745022111 331479783 715721101 422823411 400585347 170338673 545353547 787397819 1258279 447046301 695848405 200570255 190572321 133695117 645904613 326439507 917148561 831842601 875368251 984978737 81151773 602063139 978053027 783115679 685181683 877454063 178804719 213674327 792350663 513263569 928498169 428243809 214150875 967063761 572335781 541488901 350047987 329224637 951988953 618237147 67785055 157892655 947618443 294393789 430713587 949290119 959234485 463657937 97307405 903455469 932878679 593064833 270864023 82636369 288422013 512953987 321965819 575488365 591073593 768026323 665772849 578176447 760376229 211100597 830612663 520416399 817687269 372917 36525717 93725167 628415007 459054247 909988951 983313847 357029257 763589289 401494291 766908039 724990813 273510685 570268777 152744645 40489179 880498863 523005823 109383077 453492049 782495575 967867395 929683487 949245197 562454861 704305963 615676399 975495275 791614487 955082933 702256289 57028813 967830913 662121959 373590661 469026207 40773281 12904591 810841011 962940241 524645583 208822277 653218569 310338655 190376117 439130151 229288755 296679497 72010043 104626265 936788383 661355675 524794005 754128011 809394053 55837671 782584643 304378421 772889829 295617735 82849541 246713681 46415241 307870431 102728171 429121897 825691135 751117783 80481093 184595593 117701283 268662881 75678387 937568839 405404817 50271543 353057049 938273987 18783925 727604255 678212001 877492643 784872123 708937951 752144065 203846933 856277535 157330507 759406389 971424975 727454495 683028797 157922559 309034255 266901445 832117145 583740015 290246043 601629919 406126919 809731863 795487427 157534471 616316729 403235029 972928091 69952925 764246121 816895689 739462849 29964745 454600413 693340773 121265631 746202493 715822747 418868313 803319839 933726829 177196215 169274275 444456825 895391517 16570955 501900935 608575597 326639573 639832955 621020049 984214271 788071331 858482287 228704405 261721533 161822049 50465881 67193777 8114365 675687599 680756853 86463047 187055775 169264373 469704963 683300868 103264649 172265059 343660623 376256477 916278313 981230321 388236205 841913613 706503349 318052193 71951987 70542875 123783659 994604089 604914949 855514575 309656593 912107723 216392143 474838593 229373943 137626671 354712129 792132043 907454449 998708291 872630231 587996177 855387871 458235058 533802259 995453697 522591013 480173037 710952573 514637263 702916533 383351337 53552553 932066805 51055361 820900969 826878003 700976187 354021899 465330035 625069241 772102057 891317077 614795991 747942889 928136855 908953587 508325361 815915379 130109855 504977013 446055133 475060499 522662055 232328701 725980551 69633417 893978073 938300723 187097755 881818019 549611691 865424703 153700501 32606511 585908441 970764509 717580469 821300745 891153255 605733705 24500223 790824725 788258209 759476043 564464713 245731131 977815579 501867565 10765095 710016109 800753587 86678219 564573435 768077991 539064971 409216637 416954863 591751401 252913935 874877487 969150702 561745473 784185589 828225355 315078327 649373885 825255483 133508299 571566789 765049467 112888353 535027241 859488355 423766681 637069365 879045231 159489439 79959109 669339467 863644457 116962899 36129711 845445249 647378287 999894815 115299603 515095097 982563039 184865899 809525683 978071329 939756189 423791975 455580375 823587629 181007961 243115789 338454741 552632471 873074505 860183321 356345347 177347301 651096363 584240921 35555271 494174181 358975813 914042713 142725511 399657641 868909415 330163699 32495035 158438541 915607269 847408071 556765913 191271989 492702111 370861947 105299043 822703759 548856571 828875395 52766695 828807631 819801317 195272727 565681139 773244529 503876311 563299379 568858917 560135223 959108811 942253731 206490907 714490161 941302347 399752695 115366787 704055985 435583843 198600327 240181007 509380693 869896619 622403441 716678261 24895741 38059329 765254049 929965949 798254043 704569289 898144453 945283567 951242079 890451827 325753429 361522331 23045703 721258485 180169873 431060573 156650647 355173261 508310403 294135577 16394907 880938497 880075771 879165623 973368807 741004705 69818511 869292073 823144025 401801283 386872483 57585771 298845971 273609793 986286427 390470527 309714817 931284871 6695081 874983791 335835227 710662785 73799751 912080203 491295897 928262947 297932981 993590833 226346625 68270063 471911991 323928639 67822241 262651625 933155299 722089379 279107785 805045407 503339149 823510927 786257177 373924137 234271703 537725243 278231795 952844069 503068457 83801833 997528069 701441207 396588211 679741671 14879043 471225999 608873071 334741123 915934185 983622883 637688603 838363419 971228281 915400305 871710529 353132815 674343363 241834881 868048431 100549833 701696473 156351711 128649983 975925691 353920279 253699297 156000145 783867745 690979617 58781287 463574413 655253053 502044135 653701079 455652195 79581913 442074777 819410973 70091595 446027973 86075059 968719795 413000775 154389407 965494525 712503189 385851165 277096965 610522241 313280073 753750367 978696357 964566931 975271133 594462821 601512753 266945233 739375593 71795791 990905185 161993757 264594571 447328003 713757177 565743523 459191143 99951925 626727361 348056281 240509357 418465115 540264591 510198139 117572115 775765687 189640761 96786573 209917913 107251279 729797029 50243421 370842561 547985397 716705211 592800891 10486045 627662655 716228719 409027783 373598915 39113873 433347001 42319459 44423183 793845775 838488221 596738493 176134119 432530605 437500963 51167879 380014525 978831137 624732769 17173185 161676421 364859115 605272431 725582251 395734461 185086805 339328109 589987027 64817771 106030191 950918283 187137295 52442653 223924239 248283637 3113337 222735339 886395607 634266857 527866999 725170547 205578543 404705961 313615027 458988505 488629833 34806911 74991649 96441037 492159771 329116859 933931265 701074823 952961893 727415739 904842453 179083713 989048495 732999391 915378025 173142725 809061197 212772241 474159567 128382047 584918867 775247941 690271081 966796261 377257379 598401395 665431255 355957047 235135717 141127839 655735045 583468475 531680393 519336785 318420009 702163807 996139977 213850655 596111551 509144985 94623393 921601441 953370763 212007525 241346783 166740345 135997849 587871055 432272655 138549585 447748413 986932319 569253259 537432027 73747733 830045999 25753971 430326229 220131331 431193053 900277167 294423803 440128819 824389645 709031407 42036509 413747997 28287983 198058923 103803147 306699385 943718715 631494435 293782431 441363789 805957675 980897891 704039609 53918693 48238217 854564407 699330633 860347863 32817313 180447031 485642555 279322365 102080587 121637063 67111055 237035721 429532131 517938187 87172161 721026495 980245329 60505335 806606433 216433021 423241473 564496193 690086399 698704559 331437805 993590123 717956149 913513885 561746321 563661243 106560805 615119567 364245235 706739521 698180345 965515805 842462115 217941721 633212133 709355425 706571701 495642143 387901473 849163457 285659593 262869119 562667249 297007399 2336771 940031013 308759455 722995657 667901717 176571149 415399291 278946787 478288689 402023925 543212515 868534263 26609945 689203047 538863927 489557205 331718415 909122739 403253217 417130127 777240037 574045935 142919509 872503683 793760753 362752509 515420427 360204115 641809935 809740677 893132166 339891691 848961703 627070967 171789651 291419265 925986471 867838861 311169537 333354129 254915717 490844997 402323243 650080481 164491583 90384361 711192947 704576633 806149979 731948807 103106947 963737519 648821225 164229625 921265935 508670753 57918333 7920351 203947983 888526513 137560887 221395873 783447687 734070925 683390907 897110255 755844609 897700903 578727483 99738433 357114895 482798911 298188137 419394009 981167243 474477269 241175687 580125629 425416279 52025399 615632473 842462399 538849885 667446779 174525997 146979447 402896529 817624315 700739801 322044741 374031595 561291611 41290175 731660625 810378351 532443017 490948033 602957707 521051175 427666233 513024079 608970411 476278821 755327591 824584287 455863857 14101635 904662101 408162159 79744873 996212323 691538067 987525253 515049565 102728943 296666099 980436273 442789611 968020059 604147601 719565959 785053615 710461151 200200659 132029479 63862037 805213119 606392163 173319479 677275723 657876037 83263543 388157795 944294985 753886403 352879243 121763299 307801295 885568403 396431331 814984823 995334503 766883863 90345483 799151715 946810463 917451195 146981399 538229621 941966803 143808237 357800805 438737669 921428639 83387437 651101847 38347503 313942381 204154617 404222619 527497883 351130543 701535965 294439331 534081527 33456283 555896939 982950445 493616761 555924529 765283389 332192253 591987745 290401337 201818613 324947743 385292401 540880711 705159485 983777001 388211067 656970159 802782409 837376757 59026131 105543315 499123027 849374759 602571929 136422619 180562587 248312749 581451379 997741111 21653101 113381883 427242125 288826913 43446171 637364171 210107553 466992855 728362239 597335333 887328489 237044833 21476987 570806865 229073711 841177489 418412025 561502439 754685377 296867071 136141933 129574080 748796017 656211467 901200081 399934213 137444771 90921437 195413285 575029533 520614713 730968677 365249909 829923263 808789923 835682139 944598227 142967781 414044887 852752705 91466841 284373975 745200467 320778333 564212777 844211231 739334943 462007745 257126509 886867601 969946311 482050629 278166617 324718409 564337249 320563593 819559719 382292397 530909325 66114803 928585495 160467305 344132977 109247671 177698421 404059503 111312313 237905099 176354451 47968509 569592223 397426673 313898187 759835287 984055263 533440175 293049727 241571081 330494143 317162581 451077403 48758887 581054733 168952319 273519887 936411919 990257441 81159561 773594837 440044195 224367575 167100575 620211955 611646737 202656153 763314093 766663151 259096459 496590161 815751919 559165789 585709457 468458359 384992099 22206167 7423459 317071625 583526355 675134207 222128527 682283151 869212623 614602881 92457195 760890133 152195245 679675661 283793553 728146225 168309391 710456925 68297317 296378883 58904925 843184436 663668885 283541041 941355465 370878559 699106965 31046889 239889479 846881711 530879009 221025503 946216987 411726075 654859323 587103573 464486989 580945191 167827507 687945999 765655211 812637981 307821211 137418075 782767823 283824339 564387919 359597329 467396377 277318717 381695861 170669967 524234673 721875553 396416119 248061881 826089863 395507275 817793803 546648319 972677461 530753545 271740717 309854809 976970905 292276663 407421985 599713601 850953371 253237879 13711731 692885697 331343725 452903797 672351735 114363493 176716007 67163361 496687817 353905987 860810153 280769269 219855951 859501819 564737049 246376695 165942581 288681651 169406827 991286317 767091053 343021593 250295959 803106027 456347445 2042977 83649369 476758923 634596883 396397389 98188093 703241071 408892366 864978465 431818387 431506435 851939199 928549037 244853619 499687351 749728897 341226565 246292667 749081351 738532727 812384969 713492759 350514547 210152271 803371421 210544117 857844359 88142909 600012977 862677645 326076631 726121147 102003579 282451679 420688633 994649745 247285243 349989045 503631505 198090183 822197683 797916831 387877195 604764085 41983668 443187443 465314775 468180469 560461463 498931923 259939057 324023659 889198965 312245033 366794329 337942855 405567223 119696289 484197851 916640247 399493963 268190135 428495945 42379837 964921383 725772201 598744703 309597723 797837257 895752577 923521627 262028765 604913143 979483149 736779723 87555863 671089327 389549543 227953087 22494629 540358841 956812911 125334835 93957293 769603459 324336333 373776423 528858521 217662787 886952691 443474087 395139871 868558949 162685589 715846087 886335035 859669217 90828855 113288349 680301873 427308343 409157665 589766477 267449487 139596137 537423713 805758466 732823589 465634825 155755217 514519023 821432849 549526829 417388049 947368013 200673723 655910257 25015433 450949469 218193609 859878141 734892649 160964461 240264757 830429823 762889129 572652491 160490295 270585389 584452363 503839699 553357909 286989509 206700309 574637033 299284061 152991885 959139609 667962995 635567967 568142421 33978415 92026601 853107131 289581681 219975221 694687935 985212691 270303681 239502551 917653117 899658069 424065193 609508483 40141481 212262837 976892443 737312113 466930903 755289519 631292041 813195427 332734115 422223365 919882483 834065631 224058539 400674247 708127201 410390965 326023581 778199879 105449567 218774145 830406441 380014881 489767173 811861855 605980427 687746875 140734703 797075003 354742277 329140671 824440005 760619457 560324319 762660387 822587317 178103917 270584685 571370531 947047029 348817791 205481355 778391235 277852739 515694587 197969431 363038031 945526247 321117111 437308927 479629915 106819755 884103239 110887731 827768003 413321065 54086671 167882159 221630637 457436031 388305715 256587893 867052165 989534163 442790053 972429453 635488253 762966993 322857247 413221387 458002195 737670259 747251231 317257995 330149131 960477491 471795951 917733035 339279217 279680795 56847773 418235929 958837019 594086839 844266499 236505479 818777891 353565727 673951937 849761067 946210797 877335535 348761151 972288077 362401319 12856911 378252205 637995571 794220483 31599341 418006021 624665907 541736705 279956223 443696899 783915939 692543329 254174275 706563125 834567401 441046705 590382593 653379047 659158637 532673543 691095045 250990131 571122337 54071997 737121701 412024313 738729985 557479801 221790401 845852127 165749263 805787429 135738557 566277465 542939731 701538807 267606411 396328863 335810913 798195817 152585373 913182893 375256533 490420803 349073397 337236559 990548813 903602063 661440279 270926101 967328119 352390561 74265105 36214103 22238469 164984341 690526331 325791283 396169391 915113425 591649905 452536469 878639671 123985407 268006813 194441259 417549163 797929237 741440553 743359597 113843993 268018639 825337293 594013083 438098975 404231729 758973127 839700415 864925787 362504327 419326173 206309801 991776699 119962215 650880607 955978223 397271857 496443305 96132897 735704565 932932533 769205109 592546691 825575647 459550025 650056503 250115435 101194401 451194875 221638049 405578567 775988463 752448729 451791283 174763275 669272655 761221889 233907629 600589625 629716739 144230547 518033949 950664661 906917921 198972857 163261145 750219117 335709309 635970981 586873339 556744217 677692345 845667219 939242215 522262133 497383229 748689349 981198155 703432875 624749881 221291139 974844443 886201701 36429735 576251683 803505297 536804571 370216261 965736699 136583477 158117323 706537117 410699377 373600975 895759997 806922493 986168813 25853303 572880315 74943359 750604513 92188039 610292705 981757443 471072971 430704805 145901001 746201137 763911719 436804283 114627035 555285625 77509509 536937215 296781059 711528211 430720115 404772589 117910971 137712897 580024463 968873801 146528511 476383497 891295865 717287199 421782869 5603517 225901787 958264003 559661003 458890101 464539495 167163089 246131961 482242897 323553753 883402031 401776123 366859831 197836019 166712329 794407803 227852507 271695743 428702417 859743395 987562931 657883981 811996997 829513259 25050113 193000507 255234665 956446545 205027531 294987049 662753161 158031069 926709731 478757633 410131259 502233115 166167775 303061429 266799703 719927265 407079459 518461761 368383749 718315919 708773331 294904999 51229617 480431115 9397475 561116913 915090959 707118787 927820809 56107567 487455257 650052781 580093637 226552447 619730711 204881221 580061793 694321409 510719633 249569175 957618413 282687711 481420639 582406443 699541055 833937483 590075035 340194587 19204857 139876227 197253289 948019973 260804995 55044035 976311863 597653005 874039567 529410651 982484281 265984995 599329427 545162139 726921707 568795069 108273615 247585755 203626447 511909723 526230091 632065153 47627957 939663359 516636251 790900981 872845743 111905147 834734611 864915883 749638169 990617381 404713557 694860571 408429721 695529689 318361033 302639817 684500505 283349503 680985055 980724287 706711761 867195525 580416465 224526348 300744503 96715231 473403803 334296273 468942101 331584527 244041483 700281387 948854389 617395865 132350637 621876677 999320237 352597389 628167899 208833619 537022293 79617151 844028597 210106509 223634773 572158351 85888291 100194359 791553497 132851297 368976853 27455257 164038995 811136805 834383427 842639369 343193729 171147667 611952303 6501855 46311273 945872869 308636447 8830077 397944915 208180197 461841509 439129549 29869269 954660319 168267543 836814019 150374605 890600873 50167961 665990231 389549919 503760803 14355473 887831693 127013877 928090035 982925165 946908013 888676163 65947207 990768745 221852173 681113673 559104853 133790597 230051205 766607687 119595355 107303175 76871159 349124301 440408671 410083839 559863181 219227309 78421233 493711177 875695995 871064835 943722277 790313601 525257465 580963635 143157147 797071635 946040907 568846061 123010679 410089771 899020219 141379359 652961385 838194885 586975387 684994315 26149289 96786591 488748099 188228403 492380401 635844931 306502425 364676707 127513739 528098817 196085127 148706991 461621059 922623983 810320635 611989619 924013425 965296879 204468981 421854037 190052849 2753705 85953523 105606465 38535467 326257549 481408127 50635113 127670797 3646421 154149423 396666187 885555469 116147839 739671195 982433707 571365673 279884373 406957669 940719509 824479975 170632933 511602231 710996319 852792151 922620809 911226821 563167649 843075853 478201441 983512263 900586563 124036905 714619221 970493953 101346161 923735119 491733269 968975421 358491807 132099505 407040537 465417549 290880903 915010049 58561443 584514315 516982575 588332161 79423163 368688217 212916453 798368755 796667695 612738593 955137849 125836203 17886871 928343639 420356875 149206649 845656407 848835827 70422143 742647745 733187477 245735673 577701887 617210469 897587265 507982195 242057025 366283221 550640659 49898611 782945342 863246599 804736651 93238803 843457601 258309497 60029685 696528757 371742417 46693936 36720475 77773763 655235267 974611647 842101659 815159601 898982195 587478071 437340753 740723705 393299591 215833145 511845865 403784539 738233705 767044585 161062289 394817699 240436175 991789305 192660033 617654817 379279349 151963291 681447865 816632883 721091935 246845585 57207171 874297401 278705625 67876383 801434605 696376223 996651639 979309843 263665427 775240917 846148245 30578373 315347409 127169621 401179865 3068177 224083665 440804771 409296943 735318367 743236485 382773833 56028873 573069725 777380643 580159193 557725991 98034497 632904619 672341485 250381065 531484233 608277221 566948135 72644733 687700029 61444453 507635763 699386583 408609065 657656191 17414079 322526133 728755875 264579669 990829195 461944315 877689035 866877135 252597333 987382995 307693893 153397917 377795817 340762289 869958211 18378553 964878105 194732629 365918585 595555041 802544575 712789951 395704611 566752669 356305597 484339519 141303051 372943423 902247933 859155557 16690557 743620447 668842099 883072273 349767761 832185437 303478041 147277927 824697317 888619105 880435183 858015697 245991453 186908507 475895553 656168453 108635497 718507267 667265889 107898367 53414847 946966491 992682025 711184387 271879581 554029609 433736059 173447835 749890827 411402495 118813571 220510111 456415381 296834357 202369393 122320171 310164561 558023787 34939519 600552609 725556447 980967431 327870193 262639021 138478181 818929213 11728145 13471045 707849103 843641603 772400177 462954149 150096535 501576987 420678059 597347409 627648567 732541195 484738019 343840533 862021817 305218595 716037439 904325383 764803819 983969151 729537333 422404223 605243681 284346619 402484543 404266791 174655545 819479107 647787485 379750629 552655515 813185475 251329947 720958195 334745399 552656311 177878027 944521417 884277375 851121949 73540807 726889773 773611891 200210111 320122992 79300397 500194459 996476461 648686517 453736729 207365889 385888957 457167939 468225425 538348865 724915345 214509525 337793145 494605429 963912593 637470001 109561851 926486341 635893359 504847133 773438861 172822237 10847647 217950061 225469673 842794487 647821413 765946875 274856215 512594895 291159497 684403625 279431519 742324523 439916953 981148003 821949529 443006297 655572335 121971993 67777761 392930097 905462699 998193861 975458071 743734801 946549877 245340013 785117037 690169053 644183741 497811991 720703891 271222021 789926205 522638039 827025797 75728255 265381235 439349191 479472779 300168139 940039335 4466185 595568687 688906475 540695787 462943945 276583237 398481009 36215831 733681207 535646443 71464819 634280651 680940687 122827651 779587981 268014957 235897617 379069369 717173223 79594289 361241865 437809029 357429805 150518031 774423753 37360927 107731353 693203139 708118699 238720013 517872103 925497817 818019347 466102811 584168541 743216289 761695847 828559967 933745867 922308403 414583839 182834739 207709317 230117997 763223471 137276475 218219369 440406779 69792415 833973605 476139745 345984587 878160501 792578531 770475735 724806037 246792133 201966133 723061443 508035289 889292073 314916379 728366245 111878113 123364419 613086117 632603647 510620989 878971071 295229475 685399779 878178627 968812877 21723957 913186535 655005461 945799849 471840191 776089127 55420317 984852627 966563051 392425547 144620679 49806553 514416943 681573249 27102031 224329 32103751 605121405 176122419 671343039 920128309 407808129 73516349 266111261 97758537 980306515 781956923 122925135 740420885 873625917 585477319 572138565 525260407 952702233 169850689 972945915 136489615 259483717 78763987 367562609 631110862 260326053 602347113 972140725 864825319 166252203 715259581 101053653 565570773 193794633 754608977 89703149 10244573 888578559 955611757 370288929 215167883 552592853 371214111 194535831 98263475 193836631 957240897 463886213 11340915 649613725 709510003 871580197 972623149 98331203 684184605 854292921 3646351 343410289 573602927 55253641 605629067 70045909 153698401 548098537 975593825 902869413 317206197 737265971 342829201 154925471 280519153 125645515 682250985 893743881 246746983 900810521 61580415 574525619 399923247 223650703 952770477 261416177 158444071 242839977 494280215 74412193 321588475 212259303 83079083 6663725 311213849 886047959 196163997 524715647 834485433 991074823 211018087 877958161 781237469 531687187 888687569 603694557 106867275 137418399 501440483 385452141 799532691 919558481 505639413 168328909 280284945 286357729 801839267 223661461 22263265 392751363 911349197 903376865 100949743 932158591 117007779 168761945 609627367 529873947 285161369 197240363 859018821 157672365 714824043 885196813 506262089 253726475 30424605 970753341 726510073 643993369 368666363 628298881 290411301 63368899 278017689 592245033 918952295 866152443 519313365 67277321 877227297 981418679 761672913 266342017 208119415 497217535 901886969 102919543 121991771 132889305 587359491 634859095 799300487 80561499 983863277 48075801 100919673 524542875 635360759 361969213 324088699 927277759 326080175 436028871 811945371 545714159 181273833 154917445 412257715 321717597 9147331 282546895 481094755 515558213 466064286 180138241 190204947 416907495 570699563 38019587 994797043 483129745 143067227 4579203 21726461 24913297 240060777 706013367 539185901 305760067 541525979 457144157 542315345 198178315 670500223 560815805 152638069 941541713 143639399 809418913 570333811 552605063 659525359 805274213 621525035 778654505 317137595 917089763 921262659 295035833 112156601 801568897 717648943 993695423 528638493 158933553 175683367 888362705 37465187 300929637 159136551 435682949 642626127 425275679 503398907 260033409 259335147 965935075 189946419 857417581 540340879 350407871 887809575 721279739 724234199 670768459 957567735 910416103 355785891 488853411 756897161 174997235 326188581 629935471 644318097 192406247 661668557 262784221 78034565 554544537 612876633 77039011 790366373 827751391 104676813 295422977 13352443 653525919 834232437 940893625 774700375 419675329 845772005 594983709 861843791 942912055 865829627 453121 966593351 438916861 140091865 64867525 622583395 167673621 695971051 490729295 743985303 707113607 775247081 843129355 992608663 493126761 837572299 476905715 229983209 829900241 456995031 81963139 884143055 837747429 717753755 454555841 103915103 863219149 993979623 633182779 652171885 585306043 577060571 898096905 728543131 159981547 942379737 514317767 874805073 75083423 553411215 43670173 142491585 803557409 261431025 542436411 244438239 927452097 822231355 230213331 500807023 161803485 793769967 987638565 827350009 587282899 521213405 120530295 925784523 774413585 590644503 895241881 788116479 467286025 103087609 972130529 801444469 599593523 27607591 596515115 350212821 979117587 869833105 623431133 92616591 931373617 394213223 309154281 178673883 561100835 940963109 641366467 100180411 862043519 792752019 166062183 875730677 143148779 926593979 400552543 180966427 985398031 635430897 294527673 712029829 401758621 423602899 373470217 634759251 52061267 538882627 113884525 939326827 656080877 350048877 770239887 117313665 272227131 65428679 973302681 215901707 774771211 807133453 137414723 854127435 809264699 495595077 827123403 338368839 298341035 517014455 267373049 288916433 478326341 510683641 154094873 414001791 132889851 444408809 790277377 456062389 13187275 538744745 869134097 812551575 734274225 627084199 901185583 907685657 814263741 486634901 94083529 558885617 586938367 857201523 994958547 827514015 66470287 388923009 378545359 151712621 450244499 776791629 770890945 409233771 181152563 756230061 88406073 14466159 918331043 700252603 123031115 484320027 648700955 473453277 170182293 305415127 9119967 224582077 322300993 658139605 723386423 295919697 726502649 849869835 386442361 604944083 550310389 259547193 262358013 693266123 340258547 343316967 476185635 814341635 961364283 946141033 278923355 456979343 352893081 111472851 27091729 946194635 219852901 16638215 207226563 603247709 408275067 464271021 990608627 458067247 751013443 952312117 294190379 667721591 49948073 607961049 485207035 237342641 734480935 852987543 596966913 824954273 507046329 675455287 414940381 230573907 793306597 873094731 602510905 799578651 13112507 821561387 871648969 50588055 391910863 630377975 287758661 896900777 500535615 971588759 607401329 82800765 555410613 229891515 693028119 20735371 593966171 293483739 352158983 917009547 723531753 870203961 253138975 963451267 344399263 47371739 833692735 820704447 19458367 284579475 619330897 787850197 853228317 336141047 167170121 395414687 8926473 521188459 614493727 903057985 409954661 642566677 56775383 781966377 48620567 2155491 169266811 628176139 826788749 577543569 931850267 527818209 554014653 750223775 99667157 465046259 798334757 116917331 427314889 265793225 345968075 520648383 938679841 789171515 899767871 94919097 310656017 80801379 514135189 554491619 473011665 84982183 147748715 587531175 906741669 324006577 178194155 928928817 487704023 406137975 250329023 137022589 632230841 141248053 642544161 806772553 874686117 460314223 652087499 978187551 296722173 772179951 314313223 841346895 997828907 722355405 326204577 790622959 961392291 13819237 100246257 344080353 154607837 131197273 641925587 711562189 386181725 813700245 978378671 433023269 620418477 443404879 400899443 972344349 811977309 546881541 283745173 986916793 90664971 75887735 7204115 278464193 159176023 133922995 297700467 667857603 24741101 232241421 946587845 802750745 182983803 954219043 404716189 743794659 234580929 628882903 570936601 666897161 627670397 666616919 852447459 208348987 766995065 196862229 352147749 881894641 87952523 961883089 926691481 385334637 743580555 2678667 438388857 915166647 424794203 710885265 523691919 849871261 191470053 557888633 552166695 361961655 629690909 273618205 822957593 904144233 294962941 45793185 142751169 9655769 706328453 720376435 543492871 375199991 109640385 535927111 207180633 372733819 433557185 530482713 722829741 324420325 880147363 899644459 197087617 147655809 437867143 553550605 589124573 484615769 672393369 87106449 255276619 294475851 939748361 888531667 27643367 16156403 531532049 175580473 156579915 305350333 723864309 202190701 275163293 355016407 922011391 636348261 629851279 283873337 183690625 722805597 186607955 990297251 747182293 249445593 714021547 531294111 292158557 318732197 83834331 324932475 43757955 374390485 153800881 917104723 633378491 123225543 960453765 577993987 609097341 236318493 433374003 644110901 927879759 856073669 666103843 959392603 322205621 463940593 308531523 345049515 136115015 196219423 758462473 740993317 498652573 852590099 412019315 587283345 324393561 166318043 854290953 669720451 12301095 306476231 955229909 898255183 93919415 810566775 340217459 706762263 998264259 857558989 438244093 835686595 134561807 843218423 337998361 123246851 486143845 117614441 217151993 401097809 895066263 652431069 488309327 362514667 376053887 164571739 213337949 870166745 438153471 594526251 357961959 188990701 526472707 209765861 883369275 797121471 196478075 844227427 394336305 76401839 639687009 628971467 477750821 166030053 647918265 217782407 670341889 452983889 996520077 864768077 537241391 212973227 1857007 890753559 147527335 97735797 702894073 367898669 6932455 206513141 105958093 94403865 648549621 757070909 803304599 515438255 501581921 83470373 650034823 751977227 839369281 591359309 550194135 236255635 657073969 521770779 624342733 617269235 628403031 501397443 717534127 974835485 101848421 928271163 60341713 12003407 532510095 582786117 785785997 482048013 757761681 72181095 876929605 38421795 427856053 187281393 440870755 496861605 37361353 64922879 435951451 654940657 61686559 390757485 738325415 431897001 83328155 167000551 469080263 629860027 639738783 524940761 865443655 32189529 65409307 645139071 86552761 654649347 916186503 145300183 451551415 423444089 636295133 120213419 785040357 793240777 642043045 652949131 143545065 125735753 157372143 809097933 188352377 84023443 146255185 944181907 250648911 288571019 904072423 316976069 963683627 482669919 880424023 617923861 428929497 801590403 318430931 802344183 193086763 578649011 463389967 539846831 474983675 734586353 534871625 629516613 569340971 808376461 844146503 723695239 616315815 958360601 353513303 349292047 883917151 567380849 599026001 127266365 545565007 941827771 231340691 645544249 60493943 941774433 190730241 491759603 915173347 740271641 255887115 731134757 900464037 728640991 381654695 327519821 588394455 486134007 388238421 112321203 771558813 119717101 479686935 397471849 720309789 621764245 854413439 617786183 22191501 785494283 944565667 93308397 952701479 172221109 878539807 427691201 699447595 716042815 364367643 936998647 777135589 934803867 604979779 578002823 689847465 981700359 863254737 452586029 728269261 334758921 549204609 872202357 944275637 56474729 117516441 655368879 543963341 361321277 483936999 401128179 105384581 801913827 759980227 752895007 803583574 768941309 517688843 639914719 287120329 991400825 291347491 872822945 308488801 330532235 651802365 895709341 606975667 438601645 800946699 779969747 133417817 677402023 601473356 342180109 741613559 646174081 309413451 444561883 151493683 675736723 191852817 472622483 848806085 275574391 781141303 684682071 931080289 201435155 251511001 629443089 787681487 514976913 268312479 351700845 604477909 191210087 167629749 724827879 283074119 270103119 838462677 319962301 885090559 885095505 653067579 242950393 346445793 472234167 998673581 820928105 43934419 785098517 763484539 48943527 331051213 473392455 607884665 722586643 742834883 482594931 543489287 346275031 133886141 793727491 992543241 936718303 223644865 606834351 117949679 265222885 876551139 660521839 544520113 321614955 721593149 50166409 298905289 790205113 840367859 107308681 546635841 54623965 646397229 115231043 679104165 721668017 722957085 742017237 558064653 579130581 339884543 561980577 852335893 102776753 580126227 915248211 29295077 704108661 509665189 103022307 328430379 910278937 599490567 984517513 834216219 93408351 921303701 609923275 406518391 353306829 779764141 190787959 288003973 673285045 669691325 95359901 922998543 344154671 108175413 338432925 34989935 112058395 757909649 827144987 817232259 843998495 921503059 452938241 708162993 375324591 454917379 110570371 52359397 624030721 265232693 28178209 283743127 554912535 355283331 123098523 466717895 443575735 89436305 634068481 932174073 2657137 126029575 185085605 24857403 943762849 283544215 84591651 51865637 807862883 56614653 407365217 673265363 279060387 858041593 486881673 312020461 956816909 369120089 613107473 487755425 578264605 783853547 716574901 171842981 332841747 920176779 973988217 579382839 190082549 576292381 856835753 19139869 355639443 974183817 999886041 207489959 448176775 89141953 407123685 425385129 137006643 213289409 966654195 361352579 660063163 742207369 830473583 518129945 81214481 54438183 757359115 425260253 328691183 353907369 706635973 593565633 798095059 372677163 207021281 554615623 330948103 981756113 561180139 803188338 800986521 943271363 916861625 158852819 425554787 957374771 141713509 234782079 8208901 960018269 75543891 268152339 45141479 662948227 799129649 340935095 720292921 964638445 710796017 813452313 1930229 596042223 692585939 412232815 993105113 31786725 455070295 370086519 668935277 678337837 210126411 996240759 930235651 475271221 24268485 158678335 855155379 553679983 722553119 242605859 324624477 537423443 793214463 227535107 895380135 685504355 499289679 424315461 222768389 171087661 412603461 409751253 323714735 662514751 489338459 52621357 271751073 601231157 290765401 978728009 110063015 709106099 250978889 4374189 637571921 3177825 372663167 101786989 324866295 107467505 726395799 784927258 398079417 202261791 222159223 613319893 519861885 554623405 475384905 511048515 629251319 588185699 888709763 623242131 622106781 213799447 128827105 413763451 481004463 234471327 563632487 18251065 472024119 257074913 932501089 617822869 498665733 642232773 397765989 894075867 850919599 289932093 74059851 402109153 913190041 720845893 18898491 135537159 831364583 982572255 480322209 926096691 159269517 222899475 835824175 95051985 158200383 908042743 152506341 513274075 825013123 326104225 915325955 228975051 691505307 853381431 420694295 148970923 759645853 45962721 570508023 576134409 428246621 726101971 271983549 57737209 952621437 648569925 618144973 147411225 830572901 484019577 871166933 197587089 196609607 29294525 685180873 723168527 920229399 244230239 798060515 986185929 717134745 985702077 634398891 733077631 132161365 285090103 893487849 244096115 712924313 519526967 208871605 198938999 966797439 972954415 104247401 371375583 314032359 709738907 253886379 241553035 783891321 154566141 768604261 88207329 396400805 906784477 847039437 442886863 711136419 715652561 962292575 612672457 420737141 231478895 450821087 472625617 674443489 167008605 977092185 848405867 320405881 264732483 70697761 876940711 254973845 222496725 716235475 646465305 250910549 628752587 84134741 143864543 626315423 383885033 566213843 317375905 68647 96395511 344162495 780072589 895366243 741676235 605978839 547522651 304384661 292060219 153640479 656643653 570093507 896806445 383309283 730345237 877636031 164656521 401748153 265744917 824533535 387448387 653458297 961487393 220671303 32704595 11051597 252491923 589361499 354966717 797357467 31942227 782750543 858441353 583873309 821753549 866374105 739869133 558864075 554403067 401298041 871564959 792553965 783054425 114107001 615808037 692686347 673816557 265221609 827704199 840936445 72578887 994476191 56493817 768357597 671191417 988243773 8068275 836710671 50249255 734717997 17581561 263627073 958623347 57600155 959165973 86162279 961302543 900985731 319868247 534651837 427252269 953751203 420361757 385947077 972155533 188578179 997179847 722466127 245621367 145673847 991404479 368974189 315825591 74597779 968054391 386546043 196147107 121997753 714972781 282405919 544155675 31404433 507959069 434427459 445324933 704543371 165536791 714011679 696072399 408759777 674305003 352977451 816602735 264217489 270257969 364711467 760488803 204910435 535448463 40380463 436022065 24684009 878891695 722196363 104851431 370212731 996554559 324541911 142258973 965662521 375929853 124213243 288881905 459156491 731498667 923112227 522312457 963700129 776189203 518993857 135469969 807436147 743434247 459092629 137243201 118024131 847129183 88364959 225209177 948385431 134617601 233184557 764833947 646261953 838922965 381258453 639217753 508337879 458375119 567264879 283124841 548218941 767480295 413255973 293592359 455599129 881864993 727785567 85124731 632846425 694991239 33973457 666923731 459874489 773878315 751723387 695264805 406427577 683478565 798350493 544745199 877986719 956607387 699735751 275700023 803614589 37109943 474593227 479027083 817216041 873061031 213468101 957948419 542880581 219196587 631467545 578086717 870775867 874842881 737564279 933769567 42830647 488657907 678514127 913187093 170450485 766791895 473656157 549296279 408562675 251127045 205571497 945424037 384046843 220253919 188887933 288469891 627605149 452661967 669466348 514895871 705839599 853184073 804658773 4808815 557812435 376464069 20310875 947974581 264578801 57577671 952291307 696202291 156506811 205131481 192286007 631514839 963213413 693705357 452673725 403453979 933037299 267233661 234582849 822827771 185712429 872004683 903219663 935207423 144572577 18847137 593065149 156960305 884693161 955928883 431085731 857848875 64985957 109992633 227059561 802101515 728723133 340818679 188867899 519833463 508886881 198874295 978094989 27692187 855793097 365918155 67456537 839478577 81362231 173272587 137796069 446171763 269791411 759719517 307175999 233144107 475299851 724289451 982989239 873695397 572320471 219242469 858815277 269662137 771350907 426566405 124923077 656439235 805125149 39826959 143073513 872377771 229871533 217721869 16770895 376813279 949981411 30281489 191157745 231660629 599541057 240983349 71851543 500889483 17970701 758620571 140418379 369402249 773659991 948362093 541267553 144699353 96006395 417460447 597442165 541035925 117424021 939251241 736838637 272086107 480833425 865913487 973268339 843497297 946125853 291440475 521733373 845904419 174625841 398259935 188317895 896749579 71766413 215266677 403743317 164799683 764836795 222603903 546540915 453373845 565402379 744479079 652807989 176369231 570786707 654696097 466469623 581101123 848530997 629288615 718720865 669675861 812945817 497986809 313124185 377691367 768546097 166268195 269970711 66500841 715748403 662942647 16333593 159509713 449753759 726533455 242002207 366268061 716872767 638633869 895387959 334138835 846466977 556315163 729932983 874886275 779415327 871751085 651857207 568228929 12951513 344654587 621016481 586990381 663218359 672619979 775761181 102609645 588250473 144383459 80636447 407386543 959509353 654634517 851470695 233269031 770094837 953801535 788009717 444283799 69400085 702366019 752102169 580914883 211775387 770457607 800048995 864390393 770033695 50527361 984965045 109596689 983277825 413985193 101706541 762728551 377209193 776686469 277127995 845477859 573527367 797731355 833604243 884933875 933489235 492103807 73728561 665414543 440457487 459160523 274233945 265915953 264225729 209650209 20016533 689452769 324446587 812565419 750766015 47774767 107926805 547093917 147957485 102154799 465722927 763421489 739519111 493535105 284791343 778646183 408471095 870238283 813514057 949084747 149021939 207772475 589190003 537215855 811512823 16983685 38279535 148229485 165800391 753835243 758896067 180355239 290529073 885629617 511892927 619568009 758786117 483267749 930572415 700138883 531518819 922318623 689297887 40016399 295133229 431501565 118974347 417141169 969710223 901682339 988101615 243390709 915347905 35704065 812163399 223924585 974701371 928220301 806963857 447522473 991161285 957343303 374722199 674556759 512664679 98635441 298300649 286595101 422318455 349267677 562148061 613265583 930775443 367388511 257226389 681265351 116451487 857659223 160578553 6639397 174088901 15790443 709114811 791068821 459423611 966244553 945871439 203938537 581171323 759889447 594390265 262780923 600018637 967984321 182638273 683153071 515906489 306299233 680151413 518087147 942933975 929378645 777688239 922225573 594931203 825040753 825753295 905958359 849033309 809092371 644119037 305456000 528350551 352327973 682510121 899025839 814187681 722123537 200717069 247127667 49300023 756474831 849554215 896016873 955716961 840831197 503538879 623478575 600191913 358532418 816596455 516971891 956368867 504942733 517007479 26444005 30756141 782706641 953433871 284154303 958859241 474173615 661120535 617870663 801167557 265507405 77907133 521147075 448556979 458400857 669310463 615260295 444926193 349730825 318832023 126474989 234385411 379317019 55346961 523380567 926189237 951753429 686692029 32621873 642963997 813405957 169945779 388947691 13057941 821094147 962824145 209513729 666047937 700503725 729920195 365675251 610743695 126962535 850454775 504817741 675845937 219326243 654159269 85039521 143865127 610202963 787435213 824289675 185289521 238515703 931375673 342988713 647026527 62466711 679470201 362735529 551555841 458482495 387933155 165905467 349894073 9975173 758756761 458109979 567923813 618217867 995456133 570230537 592426037 814173425 942543954 766029009 952493981 976095723 713060991 28379205 606426969 791252013 740411719 233291839 321238891 107988469 736233141 991860387 577853475 140720393 710328727 560075609 518883603 680057273 262555783 707513683 539330073 733001177 457709797 810505101 859282517 988257223 580924379 439964167 639506745 576705389 413754197 778145997 598021493 984295220 238077709 336911601 863962631 171326233 936281477 716333455 128308531 255255955 438542085 628774597 278481285 717529261 523666075 594018497 592008913 513065715 945200929 217662643 7981877 815017595 421215799 271023575 898219027 975418343 987637573 588205165 607429913 623162713 253589115 707849923 132921145 58765695 479840209 633930791 22247347 175869587 310284297 324642805 286372615 71395665 793393065 478807183 891650563 373274111 915950595 208717409 558745789 928297837 274852399 421753563 736760719 873549295 660172301 669627257 345939997 809048677 904949059 318183101 727550037 846722355 20017221 372098351 737404267 395339083 696256329 57307747 183967449 682999071 853526865 914937845 549213543 150221745 64283939 334082179 947273247 117941125 650265681 902657211 900206419 21404073 280243761 32320077 797663653 269258419 829974245 921240309 832007923 543158213 32227415 17719157 359540591 424138113 273155381 435557525 251529353 602569495 487464437 520522793 148274173 612717883 989560797 638328333 64471763 657025841 28595185 391047967 768659541 850039737 59318273 269185613 571628310 722545701 224631719 731394439 493250551 35313993 287136581 798806217 474092823 807493253 467551999 728648469 15288035 137234109 804982215 646847859 13887763 134492003 435060311 447378935 878903199 902980457 252572205 658526909 804525517 566537809 807983251 731027683 648548649 144782109 819278743 963130263 474326663 707002721 521027347 757871369 710552837 909190189 270321063 260664693 374510341 569773349 360094139 341441053 261930805 956845931 70896255 595784776 448654217 882162351 495177453 823039055 985582651 189283879 633833667 799532165 154913491 301026705 724112777 306351185 225209625 374350899 752859537 173884699 556208677 793287645 64405235 262550357 759826257 991788515 959971471 944323451 907651905 354957349 998088459 750658829 314599651 471880713 320900571 260273561 386640491 816411003 119194679 686492589 681783893 630989813 419562011 944152551 77629029 31526257 687971157 621862885 766925989 225831289 394047087 151833940 193347693 874841627 277714887 20254441 591117657 998269161 167934587 693905241 569348681 507036679 233143153 462654567 642095727 221973783 60399709 393535969 723761211 240732745 727269557 603708565 665919083 81434451 958598841 821507425 667642115 561195123 257445491 281749539 259773519 212230513 181044915 719717065 372725219 947246742 526317583 949678661 682994077 528196033 298566635 564288399 722568863 479716681 786357099 602173097 805777495 650205973 981314179 929412513 790289271 361738135 757630695 309845381 739554557 372517569 598797085 376312179 766310189 868789013 645810535 759651721 850885781 288051351 229226203 949683189 282025733 461150677 229387853 882748393 965648541 165737703 616238431 658315933 536272577 479036523 951915385 106084949 597933849 280879237 383713485 381639513 757149855 402225125 990368079 92912895 27258509 805386945 895780291 936318621 718857573 654258135 758217393 975617689 676796919 252745071 246566247 685817179 591794773 278063701 138782975 574986325 522847451 71274207 517978457 51370243 522001197 220468205 15910941 742925287 261497659 417049573 146094523 808959883 778879541 533494197 848009835 423044479 17817495 276246481 289006895 979615073 546707497 58188603 862418637 977611215 667683573 55635575 934806231 730677113 347732559 284492947 458244261 436594187 144134869 9295399 881431127 436662595 843633769 174408785 598963667 86707171 745023287 835934645 47598541 203237043 359869109 598555523 168541883 225540923 719932063 626335345 338880991 775396925 675722747 169123263 902767679 366947759 304292369 278938159 875646893 637180109 369456503 667426579 311524287 180068745 707092747 891806017 274235097 872063963 132374255 642966549 873197343 124269767 334590865 885348983 837705605 594383703 443983011 701543379 664765633 438571419 126436389 857227043 877034067 148254129 428224855 575184355 192919429 310301881 751794121 122996505 431468647 275079133 795106891 557706835 884451023 563333967 229101565 674556585 536964959 115632459 716054851 615588793 166068353 831076627 298648263 481610407 289091425 860591601 723562623 334076195 8854267 181126709 680643237 161121381 498620173 20412989 602378945 517681191 819320607 46483817 227734173 988717491 523071365 832844067 930225997 525434581 701135443 135885791 758194733 152620259 398675051 309179413 187976675 903974845 309010037 968708937 960994137 244251849 587008993 540686595 528975557 72237557 782228969 170746329 927345315 36727479 875629195 725907043 952162487 643690253 953083791 166032451 676732173 413719165 657811335 916833571 51798777 285719829 145087691 123516853 958401561 5479533 951387259 887781047 600949071 999829155 579024255 438267367 263392199 814502235 71496071 356035343 774867961 263632071 137999371 947668229 810454173 68271257 348598093 182804641 427212729 752610065 744883539 918809029 656951707 925012983 178896623 38556763 996809683 651466135 236755639 503186261 817719873 811636169 255358991 320584113 458246151 120283369 197956125 531345261 168166547 900507359 928368335 993661587 963305625 667126809 131666401 632443961 746117395 361952907 528247251 697898359 564191817 665345719 335218923 284482159 884019907 963101347 904546875 596353354 425437785 168593113 226056345 497879871 83715877 635430771 12753831 401144195 670537357 841478415 183707343 451249243 44846651 984787921 929301565 974953489 888666917 744904811 454978029 787181557 688035975 686818063 470213789 886760805 765798117 461382271 700220631 769752769 690594057 686458109 674649579 434957939 401813773 693132123 666388207 443259375 522267463 20564463 544698309 410347181 322672991 828550037 690730005 142743857 949245759 920231093 304819281 151344133 360611359 355546173 35992237 148133563 971623287 498137251 144133165 970727149 181762573 959879397 982487961 979282749 757062893 96583561 411148415 201981525 586687083 521754527 590184505 329837033 383290149 137614267 983471847 411885489 771320061 218813693 481300593 405332081 579839521 86777867 634118023 262369523 198182915 67169809 821134497 499877641 307907171 860131271 759890177 426703501 437976641 934769261 915667375 640990817 472584427 129033415 215470201 11142511 46253815 800161315 931500791 750077867 989092671 447055193 20605325 759854861 824825831 809129925 493197409 384349849 208269149 307989071 946125923 622381401 433371989 285568100 916993611 54191455 298963915 328645373 505173403 83192005 829025281 27004821 935369113 248396461 26763655 561215283 109226069 607715905 847089454 25400167 21255595 752111029 109724693 646705477 567263289 622301505 787514015 529467501 784304741 580579883 486864247 678120453 270677859 7330231 796624533 63005113 701991465 27759677 212787247 243888835 652693111 100598805 804180943 188615901 506104279 226621089 768565055 773805393 50298009 412590925 33682835 801943019 602765011 757593225 162355241 134678531 685224295 287861455 880907683 102711669 849005821 633919907 906703087 748048811 820027143 800632463 627830335 233263759 868762811 78288421 606288913 234057113 909645849 207077119 162949161 655560391 588039915 793765055 798433941 747148703 542759871 596454671 784064677 285876273 641532655 411520163 865018361 497673745 874587035 332581940 627562867 566429023 951764139 602356613 376177217 792538561 740978127 490976351 884602071 609421155 344792705 174785941 932348911 17552895 230584063 529092097 59581841 252849617 197144913 147109765 38885893 162213021 944650313 933704715 766393571 759871159 725861503 793550983 567659013 303540721 805567827 882258931 463323793 723567785 386276845 144536143 248785393 915714759 362675261 990258599 641072859 753132217 364922363 732065549 750625353 285660277 529631657 687445915 288113795 585545339 492005773 543527795 985409043 67376845 707879609 468692673 315672781 276556797 465340421 427487923 185163981 57762335 267556625 372205705 39816057 462377939 755716419 861115521 682665085 159548735 822206159 608620263 235993291 958159119 813215147 238779661 106533793 935919485 154703513 416960077 229636483 244469061 801277471 788183817 987048765 401499309 186446221 767651757 700845283 716745859 878518271 479663017 128618195 279554847 477911377 838829177 586304687 289339231 3813167 474320541 357737061 947093927 531423749 701995681 843831591 610827495 113467919 238279703 172323445 644151701 136315979 103579289 973415695 677511855 533642627 132062921 326922243 358209213 913732935 974804819 478367143 309290699 425626861 831682535 577873045 906692975 95166103 69262911 376106161 448123849 375409709 52692769 762934313 263274111 371395681 879469907 132352113 24700095 343893415 451068585 453987141 657642301 253866309 382965501 907439527 766245179 902763581 901376817 753200359 869811069 962381411 246286385 872894359 949631315 513746767 589463021 682162835 558391697 454635361 613658207 753696257 122024853 725941441 178597005 418928203 768506951 445537 999402877 230843175 130645271 533797109 896365891 272669329 839608567 134700033 338951673 237551053 524274023 498591435 688553153 111280231 660924783 353496577 795087559 519833395 32075419 789852583 822112827 415695183 976282625 801542705 112560985 321836827 353736001 714312555 921683809 420541769 327180161 308924547 798015391 639867337 691449967 791197303 906993765 513308890 118594881 899161857 850851341 787991551 717262259 573013933 706256379 291745027 513358609 304387275 892937109 944556795 856950051 376618611 602775889 674600773 513592131 118685059 841897897 40986243 927205711 359410343 248643613 449480611 860952747 757378893 942752827 870764249 620099399 799572141 299143825 316042399 784224923 390443207 522552251 463293629 670626977 488534885 571324251 384419131 870519523 286038807 268959517 856611697 852746093 254955059 989759921 673369337 394123221 158603739 119919059 746038457 879476795 414975737 837888323 670459355 460253253 298626361 433687501 383752405 446561825 403746839 347211845 462983265 529544069 149245393 700213633 414588039 766046895 166953585 509045605 855286161 389721957 962549445 860271581 197781779 902816757 940005223 793769433 755250921 16426553 670151097 560497749 934196793 47790217 6570719 855069009 800284781 756100305 248618699 386634969 797165629 76259707 837280565 514260481 560143521 872413823 734005407 499888607 854322655 824028253 186105681 405569687 892463747 508321559 432942681 368534101 618290273 928498497 483742353 11626569 623885719 80227563 972394393 371619247 71717767 275913399 114902745 650265801 426098141 890895563 818653825 722879455 915933073 64934869 619003017 867045445 795114459 329521675 835377075 736617813 892956993 538035755 327958661 44084595 971211409 306673275 163547217 92776199 692680667 555346890 420326959 822462339 574933887 869509230 510794751 817788515 454087457 290856263 763562855 384649767 173874347 150566583 334813403 83070299 670568273 319880113 119938705 895969171 748086931 619629735 387348875 792383589 651042097 526558875 239411855 775512693 359573563 652149263 552728879 966540399 725632003 195813909 139605185 641498117 321539877 930597187 400097639 18962669 689621895 256000181 882289419 765949423 595510611 76065043 670759003 778157009 867251199 920437131 779530701 849653863 120293191 594450643 439478439 353283981 448740911 747929129 894800877 15011361 565895683 143437397 464609135 397619473 150721367 317468833 42461383 555541069 480259335 854798823 601459799 323467729 451189561 950312837 54514755 175556255 49002585 544738913 376791421 391749054 354888217 333847527 633401023 575096135 34658423 624778001 450004871 248248141 255670967 622914393 960224031 3933943 72538213 625460681 901363605 187709803 913236055 932728301 123424451 278236897 920180647 806745309 674447689 255786895 561796793 222948405 351390095 32202423 864818235 621508383 143660229 709962663 556161055 633765701 158672869 233066669 94742181 879050207 787181741 9353765 551699789 770110635 465154725 924616563 282949095 711559919 839439391 932844031 531173251 938492539 986202419 615691323 458847105 585428643 385318081 860238499 333232261 768422215 937739631 502975673 76330873 112680907 191058097 608203781 14526099 294881313 241922495 48773917 193984077 900513213 163094677 25091735 387810415 845000347 786828545 43165721 336718083 840145989 709933965 170228043 876954461 687215815 27386519 819737823 558179097 805743033 309273405 208572817 511834397 53653817 807556709 925123875 726011027 363787499 429818819 926787933 513072625 394594559 275785933 775091987 355612147 325975851 344989635 633378593 713314461 968945581 573140143 554884967 436588603 425981003 34742368 251116493 197486691 904426837 661093743 14395211 74623213 716387999 136243517 533654743 379139841 823781513 70270703 604786293 234883083 355130617 143872633 577643565 537169085 134027869 234477455 592967443 812135959 143285417 276666551 107002435 320113241 897858655 92793907 996422621 52489233 776125315 38603545 16094219 218225941 350177443 842208317 400279551 62641023 291918807 755509057 348083445 856431795 137659325 724519821 21539631 480646239 529746553 540534099 154822389 706983287 982461627 322054279 218808733 45325109 328742585 494221293 752660605 209074721 729593137 373334029 950493179 228344579 193016939 24037941 198872191 791449587 37287219 592635775 230945149 435367243 873792991 1674699 344666221 714729649 954124623 725384897 127572945 196369935 158313449 80518865 544658999 732421787 286949529 238967347 921497389 965118417 595095513 244426729 328446545 393589365 923758757 539244729 128412739 727979923 920544643 663706677 390779309 721034623 513740161 102428597 844339777 447524053 157866807 77055321 568377787 141855099 948462019 908792583 239809757 516807069 247566793 81571187 240694897 788410541 106992249 536865043 428820039 29168233 589650569 699517225 213415485 337362389 498743609 698695867 575264051 631142461 55207755 235531163 45656083 450781239 248748049 157511519 572868303 496784539 548005983 600148075 466577251 300109715 146872727 337147107 60685009 831456645 234819737 147009467 922824739 286065195 74549977 358474153 487099753 393398141 22205771 138834477 463207617 285526723 141907309 302731409 593651019 28402053 1670725 403796197 114734129 38046875 234834273 911194879 113498023 456943903 233073113 846024065 878972901 702308725 594082635 525344981 259617839 235360843 687270619 569283623 60543437 638723477 328132153 1511539 437128469 599506319 132521627 911440247 1589341 953719739 985374657 283299517 466495755 537606633 317645549 955600531 998190215 812831019 617031153 659587859 227827013 928512221 921365027 985832733 269833661 873125285 58339679 885822809 274755443 675628655 25762061 548525367 895245297 35240813 743711515 937850353 712308167 377835293 28249853 477944197 695390099 861321537 7915189 520007611 853749 79236073 46816711 552721189 53496215 12759145 342278211 486582299 741287981 12077145 656390589 348281789 595324271 681709729 106962005 933483763 463292193 3330669 862224815 745848685 930766605 263262255 847725563 466922659 306129411 812105383 642922737 453569751 424301281 576089557 210526411 939875855 672826759 473310727 372691283 676284701 526772191 61340883 280025301 46178455 34108637 819218961 231620903 66194401 128663929 825289963 634478763 742795809 403657143 435459273 417925443 702857541 397165473 614185567 138368861 147076361 240186439 554475181 232662771 850052077 269404871 552091123 996337793 483648567 150289729 973385921 303462413 58944249 109338079 209866473 30411815 997473545 940212181 96130183 505823459 829394953 477204571 251281663 225614049 832143715 66034101 121442817 88093765 954754883 139279405 77334653 668982209 267870629 199474453 490718639 456801671 688437575 349763525 21512223 238627415 705104051 596584611 164184727 246293625 69742393 169791001 91050283 535388345 601093103 919377813 713442359 949479791 953382071 805604503 579398497 593936759 489259833 213965213 652420245 148493625 778575335 793956659 781517573 749284259 20223221 703931113 772403759 402147115 450089831 612046941 221567191 760142031 358313989 905811503 604933641 20907285 107124317 360533257 647475739 677787917 708850121 224614047 80737701 649470283 110238825 703163561 346018449 255493871 676664357 116603883 8581893 304099997 216803245 776255279 652605051 268438407 159738233 271290951 84054699 854634079 812118731 868079373 640020635 559007335 265426091 824527971 839699865 182584419 953674470 210826035 254972471 760780193 763329303 293352305 786118993 722937079 815170975 8981781 73468171 75914183 788249765 357371173 799083987 812647667 787328793 744997541 193738589 495700459 567605171 428958637 696418723 542624677 865177589 572415573 59215341 941247391 95843109 616419263 696938949 619662559 987135315 472995095 363625471 228685045 947214427 789177995 740473783 495812853 252046043 428010075 457149779 767185023 542670649 148193733 948179837 634406071 545342633 342822421 301689899 414648655 642791969 27493789 780942745 719208825 860942689 461873333 462944075 904588535 221955059 326477509 611368717 642439437 708100647 653106993 488597491 965319561 41280019 468479599 308450139 34175427 936788121 445699831 345334247 312126359 871595619 458734669 85764739 355657837 353100509 390139 41043815 844405811 603509059 982236819 305146635 666713695 519401363 201441967 258221365 721095409 100303255 364331505 344745457 242908011 778077661 649748485 582665365 44050399 646021311 782875547 390343353 204397537 752912221 24506733 342378823 670275473 902588063 778973503 433577319 718412949 262392373 724636379 825433997 351753496 849276313 796789011 855693945 497150167 336140041 86192321 755252267 743090697 696158861 498178503 656313075 393655417 609557753 375968273 175898209 318714485 87847647 38437007 744104023 793198031 437175205 899366971 321215475 846522603 716577905 338815257 866132133 513761195 745143091 264840499 964542241 102994047 651364259 454381467 195115107 797427549 509692995 334359403 438293167 562788035 654691673 427838149 154359441 686650041 313700343 683717589 119982557 301088203 302062325 226185675 88313007 827226639 332461555 484196321 527011949 22124069 641391703 772141659 794795713 681319987 303952469 170239877 46291617 686573797 116846051 321294507 893845835 409599093 269918659 741050671 554074431 429234591 696309883 770884461 904288075 423032489 998717275 178598865 895719299 813298273 427519359 741125071 753801797 225810207 335952067 744363233 298768179 146995135 260508883 674183047 230844475 513236139 834363419 576158797 60842639 266556621 258978007 948735685 266889645 847118493 143111175 10492553 854216795 669153561 116553839 471780923 384728481 121122505 368981413 805656199 667998167 374772409 120756989 173574429 4773271 118412159 709249177 617807289 682458821 528990267 602925153 217367835 460432783 603890579 845537543 812393487 145537385 282617523 267650303 126002279 957654541 13595221 251137935 379612669 812752515 662807989 202524089 961856435 392081429 266672537 633546577 900345461 555018069 893814095 360649711 418064435 412024101 227131311 877689843 373780201 813979555 645229079 305902469 937652631 685535041 742363499 699893655 287869769 867676591 472736027 494527197 472364049 471462635 758869023 48994011 432654345 629751351 825539057 652322007 666969171 436820771 970617755 94980323 436561947 371724931 877696679 561584343 23592337 785088367 625240113 763240787 575697137 40883790 715426259 213659839 10834299 608535503 413797045 547234891 659723899 648889313 787435653 780737263 810800195 462025923 370581623 210861675 191176495 307249145 92224077 542248523 686001821 189771599 289063243 206739673 328894971 758326746 779562817 809265715 964754873 602699511 609314691 838995765 100340305 566538567 588532718 817633931 828884809 444959161 251668975 123308451 507964967 889129087 718876013 482064821 628214655 63998489 307107809 449005249 480326123 683887175 269716299 895100561 120781583 627127577 473093933 634446773 788222097 704698335 861717913 183888003 749756711 66676283 198338085 994765853 978967947 140707595 277788909 439079277 736305021 128122239 517179801 621555231 934822091 601038859 646245975 499279279 290392131 99886443 589711069 138621019 209870529 761237923 81998697 106524205 734374439 976285437 816318913 670877683 534472801 239592209 282207283 444282439 502192735 802632123 275190423 792534155 138119965 484674077 978146123 717530595 86165661 889822115 564464179 494682177 979971815 692728067 64552385 197885277 703170831 621708089 26880487 568773049 318353967 906263177 491610407 97220509 89972843 882837887 814303107 428018199 52806633 873702895 106965389 842494465 210649057 764118007 303897947 388398331 39769479 2911993 631445897 371287149 25550115 956393635 717993023 646099079 858021627 672665575 90568747 544780609 685292131 838618629 936098691 126164317 486170807 190577533 246131461 675146593 348120661 505263901 254358263 203850911 76624299 130096891 238499369 188758063 797547561 800777073 414770927 542766065 152768331 43402787 282491433 509018507 854981521 100160255 527789627 229365617 84526985 622694713 11311125 314554841 600334529 347920971 167221295 875684805 518139093 442276093 486157699 898604027 548080745 780450393 424063643 340548109 694002725 505796273 245156483 63200593 321432507 935163559 441339859 838771179 392041191 714747929 204035495 820515263 629209193 714542393 728172199 791426433 275057933 564276087 169926145 315638181 861230759 33451663 213221995 304878449 917643021 282699145 576208675 491779561 425260837 890171311 930809583 344224989 808730581 893754773 241605919 824464871 504082197 600397849 551126151 952791401 141689051 295341405 965416071 965384583 640152617 174476237 642713093 161549107 489361933 598434080 843779181 217548071 79833749 777185105 877733561 274505441 528641501 729917859 461418083 641999787 399120137 27052963 409874549 303828371 858653505 473026085 407456891 468588147 13248695 845570119 36431757 526063851 502263719 868487787 374662471 585169763 416590161 103441727 70678737 565320459 760183043 574498487 201757657 838528221 481942795 466073357 972714901 571976855 789236167 777231817 85363651 460460993 863925397 830039731 605178283 7877293 485817571 801127651 468838169 58852723 830988577 696025011 146067299 30275315 684772811 692410823 448602217 893003221 826276451 362092557 524170127 782057351 929717873 108308665 880747719 371697479 538350219 143841863 24268675 661846799 395655495 274165371 150797765 527312045 86279243 839710047 526588177 485094059 865837375 297156171 666245492 504211815 105248981 526584027 62036105 232124927 578528713 514797041 615289449 674562905 617363933 797652153 666220733 409433385 695179481 262118313 622363059 149031653 958638995 748469117 384273667 522782925 184034017 715847737 55109351 691034347 383171753 835213353 320677159 572148751 596185299 238635233 164705811 678490831 567287377 691190335 724349823 669937295 884831263 305555301 441865163 17543283 987825215 750175681 374093021 571660399 918583481 44280325 193209633 953990711 61019811 233856303 85058193 3056209 584401171 734144899 682067881 907873023 303044655 369151887 517521007 192193367 857740831 7522083 185543537 541713965 94047253 847929439 856801479 55847715 954176845 208609447 890325261 855231905 181101577 293351845 658857069 853615577 430952595 225606221 497957265 132301247 589272123 268143071 658458801 20262423 403931743 805699291 288196235 815271273 911409501 153606673 392862053 533629187 942103459 749292435 261663759 676283391 907432099 739304381 751729887 473130045 950067157 14335541 983003313 171435877 530980797 600059621 519579115 289195495 559361251 130737411 239282047 483355131 140708061 173382667 523188705 587199651 688874817 406186175 881436687 915976869 523569845 555855407 323360399 898374547 441493473 675299501 12592751 208235717 665125497 605860055 736871495 739218011 296353845 994750095 968847667 137005627 839099863 212408833 132260317 743785241 809820483 125779619 33950575 442407275 71717127 515403827 824097441 238773362 449677373 755742641 899303089 550378807 559085749 535169131 560948327 20450185 899581783 742947061 79186703 755611903 397768215 254781485 178270591 361673725 931425517 971907125 179049239 396101799 781686491 120748411 383450812 785120753 633919215 227679665 880842719 761979025 219191097 373098199 398310769 411587079 92646865 542957613 649037045 759152029 474566109 716414275 465451887 276997987 288826501 338875113 417191535 89391407 192725501 177044543 557266697 211858339 76126845 514950057 63425755 968622889 344301385 868900817 421939471 524912365 712546217 842257069 16713551 545200107 223046643 967446135 183336659 739180001 363220607 691389111 494354267 867504217 58324655 808330039 300033577 842060193 811045869 168240907 64132879 908905427 581380779 4104079 735501667 912054223 406605157 559279465 476315905 120381501 19471773 916706179 847692625 178170509 114883805 326266387 986201151 624713209 848747959 702733205 365199685 120081023 969547971 145044429 584811103 865452519 683746727 426733255 374322963 370041027 736618507 829450711 752563057 265662315 380796579 794637979 760772365 557337343 91589671 241741301 152267781 142902375 841644123 913962771 266556419 487851347 758461705 800744039 835351345 136861499 519824641 14609071 107121479 255293025 615250721 532117999 822630533 985157835 523492169 994276469 289088687 531199819 363837283 941436881 384377363 718700151 622741091 133622243 830426247 3283379 37540673 651462093 682170987 715004453 266017793 32845053 500283813 581543355 75596973 945392167 751359139 931606577 900716631 570084933 396043611 926342151 644093463 910420383 544754251 788627843 532614675 901415613 320728441 621922743 427843189 268273015 126429045 627631993 494765163 245231079 809778259 438984299 965092659 934397299 419211443 822416887 730167567 31848901 667906745 485603913 865800265 824863187 429050133 416076125 509745203 126755545 970490879 110646259 309852711 664324955 357113905 715812495 513021575 975901733 544198645 591621767 420955581 148949835 476018199 217620207 367757629 625494313 174418159 123096489 803059327 254161765 194681177 628842589 415385607 789167081 228831677 206016893 330176607 518337517 177926921 745448765 129001241 592978665 599135155 561175713 473439693 957623203 985389241 233797233 555747617 475929895 657695905 853963835 801535935 670192073 732195451 662426457 449586517 92820007 337595099 585955819 776927139 455499299 723489505 785438681 470541159 575742443 751787825 317844435 328222573 726775025 950000381 313675859 351038853 87167221 329233143 671424661 631410061 130027767 222871135 852203431 697474661 59187269 476488189 642494805 823799545 5856117 875356445 701044023 782528311 371562849 64080535 539469745 280090399 157667887 92789191 893052649 207588783 987545673 919646103 938517967 375725043 945112931 836700527 826874651 677227003 627067261 701925451 725459535 95454693 752012761 160271785 533591217 341717201 234269185 718432395 202695251 255273451 620760269 837588099 938893579 843569507 564662615 727024805 887312765 194666355 405858821 422672017 801426957 319402847 152351107 627979627 157621743 221245553 988176835 494722789 304418841 634176763 859437825 763565617 13287499 307457879 410293957 731322129 660658191 193740007 231198425 375175881 595946421 670013205 279582803 130978599 494581587 595175509 891742859 51432323 631805899 211959585 21352229 278592441 819263431 975869689 197722137 958869297 136713395 642174313 851341965 696278489 599786443 242107137 180482563 390360359 309863181 141617759 621963839 114651417 853695043 343980837 3611983 749845815 683365371 463421689 460687491 857641355 432763535 645400721 536901499 842573745 758469919 833589925 469879065 910834627 546122899 527990009 419510411 190860647 755127963 343563607 488616005 102629071 414588081 922164369 223282945 917984685 88985875 438537601 521443015 378800707 189068745 942645769 625950175 37358677 820429735 696236565 865465313 50589233 218982719 176915093 896290983 96112047 301685751 20681859 812456279 346361645 761915125 818216931 940873563 203035791 774301225 142271679 472342889 434397253 987233613 543559209 279841405 888337989 396421341 406762299 343461593 743397133 627701029 901418009 759935757 981282981 907090229 959605993 852360939 123062679 533360101 988735201 912176785 189919743 627262677 796977467 941672799 580080759 598335851 822180919 219424519 901948197 505549275 707015200 90972793 606964923 297992731 820517451 888817907 659845485 310832877 508808207 890977529 526666231 871687895 120598479 219581783 287217315 26930473 777997303 54668321 96699455 925503231 962733047 953866677 263565087 381494325 937189705 623825333 74632737 397343351 109658225 257019919 499165101 106059313 772639225 109069301 359051443 796825503 713130355 346176743 781538213 546655681 279677561 946742693 52893059 803941211 819025839 955302717 456509651 764865027 975603643 775393285 472978597 137677581 508520019 771829911 228134799 9948315 608391985 60498647 262306477 534907541 574899477 196400371 797496999 183404461 398688971 55224415 947920041 970306649 79489573 193507031 43545965 977405401 386732285 52757853 372750895 444224309 260773431 254046017 519322549 945715263 49126585 206146837 412301133 711513743 769633401 726314421 618163151 778824837 2019185 726766407 895085209 57090121 310676129 100712501 166928527 974930125 665160469 423144501 148857633 247199941 668597471 949477187 743610693 706744756 34243097 831460515 790823035 50143459 447820263 770717665 751748037 254406241 494131567 341414353 834392245 657979399 185912039 864095633 539077217 844516981 751086217 526953859 927387749 315237395 755586965 270863955 431945705 719059985 730114905 776683511 110049433 175518055 272945699 847665325 537509295 501413845 975948879 283699189 102676199 651067623 963352383 246833053 986756999 561464551 355574367 465921721 405462367 786575859 591228959 74791079 221765059 792601319 375407355 694328841 264129681 873195118 999258227 55171533 177079091 16676857 676059667 833437223 192390547 501053629 160729709 796084625 992115497 532684475 958769691 821598163 66917365 940011965 975970497 964058357 669964153 795386963 967234567 20702799 271958471 755249363 626123935 838884219 908530805 608869471 747903811 507560287 705842079 379610081 940813241 266132261 175963885 702872325 878212039 319379267 743907469 470968647 549889089 648596083 217676851 120827109 635950081 486965949 689581601 938337769 444855019 842800747 293207067 167834913 771602149 250133777 926870129 788564775 104896231 644361355 146453239 658510173 98744293 588424191 514738189 126569703 121629671 539954905 454636439 966080951 608633587 81694155 550592519 574562695 866478109 552523731 193693007 875467475 588656255 902819637 905296879 756855785 480699453 54530685 249353711 854970837 798101375 687174015 281243611 877359985 869315959 653395033 735718347 935538781 263506785 270574189 149836891 652543489 195345789 23578471 400019891 632020621 6478871 803595327 948588161 354569209 13848707 978708013 106844411 879357703 601870359 931097527 584161247 221362237 281515319 961591211 253831027 124123885 804439119 111937049 532613253 697877039 424189647 850508129 592711535 284226019 505324595 296149799 324435209 409476527 780818685 994526037 6102463 331915783 121434037 897237791 586558075 929777953 938307055 652143109 579229111 208672255 74964805 466289863 832081005 782597991 376073819 128422517 502818599 353776363 793105369 24880993 736959217 11486689 992029041 207926311 626047587 516860013 124024543 453019821 830722713 488360563 22508771 637414173 302110267 106124967 394334283 599362797 328763511 67540863 807031013 758886873 155147267 848306235 986059917 902119141 976559645 190873573 787781671 502730589 653698443 650747979 2978459 86860245 94116765 323497223 819004379 454690089 201647911 905422459 838968803 934515071 677707145 453258955 30359987 274829635 24701351 652817129 130868825 792795175 996346099 813073807 945515491 350028329 71070815 421279291 895545455 585633421 948376429 929685559 616772891 825614049 962160417 651149201 968445717 222301685 863522057 492874275 457684109 921432809 569541181 831158413 547936191 664247839 863376473 978274103 134672877 12171333 749664901 381715793 140091999 53886285 299642991 182910421 815419753 775781239 321199437 134160001 78256999 152219203 656352477 356759261 667189687 322214273 952002663 725374779 498070983 678429761 208542645 780026803 835879433 329693667 325927971 162660645 518044405 436811531 376169865 632483385 442589197 399680675 985343827 743228511 170738911 581577953 259782509 316973775 423568377 939708481 756155211 185895305 607450617 70960261 210248431 808940121 796065405 643649981 384418269 670603209 114541875 849157435 778360355 288708151 177520331 26560155 842994009 217863361 336550913 752968899 965014427 35425869 164380311 457222877 901181073 619953807 118582871 146316641 973180521 109652733 265421841 95566599 502251737 613818839 286909089 442168275 983993887 994520871 663235051 186765847 478566403 116747709 464490967 563269473 458910929 941499439 529767255 504620943 599307359 383485921 882742119 699142087 880473869 262098935 799917577 85032821 150894785 608496229 182578503 860336461 30123495 880392929 496968753 987938377 885457529 212849131 405304293 737673903 108832499 864924107 948550785 845034763 236697433 386774421 276075059 500373299 319643199 533620765 428702765 726099265 49823159 253883141 45525415 982671001 725238367 9608117 604778723 91508969 134606943 979819615 684129327 943691557 171698277 288308983 309350105 111595143 914817193 530353729 987990591 260594583 239190501 170948293 440442561 809787165 138054241 862602193 960715977 577611057 855864557 797905535 373103561 912165933 797499871 921764015 587751741 833278903 207323667 862345737 926461351 780815801 519519727 751066877 948732815 857290089 456203365 350463427 148065931 671022147 604429801 446697309 52698163 897676043 702033783 41876625 878332199 171370189 743282585 808031473 660170773 174578141 717354333 846701525 818857135 598599895 861318999 418653533 183494829 256476577 568445093 514993009 709653203 881261671 540320751 676039359 389820905 466941595 57671269 87118789 998995908 998561787 126370489 228232637 28257853 386253195 984338475 750831027 594977335 837868695 528150403 473434487 348716187 942151093 228219917 899969695 537016669 393200573 159437983 952271759 561658997 195350233 915100825 842766443 535972071 795138415 924786913 536049703 849559483 616582457 162032357 99825017 37872391 318119471 694251929 160301025 542989539 678501785 893611135 587341993 482402415 419800319 277962907 546895329 559644379 937027897 205888381 355396447 74635347 182966113 636504633 760073669 434804501 224157147 221817453 822808445 545326691 344217429 319831875 672134067 859545479 174831555 874091109 476993891 715343569 179257185 514301195 708677195 233291423 426545075 343607539 90007541 194051153 735758467 661846885 59717295 166872913 428430569 202564653 16048787 603339795 852341823 546739873 154708609 110060303 209669931 359734435 301934881 735978953 860808345 698590611 595592163 846038985 94483643 936833381 872430081 87646629 711417871 381485453 362564985 390435829 257214553 455838729 520160787 789255769 958316965 725694559 890015329 602846337 316181319 12686495 412658363 701626137 426246363 412546141 749348929 618906849 685972295 139013559 989440987 419487125 894978487 47676503 969428793 927255301 341573277 275651687 568799187 930022401 549424825 398267295 636373995 509723489 789851659 513995839 733552519 478009611 11219169 546901001 486228857 738674921 704196305 534443343 147881047 352289257 732855221 826109415 361556869 321176331 364285617 228969517 987740201 816354379 592160050 300935689 917282353 369881529 924742125 107516905 688713563 858280549 886748639 530679235 482448929 828825449 787551561 847310357 604929743 871321319 712270011 619741413 358663797 943255305 699388423 99487425 571406825 216124675 636117833 677367747 107833037 571430413 469488103 308933251 221110923 583274603 711906187 71005997 588775759 407456869 761925419 838029419 176859925 403937617 302477825 868811893 544130717 855849095 455137429 864544779 220292715 409663593 602566065 36778353 737615317 463852897 97865577 479945077 334214639 326858979 164958747 258112109 831140507 943021159 358395239 360171323 797629313 19803761 557156159 769852993 976151827 624586635 643441875 108213359 160828293 652526919 503049121 932491321 86117851 905554751 113174125 456759458 358713053 772995605 579018819 306279981 171589145 892275315 319400825 842439143 120921833 915622413 689442471 17512043 251805549 795052699 525779383 356707537 379789197 651957985 31268047 471109061 49357817 147111337 806106473 191124081 484897579 230132933 897933629 790174607 88746591 260770831 833705299 590224473 97668771 776516713 2870003 571903897 635540931 598794429 396129461 564067995 77509465 759078655 738438003 838285879 536634307 397913383 235587921 634332105 992300845 842925113 537157821 402398265 893255301 705746239 86465387 640627445 279085187 893499467 804772181 445967603 319944872 638082423 795467203 901106097 154157117 543580133 62854719 432240695 260765009 297735871 567481757 584442895 412004283 709549113 615975161 431250005 299183135 299280011 583315129 924324001 297545441 784602873 534775687 924279839 272971061 975993549 346052953 376470649 173245457 913691737 304346731 38973673 647658293 157326839 778033217 548700971 879006763 620479753 545066663 269838979 112634179 68323067 138099889 123138245 811040915 184735291 489156541 889887041 328543485 857590089 130232941 282268635 110800171 377670563 53677 145202677 820195977 791525077 323015093 414401919 836880467 757470065 161292541 389092335 269697671 117931537 297994571 977941315 38182127 367509591 663426219 528128769 149446681 784699373 232438899 573461817 282790495 949127559 244985917 497085825 352503521 481516511 475244269 231121395 14342791 524738741 533152689 930574907 19764483 375640533 580136187 510162565 743121865 491152913 525426571 636559493 191858461 160329283 724052833 674100349 418118405 726949965 439681229 504738865 89656917 544712217 312258913 866191855 952574881 821873307 876528377 200143759 532236873 921193165 535400633 418890605 216464761 519902383 796321807 325798771 674351391 903225421 63001519 49274891 277388021 372499641 978989205 518385965 343289207 860301581 262570245 244984663 765806835 233300331 837261195 556117647 723548275 438585341 192435707 274743653 134753493 428946935 300574833 275914223 307691959 598067859 623337043 714386633 752497791 432268817 302458187 236615193 323092321 342344893 890130513 232767121 232893011 532971497 507332765 387837027 324858391 279370991 351060149 445887057 524909875 829467185 128340325 570275999 58861817 919576091 999531713 232386589 550453375 931218973 566058279 545486621 202930087 137487281 854319161 672985219 254336027 593152349 744512485 342657201 675267143 36402599 171461469 944985751 68159591 580777507 258727455 410417835 176834939 902932587 375264497 111148525 995766855 497057569 67742939 963187423 911754337 261998321 764603445 641754259 787545885 576555915 277603225 940805023 248511645 594883241 474962667 31278879 1719499 522222351 720783961 295426489 317243475 466168711 836761431 219493023 842719665 503055843 152298911 433609861 866045475 68016639 783359033 149872295 211327153 545009849 510403695 249172433 482693421 193089277 812926163 984635211 549390129 987697857 217019975 279156719 620790039 323107833 830088937 765787417 933115661 735272363 137515819 935232947 489948163 741560547 715320509 269910823 966033069 708223919 240706461 912608877 282513039 240070187 201045773 926715139 246898927 629751673 306875037 459414513 968503775 268804805 967824161 703785667 314879799 684232255 446279601 808702609 461425559 656886817 799010997 316474615 756016999 897551793 612728537 536485659 331518423 932516917 453852687 262216879 351333855 469892609 535339157 110560999 497656127 734180719 387864559 568250753 246712707 39930849 388979689 512274371 476912373 886512835 739437977 309707643 626350515 400597637 368312409 183035905 717636763 126955427 627709133 635182899 405277267 882819485 208427491 805599349 77776463 503539199 617278413 785780153 365506501 275615069 510586635 353025649 211044021 210003533 510179165 904456861 333880553 600856179 104622291 730334661 429486833 152194427 328484543 971569653 180780323 688510485 349389501 678874819 401905825 959504637 440432049 987034193 617701461 657315315 155010761 157298753 624567787 941926595 414705785 738361537 491526367 185560639 659675005 650327435 388535151 82336067 239081433 642523867 934320549 357243309 665305559 702120055 256260175 221862251 356757263 337436335 745908233 214767981 432233309 618075991 871534127 117360303 852839395 332727503 798322155 609061169 663929869 879456507 587530541 314059519 393160337 324706379 641086895 359007533 105617003 581117623 379420143 556890833 462681567 970579129 801195061 86903823 280871801 537932379 778468243 277215507 508135183 923344425 383989473 401951501 756554425 616340537 470061503 39901497 615270367 418262829 144872853 409856983 922345005 702858535 903597715 941836597 119264405 92175575 744737457 230134945 101582935 243450993 372565680 122210167 815165939 291304119 85776153 827372059 125538359 351631343 412655931 441042675 340423481 162490595 586059823 249886583 261886291 94718445 913501141 14739227 34853929 846589419 844563923 835987559 63679401 14243651 612368541 400036833 566568199 170697441 795150441 839583517 509296061 809622333 335813689 702930871 976896659 574374231 350720723 983779405 423550099 888258483 283167177 759788941 67067919 197460319 55499377 43511079 700181929 829926129 925733615 196920023 228912959 818754442 766514983 61372255 823624451 497484239 137036237 364825991 417289829 706413805 228151127 887617827 987866913 216920987 341345029 992030735 154380351 682135831 865994209 370100520 865331465 624991271 147853241 319029087 527776275 405758491 863385129 442807969 856280635 354033607 32681869 231001835 365079971 972342411 182188047 774745407 832155831 583734603 44671135 746686117 55531311 141683065 722850807 95812913 296219395 972864519 64887189 796012799 351128953 479799415 977096899 545985837 422891549 156520397 439147407 288412393 571330499 503574935 501414867 396768869 702097289 335188715 706299439 940645335 78620113 237102955 276712715 876846215 377105225 864540729 570282391 242448315 594871269 180534021 447996621 110473673 119174111 296069893 71914091 465680647 817502399 782064631 21935609 75266267 146802765 768446753 920413129 403786413 844213665 502468691 168927219 147735791 705692693 67682529 811057495 810871837 999982669 421218475 915746461 175483321 946573625 733908247 843518773 396806987 827279111 578150417 47999063 23102311 400000569 310464275 304803331 802018473 171826321 575130647 821679621 157133999 208789529 973289127 456771305 534911783 356303913 381979857 892102919 935369411 597373021 532986407 727732099 485734971 511661463 336292045 911540545 2271569 484796163 918016613 23753205 704235987 700824343 804713247 509342485 737222799 7719567 335899313 791151841 696074339 428118895 39523673 345460579 231447853 282616323 371316959 61312875 805722331 8291807 895683469 163810705 164909663 187354337 149252415 820092211 382246065 807554091 593610319 78123387 738990547 571804459 18758307 658451035 350815699 192388243 135609517 858289545 324929471 758118753 34160225 161059205 225872565 359455195 424419387 240392345 561712341 524298889 658113605 396565971 3258953 915127617 224487693 144149005 698953283 811287585 291504805 325478119 738816511 509117069 450733489 774877129 893475775 520510511 252560979 695624933 107041227 81846779 337250107 426193967 525378937 401629489 319640735 412682859 644872223 44213329 501624127 158508065 9089059 793324075 175647069 379629727 719017965 927413457 203916235 365681919 124243183 740870303 103517917 346033953 917646501 353823547 287183731 827040941 886299537 406625935 595911667 25084947 268832317 754254289 114004299 259769227 352623161 845299837 322470383 713057303 650948899 61620053 17781473 777298557 45642139 202594665 189193381 484458575 943779403 182921483 956318283 158151909 576141029 815266009 56284261 246992991 912321829 832406709 549563927 444088997 207115213 34078411 333146627 639749221 608468391 787244691 906722137 32688157 291602563 50293189 191622865 691206407 493232191 375759719 109189541 252291631 549437883 999108 808421533 477776229 22173665 965748851 465838857 582673985 103945379 914093391 269373887 116102433 292589565 957770619 299548699 681966639 941015793 327681893 170962181 483292765 949834889 561295553 148636649 956295265 866815189 642838409 558486977 969602491 380905459 211432707 502723081 411434421 686122755 512333501 894302663 8795743 809092911 371427719 734285961 244538255 655032489 780765313 570733415 787107303 511884719 779603983 146952703 423845841 852575613 456446683 517731701 808515705 415831907 896218331 272994171 924415195 860285361 261845065 676850499 828180149 541841599 479897261 942701197 348378001 904980467 57035217 590330529 306856893 560105653 855430857 976161611 50547539 41272184 989896433 178134497 23789875 840055479 156303599 58043971 88507909 907070963 316627885 926741463 569737529 803550391 543930721 290418315 421052425 807930259 411212935 360688597 484510835 219212069 762294499 532514739 153454655 831673101 262893697 370135979 892888575 698890997 706362037 481067979 208601611 303107985 446167837 867426731 325307779 590436761 189135003 600148841 434242383 471126225 726450781 696082089 511805215 755478273 702317269 116227485 165643371 887028991 86732481 181387255 9101173 31734179 456992293 807780855 278004291 852107471 845191503 327348069 344210855 241235565 306138575 700284557 807290937 545192817 349609349 445765447 693255511 346036435 451535763 429390831 784861741 632977047 556333415 33486445 814659241 31009989 49734581 287616815 263002755 366162035 667558263 15667243 662807099 180275385 502687989 330142173 218037275 615311801 219913911 344063569 385049395 378698653 122588309 721084431 735027801 859390361 152731305 178412337 401738545 984764133 306671705 993562709 624492319 106642885 46241615 892442529 340235349 7264899 989511809 929999297 186338509 618322543 433768235 553456877 446368583 436311783 445299153 721257445 355790919 569100363 640615743 351469291 705564451 532594951 588805513 271971027 478673135 993479305 279660299 122145261 66933645 364771921 65324907 621850395 245704869 959242973 34440339 89716931 588567209 883432119 750733243 195789779 275773389 393111925 839551067 885867201 965380885 900190383 992360249 465708683 892902217 691908359 242784609 855924665 280436215 529719591 448573735 525719381 335241337 902365891 789809961 214296057 419288303 431023507 291399497 607644355 290078529 656761435 295936949 332500057 582824479 640743397 386592223 909284327 235091971 750285315 737304455 803956775 317592105 599723151 77788077 385183315 765154207 448797803 431992223 81205045 304498225 155887233 881868275 836140057 986356089 866017477 128030083 473605591 909675989 477631791 183980661 636026315 99857777 111050435 220461875 273552093 725999419 635795083 375617393 257615995 858333163 710999193 652947759 193012635 404091139 467482375 368076719 379891131 982701513 221680887 727300219 105607137 947614287 261129107 263357035 450742173 192323179 232594703 439702169 708434947 673515201 469561253 469762411 649322163 657418677 3993237 890589581 28866771 458761339 949498155 925538033 723069967 266214921 222370231 100398549 626550689 380313631 729399447 886871483 595460419 35335239 577749803 68958323 522711615 545496273 752536287 796497169 97754209 839029203 925362211 898772717 210800897 465649711 892774769 396129455 893762044 155071631 787192909 831134531 673008825 52878431 334113345 148494555 914744613 994590427 35906527 835796981 176687287 839813121 83017665 629617749 572295021 544245147 838630793 153216009 87082701 555538487 660292835 11713633 908782311 707329583 644087933 823665917 243779407 645555874 902092055 123141311 823309861 978829435 94739055 374707925 137604367 138292073 319067217 754768307 512917049 186570977 545536911 372939795 369115997 356532519 765516547 950138877 673680055 886317633 738678415 598428089 28230157 220078339 220897309 891901663 284229037 121932289 245424289 537124681 742453615 842862747 566338837 516544029 569326511 474029565 962816889 645209797 616300117 250392085 658430937 884204023 618336207 306180765 775383367 395398319 895837715 895758865 231520989 933925679 263490465 354492095 982966461 849600007 725547643 938321329 742238483 759582473 518590771 252593605 2434319 238989395 445478877 529481369 515761643 551804741 242414361 640779155 331964907 398841233 41137933 113957095 739235161 544755239 726714471 138560139 964731271 985403973 524948315 299155265 492260303 276120175 396393643 853474191 198155925 577702257 309710491 582801095 178222655 72793440 14451705 350811135 604146243 547239063 693672221 208782105 304668699 873027259 782019813 639254975 508043335 190478265 481488821 511891549 573694291 781669573 689043581 390915887 969767121 972701529 678688691 624300341 991672923 42894907 844927573 672002355 640229011 50633337 641000171 850216127 561808421 590641763 526954625 440884013 887522497 82447001 781497773 445991071 969353761 11092223 288403855 985592063 64281355 544296383 147984589 478787833 892972101 815309901 5773461 437540105 887712675 234849897 270929819 248893549 557475583 750394131 427839777 695305773 561447739 212847003 188212715 197063195 961347907 2263187 270228297 377974737 23795975 296257751 287463951 797045161 742675585 590634125 483267483 478412241 819877559 858934815 350373079 148575033 298186927 91960643 57375533 46402709 215428733 307284981 324386709 471504233 736422459 737135992 389991309 328001275 622501643 939710811 267305501 451683677 283635737 720586863 389041873 537931367 432433557 957314003 543100607 209889977 490239419 627747305 831726983 761363643 136162251 839330653 753621583 610318237 540071697 760299047 368395461 726155351 536814047 491700863 350723615 216874665 584818831 230903275 668318235 77452831 638518405 533223991 462925823 420284675 107620647 670074999 196899737 766895475 739401451 179803657 735285313 762302541 95364171 638434193 170758101 892036151 192558793 491374071 15197625 84592293 175560685 52701045 876293085 935091917 881479243 615855747 783998905 634543791 504223869 212551401 43664711 266673173 869469221 167408303 983662097 846673295 491354351 322734381 217429539 870166899 476882827 898223613 704832787 664286947 326417589 224634373 543735553 704430793 151078445 104513135 71298451 998314193 84558273 712623537 37601527 502580343 119572031 683686021 723521251 943968249 652912259 562465011 625777557 887930721 837594735 46263109 514726099 439506301 894306799 926047503 963322605 440069353 343154675 548238893 797536695 145640193 159405943 944676805 877078927 596908271 946901114 884545347 172146783 412401315 266343693 244242777 168182417 62194135 443080763 964724485 158186525 815000329 460115233 135248523 334751619 824245377 758515681 195956855 584367303 724457809 751993511 366027421 275082871 38416465 674234531 7864091 315071145 857250081 997247761 307248979 715376125 25438505 979540019 468917491 221559961 57439897 737166417 950859501 205596971 103129961 849263295 742743167 986844649 182882907 7356119 714263085 516804497 364345333 995907837 883991749 114943593 737606025 930098585 987208791 503120193 731803695 761884189 581708611 414234221 420010951 331900933 22675757 560266445 262310391 763604433 906317823 460307141 399479603 836132365 394532589 180141383 39700913 551422541 597091191 402304709 266863731 684283943 38115423 815586369 523578943 685419585 773258927 879713853 878838951 71918401 767239359 544887757 515433729 994756831 801452841 48368001 726705521 763566287 537734099 30692477 817078747 863383781 484399847 655048035 825445107 774224067 754171355 400221025 838512943 884451171 540314731 794210097 226409423 69565327 614489499 647249423 819193821 218585643 329152695 175651011 907739943 787024419 552961619 185756311 906535241 18507113 807221067 966018151 907898527 142520819 35647429 665188235 866549075 720979145 909444653 32974575 881887317 998313713 905229877 620887037 452834399 454397569 39172571 992338351 310599919 565629839 195864675 212462975 390291279 905021249 12789595 157604983 463130509 461224639 298269075 719173668 550182787 95084091 442405931 313703835 166513617 228232177 411979141 523209853 226495199 393757985 642678863 860614125 757755869 870963481 328569979 138832283 761309125 801763879 822643785 268892349 231693909 600136359 375201593 282132241 503745301 409908733 169603355 241755613 120446039 987846545 150444799 985927409 842841651 583415765 862224965 784320417 824180105 193055557 243613585 684037581 331527425 97687395 640632781 168475867 612641291 304686007 828291887 812072119 424441823 715878103 403386931 620076763 588134013 180265305 620581531 686643521 746459569 52553443 13455991 332209011 923329031 772630813 923351833 912963965 834661335 29341881 658671133 507345143 162722373 567896691 675158633 450978815 504171061 396304909 360958759 788121145 642569563 770469711 41694927 576168917 879663405 194665741 556135449 421588617 176622061 745609763 560242955 735819411 776545695 95014513 734265841 290727865 618748697 628933089 649838687 214888523 888284401 94640485 891185201 781149215 112893573 168911865 118566543 837332369 108578559 802457503 303606495 849626247 885474385 534024287 819345371 290956147 971520049 438447439 237171835 209750087 761924895 352453509 747860741 525282181 278471525 402524455 630974469 276032305 277197841 241772125 41992017 252471257 588052477 369450073 499042051 831536021 306747593 252278871 247103103 833856259 157370845 887331481 45880179 197704775 67958635 293404519 220417747 97981969 814183783 274002967 144063449 394238615 543830677 463397375 848166669 44872343 975448957 319041925 60393783 543142489 582039405 151635217 21566575 611517609 17988479 708348951 301896975 642581981 633818003 69995535 458747069 532868309 504513361 324443005 794776931 656848887 671088937 324877545 765345847 338648623 741328723 513245161 125655221 691531767 925716689 655294483 441392545 180387915 51887209 920618509 439392775 541320113 977260461 308904575 185025083 965274423 803557365 805668635 115698393 376524661 254326113 755290527 867146695 825980297 565749209 327392967 420805937 561043479 756068875 620990307 693260937 139726927 831766133 30483265 71417741 577315047 899277905 98227263 589717313 306496287 877457579 579414845 195869937 604069817 285543763 129965349 330068275 151969287 187803617 759644137 229576929 115999967 836560051 829332871 426369055 208511389 816986613 545001723 790406491 595904295 282205331 245544789 409574983 1883375 846382921 920139428 480220897 519856617 834183061 592167683 200631407 991999891 657617601 794951573 298497145 607776499 987689181 919077251 992090071 864259991 873041855 728180481 533808547 570478743 418565129 785918535 251468865 866199441 218258469 237854361 701238367 640816041 569830719 23323455 478309361 106796687 83389011 493558927 130648883 42550651 234592031 596724961 573182889 120305191 750623021 623445397 108275997 802411996 341128907 14860827 10758823 610169449 459745299 702998239 984653219 572357409 906732517 516839519 431701169 81599461 350246121 946251805 451708611 119664667 869553807 633854883 777104393 663438257 79034385 328272769 201431809 226652189 226313069 306969685 533270894 596813659 775431787 335216063 699173727 816973047 329736605 472491369 505776677 63885049 464205659 896039943 684116317 500745979 446971077 428378193 515896301 547978523 858439875 902977547 179414785 923428605 786905349 441844479 648328973 226351827 869021955 902944253 937860811 163684943 675183871 54970339 138672705 688423857 61270783 353503889 988077499 802611905 907984853 231273457 284679887 460859851 129210393 593181431 665361751 677255335 712413481 676531355 460352631 249044401 680041009 474065121 308929437 979944145 428585759 989842387 689213819 483012723 609658795 317906561 15353617 529591441 902299733 833959433 794136223 889703335 572658023 503936651 698704565 978919867 286391793 945690673 927052069 933548893 273883849 129334831 310236171 972667041 66367379 722808765 15682765 60276263 808696755 550476575 970696469 427781139 387806557 618678943 147333081 808328983 602160261 838843791 936509525 135669605 394454513 140061513 35972875 495599551 319805475 462828591 336675531 354942055 454076529 91489963 434571175 526571055 640072175 34733617 516396029 730277741 538484863 599583289 976317807 469872381 780837321 197977927 939334121 216134471 252401727 312958437 262395553 96302393 560088085 118659491 271158035 353867081 98140239 568761887 908359683 414272117 756971445 327221753 146511997 896408899 110492629 430967773 952471767 828918979 265841673 158891385 903949225 42956681 348690033 966333069 486900445 979123381 318668533 600475607 119696025 676714731 39398469 37958689 443580503 183749469 536013019 342255425 775903183 996442813 509927411 192342287 248375817 331863629 447160475 700434029 458498637 326316753 703490207 234771525 620549427 350984599 710121369 575527563 713222037 876560247 812820455 634426681 50429847 273476557 708942261 740017999 100447655 126652289 101143537 656540121 109997945 438828545 79611731 343846119 424176905 172415043 682141533 389558423 168983961 343337413 933805909 855047689 250678457 903182221 477653837 128899689 546794811 578884907 925757723 317549029 119854651 838395315 836428643 363930301 254995999 795865797 627056265 138287151 715442577 378010503 281476033 56050055 87944839 248025509 941045761 805964567 504695101 906900569 159249673 433070905 638415159 760522589 707081315 497882959 540016705 850721275 592817759 627152579 166104943 588596223 76217107 463083017 296486943 537742529 891838817 896987033 273330419 803296797 831261171 797809911 747929303 710703995 313259573 335479213 771052547 403723467 171818851 156856397 612347119 147305855 709389691 187455345 420530017 919808407 852299335 32402619 172467045 405463705 262782037 837427159 432950353 120480917 706001407 329613173 983038399 646893343 679767141 406936143 638629523 211311703 580594799 264024105 185528827 703473635 902252495 192688333 658248297 570100207 627198457 786323213 837030045 762605621 585231153 947917763 334516375 310763759 566106495 413176529 303626407 19248615 834663857 913714723 902575711 745079659 90045537 659428521 850005403 710902605 546569965 631108445 63792511 882895857 168533633 554439235 640018297 536417081 855279883 269458277 723897917 42486677 857965125 355307477 683122887 879146235 78647979 117216429 266665819 565826025 868146827 69636111 901365381 223069799 376842991 953428007 532915225 626101505 802148021 943652389 21426739 948303309 148876667 137063747 767128121 332237163 98680487 642818503 384162773 311595009 544043117 790888439 395071487 773072955 702324931 511292199 628335087 772357715 101266539 885596337 546675755 877243653 165458411 979571959 754040191 962125975 275945109 608179811 925461503 868210647 205073791 349143657 204972041 561302813 277890699 149874819 801961279 122086725 401157475 7512881 202652559 994585273 654239859 300311295 662251051 468029539 225860599 929412991 926576273 258909371 27461359 776930891 253774215 246199999 753254431 972827655 523006485 969147639 510237981 652385113 747241619 517125231 758662461 131129335 755752859 685353405 734017697 884642203 223558929 6822401 657663283 795955973 826949923 926121441 438491039 728069889 367245637 985002123 256204385 84210017 431914289 951172787 217663671 399184383 510794223 41348507 949940649 296203197 3003081 777985543 451472139 803147655 871382611 449136967 360188017 410362701 376144745 481202733 461815869 675389707 106312751 522616349 116908695 112675777 747062549 595828217 315717743 645838971 71652299 971965747 661639293 3304267 153523791 978102461 268409923 799521355 138873829 636913687 737714439 135294623 42998295 340071497 960533211 429567341 19007935 811401439 383106967 206703851 251013619 243245295 796412891 859237203 142705947 620129817 178828303 922579941 565937123 229175171 173157219 356490733 57335357 151127771 256673487 530555327 401993319 339114837 376869395 356361649 304356325 880848051 610146491 619588903 15681669 735508025 499931921 641986957 630442839 941583799 876712755 295843667 786701755 521698945 475826687 30938355 49473107 372172407 93038107 821335539 712704013 564224765 976902907 48112601 993930013 508552707 9226197 366286137 520243197 98299135 672233129 273420461 22859891 925740017 518291265 356354009 681958029 468954717 297508397 211294819 458021789 316743249 334636483 351338243 905035071 960708963 677387045 971355245 615796311 498830259 430996797 157687401 655478291 638656231 505074103 394241725 338223847 460573485 326141455 52930109 151574927 793761339 498901123 511814595 634108431 752435791 661029149 13617971 306726065 723338031 50094763 738624627 615037709 203618601 413907913 453644921 964303615 612444181 733582803 899870783 642160041 523467345 755224562 833076679 414534263 306191299 245791769 806411545 593720351 862309079 682489855 593140041 232685981 714062725 847287331 23780209 77930293 484202573 111489741 884185013 553498483 523182897 757607183 23887421 650030125 209497795 996029889 980872251 102357883 252431129 543284867 722550505 865917637 148997839 600058557 505299597 667539895 242651149 49895071 405287789 707895107 742034817 835666977 77822173 318071465 747755361 177852421 355166777 859607657 640103019 885791953 540029919 713772369 372965 416432599 837456445 754515319 468211103 183549999 447428291 237155125 413477613 101699001 66409197 271047727 724536751 802221595 16337211 19597395 372003913 82256841 285265467 513753813 791180717 603550969 593455483 934902577 430862413 891959981 540504727 142993449 616977193 871078827 324898867 488057549 956384457 651676037 216396535 738745711 535675961 462325649 346568853 81130667 225551377 949865459 446232265 463837285 29612397 991059087 87419987 669173453 345751797 633281049 970985473 525103443 719649751 801090311 348794785 577815989 273643721 355979417 992935183 789050613 476399369 822842329 609801519 125756003 37668191 763373205 36078825 29444753 683456789 67222633 27322415 429179997 704888069 514466737 988193021 822969833 761017997 999560855 597114451 569685921 145835155 68092939 906102591 279581501 74541187 706924743 834361807 2302133 68398423 752081481 941897759 187759439 533339273 203467227 684514131 498763927 19485475 108340619 368787603 513898851 533100209 234758451 47407121 106752715 15098443 208751987 78154761 854120249 679775117 444976307 905486269 774859603 883706783 579909667 359031413 334884627 26622511 199155901 236584069 571433137 210205299 441878591 370374729 146026421 874646059 849943601 633132319 897563111 88856729 664020197 573854325 328584287 422884751 240075891 70356669 615447671 547168353 760294331 534517359 670542547 505038063 768047461 622705421 349915747 56435357 819543265 259402277 27888469 407198556 895017831 299925061 477835819 369601697 366216441 174180873 880147111 677462123 782284637 757381909 296742613 500186175 21352229 685503249 885253641 499535915 687862951 529086639 330616799 30822855 813246215 106776235 999089469 431958831 535226153 381551303 865783629 232187917 447813825 515997899 814664325 115531402 923009349 158888333 180797857 586140257 482004215 599651299 204439205 827123149 320468445 560625587 623533021 588850325 121576647 174260453 435391709 626708745 588490320 521782379 468422019 302989565 446241751 97598273 68740337 757118673 807519363 628880745 732405909 668196971 94664775 722429163 478828321 397068857 355138265 90806493 288703379 971193903 680525497 851273301 931645489 67753167 794327089 39506297 918774147 814912541 554617423 23262833 99314527 55474343 651943917 375161969 382855139 620120197 583619755 753814193 347260531 802558547 822645745 777185139 142179513 846499899 53168625 726356229 810208169 607590119 977815711 710596277 874396803 549340815 791340223 421807585 843421127 137796593 229334745 362442471 207434309 287080277 958121019 722875959 101013007 52629893 633322495 903115069 722939777 626724061 894152709 764977527 449930305 185372215 693493237 923755879 433387065 721004539 727386175 553310101 953897631 246174997 334235931 158601111 480248047 494751743 384878475 706832643 811451371 540673973 306893909 757231231 620414115 988414141 977190667 113794227 734874473 362964517 743374597 367980883 299484891 587236485 162218595 206014999 86199515 319620859 641046285 784982979 81839509 504513067 187441585 485395231 759310977 604870469 395854541 176967169 352175959 738478847 704927131 977252927 354860829 991850647 458950951 260958911 363594527 946571989 959898433 121336425 722268657 475705605 407961473 437575473 862347377 605836797 576394309 877004559 648729281 757341469 732007353 375469319 237264207 622326603 545966281 927871521 449811919 242738677 593605169 891320435 663746619 987584529 449248111 264090643 124082137 108152091 10276813 808561703 972195383 753866271 449714523 122203095 337937445 37695653 186300911 849108823 696938179 325621703 421201963 574550751 359229557 218018595 541990521 350269363 403410917 834906589 582814725 6376221 480362249 329124773 961820619 672009581 1481243 282453937 64816009 627467521 437176995 55790017 883218121 790816569 516044907 194887959 680949209 615507327 506258567 859516293 851891923 285759045 713021523 561501281 2951319 710848009 888514165 180877191 94987725 165484103 23528919 146290271 324240357 513071759 306566831 381927127 636754457 207469425 499463545 673023075 977665639 905829253 613961721 269803781 567021207 404111473 736446523 745475649 809972539 30610911 947836307 538660391 990184107 379239549 739609503 406425163 814816263 75574537 652081473 575704269 403045431 450625861 863112103 49381713 996336363 194105595 775017283 314391559 90880411 678775037 653372627 120766631 636845193 982801955 191753819 439849323 535147451 528123475 51378217 264491549 90969091 17328501 126022093 666613513 937909753 178433149 352551719 867291141 133064955 987650659 468446041 13278067 7715893 627480363 301915089 874558771 172170645 706921183 221061955 373451705 282838739 966797969 494254251 161101049 455940719 206804313 510782027 882839921 73892019 806228829 971644595 667872551 888124591 265814215 492921267 609919659 864008505 670478533 693087083 190204433 368030709 192700055 46638911 907343353 890635335 635297403 70411481 852969607 927071331 835415227 516248879 635752555 350890045 161510573 346201469 256376285 375548571 406619561 98638919 37329303 10348543 202606609 996735065 794250211 890544575 895294543 286170567 438864781 166339311 518764503 712411373 183962349 944765297 786737185 785244529 803569375 252083949 17845169 248348991 877330379 766728661 658131217 891948425 396107423 203053149 168931795 346926541 649311185 485112713 202553742 575378127 3971167 700696097 2195691 139429787 436614863 873156531 262791825 205211269 269238321 864141721 485487665 951065131 738120473 471128051 185043845 427719791 923640999 295921833 138232145 13258111 784254847 291074667 806831199 182615757 42573523 760442291 446727809 704997913 524065621 817718717 292255119 681241187 94129223 505992087 458176623 373315835 748781163 904716045 174113291 128500849 758975765 632884153 899399251 735299493 175716117 528948217 163348289 112715451 662035407 533931513 757367257 69273629 735112741 221801127 488846117 328839039 585614215 117138619 195067191 832322273 922053355 738722231 381045798 966621573 178417103 143210209 862456605 407790325 818785081 637153355 971859773 648193545 941326009 617953739 168741053 261975517 860825443 84360709 248817621 888689873 441649879 772598621 467814857 43704727 126570553 727589127 158725603 203623967 84832571 453915129 20806261 912030887 721906959 882135539 207418841 583570097 573071223 711804031 292567409 183778317 150664631 721800173 596671655 628571087 760657821 370975827 716297199 369801551 112870017 165376659 260793283 375253301 470900799 378290519 242128803 678747757 546321471 131052555 852124955 53951785 96793199 347851243 798731965 719424999 114211909 217794293 683365155 184866925 110980031 391545587 302211055 259758787 393625189 751935603 833131211 310456895 515762755 670416335 426052715 792051327 901890287 865166375 49471367 957207141 116983433 610837603 597347301 574856991 58427573 213766709 614320971 406629665 629312933 416697617 264331915 238063909 482055437 51008827 691799683 754690867 339593513 849915579 928480021 457225619 239910851 616635487 683432487 69716957 647833383 160540353 967222447 197161451 33099565 177523519 560295333 604669155 505077299 643452677 582631183 463797807 520913437 823795713 205887731 70544517 282883931 957215725 66069605 654554337 257474531 36391237 993679487 528779653 638379571 242440791 762342243 746269953 644488275 804294703 633484603 311678759 830053071 929767845 657887547 342920725 614973885 432189021 270137501 428976427 382124477 192785851 274258337 203301915 822906613 970725875 270890131 431490517 534576657 620556027 669691077 253036439 181056843 308286869 78769553 734720997 927102303 68426311 995025241 253792139 274576019 446714467 254652553 849692831 648007605 760655103 833326225 786568057 360410397 289096189 812387563 293702593 643732391 329735943 544228891 149536611 439339965 482282123 71798443 106734995 527524425 771312319 527104557 678446027 685945795 267417769 250504765 141211345 606421801 698850059 509589369 394343347 657025795 702190458 259865229 898967745 778765915 291272525 227282221 567426203 476933069 262298275 843400467 137351973 639030899 368940391 183470847 79457417 680142581 709496901 739022269 66889275 885746815 740784057 993624863 964442619 980584907 385601793 256835327 699818187 14000661 696387365 606737473 761733109 921312803 899016185 928499659 236098576 300390211 418829073 499963795 688928761 647276621 778365647 116814227 14643155 409251999 51375451 350758091 864888841 684246301 74872741 275185223 771955281 124582199 447240293 175391257 502323367 641830885 557342493 996036701 474178127 174071457 82095891 647158833 750389461 132811379 529593945 169401539 222140685 463963882 856052423 690727491 872669205 488438559 646086397 431338219 353813071 289947819 943327587 836621313 878132327 768192695 126126377 544336587 14798421 153974513 190027591 106934173 712225361 917618317 524608895 748652753 269708769 735911245 892548951 526054345 163430609 46948469 63438623 675522033 121806391 478557141 43407603 6399417 996126059 83921089 596344241 623730589 722515223 699453719 306569727 482139933 339447329 630134849 814103889 117445061 893275331 888975913 857643229 809475623 931586423 100152391 594188963 299396319 574857215 512526491 209411693 755671947 536664169 36313767 562236619 178857945 438075403 346519677 154706451 381525625 319154815 402731955 312514921 546712613 617818795 745006181 399691185 122278563 117661625 930765883 927351453 779242425 757373471 655392099 194285991 746006587 424997529 696906129 935939853 583057667 50106665 67188999 286308057 661433845 827999263 99110283 300930009 54317817 80761101 789151591 210283689 467650817 592988111 170276469 819713701 783548167 672298379 187175187 427839735 205636369 286760365 504233253 731006863 975702309 819475175 607478045 756644903 592151639 773107255 116237037 210650429 74877891 80247777 485329685 488018713 383131527 867975281 668772765 813929165 115507665 339257275 387507473 282676529 86002129 214425053 207792521 494990821 23973059 91207225 596752801 345382481 126760679 744501885 250603905 67507365 710748297 81296283 334540759 449810137 721372413 943964369 38454489 934568878 314715033 182044837 819481925 27483565 460917441 981122015 344907617 707229221 516845281 293351061 423714301 828833839 854016873 655405861 4994413 367088043 279218133 133065011 230581903 562513983 866984615 891636393 67493325 980418143 253167719 466920125 369013265 205663809 553716393 20572393 439199189 750539495 272429321 185605621 320329747 313827095 916953125 785950953 708049237 531666019 209808555 116469277 567408295 856631841 138469963 638289451 176999585 607227509 978653377 203043065 678075999 279724867 485521615 8275121 500284041 382211903 123697981 525565129 172109389 857440991 771660255 620807421 871019617 762404195 486084751 654098001 423384067 349823445 401209393 126964753 823416313 298558979 805885869 3236049 78916499 217919369 172520181 244853613 647995301 596546755 874161669 774630923 135950223 185021403 721139167 525168919 345029687 387298241 960721291 406725187 14573833 419218223 449825565 548770189 619306237 255368611 440272049 436021305 898690451 612616807 372530533 484784085 726943183 810346889 363324007 885797169 746978111 611114723 158580711 10232173 838805243 839003413 628188705 124521195 144232095 687203463 513379415 508531289 849444179 834310761 749597649 274614185 548371653 68928437 480817381 41747227 81509419 728792105 125538793 270817327 559107395 937454413 357139011 666797749 796481365 488654707 757785435 931111357 568268843 319580339 646575011 353376935 469729569 938431981 635889047 663103511 804640273 874293705 882630839 191639287 976268385 233171894 736561297 289331581 339750403 379647727 453655475 211567653 962237545 148361587 344409787 925051057 817954197 639766281 26032967 348069681 617770251 531085379 790557957 65354999 158452441 681524599 974570151 742410143 778237591 841060809 943675621 7999503 983012961 915521565 394109313 189409139 270396383 350644775 148572233 375020093 591559999 281522013 680710667 713680171 785029687 880352769 481699749 306615873 7424775 599855641 54588661 561918923 377614193 663084149 160309737 731535709 230747591 167026609 427999603 181438677 822251485 72891176 424191627 256429909 327616531 509383687 35804467 181514825 936347727 818747965 427787128 479429225 424143101 383432065 756448875 895936173 236309527 651230291 139258663 939564379 349313561 903497981 502456779 312241918 999213321 583940749 550210693 826975087 806022005 781660637 121375367 858274501 906946933 901761165 180240649 379324005 704782757 887612933 223306319 445763581 674380333 837799031 179481761 961246337 969443773 595382743 512064853 589409067 6770311 732306153 79241153 81326211 639192907 347860021 910273611 301201235 384710223 295650569 597562203 867975085 662120547 149546111 76170339 431178739 909125085 424981623 363032799 620216259 153952665 243037849 256523089 229677837 226155005 163881301 169413187 572149509 851967995 577584867 466659653 467172647 96164871 809848901 207427061 305105463 150861597 301131843 340019953 74242881 239871431 943919209 974005993 907099801 795243795 108891669 182983561 705820891 853756309 221918565 725857935 523592173 354327147 251183681 276306109 937957371 94243903 755535191 550140123 771836023 860776507 756959525 512514239 284349727 412443927 850054885 674384449 827093751 428088849 819468707 331914305 256379211 977983985 273553199 625401261 769257137 677356547 456395041 319473783 823494147 687581469 10475479 960851095 22248293 540746911 560509309 450920209 680030533 314091375 349034239 786969839 140341589 802234107 593338137 123132993 736446867 729745463 108975433 562316581 90992965 648217253 15217369 846243003 907201523 916325705 19347929 129544237 58471541 756730291 189961247 922660269 815444965 936108791 450306125 844725623 813325991 49908915 132013773 161626829 58614123 315115025 534455499 937618169 263689759 833352379 516400963 290689099 370678021 247481833 36652019 753016097 973485983 987891035 724628581 728847579 906906039 74620499 383453927 787189475 603960933 488168099 255227795 546160557 682634501 797789601 699880777 821685169 969328695 866232105 262168241 268720243 259884781 774006947 993192763 925844347 926290775 841208827 843301921 533997919 414173171 93961899 488000865 396566199 577867397 513328815 427741379 502324517 143487769 245866381 874606809 69260371 436783363 862785877 896736763 283635443 852426719 840179099 599638345 654738371 191526037 626340989 440154539 208507009 138512459 974503845 931640017 441171703 77931387 378274621 772846643 384958459 603961565 589004541 297335827 20654181 562143863 226364709 912195703 33357335 826463893 774589815 815619633 950117115 667067597 16121415 895865817 614349827 853422329 174565221 977768141 125215277 732507709 97766707 521427513 910766967 448537095 350038935 89746443 642788843 912581899 670932223 366382075 787278495 87482947 879228257 58099337 954970795 390931959 496453947 366960639 962052657 603539631 306211987 545363821 652128091 517899331 1049593 420669353 528369501 415421133 781227905 453422679 972405103 739078579 412388809 125799131 851430869 290265759 643441915 495274345 440096985 136997511 506601409 119858677 792911307 369175207 907203669 966745413 444423689 283619201 214280561 34983899 960444915 97615333 835550559 392679181 878634483 965443045 802944235 645523439 112686973 884820959 746445421 464101475 167056905 683406709 984440513 748623377 42343963 679799443 271846991 750752107 125195837 472528495 221168645 384024229 671570433 334502533 196486233 845604547 912981249 186976665 706131017 293982349 432079839 729991353 126573659 618032529 742290757 641160757 594074015 860401961 682443495 671380653 234927785 98102645 368649341 258463747 4272791 503555677 86068939 965804133 995874323 449969297 124986523 579046213 163997255 589685387 845162431 224894561 713202157 503511431 144050705 412670655 866413631 944215187 289038451 698453927 670523399 561271675 474372047 323078065 949721745 37181913 710842905 896827831 457462965 212284939 999708489 948103645 96924623 648941117 702244451 189929617 821132999 153392989 623381617 859252103 158686987 425654819 598399365 710863547 961730449 969552401 718165945 50066799 461009367 405878893 243580463 692026163 786869989 341037385 842745873 926606553 569885253 914818683 341200275 540010365 636437779 423300263 663026413 731470725 314556137 481204273 263868773 661474203 771069165 124350029 890404927 232860597 237444305 342410737 223226835 349311503 562752967 515043037 171390073 743559725 41645457 37006491 932856211 617769435 900235123 331242363 155527821 556505645 258287931 391807379 792311255 216284289 58724417 195229637 674246123 33905017 816994401 214063291 893391949 971002881 827632899 275204577 889338503 919819857 499856917 903000691 460076331 454802657 591183117 745683055 541457107 906194295 338737129 232333727 42731297 593932319 800127025 692664465 514247103 338924079 162598895 231418783 3055457 431119169 863457471 483127785 132279489 262644281 663209147 321149015 650424223 322765381 402514825 454311067 192744391 945134551 449249115 787144745 500700683 827117999 354286051 585257285 810597701 405729741 154672995 590567927 240578903 970212993 982015903 308580109 129038891 101572957 22803685 995893537 740404917 901218877 526074125 458795409 139468271 456117829 290901107 172972425 925189081 269029093 331152641 380141303 389541503 191446731 770115873 388285845 861467379 583363833 409920203 314450911 577323087 329918897 727417981 292539427 210500789 718923135 903169085 456175469 754691664 185566263 892905115 30076053 199725649 428187637 814797229 834636607 912053237 687981087 98869775 100258513 237254522 321782367 280702950 880035705 482508079 575133613 405043175 101228851 775171171 104559425 742672451 607890111 750535281 430325665 224896439 999110307 716012475 323582873 823282829 472819761 471369901 307588413 488710035 826762367 364070583 138310379 473858333 480089969 62712659 760711237 657241609 992637099 271373063 647903545 14295231 624260257 393887321 957295865 43819053 787523463 752790749 187432707 332870347 892644451 233361453 599281181 156796819 249526777 274287851 53480271 354665741 466640345 152562114 890254065 239142473 409236317 95886949 616541085 971760093 743360677 118084235 487012151 978301157 871458203 342350075 171382765 980998151 62258923 94417019 520812851 676696693 973612305 987351775 473375939 45281507 143908171 444307457 464331685 9660047 988426401 539418819 711560995 359222847 192791271 77097489 13766609 474362177 937976753 354716635 117044363 333355117 320023393 121878043 482826103 728844577 577086495 253139927 505599743 799106625 620115675 497025045 531587801 796069693 866984525 765940457 477611777 195113227 323955703 242451565 322574523 38623531 685792543 867318723 196423571 528765087 544107991 385043479 689038429 857904377 902161399 550113177 376609333 79140687 345796127 874000517 40798593 38492989 192860855 329447963 220351725 926561259 805512943 607834535 583935595 790954245 372329407 32347515 918732857 167351749 386930921 889676785 337091035 702439399 92032499 688706157 22138143 584492209 859416879 531828821 115748117 152682483 405799603 88954399 265382685 945520385 152438627 93475909 681043417 313143737 591683555 358279751 299913783 491923333 434432423 748584371 434130539 223979599 869693925 9077015 659264239 303336335 260422813 843309839 31978377 125606211 599291289 121322813 671133767 24233715 711550825 911072589 77203067 84281515 850642019 227028463 850679745 534888451 270148011 465650655 396396285 225278231 170629157 190502109 681201501 87423887 586370435 557891253 505229141 790816663 408380223 420452923 123806625 379393257 487503767 859946053 816620101 84157889 976328853 968115895 101966733 224290277 875234055 21271421 579223309 238628261 773084041 177929607 636414113 168446165 246721911 185941457 642484079 543363541 958229499 882124379 423508193 800008841 502313733 124179249 889323949 595043169 368498767 274296167 859659471 144834645 929907287 449438227 811217547 114969567 768997733 404771161 3679085 395782665 658605194 528820069 463149899 562533727 233614497 215041383 568781885 302190073 757520711 189034139 313618347 876013683 157162981 264958785 293982017 2262773 647521451 555788198 812315123 376932397 522311057 276950811 455407867 679737425 30126937 265270009 732924127 314764829 106535561 750711717 872413291 15218141 217902707 723021703 126069173 992890457 596479535 58830353 673706263 751517163 95018397 229226687 140804661 28948337 802310243 468728337 19590909 975513937 602588405 65701523 516885305 89929847 905778057 611061209 882512547 500901213 732739873 401538425 709326271 986903805 20702339 485356055 986485511 733524961 448796481 119954015 684591821 797546773 239705777 240038913 503600557 837852977 959077623 462453945 379313037 949224273 504400887 181077833 952165527 518763549 423587941 409987193 131932225 426802883 910028983 54124573 360557127 853349881 118294573 102127121 356497323 921871101 992637905 58280755 683957693 974437525 884982641 306456689 862008591 321995793 751742121 225769403 555779711 223392325 437019093 215094029 407644719 144571537 256924959 530658153 489070219 403972057 204410231 62903767 395182923 910736783 284577175 814394989 162243175 284481701 824190717 917870913 119148325 695488669 532321523 788874103 925520145 804366971 834774407 36290619 754941697 383589325 804514451 983634367 416724493 875732907 362742967 545792059 224070303 344976305 390662235 916870897 339343709 903648007 447180975 376056111 808557633 957192027 557513901 600346947 209277315 254370787 519786003 275023753 61246123 864699997 104481385 442402661 103871361 491622415 531868673 633046591 929608477 827194569 168960243 898732681 832805081 794162143 626410527 486709439 843751771 42872113 939514925 470836835 33861005 276260389 212408973 202730749 535248803 465444007 207430263 76640033 123512861 321827377 974450157 353138027 508662973 659898047 389254325 561705851 825633679 433521111 642838369 954637051 867898343 847105415 506742855 25375901 613185889 534986599 237091979 482717981 936873187 5866899 846321425 879115323 402356631 93757363 133566349 507168197 847853555 62434805 547016053 272232585 124448435 255142927 194021643 675508069 343250907 970714175 237334101 763977271 870476215 9070669 46110243 347862765 375173083 66356357 387911441 606049401 711712293 976095421 296810619 422653907 818709943 275201365 87329675 11604223 453600767 687814707 383467058 529743877 498516399 84177347 721137705 697696249 742606789 144960511 99884525 52439543 210437767 95585633 190953417 530726431 864576637 323197427 130349259 563815579 784097151 745929283 191956429 782293149 629371813 462350437 407865967 519590753 682831961 878546167 718342683 305955113 140745539 686462497 488776957 665600573 244840279 517108369 662739727 193521139 124086229 877770877 54402323 404901793 552979261 398819493 708392337 364742061 408450143 771992907 972338647 829936767 494105421 994847553 384904447 133863819 973410915 1303259 395593449 413508681 971999559 499735289 361942845 946243899 962215907 960777217 719395435 88983791 743686509 272066273 411497131 26342131 345037153 929095693 910896383 858427621 115915907 242154631 655721518 452637029 180677597 655274707 678778825 957339421 75817417 590405633 980182309 880134079 715191004 180514469 164029543 398368007 904827649 211764189 328065397 576111031 218461791 20803153 701120767 283298969 936380527 225947441 117031293 237687677 277796585 815008047 887654959 143762497 862833363 629775243 321315359 778397125 635468153 900613901 170052381 552684787 167230831 766147327 76921537 998026173 815582611 917941309 311104873 196053535 304061447 784659489 676094273 909473051 951499065 393398163 65354037 834152891 308275421 21466623 369612801 530210831 412184301 446011487 688439589 813393973 570310319 248326703 296572389 976958285 297419697 559291509 773307479 54089345 812231875 813949633 939995727 734060549 743143685 91821095 982184049 554349585 803553499 499817541 324272417 961294823 282114799 927776835 581171089 620760789 318259511 863554001 703820987 646564139 103351279 129331233 876937821 981738305 733015705 95978739 682348033 519170685 607937285 748471695 86675957 24341575 805130821 430922177 338254931 402602259 760863669 104277215 607001083 530365785 715703291 478075083 560139669 448305821 208702977 871744741 55423633 219123305 29221373 477896481 437840937 36597581 824229483 832414963 617330267 621235687 579385103 59036249 667176175 24530391 389586933 886835929 833566327 386879175 307570289 463083649 165408587 277848939 151768097 177339627 492876939 989096059 770242023 712193583 110779167 783550907 195754225 120002041 674806455 390794485 562545585 946498675 617314507 542632185 391404773 395219285 548299677 760804005 726320787 152025311 626135347 415130073 514770179 25733331 175223903 218562175 564849611 530659203 246452153 2212747 960029897 655341253 960557215 944083957 850892063 537409781 794847805 962487233 551462971 269289467 285897857 428819193 952748753 636098117 995342627 922052781 778262493 63070665 733593251 675254779 343723937 96429317 917216075 719796483 998289069 97752575 313739307 845832175 312837841 860360517 680152089 407780339 582337583 106006255 897378489 579638855 773315621 683233691 810968431 449081135 976165987 504828271 398576751 206309621 110569437 463992599 605434797 829055211 11248079 319012555 326036463 402546793 393104061 986790731 710826935 737522645 296006515 216858843 448770139 26462617 524424197 514442825 126065903 193167651 810618063 339310571 804502357 699955187 553581943 382135459 119512885 834721415 311738345 247526099 3545345 450080105 306702679 987010923 812926701 265823791 492494143 368464607 719052797 221525105 166912613 452469297 47371513 170330321 127163861 504849895 565556591 826684921 155081187 201009419 35209913 149020061 574035245 238322743 780348151 780567413 414186901 784094345 403156497 38865477 838747465 182009511 576984247 511712983 718799293 866523069 576393059 139150077 436926635 839902341 599654739 181225105 119212313 722646073 234713487 879649397 15287893 703916963 35804649 884279187 720609007 172569103 836775929 841779679 199858631 260432469 145711133 258688337 313729793 813113809 486937729 901675247 234957063 268706155 979415571 550815165 519310735 798630033 478864267 67448787 192766611 538876473 558230635 497271113 127500123 347890145 456524281 297578305 997803887 91704465 974548039 913911525 331021735 847082963 531549995 739769449 208801567 384795841 868273993 163435527 622433335 142466297 28565253 585620735 483504033 996048289 697466771 464864925 426388301 258459237 862709737 658978611 911845241 690425471 246089671 42903833 729542057 866260393 29930167 731465143 297722793 645528877 888345865 438417009 631042701 486601433 106699987 627600317 122409905 437594623 659280631 707781139 512002491 882502275 388594207 874654967 792238487 252736967 395045815 213173747 761601911 229396923 936169723 348984217 807728089 681931733 862619113 603786371 747947139 693578259 675209803 247610963 934725501 65005051 275278511 217934517 272407581 27419037 269012335 830784089 559124481 316992141 114511787 897690105 651345419 733638891 973045323 338708825 20419945 447390813 124978945 16093251 39115919 88088849 330354497 127146377 145717303 616183483 480648015 767933957 284755561 749478301 530307379 716415897 744537965 7680379 713336763 610288177 783831771 679145635 360123265 301415613 643654797 887238893 583775203 693803575 515979177 205976757 690503181 450871459 268445081 991833059 748518381 280962059 45383443 764826343 995780925 105363841 623605523 314553267 356747897 704177183 707876315 839974087 843533295 683144711 992140795 723571241 798180523 168828261 73439557 295706729 9302405 213687145 451616727 497976731 912978977 751357261 293745939 940994655 836468197 72459605 384997029 741314779 219282687 789262283 226477443 538168765 730132843 94573057 69104360 277999929 876657129 989714257 385353051 500767249 206223103 724609567 679467429 526131337 432485375 13088465 130025437 244662127 111061503 258678493 387892827 763865371 319646947 911477181 795316423 182450795 299170383 752192497 185871629 567292867 460144311 882888709 38032481 382111251 223653455 83926411 601565244 453138385 194306589 307233821 231610215 359612413 35442917 700762205 649132269 190566681 84275767 646547191 624899359 825520695 833776493 246783899 583068317 994395627 326911655 391214597 878425419 357512533 755457999 687603957 502859603 878993691 18958737 852262711 114429993 505522795 746573929 846850717 889216397 121826299 515894165 325806849 370303617 333339399 418558493 71325509 212703311 413640793 225127381 587607125 891545999 450595647 80551505 507056161 901777179 907238541 770697203 575565989 498193177 605784481 306877667 847360737 801475059 533953893 906288145 212092385 177661279 387777347 795603509 588044215 152102745 816089651 862427345 285304957 511860517 36645298 573965099 795447125 694621775 572966091 200410453 18650475 829968811 16004871 757275943 399255279 317162583 234915197 311596353 914934301 33719477 653899215 862344715 681390133 88245105 739523357 418949301 9033347 844649091 204600091 571362871 22865241 66497059 349302013 562018387 128576787 518688727 259289217 366931599 839363343 98751339 484169965 5254973 295276219 984878069 198243343 341942387 590562951 521208013 648141119 932571925 600544493 376681629 433149019 537114567 812044659 941516365 506913479 827994109 117649823 9440785 729018485 144280813 873698821 1048681 290918615 539984023 346188607 258172181 726822893 218672325 728364785 793890339 872750399 525695495 565229249 300291817 607037657 224118963 837878629 808679169 792762449 712043501 150368151 126261073 832334281 705840793 97942807 416619267 9192673 154055785 937939891 578227341 694831053 901014231 306958393 609658027 787660353 335685152 27260293 829229919 267136123 583914577 359971705 150194937 860994625 395976757 828408321 587588363 172296675 235103337 676724749 536824689 654179125 728641609 662423193 680754001 848090261 620579583 30785445 447576087 176039917 74362491 2833215 411345013 495713703 653105271 712988277 705761641 187990973 260071793 94070371 898566967 729968297 779517361 508585261 373547115 257840245 937199689 175855865 881204953 976391597 455587345 302958847 749883039 494864999 597185705 915317875 992306463 35236677 512049529 820284829 841756167 622361193 976481457 124058307 310466121 322392193 560631369 439539001 259246883 902464967 562265859 475521627 863081243 874168567 251156325 410591879 44336377 48806489 916098241 510228523 894639829 361821366 14283823 839562935 248918791 574629483 993499023 918024103 886595897 849024083 200723591 864170875 2158419 713711317 747840907 749243073 59129483 199511261 422856913 54037767 488882779 749806819 87549787 329695721 488613259 548416999 612825071 754395147 8180003 922076781 614465567 262904339 227295099 42777987 281555777 391312313 776138029 913055679 726981497 870603443 247832607 115684419 946804395 169995715 191426683 622327217 689656203 349141429 619039159 212298041 400925839 46937693 377753999 616301457 875102967 786165137 121442055 216621047 933721037 728925239 438361963 812656945 466188511 286522677 822604111 302302863 582452169 830084227 774075279 217982693 19278055 835722775 530360913 851907475 349639267 274369267 464127489 215693181 602925359 813897765 892196945 274958357 707415551 851741627 496331583 601803341 854266967 770532817 415638545 89547687 517424511 822638475 245072463 946089765 386996101 440423953 369806543 714874971 921059539 607280021 991137455 225827929 196024921 148609619 761666129 249123523 481231407 797318539 891601507 81560763 45255925 391931531 606551769 616775153 681855397 721308065 810480621 399841691 532660221 946814251 538536229 860215159 638013829 201639047 715731023 661011147 132208783 334333731 525854331 373693287 636586803 574397807 570403083 53072543 253840977 947862503 954559645 200406099 842894481 570631181 813928481 953996265 167350627 433002345 449033675 59986253 528482303 966908049 921508887 432466425 824110695 341906971 974287047 815324135 340332641 519841709 489172459 276895393 17238655 104834799 37901525 872699957 974231318 271797395 763620129 856270901 701817165 975270741 71022005 554114757 169151493 392284919 104829885 132515719 588120307 979406657 869862827 937036459 661119373 53564169 125459005 652469223 24206357 165343013 790822263 915833 385213073 225678203 41088933 664439593 13241809 515777011 553019483 53269313 973873777 968306047 612065143 51868573 951651277 348871451 362972699 284072087 585346831 203880137 761396659 375437333 551744041 950121617 794354935 937301641 512346833 679439241 401872607 905413093 179960711 717294279 302703025 843284651 361279637 692834417 619939323 511323871 19276553 557005487 420112269 637655823 29182397 463715507 100732551 715889491 967217745 759897017 707902027 90894409 201549871 446167043 872518279 349142549 552384899 138167259 530896943 293700967 977796679 961553553 594824829 393203317 634209597 257414019 839412217 395089405 738626285 427540751 835170669 306561095 886540453 55139235 91691755 365547551 157642623 204590257 297460949 986635739 924062555 627546033 867413193 832491099 788686305 265717031 128157367 482264581 372871041 748463515 61523923 213330375 264487539 6579363 142253465 58092565 997261753 70735829 667640013 396457457 240055323 469556695 567788667 354085343 701691687 71341905 615143671 94819053 198086197 439590391 606538461 912716723 419668841 496000897 964446739 685203791 862960297 380818609 783878853 505327717 596706981 33328725 527778917 318371877 37758421 493685821 433850033 161968965 559628153 938500161 88300717 141156613 146926235 56841031 322357671 865555495 12043531 61983799 123993647 871807485 901891681 65032453 951243557 374268253 752125179 407344553 242266283 554104739 83587845 778667301 524725039 453791671 469898091 560089223 652069987 250571013 916777705 806029279 233990215 674261127 182332159 644244805 40018459 115583417 50333937 619483615 746819437 137862561 225490133 897360597 419551507 241173453 31984767 257442395 25325095 712835925 432890003 841198249 339838223 705691607 155224437 499921155 988665973 708134519 820014678 799263409 475701837 552337637 361154611 215583241 875706071 778923609 423090375 953225571 736989589 28853901 453431197 543791647 434609745 993621195 898965763 530949549 482378275 913024223 299157779 971428473 763866215 13570591 692643501 826428673 680803261 646378091 637889145 827296455 917910295 326509353 930066919 398196565 717855397 977762375 160422961 873036093 967152357 752860475 345282389 550547735 261305243 578321411 346637595 24628873 423388883 527523365 227861525 559861051 263925729 767263151 906399387 422491105 48244323 392211001 365840845 919949619 622326587 836529121 616183443 629931765 814910357 976373323 832854177 241687793 464530409 68205993 856360291 253830647 805499119 614503341 511576871 888031973 699482797 500755607 18182639 381159835 727798127 968945711 502303373 712100355 596018379 258616001 822976921 15162129 294486683 698507813 325148785 939377085 140542979 707882167 641770049 190119947 62659697 375598175 924574455 115489285 608865433 870368651 133942859 965180093 549815669 810315311 446987965 433882443 218043725 750051021 429244567 638941653 909605545 177018731 428750057 639340675 566402401 139219091 848172681 72848521 478804879 4163679 436526875 891854623 779336857 7568237 362540547 729666697 12739113 792945633 764157813 847386385 846479157 611295341 195463013 605185545 807919865 423177539 560198809 959744203 487480823 213655845 935889813 415401913 487832831 694266453 556145065 872377149 255270947 666938791 785950191 648479947 686786497 926317931 365452871 96572891 808230267 7452803 402716763 967262449 341835581 2910037 734247063 668198039 398438973 819598031 738406197 189912671 669444087 700112231 995595065 239600609 238429487 4759579 120704357 411552195 60559091 631540081 816547661 233073327 830640531 76675193 639470665 625253971 818355119 973894087 538916473 693253743 99747625 535732859 636179909 702080449 501652015 803031355 604366557 374832405 516971059 938970931 701357115 478926906 921783027 290795290 377731869 657405201 606956405 976877107 269473931 566826103 264931073 55615 681924695 134490457 717804591 727191437 314203673 54840741 876639705 81079797 483452463 235338075 77308451 576142291 122036933 83712889 557794171 90480143 893944521 572908299 57798549 547054103 492273907 996204577 222090349 873808097 900476101 874965721 667867973 226031595 320307077 913543763 519027629 778321979 33506629 846103483 280744567 95187297 114055131 329543489 292995263 795780721 116746731 178268959 631756011 182944523 631008729 294297753 535126437 887964757 244506329 745181945 384753891 151830523 432782817 274327697 755192545 66425143 322757809 632382907 263254307 55455171 438844115 659447257 320520053 463211753 621078166 119642709 53960939 730208885 774090259 140563875 365615331 372021695 406243881 871581757 551618047 837003939 499656067 488842659 361212715 870432907 849458061 479105377 492887711 500867936 717092227 724764679 195590355 370552989 318034787 251128371 873560461 317216317 619692279 842094981 350400217 637332935 450853581 281353129 925215245 827493707 414041407 458242895 886164163 646863965 450757997 348798769 307080671 690390813 417090111 927468307 627762831 803169585 598208871 112250047 394561863 774843589 688468569 263779079 633845441 223223187 739404121 888850629 107480323 578765271 172143727 302943195 981636187 788572501 334258281 307065397 773526619 356724321 155827681 443011779 977291487 334651085 906758711 128487039 741458699 285203703 60165265 747026285 965227087 964831943 153128675 520561047 830367577 568948395 444437221 290276879 587670827 60022937 478548243 791168495 921603079 222314769 600008635 689428315 370849913 120602133 655743465 488439417 125243989 262197303 193667189 625703039 817793463 204650379 822948099 314802343 816005637 426385585 467998969 270199089 277572843 509344719 64431749 203972201 435298139 336808851 424795043 843522977 272105619 418927665 982130963 535313971 881348887 32613995 536562523 21995649 678649779 549278341 412973517 335078647 539870843 50731341 551414655 944143619 82112461 262594331 216289877 198476837 989847371 280485581 748579827 328775899 661624547 886809799 498559181 164151217 831380935 889523193 679048471 450208313 188489591 581615833 900748247 993602573 351376563 625941605 925990865 33944529 390266505 934376741 535411349 699040811 57916751 174717989 525349757 369682641 96651679 479980027 144582313 516143997 165749596 578974663 63422979 574877935 814796983 535013935 631460407 61530099 823088929 221297249 801226689 132423259 903232087 126530833 243460575 154960385 454020443 538323329 468705177 778508233 717880189 517070965 939568835 370553497 975699279 298567997 179417841 899482727 745692589 626148013 593136773 703638317 398776509 326255651 314864551 981090795 45700841 610987655 717400391 381373357 818697703 69970761 867707421 745243269 129079731 623535451 457897387 340566157 271748497 504781885 541578039 30189289 259019021 139616503 712912083 952127679 713536763 30337301 307424855 203248709 129040503 346156973 259027555 212559797 222884839 914375263 688750943 882329679 387527671 523732049 72526459 72289121 338120857 279248177 804071087 263987513 822685195 954652213 716456893 644551731 955342289 235130649 654422315 820424113 19834297 693992745 848537419 91522335 230461139 190298669 819824179 208466157 220908159 724389759 845710535 535502743 841950559 809945853 201915307 377442973 132312673 954100747 123474515 700246923 422216633 320061081 651651573 962136307 365290977 687256095 993397905 470218607 826939041 757375639 727839217 869931683 733961729 501255051 75363493 68422197 631201113 811927815 265720067 693790429 962614851 970789025 48230447 723577679 101762467 509189241 846851853 519933267 804501673 997662261 421949263 638746799 570889667 655811587 904264303 507557431 912469939 458079641 482707115 488370373 85058683 720178997 321626637 143691837 883671143 890956957 85100389 715865733 233207051 399311903 839715145 466345109 975696963 495719317 689058587 477917537 104052021 145292631 938234883 349546737 272210763 845931857 790971889 362655051 643803451 210395117 394817695 391708035 953861121 624803619 636027019 425701043 781116385 55948147 514612221 143475967 542384998 560301279 184697863 608907919 102218857 691026939 113021825 174144149 572379391 855637719 690362379 840156237 457772177 301859861 706822413 923325943 853348043 167229915 130352311 779078623 676739745 384868567 961653505 526304601 660784973 398777663 287949485 914673595 374706517 577647569 428648003 202503017 212946311 611829459 700171023 103539919 310323187 504468245 780874799 563843421 808223481 617960683 60987265 604509327 433085499 521738549 726428333 317073127 336495015 600244823 206211105 408496365 663932017 164496707 697021977 411315253 278160405 139885163 995555221 758251097 956261717 176708305 839970651 558937085 170580801 153932023 958660861 116524489 289526827 460563953 703404497 392578927 25293487 47299663 641542651 65492139 124039347 920401203 487625055 457220157 595622497 91476803 241318577 238403315 602495791 916387245 131054183 531559579 372703961 956568871 885309377 570667281 35545697 31749871 645956553 399258937 561487127 70065101 404824141 75711995 880705935 89315083 872969961 937002825 12371105 999566725 497549305 432125727 429597301 774338195 126327207 159681149 522368375 903420193 776919269 3858033 125906265 567952537 912278119 964892425 684001305 390560245 229709745 974992993 734186235 758288047 353852427 183048093 706635147 735865297 381936515 757115365 859248799 182720231 526447603 634874219 458630991 998074633 455417339 34809451 328131589 165452243 114985987 504342567 361468263 708873327 734626621 20038631 320357743 540112007 808709277 909583871 350730837 188974419 904317927 140240075 433462689 595481233 56124577 486284201 658623259 491892615 817128733 236464135 511562203 552627717 510579059 891456087 843607867 189132639 798092419 239083281 848178657 446821749 362074357 14621111 280282295 468340653 106178105 603495383 653827571 970055667 851771783 392806399 714420750 517483969 437737697 990978251 6002899 365693201 793547277 484022751 406947913 177863533 434530717 287862499 979606981 201665761 484638183 23604873 32464611 536525573 396993551 714877837 824412297 700313591 265145081 558623664 196518881 577682267 215400025 464515263 395307873 213292897 265973669 776039303 866247109 812867007 774157599 465153765 185172753 262337203 366633165 635802813 455061905 925968387 948214655 963554551 101977305 521286143 697969617 607012997 444357319 677693563 350419743 877833827 496610429 970024919 337873043 601007763 547831657 742503417 18098207 859014431 975023165 704552271 951478137 374064919 796704249 606316492 26855713 960815001 305367261 599443445 940080993 548262083 912939383 288051659 716417863 860914883 534265245 833595869 499054509 409135307 967390567 908215875 546641459 8808979 434334271 320993691 523435587 603697885 986988493 967023113 915680777 600963447 800789765 693039165 946473855 792554287 127059238 364825197 39784807 426112355 282422965 367181655 636060233 40483955 648118393 445019971 5901171 36964041 901676683 978377981 465874943 665016279 609350469 547472091 299294669 255005977 419430989 983149501 552194693 77675793 745302925 989159433 153577623 72687175 948732987 980705963 367126075 55657552 356663763 856227869 189278835 836149959 384035097 905226075 684291591 234683465 555122455 405437675 53224581 222019461 599708711 706067419 423573829 191323693 179451103 165372611 419953771 291212281 308335399 697459905 506361821 404925357 734855977 537870969 853896267 88434193 42024029 807252763 71791661 591651067 93964923 600721757 248136899 483055681 779016329 985835135 289829655 614641865 18039763 485182275 572239609 363309435 45294317 994524411 315384321 753441355 61697205 304745595 197313677 880736561 414128973 904183077 985760457 906173233 282829091 978237401 355714465 275578195 630060523 531158027 459377617 293363117 924765087 353400495 585344729 390455383 19390853 116314947 130831357 773491825 620136235 116175565 572230995 541263145 829418339 10856667 821387439 688096945 925869385 189548165 338095285 73243457 321527105 224581481 661327817 758349853 83982841 391944363 57591069 815557775 295274341 443263995 145606571 363115751 543816640 567825039 982844209 966293891 66883215 675438631 256464697 64211907 243683743 236548101 577973265 612540689 316837379 398953979 756111315 60459489 849462039 767827807 515073887 510505643 487083905 591934989 904282461 819196147 444471339 297679213 206200637 118538817 615334219 76905837 520015929 942884139 832189789 488693121 241420367 26557513 127838245 392766379 895326535 786715963 4631471 258151281 427671475 814786481 649839953 612211933 340488171 487724631 680093347 979742089 628559119 31291371 802894989 421717907 977762311 183748143 6250043 854245535 690642563 611668717 839687199 511128285 201415675 578411767 448021751 654574085 180352689 506221861 539004617 966545489 522057387 947688797 367497181 306091403 480080059 490999689 7541705 179978239 339131257 865058455 538269803 130132355 264932419 256401797 618918119 644083321 455996997 761909845 185822373 2187459 700295533 863855377 249776223 873621711 856984435 460392651 675813647 790508183 214063319 357332125 461749495 643333783 18585059 749287081 82163879 858404053 655577511 654236441 257706991 10150369 379606265 338925855 108380913 425903566 747244413 656963577 326876939 963531071 326454935 713195493 45378029 922975829 778561659 436398893 675913355 221822915 996377373 498722087 875587105 211325371 126710083 85219627 728678195 53158141 907670897 276672411 30298253 424892369 83476727 401330913 629122115 275682563 263552239 625094257 170702513 489303275 34831161 906257347 509998461 700359781 387927423 293662555 677312659 275261401 331865133 575729603 119594277 185669173 980967295 322319501 13381297 564501487 95051379 258492243 295602171 4271109 554204625 999649975 919013391 985843965 591441707 448358755 392655681 508075495 813510105 800854795 647150629 795885399 214990331 789229415 160265915 121750125 903446393 541938491 994913043 310272973 883466499 652736337 649423531 289777833 447938323 56018299 900414269 871613363 980671207 526731665 851937231 173353517 512342407 627133051 199589807 581378267 281382597 453092637 531506541 443832075 443478585 181947245 629736425 637905811 217941057 864969571 696488775 911428053 858550537 796541442 760151025 59868851 151307647 779301975 772144541 224411549 109531739 317376113 111669829 803890057 880401183 357667435 439602993 141630453 902770961 800701287 39536107 430476263 133351491 212702863 655472965 226401007 958428299 425430551 167050849 79918113 593810573 904667191 879944093 573937949 735058093 490360883 722056619 302191879 401242143 244619093 538560123 461118865 658620377 664839663 256072267 771869677 61819803 367298139 374957727 728348125 140672239 508873723 432342339 651108005 47855141 923835451 787805003 223393811 891648851 677742473 43468307 685060479 874768219 855700581 775206977 10985157 777132775 748431437 854507201 558688589 697836899 982869709 686491589 50369285 635119115 496026231 427768267 700506979 91558621 915472869 27366041 641812583 546196387 939447993 190628919 146053523 999634155 751214237 701589499 110149369 947537167 946042949 831886723 698722349 962147631 437486699 284965299 306535759 255575091 262866639 864614835 370413573 314842061 500059453 247142909 567693435 572918641 542315655 952644427 831394411 363748707 876203911 239802783 456140815 368900011 606337567 472877895 317005105 393286935 228424249 608073689 565208607 446511169 847371465 583606063 975788715 630173321 298377417 919817839 494191417 505817365 921646137 101790467 394464683 647342553 568880933 924281249 562742897 997963405 360966303 39679301 315875201 54482861 374840769 589788721 471407449 207186823 608963757 309276917 298076161 794045735 215490957 789523811 572912133 207989605 859135381 640854937 885021563 830855141 486399 884747001 432667395 1182733 80677131 644902703 751702723 302540811 500223237 182969137 954659687 210767523 938160959 240025147 166120233 611985469 586734355 388765905 199877317 7757751 600312035 396923327 459908225 312639387 500621083 68515611 871841067 726832894 958926123 938597693 413160731 458924487 583638157 817016271 31434541 19091351 674949575 982383799 701070795 178839779 273088863 580543279 50869727 503895521 799408873 607841455 800926689 422751633 403883007 792402941 657305807 141263549 947795267 186363943 885426481 519838451 27141983 452843389 324579347 554992013 674937351 366944415 953588235 217424557 884945141 784039281 385632313 265977399 709630697 737524765 999364419 430983389 899844783 852334103 962653269 749586201 445660185 976494879 745510441 708769833 475843331 51254839 348727803 21815573 698297419 997373609 290924689 288697777 174667997 593647373 378204985 98010001 294627501 941290557 157370059 351633175 100631477 180945503 305096869 435041387 382383349 720370141 94070187 957079677 545863547 502966893 243999053 77644805 451657557 352601611 26674307 105057413 974904991 19970555 69239495 433922883 161152635 434219977 102918435 457817171 247249429 579178569 103552803 437749639 747319197 767599257 512812509 194078597 33307469 208155419 146775281 828154547 563297387 32952443 733533061 512597057 840547389 434701489 797693255 437210407 402494231 172026357 534837611 337850151 966613843 258209741 329978803 651559367 253128275 531568133 59542883 727810905 13973891 824079795 653580363 397367795 450998099 351471663 937068991 569737337 408534079 339567139 834272157 174820751 716250567 399584887 10939215 380269225 852364151 885534047 203524287 781157117 182997987 450790747 596061029 780162187 485596065 961966123 179108161 145927453 950869 670189023 888503765 30220099 287493547 183724999 186026291 205262163 35244115 82835843 734748401 440466033 128122633 898660343 849044779 684347265 252310413 154604109 782563721 891144245 167549867 889718011 82638905 129562119 492173365 684346557 346126577 631306549 527029255 889752981 727210991 222157257 616929023 384213971 896424697 556536979 803276555 182150409 949987421 129779241 929482523 215404819 39778803 261110253 717479467 819256599 801607705 365250311 306139195 819696769 672589491 175829863 954635607 434898947 520375859 327662279 854187665 808339099 433342603 792142244 690425605 188134541 980324925 149186121 48793809 734222949 216531787 747177925 219362851 916398583 878964807 462848241 993762347 30791009 505542983 82203501 242030117 509946373 254021863 227168929 294603857 683702161 641985359 56444093 833154813 422191863 197413165 421746107 342808439 605587317 519153335 194337879 851415835 328187281 173418667 596387615 708521037 325381651 741789007 357897055 317077363 245285650 555698547 424049199 907824645 308482795 503608171 876837235 409888631 602798911 66928151 178154705 280102993 220270589 662825435 195875511 889968409 835366489 760149415 677432675 801497443 329084365 334657011 286641615 388554443 416411937 872785337 562493639 812176367 572075869 27907459 1304539 167717245 134824153 747974237 405456481 643099941 341103151 56108255 543943805 540734115 622857029 866198053 468832275 338144441 675465797 266966231 10822103 716678191 467715749 558086691 763643967 588936409 27637281 679884479 291842187 220867219 725029309 690345961 311779781 718286745 694960325 778138727 764050875 764418751 354697165 932379017 246608393 69922319 982270387 705748515 855227147 418970151 502750873 916637077 840973547 34264073 717744875 540053189 800850587 934546109 85215839 729788703 603065039 778032727 558732017 589658525 235659019 627603699 834186215 867523513 485869207 49644975 324243145 99110013 614903169 338587577 393414765 169645429 535702947 40549699 903216113 393960889 736843677 531074179 942430647 651012837 508253143 309235393 483827821 521341985 132990851 593771331 739429383 680828699 595280277 222019679 865971391 173204233 352559057 794378859 467762715 968458153 636765117 848287949 149046761 410745923 634726827 654002925 38183739 999308963 938794419 966251837 49473389 34435103 578196661 930807353 967194915 283436183 666686297 515796835 780335434 877130607 148539151 599880771 431996441 300527769 566649615 963457389 680403465 971040647 94445915 252986237 57693917 752204347 118734265 738344977 158828709 295050809 974445243 951459031 396743347 12553103 729060023 880129665 129816227 831465429 23098577 763999687 653186907 507095335 385893357 343912555 628327943 149950253 97395647 409479739 830690585 419701783 243841981 550730245 418020175 383287703 625967657 268758695 122397357 679164397 103707401 821686271 253578623 965839071 72971053 940370427 978565977 860458685 863824689 904862093 770448921 850469211 207150193 265427373 647146209 528865561 218066455 610465885 735190301 942366173 826862101 887796139 888720773 637535251 943389217 726333093 141408017 396572085 665387195 38134889 306550279 200263487 922392109 716742933 87224053 147643575 166823813 788602583 155997099 395695275 47410077 544483553 43996745 109150003 301869077 793079403 192629297 275637483 989817943 849769913 659231505 296948733 945077903 836612371 464033245 758240019 366681273 132345807 17055185 203366501 848222611 479172931 292212079 694536881 418323364 24881621 623600519 934423103 647879233 230681581 446413353 88710617 247463551 523032317 386586551 366161883 819233343 135684225 519868367 971546911 561777449 235815675 601257059 209686541 450523053 968413941 358067363 110222225 848441349 292180479 717193739 747788325 616319277 496281527 638531427 880047301 848784883 992949437 52159925 108662263 543748067 477171643 463881045 581612745 497484885 354725987 174151905 463557075 305553261 286654065 910268473 41804337 530949393 414142119 821340047 459186829 943655921 797072335 154977875 430195729 540698245 82847161 607746627 56615797 395595789 851186755 671780451 118122999 121367955 437915723 534972929 201036383 213288167 85776065 848488365 383644665 890385313 715304849 139957319 966594459 219999263 740448441 396915697 890882213 276858509 47685951 7390489 380410877 87710167 471288353 650255217 384193809 692274873 86715259 308950777 302718679 63000243 379461479 576346353 706783435 623477515 28590341 940442855 958367223 18902993 218402687 810951089 974949865 424428767 991119111 460384873 511325109 464554711 687747033 569639285 185396473 998657565 487228727 773266815 894831839 339739107 583934571 778551419 780407569 74119971 436455367 493439657 577153223 992588699 259507107 803284875 445299649 677924053 341932901 422489323 74562881 761731359 772587125 980604385 533060377 317365395 297646407 944387529 309720735 983258641 162070099 466552131 534652335 188175937 206285085 827275073 142577585 123089557 966334767 695499763 170650771 786353729 924554009 827693015 434073545 46138697 609909625 702157489 874280277 683079027 885336047 321193613 57475771 33371473 779263525 270582975 135191051 748706107 313002191 568505061 195647705 323171921 804684965 777127905 291157829 806845307 715627 729715423 183863539 956461161 409002729 223172695 94211603 884556947 28475381 989152513 180458589 446271035 899126631 780729059 713702411 239741799 130959137 234275401 209352423 441075433 863800077 935808201 735124797 987074393 54210591 64332349 458720483 323110933 570147663 713540553 431239737 341770313 256167073 133683931 11962149 76496867 194712093 783045671 307528725 898493595 481105113 259096231 972681471 188291825 162016749 684492963 852600417 799889199 619351931 159097507 46236737 819655269 913129901 296575615 125034799 881196393 80729015 157061713 620915519 694814687 342353617 755474303 658943249 229688107 419675455 839092659 361315017 808201601 567063371 999348707 279327511 405060311 204646469 339684171 324382259 602664941 517980555 407279725 465635031 353350989 912447869 229392409 155790157 818541125 608201863 758265441 15149153 676603375 601218583 689546147 240298603 101542955 549701037 370832769 181206599 933239971 446458823 216353255 673187933 116117443 208088815 114398219 450422171 379190215 952479419 73362281 915601527 437241773 90129091 531991749 512263663 798161469 359424937 441176365 396774537 349908745 959443991 154990833 353186133 328877929 476111297 632770737 289623783 949238653 451529311 620730959 634904159 436346157 272936117 658412024 754039905 56082729 813498765 971887905 716801567 976797675 361435833 133378437 968985674 260952753 623728147 10058283 335677479 864343683 807452285 469929051 359744629 478236467 861189857 549387949 331716233 856951385 575664947 470238203 307748659 203916371 32567659 458088553 814706647 419893581 538017933 895979621 479968599 945580597 890860963 10104739 581864739 495817667 355662527 404536351 848925231 193211257 922111483 551913243 11341311 828049053 668275321 343168039 503266195 249259329 195101027 584064021 632282237 129680187 762329325 265679873 517023697 305454383 651237201 676409937 863459119 496788353 813878735 728851375 564420539 375306597 116701107 258157585 199315239 317931473 127481165 689661875 67745957 10244229 177689339 786389529 593992183 63552779 250797597 960267535 525117537 45943731 45943327 223260585 11532721 778064531 107208561 32378181 148551487 503502479 649676429 155037829 334791399 48993355 246794487 610497109 905023505 478933305 370903609 375620333 444056235 669535891 870863589 391968453 835758123 743715927 387660693 372798883 518631567 54754383 994597355 753869715 441268063 701864713 374742929 235969003 473039527 270147807 363833147 525492293 967516156 630568689 687494051 399993221 644705665 399316009 850292361 391431897 869816023 117634611 797338553 71763637 934883889 616808585 893959173 533060051 147900737 765970285 184578119 328144953 955977801 342175463 223737953 829764149 73684237 94289349 324053565 543478617 104715739 65481889 726355151 314907009 447812235 288184027 758847249 649411025 978418555 891579801 322844931 480802745 622991503 36258511 167874737 884875753 527498295 201478709 280267565 672405341 290376297 579686985 820906385 621571165 13388195 540485459 890653183 450555251 390517741 568203365 971565731 335841395 681786833 788555349 660045997 786666361 198845291 801983687 95928151 889835499 67661141 502603553 104798437 542444917 772991413 479892369 460638625 989584137 785538877 129493525 64430813 388745701 151466017 523184486 302086131 779084429 331670813 697690131 631569223 311109069 595009147 799641961 255434559 67481529 612662537 985243775 979178833 914210991 128110363 635942713 77588215 99348561 215012751 379752763 542867633 345819277 857917645 479928569 526526219 118656149 102693829 836261033 70262679 307135977 355488489 479622987 359042031 739212617 445674809 242129321 516415157 545877955 633494843 958506833 818267285 294374829 382239743 63029149 501557055 963338145 120164379 976555695 470587501 228601219 750626475 414642283 497834725 730541441 842995287 589008771 596046701 587579151 117383243 914106993 867507673 449572329 664880449 63788147 12400131 838554897 599247989 850259601 697192141 683772887 877257901 455292575 500410147 441587405 169049399 639510065 823897845 319791311 749087979 29580713 111922749 293311491 538043687 41009967 659674625 888472787 405914831 879653811 495717703 638477045 481155411 539381229 340510243 425951845 84029353 89047391 464542895 635538535 237494609 866094929 427244045 63428231 807391565 939984849 486434665 76395929 156891951 444344503 535281907 206270649 424762893 823252135 915980519 298943565 890073987 496882695 414688901 819655425 275514041 836214279 647202073 624358599 234206043 607340959 384651509 970594781 760910499 383232145 333326963 448514505 552372813 756798563 99491063 140899923 759027615 170529127 368158182 548409489 822371945 853654451 784316345 720017889 588589055 13618731 389046503 201538277 85772863 634500467 122354417 311904395 435779731 666811647 279803237 492851975 894349029 102017541 34826961 85002451 1428653 170353797 934889937 466950071 732705771 63931465 695966727 952244667 244336161 161471969 859089183 993329719 567107937 24290211 701692361 528738501 879075649 469610675 486715585 691686985 573757405 760366581 269893063 426868723 144842461 754210077 423576743 189486129 144072303 808983967 362840629 365271493 979135559 792744383 357699911 309725361 563118758 437815685 625094081 83455297 58617683 792994753 869498255 501517065 333992091 459248393 688062881 578574309 974732371 629148351 816864499 64983803 561486555 175811595 769321349 712832437 399300631 854165725 9121125 102261449 36113017 526440687 173841825 551904563 402770931 453748927 904143189 558441783 449879301 738525845 203123363 2259809 941952951 509438339 29831095 542092167 782020245 539951201 56520641 230217153 113373623 919403215 118009853 668236665 299029945 549738549 954126509 507893845 402444483 941300931 460899865 596598607 983012227 448370803 574994325 680368031 845153327 148974081 964503675 304555467 331370885 12125691 869572911 277566625 14907339 976538541 555784217 291170353 369856463 762052143 640162987 347708123 503856107 149057893 703640161 458382913 16036087 294380789 26059195 261220433 210574687 626486605 519521605 116121151 223012365 963435179 282935955 789683591 407708539 270049801 631507259 592307435 158300323 419590195 348979683 532211579 433268239 663346361 903385393 68013449 182087883 288803569 652715741 882893233 353977199 455236863 868271259 8508889 585440535 61564103 988544819 590968875 429297259 529386237 662105451 181009437 815637145 159869975 120145177 51897707 762811991 956219221 170261011 816113945 257300707 933756865 546652989 890474097 839699715 906516265 41122179 650326541 122130439 456222505 410577111 796403907 713366211 555061277 441119535 267722939 984091287 917507119 27198867 651967073 719136871 749177937 515733769 947050343 972908965 585217847 924385703 253489611 617359683 986423397 4586371 903174353 394160835 408953123 550756803 462631941 209512233 462100351 947128717 511226941 407984131 955556691 909018393 939473553 292274793 345779007 586272413 605451627 663883255 927687083 201878875 524133747 844657621 756505033 557102753 294369437 222747569 938894477 613919421 741958953 544228033 313772987 28177419 671697559 679161027 736214745 908890095 523117237 314367743 223035961 901515217 828142233 247506751 290248691 16670755 345819549 531651807 152419559 242769761 523998311 760211895 815782845 556952333 951949281 878464819 473446373 778146991 697130049 428650815 532784279 767338717 757490689 896848719 773863893 688575533 472664297 817084261 445608293 37221957 992945923 957913861 698637273 732270285 444393891 801474109 347379079 201469047 5005925 125460133 631310227 425218047 211433519 457082457 792912611 184250151 460843 49368321 25648933 893396919 60980943 314957003 655969237 9353859 682041559 490038125 401990451 859910759 258843207 895060263 859324229 389505347 808906091 665785275 300929243 146754305 959435737 520203643 133915793 483779219 852713833 198318139 355493827 785614069 242103107 884914267 859851163 810564649 236719315 17799617 911789067 86943799 503264459 466324697 392050377 929275445 68506155 184959901 760634453 767208249 805324595 242712201 73051385 766796137 486440561 934175649 426124227 671203053 444291003 795965305 589516685 924346103 804426539 158316067 388632569 681637571 732390949 62646845 897477227 24521875 953743447 933970415 587886357 148381871 261879477 822868967 225235953 547254893 800312441 840201821 756234685 86313251 620642859 235951115 872848641 372875063 828372627 521824057 361016591 400086289 367871945 130899127 311615743 515043365 817115175 945185499 892401329 630021099 341951315 748229761 555912653 782739173 184138039 872070671 173359811 590674849 643308297 188235383 657592781 654882735 482451525 396294701 288137703 932349607 965465519 911863341 543562719 828380463 686971475 643472641 513315137 853383663 521524869 538141623 89827685 909955225 689714913 212728035 387967599 515547881 265552717 760668067 886702661 814441377 83726325 840225439 798232983 507700107 781736523 446338311 775970525 987968119 427229197 215766413 34354007 647220803 802879551 262136177 635069455 974058447 53504557 35556731 878733525 969077253 340352107 928776439 139628353 483057879 17244119 437166779 683959217 212240451 537696403 458723367 81324625 420192069 752361229 733212193 159447053 928336621 240279289 860326935 549565857 819308873 929578577 60094205 558775949 536783991 470279771 273961045 373563927 103041431 72474789 239153443 540682831 520235987 903072257 986290935 85988623 900520287 422434187 598244069 347939577 642615411 573456295 615504523 383540849 676439635 971270915 482235667 464025769 677021767 365173651 106441767 43133595 570775205 880135571 657829631 580189189 951812035 847800965 346976089 286209137 989156615 136310841 994396797 678207533 26167769 85523393 950654519 720712019 739081389 386331769 171855839 775080643 581753850 702055687 45137233 488369957 812132679 422772309 969368565 39615467 297572891 770400409 695610295 758852681 846271239 960985679 992200209 739065923 962790057 548725563 464062207 121020319 194519713 722747753 254953479 415140593 610582681 239948847 643405625 241253003 557907269 441652005 304680489 859708307 533674333 949953843 457153781 714761967 415391397 166407045 446686535 486757967 652534503 731040397 405318473 838374187 715093747 859837193 18977459 422134213 871143847 320237311 436216261 844189731 818558179 750726839 850910785 598193943 70638737 678112711 32696953 770945849 965310373 314917389 91236419 513204711 25921815 621737133 385661435 282827341 969791211 358211345 438658441 867314777 688218923 646808045 483060571 153402819 100732135 863782977 454522215 505070347 504097085 453749325 315593771 708826747 398552141 184567457 54910381 796743971 328052289 781739279 536780413 807818201 473348173 158087603 539402927 15866433 55674281 35891185 680981217 618179519 680207513 739789689 882883389 219490951 902386023 217261881 117374573 638525071 339612517 206028403 753974955 975223447 996147181 104317353 318920369 581007657 904804191 151870887 933499593 258665875 717176875 584157313 960841151 424245487 773650367 80562835 732998633 564045597 806447509 974024579 580408873 947963847 108515377 336496445 924914401 185563481 481072669 455221491 499699457 172682767 147781865 826584611 6867711 621855463 735347251 191486353 750903257 491771049 694519963 126463561 223914517 602833127 773876427 782210721 548310721 625386233 280480887 461266737 680697975 352647935 662160729 215683553 578905679 816082657 181428785 293310173 414833909 353948495 496025033 629656473 418927507 660716739 946443255 722009039 89158371 670028923 91442323 408054405 828226591 789323647 204479103 418089737 776696849 524554657 406999717 886749163 640190469 708504697 588559609 920841227 167960275 724258917 83509621 110205325 590237655 880181649 266391833 336793819 363427321 470839019 389215983 990780331 550445223 294779691 104025357 515066359 546792151 423532499 144005515 183296775 761743879 112264233 695807883 734406757 469866303 296154687 145520697 305954019 745678345 154101227 74251203 843724707 326660993 958180817 94474857 210948867 78875967 12909653 536143721 281356725 820472431 392407723 994308111 323962281 20559549 307154889 728135341 322101021 616068445 766213999 71924125 518773141 61954065 194988838 18065473 539897565 972999195 313628993 279886851 143003145 328909135 631521747 595633495 729398901 474970365 850712513 224972469 304528071 609225993 374290351 517052833 446913003 548171477 662208271 238429605 252705299 537645137 320272667 408072019 136803775 520280307 23939025 99681605 893424815 798937785 35846907 1190685 988767473 151919403 337789735 959416455 342661593 702724691 192586927 661645363 87143173 717998029 746433203 820505819 587662681 477971377 869707805 784181315 808417789 492387755 217231513 792735797 694029163 105426407 831056289 139333507 925655133 538283033 128161143 972119459 729367765 71752323 825176099 581451939 663796003 221754089 650169971 483390019 167484631 14597017 846048001 163168471 553185233 328517227 184759597 475334489 486416181 703494587 680545309 528932813 955258477 393700211 663695303 667505725 610677807 73671677 249401821 112557499 639903095 722362193 138343139 726161249 105070217 795037677 475322143 154230097 428780527 182638039 504163747 779274167 743310721 429608863 551145797 382506947 198533467 985745755 173476265 708777135 751706335 208991655 278079541 362570945 435723193 339093161 773992727 669896767 366199007 992180499 343360077 18855549 433636237 785694999 822505104 60638421 43401799 397369719 34054255 706880937 308093401 1120887 80860471 243696483 948542553 67287783 324761599 73044343 145683999 679727385 155867307 459870558 609042644 132467185 89686751 486739355 829983841 445313489 901412623 139746487 218604029 340903337 607228785 81887301 844467489 498756591 781630725 731260895 804469907 402121635 568298132 344474663 318037345 657781575 481917871 268871113 247075803 214712813 830048685 120148085 865289889 324914219 972710065 955592167 763658647 656135965 791134879 423790303 894494439 116212073 508101161 557957673 704686087 884372545 496739273 658781079 83022513 980821593 41378493 18257667 852207085 843168495 247051789 461822287 128256771 487416521 682383757 916642151 916230283 851157813 487483089 950438715 694339423 188205323 790242875 323010759 322178469 439934887 556699123 190317323 23064009 909870067 679198441 422118163 162918781 601892185 177975253 515342065 601713341 504310481 413596729 606345919 407529681 935239643 633058653 187874721 281183043 237817209 65301839 611840701 744111335 93519677 152986087 232745545 870728411 592020029 862088649 297840767 205689217 291256341 841972571 187152031 772968837 415113707 260048333 535198709 738722527 261002097 672181271 165763283 894595527 594371547 279954427 43507093 957545411 320917223 77260031 390817689 893496991 108346843 814724981 67612749 204201329 152115333 336541555 196110369 484366739 621621821 555751389 978185615 750833065 545120481 640006999 488613917 285974177 807103957 623394133 928487249 646153389 119596811 943331597 76418495 257174093 836239861 622956671 489324033 975643457 661422739 851687285 68243899 58455961 718339693 249363583 111330963 763743909 501611919 533517811 702531903 19457541 668523409 946721013 631620729 955060893 916790415 165594729 718331395 802396055 215257137 692109315 734196133 586247529 907329699 354475319 940183091 616386767 902516639 250654283 563621511 290884043 520864609 771097921 936157317 542569133 259269551 537060591 274285075 848340231 590677209 140786153 714712615 686430391 827161267 755478929 750548411 927981277 680987037 893263631 146571985 684995307 68839291 879349843 97233265 904156049 9212605 655889175 124598959 48163277 502120795 294964185 13462949 519765475 780168143 158048993 926711927 381618783 649930787 296912705 661895499 129244949 572718307 380102609 117518681 54598691 919781415 468272689 866193365 202891499 895405707 90928585 502798599 381381403 444685879 31719113 855002421 660688805 66193369 618279211 839516083 130178503 128283045 728952747 813075421 465739783 90169437 804070615 208369681 836770605 58620999 35347451 403585725 500012881 372257837 203063343 847076689 891799757 411633257 876106583 906456393 711783749 397936601 94995225 887992613 537397415 861138147 6669283 392822131 39846439 148479603 734385139 204430785 218052415 783326465 485216835 119169451 258406071 85475213 442446239 483569109 379572119 549727899 575287703 160244967 352631863 340357433 253650305 451911315 740699953 286112253 216604545 320559253 186367083 161848841 616827771 113879981 972461582 628775423 669005859 423142057 247407507 717092623 812130799 556832599 837267123 301532143 730920479 672475539 104964723 636599261 164640701 756711489 499207199 115393439 604933273 406281801 164304971 27532933 125125193 790888349 986505685 381182307 451791151 784586297 130948319 271922585 369791347 55445789 388024789 863384587 705397767 528537943 400828525 356999723 862122911 977809653 182650533 113083627 827395007 82676243 340807101 315106765 558330287 976504789 435322691 761404885 838452605 165157731 922439179 579742865 440954115 726019823 232311091 23159063 808856801 757282997 506989853 641496841 469997951 813303799 217269879 824641929 231904783 312716797 166621493 128532551 855607684 911932187 244833169 452453497 915825061 670134189 237322001 855746013 803256309 809975057 287781763 90516921 399958215 473435317 323337721 282345437 532930099 89767179 668420559 213389213 249858329 625789065 191371177 97055449 407136801 551591607 552602229 820628727 910099131 613899549 542687335 629244387 250105887 892928075 934930427 518237463 216386127 139801309 934993651 1532047 724902161 955198071 788654431 726105551 276772087 677007553 416221841 345951467 791457879 818037869 257551399 323523955 442750549 231310903 134276865 193803659 336766423 713679841 682925137 697143509 611832459 644663091 792167047 837621633 495197677 682085635 439070305 498659141 403935293 632942119 950483939 124659295 325400449 46978181 32031577 907540631 434928265 361563653 282516567 190059065 152644081 436007833 842946747 8587547 818008853 694280253 778294183 114359709 127347487 139352563 384768647 302026147 197594625 916999875 717180947 732975007 432515441 826110403 321987395 530446725 936387567 993102857 240510557 92673489 447345605 667968443 625067503 132872845 729818113 591578881 898905545 447052359 981277053 73626381 54293003 415982865 663177691 791170845 33419287 140543375 492866687 438410093 626496411 173652963 39688091 190240333 304356747 400360637 628571945 662973195 593227555 677023315 511747047 106157829 438681829 730603365 307713629 846409369 158358945 373379637 872837085 710000181 496929641 479932309 365997439 409705803 686967449 847275481 688087331 338578259 307177685 623482849 33844337 581179601 691615757 884405779 711095769 205967437 586378097 280457053 324636565 22246749 510017661 875333171 94871713 255769495 387567097 103223191 158662091 584881057 78589679 309199373 472810143 307875875 907522483 442667685 331890293 776917201 585980131 357063665 918444913 190097251 99691105 66426133 555852665 20833437 861896281 321226931 239295293 397943111 778031169 174182907 560455477 738660663 662783957 165316517 136508577 654467139 447834137 552056043 783173261 389055313 616289371 610154645 50840259 932775753 217082667 989845491 336613089 409266207 276505961 674197467 282139459 710779851 524316471 73759657 662181397 562297681 409899779 49289285 935832131 77139385 918720127 890588955 615533705 594684697 629165995 555395365 708512359 839158151 519950791 684175327 765989667 167349289 919687777 422670927 163074253 798985767 105984079 606382083 622805823 142161333 417560235 721082899 293724955 485689611 932838875 592600605 262501061 76630381 874158729 950164293 946607471 18147877 296836779 435244861 770104339 232985987 260492411 881934135 583062639 42538469 111075713 610165491 198365197 327636651 302160775 422528953 854855483 158165311 193111455 296085333 864849427 953350675 991451947 596391197 329188725 519861668 995919051 993482993 803664905 119532913 449721195 6720567 305622337 707475719 753625921 47108317 416798289 557279479 41446601 377364569 779185981 346357209 360659911 893759657 878472651 288811347 678583367 590106451 643671695 65006861 782310813 213864549 448973275 402667963 300079463 801789303 630121685 460589077 86039687 452655271 722907235 564387807 515501097 962380185 602757173 840464099 838194885 673460351 954168259 988573171 191535379 526633739 409651535 125129703 334521113 828076925 437383391 256924325 478025507 411986333 454788421 231148565 370843847 513073591 353222425 510732075 561436639 835671971 839696313 298713823 181096335 781481917 92961361 472054581 362585925 444667373 697978575 385815095 748627893 70926497 945672939 683136759 63031257 315641807 299795749 689920653 79684089 168001525 749470151 826238239 83117725 318435609 421315041 520586455 802891165 16884681 536019017 981434595 686875411 131569181 686262435 605088899 917731429 718362803 318391891 694668789 922544445 73694129 189936013 745634691 370391185 369015747 563971655 409694851 300567965 850581281 521994049 429558349 161588965 872837771 668522245 955434307 574040883 34756677 482075361 842750927 338702495 556150045 153892335 570270565 10166661 478921577 540413455 97189245 331006343 147999243 871090923 433013915 55542929 348600165 159407343 540674377 155069913 159978597 11118167 957540633 522618589 202334597 188329505 125692835 587264093 601580481 375770901 959418765 303459175 57042849 451033797 267979649 708683855 781481007 64519305 424317743 130152883 622837765 376980097 684541521 380178293 285746753 204756117 862295979 769171395 43474313 837965685 997557767 68395023 304592649 291580315 302052149 67125785 798629755 760893509 294080275 201829089 845434393 769203835 744964737 625446837 854673837 4143119 300533355 861973291 249825155 801320601 462617793 283083293 466723955 642745977 722911101 939656879 344335833 552764373 9202595 366741839 184172701 981410721 474587197 831731121 180801581 791214739 605753181 995328977 126845311 566056493 529767195 221803249 309492753 80063413 302075039 587025569 75823849 880438077 535801613 470644659 838530455 627271835 317253275 165065539 309290287 147913331 782221185 313617847 468714833 960141609 946523907 593811897 695524643 959664113 210834027 687221567 887515729 463364545 652302347 599398533 387375637 586249305 579014717 302883599 850324521 472156483 731403363 968627881 11166679 488943823 50810343 518615143 930451179 300391698 950837565 112481191 897437372 645495539 990230751 974787851 3868459 812076307 221869645 650915713 186231193 307057381 471118610 291588411 16908279 456035747 306708419 310746807 337141179 211342667 492563189 812931001 735023331 508609447 123706961 535443023 17529589 157971269 201245563 135461321 286279169 235119743 499063081 56104903 35051419 1180789 69813779 142322987 48834019 868014609 791080447 776028451 377925247 515753727 394516657 110375971 317370267 447738041 910155521 851823845 239427313 563123585 538775495 48604017 78351037 670724959 387197671 766343695 942434501 573319457 595870279 915966551 514072919 450686305 489288925 621066787 434933323 752523647 892632481 439253145 3805181 207151779 357453977 917759779 859944021 343789245 818764747 69504119 862934465 465693573 760419401 865143183 110547513 755268989 37214513 658975411 302744119 785573099 788344485 578562157 518513091 486725345 850133707 331821201 809034093 651149877 21739225 272003899 596953929 520168075 827065865 339580369 254928375 914839369 275030171 679682047 36021149 440675999 620172507 242972855 258850537 800449157 127640603 200644919 590116367 667938747 131081141 233067523 255770065 394217675 408323083 53604327 245427827 225481477 49332105 54182647 541415619 273183103 437320095 760710545 869978393 316641821 31560647 938427735 923251283 477305987 558205061 42612791 11613909 652430629 148163683 533654371 301527439 954865209 12251379 59340891 184700151 638015679 871188945 112445919 698485261 749928321 755233691 361996029 967168851 609993741 156304637 574483467 228619739 757142461 570233259 223088035 682847289 637004979 312928607 995097513 426002317 45948627 474366681 209526859 979899517 659227855 313903845 819264765 761992759 768723232 891388757 388244347 900093807 494020871 148070403 17918663 684988263 984562059 329004499 621751857 254418659 33132667 932861355 344996939 263811379 334531953 926306695 76024305 612326187 907462349 88310607 306092361 6506025 646159031 53065237 486619837 729163031 840237599 516247263 304431107 947306335 577710013 899824575 413879575 226423801 244228371 676535505 104376637 199633507 699722601 152269107 221136385 38201253 338627277 214924305 231826487 715059531 509068055 514356641 614787323 404978795 607025387 555897879 528253107 898334885 88789167 280634043 388542475 657892127 769427 17800403 157181685 762417543 768291471 512226483 919719855 406786835 45303141 736745653 516077503 335627137 131016603 858927163 996820205 704811031 418048387 597734065 44448335 176580259 634148147 904265863 170227011 688390781 814653327 54911033 549654635 82408323 780075323 827505479 189851829 302365977 908384683 274021693 839924821 274591535 335599125 925932717 965591493 494655293 518626939 589925939 651481293 714982205 48975009 632961901 868177781 349522617 373625629 980350985 899210005 417247677 433079363 568691383 85220679 768871903 922975031 975999025 375121135 360766271 211875037 623658557 180876093 894370179 726579945 178504865 554906785 592384729 698626255 685086257 48507351 353155831 545979605 239640007 19258599 285400603 894957821 96043335 193187355 841393675 1638941 607587481 769073927 110094615 357513929 921805999 152047495 405057299 234519139 193520771 955389121 15139421 791792147 495556635 137825311 834558687 290932219 859383677 98847833 169748739 569651007 369808317 390917223 409976001 631054067 845377015 621505165 618485913 472080173 78527049 224984925 55886479 45613825 907970273 416849573 82808625 479466817 111725295 609034883 464904341 594095507 893716399 564028511 860521821 216809309 481272673 69174751 663246761 813728975 498599505 475331581 259877421 148484579 941934547 661349873 369207069 621947733 485951805 401809985 829254967 178758579 255772915 488852411 30048961 630623817 495621473 103717999 237377675 855776303 477091319 358899901 208775401 646375241 448067633 955330633 154138299 797831485 138701969 836406013 462357605 126459001 365414815 379426829 72580313 580590907 504716527 753181945 244648585 403177085 142825501 77699201 5130871 970771723 59849159 613573045 676616997 376667765 775899291 824075495 909927335 131798545 29882441 253718707 967522957 968715779 280632973 771355391 347405563 416340527 419608617 749759989 316733843 550835017 467861989 462389003 521590661 872049607 219178901 374499837 92739461 648295145 271586067 807737295 492105429 596932025 713866051 572852173 508041787 802846215 198563597 224053387 298960641 817264489 734253155 24944869 975455747 947914305 573589313 130972929 595997337 161362615 957637289 578842443 746210223 743968701 283757987 983213429 513606319 649287175 272041539 898283901 24774291 282947865 548160165 325582503 796175063 848582203 215982567 26154111 389756031 949332859 63486775 225338843 716741407 698054835 875752133 626505685 857391559 21486723 181881549 76074705 892632091 710363987 543457425 768437629 496537405 75346517 953886041 26022346 692585181 533194365 711623547 350285307 559895089 176001423 719578957 535672717 198228215 415327505 983875637 599286863 55093365 923143509 274262937 324521303 98874491 224761459 283809777 55479295 612253789 18713419 189021107 600806637 334891515 720959109 212704865 339772683 701207227 47575441 172678537 780716687 758912137 407451559 18637753 220046323 819302111 282024137 167308175 907603199 566877623 786844349 895986345 485561277 108951707 899159573 413278901 536600449 423507863 410730279 509036645 417680359 41110083 38279959 14542449 656701397 199881405 619746507 888944795 275924597 583772841 527870961 161478321 969471037 575558199 293089797 200642433 419538409 235971357 624987463 401288167 853666685 241820569 755786685 699767751 534456133 162773363 807489591 764683529 913365719 19955445 942224721 24622753 823652363 918437883 599177831 846284679 84270089 252101343 364031141 824439229 982005821 358464391 207966711 419403601 207838553 877111909 29006873 420962641 414756957 231233386 438622601 423193819 170545545 227497755 920692369 339479565 76948331 477231993 612890687 111060757 438702553 760715539 608276333 816714021 207219437 12222977 691301821 519777141 426214923 506568929 602449043 222021703 912817889 81364951 247793185 564941801 162773091 414215059 674085473 276023721 701104075 944691787 401405969 217461989 437940129 857420477 860164537 566280701 380828845 227105585 731882667 975432027 466518791 339967603 348470783 523434097 303706377 284463833 504234901 630833851 588773465 727721795 673798421 194384059 321360097 274402839 802552047 199518971 781179351 803299393 688152925 692745483 878631095 19255867 575958362 988021897 89359429 335517441 94045111 806869523 16878477 995107609 642669053 677364311 115607267 573157265 594194821 465452295 842404579 831704321 337140339 582757851 743116749 872854663 359724205 388963735 666562751 883206855 28258531 106706691 759471673 531204337 455841677 825936373 715230623 300933051 734408683 6935621 223827445 831615589 978310921 839853779 463926919 246755249 83218097 836182157 96549355 816198385 694587009 265598821 39411448 934907643 758700245 342209875 814425049 560895275 853423065 284993371 932416759 922186855 619978873 408365189 443399175 816076833 995106161 336514279 112537859 916435277 216452673 263319193 613409075 914333033 646046255 469458619 265920543 673570171 390936395 227005565 128553119 107164433 750077807 920371211 529774029 808956739 888796477 363783075 768292365 24435631 381547801 258579591 106234893 564056441 704668213 821089793 183125441 890387025 502171531 378391649 29304677 630070639 317981401 889867269 15360123 423276173 102409129 328426061 247117011 836652789 749838921 902248099 385530239 33832563 77504211 697060219 28147163 115933277 374680103 16259405 209831565 69913747 663430893 781223837 75665535 72349307 169412759 842480115 628056041 251692547 29924441 265673445 67361601 992765089 137089591 21769483 361647697 244833361 375599095 632176135 77093155 512008351 89143853 360078723 122042125 34155923 123215659 506867761 802669991 951726791 104693271 588524751 770183129 50733145 32545239 422523673 548032719 562216941 796514331 674015 370241275 956817333 284146267 480630513 654426909 658902883 701494489 755930153 248844085 53591863 752528795 522551911 437737873 64761081 933314931 4570011 671034821 275858165 267726073 82205361 476329391 919122179 854826379 473578665 999010419 874759039 755909717 350305153 60054395 363211345 511279429 927912259 337732475 792162791 170236435 772051205 840063859 234624053 315875135 776675807 309641635 306277309 968068371 581508595 608460955 732102789 739960479 103277419 749210669 388059415 280552633 950022523 737945205 57169293 861734661 868050779 740533463 358264453 696395495 884094799 332236035 519760419 975370899 870394785 269278697 957751065 988347903 920968097 329633989 716407193 700454379 616586413 570191903 456500837 462692577 535834917 272209601 86997951 977059375 149746035 253805759 346895993 744041199 187876619 375855221 570482409 499421441 552170341 504424841 74645483 210903055 43453701 451545575 262404583 426656901 302690933 507472577 727167435 194356383 500359495 19044757 635840525 436866907 552450325 83717415 175882155 900450177 468343425 181130371 905041707 944115363 629170229 658339839 39327645 496154649 486752229 199782963 222014869 462390275 791127369 729138951 908437555 543308361 901379365 896194727 980715035 140895131 247450691 83582599 342486143 610946163 799657077 458969185 22749201 975961103 545521045 837734203 350650899 806550391 415025285 623048291 334703945 878621821 981998127 880809065 820032257 828001977 140339847 960043565 871326227 832192651 65953157 284475347 81774555 331888153 195017261 537206725 544787265 961819735 47708553 60582329 403965363 619732987 545283499 960214441 117925415 905923207 116383917 246958301 700784667 636990273 486749617 504994015 314957973 686837819 308101089 437189251 53237541 314716491 995150705 65441509 744727263 700771605 253279385 874725995 470409059 153783805 196694685 562894271 925333463 703811383 390121159 308220631 513688551 623634361 136696681 616862703 453747405 778084677 407842525 450392715 838987843 173007199 643274885 702191223 536416659 329538141 562699725 141809863 50442377 872279635 989678883 587716823 68175997 745603621 326979847 718982477 199905099 361151607 304431351 31197973 877039709 952231611 305342079 235028065 28010397 867203627 364802097 261896625 90566787 276517573 168239271 524948677 477638925 833840211 936690563 401906091 187686081 53232995 18286703 949320633 881608623 379291215 826118175 441960583 174391147 565606457 148065101 468902655 360560661 5565957 495995321 484402249 7887699 104229221 630563631 325391065 978708817 399443921 146666113 272194415 206809033 782632331 672749193 992527882 379315445 980804251 956703529 39356669 817972895 666576847 721762379 445957589 923905301 293601729 557725923 490477171 395183147 825127377 325992427 4734971 665090623 925454119 746456931 110722007 474562361 530938291 851998039 229171389 805229959 625669421 938416857 101152169 834029855 155795991 880544515 901976287 893353599 337618103 532346871 653612777 712536495 631770143 326371807 80486815 822643515 764601125 922777071 361336093 471066425 398818669 88126305 214154437 83096137 78439517 152632437 39331395 749274769 666486309 204668279 20382349 338217661 8222397 196346809 105654495 86039303 636580069 363000981 519048125 995864107 615940391 847653997 844593653 784535151 440384211 717546413 915792791 419072673 349267199 29569477 186470659 72688921 287554959 342005807 89898459 8229043 751406119 21025649 771310603 464912857 241607483 287705617 196430027 460343157 409226497 979958691 339019155 76839935 169111673 830876609 976318761 856417909 766991469 874007309 236534427 31818591 263684203 78049843 461807161 162319305 445028813 652101347 545872035 18524745 280940725 114538711 367010237 572086783 341183751 364060371 956155313 594942353 573608309 442538403 496598005 68746285 402326649 765893909 535861315 698747015 992784721 954951428 422303139 198636513 655291143 575303253 156585821 99161855 870186857 468630513 834149897 706683697 684352529 544175049 277990531 508867913 134437215 164152279 241422571 943044267 442870139 215205665 51681715 466376249 736716117 277811373 581601419 568046437 373195685 597498511 285864815 488761633 985699309 70950113 844325287 836751597 741434229 29651653 547509949 492811217 145203275 938356583 488529285 814097241 628815431 985471735 573672733 83202715 773602829 228955055 576047591 319574327 204500483 445782741 991194769 859222611 685113177 949045679 941562637 102143901 852362503 960241809 201528217 168694859 397078223 130961877 615651769 15107097 914609207 645703903 607116089 154768465 379298193 982638869 759322415 171339457 894331635 255323373 336446197 321502397 168721217 751329 750140719 678308901 823309599 142467697 71464139 89982045 290730497 202077483 886214651 685367125 796825885 372361117 148288319 190966403 316348533 608433251 58926167 256255463 906013645 913450783 330054995 877406981 305464763 623439741 973914499 621220331 533688467 558726701 35097223 854939183 508915577 232497643 845189443 968316913 630154065 841076343 342381793 492809431 409929679 314067869 501965783 266455311 442289255 289519151 32326881 696593999 322092383 379059977 851709953 440137429 791760569 821508105 236745607 635509350 869951819 528645917 330816773 641147219 2992041 401586485 656902745 106346865 199406389 991602509 335496355 128525599 95255831 214716261 214765397 439746627 927321919 636497801 3966751 179392841 632976231 863267533 862875391 625051177 16518669 235915335 892415801 41155427 966102393 107470875 37799001 483251449 230274751 320348277 794085427 595395453 993432753 273595525 597597413 818562821 443565813 128359303 911316945 892133933 523647217 499491259 216666789 934588701 944192213 284893550 30938195 17246851 25803931 388324337 809381915 789748373 294474495 132205725 155077757 116975121 34201743 884306903 600053831 95348029 831554199 296199685 633676687 869887209 247987759 906873503 5357231 978659689 39217979 398465819 481866571 193898397 662012257 931368955 586112337 212775401 204032273 823414219 967998965 291222335 870315139 302396959 363231921 36092433 572405431 703311501 124130893 969489247 574472823 682490297 152733137 113266097 868819283 467447375 95694741 177801747 72612001 596983295 41668149 513218845 433136261 901331077 138276241 935382507 101557987 380993187 134090713 253029669 927251567 144722209 801302145 667250681 721445791 179092435 244284741 532100893 380954035 101602453 960718121 428318159 413066165 54419525 992270201 459186903 862902645 38044113 226282697 424994175 934794889 721892137 443455479 154435233 497142611 623823433 255128357 961088923 536280571 171378227 697475263 260644691 648900979 972576239 32923259 83311925 470741615 850369939 404700759 642038331 937708147 377773365 745550227 514786271 304869575 568349177 129544125 558702379 470431609 985300747 240258985 902013867 372766307 143441053 385937525 194404983 980619813 638105319 193977475 93956395 86270759 843501355 493417601 895586543 494462619 583808183 123305571 877569393 868093301 839642585 34006627 947670503 231205241 5010157 657263111 715146769 99538989 171448663 554514205 925024561 610493925 798432383 724947639 871125273 563927219 125208279 314115121 380469021 427316093 313994459 895404591 873495837 5209321 142703117 122153375 158934141 595457639 860799477 795125429 673370415 394172207 163655463 431255021 23371941 369509699 843347519 724759307 64899297 300757097 904448733 271545369 666105191 516875571 397861033 850033775 820703813 186741239 224497243 914079145 482718995 879141849 188073641 653953191 717816813 552668607 335050581 559532187 19884157 565306199 471725101 238628853 818030317 871656477 86161919 754905459 357964021 76407889 29598633 265000217 829954771 81633785 884760841 218129203 13730893 802349029 425419789 919081813 408982451 976227505 991166887 766756189 325795545 242203577 617130702 776460909 853683231 613891625 444134791 351742963 229888363 987237869 944118237 934016161 440789803 265364161 317816543 919972213 666417491 711260451 303576491 624184499 13068901 677033309 930745441 656047849 982160485 771233405 492380459 333244391 149601249 556613469 789091643 658753485 16856817 619699103 975105997 489550335 88675377 891780775 395364643 697334821 943633355 288166567 165688709 707035449 608063081 348593561 781901897 60469365 164516419 813399099 799494853 678805083 765646870 907568917 994947935 272089531 548644909 145032569 780307071 808030375 496059217 838046847 583595417 324708219 930062297 569497607 637031973 78554075 310979237 454374329 75020453 681106359 770286619 836736517 666995623 820727359 291904295 978711845 425244345 616703727 791069763 441666069 719877497 794086031 429884523 329683363 988437127 129908265 290976293 542814043 619583117 220409361 916241023 247263381 15083325 728893669 42107921 775684981 546882131 672375943 982263289 999137761 624290961 837607203 875956955 806921353 332261057 401920047 6736359 664079333 450358451 685902695 128862163 210216757 539149893 295800785 525444573 992852357 713597527 758688949 497479885 638000799 359625171 85014697 408022511 76984353 755322027 538208395 587097625 97035879 820683995 464643709 625417387 438716829 726397797 493481197 655001227 867242671 113196371 812259213 567822119 442510425 258917557 931763293 82120053 777802267 85488553 809535645 130247921 748446011 659229007 5591005 45922471 480856521 276135121 980019437 211933727 413198239 139992673 193787117 842195059 668825439 755446845 569098305 988704577 657522029 912682913 573214611 949089197 373981435 248410077 274773209 195298151 905577731 363323712 623543373 744122789 502745411 783576613 120597879 605940263 345582405 714306031 196716065 962733615 710742359 743812615 164044639 688628111 847309203 897647329 312574605 263088541 469820633 350934261 187406929 135484981 485571537 869934023 648018325 694409407 510513133 707874017 196701327 405200681 217778273 880061651 746568123 642627815 672788273 831082043 415637725 719248379 212431909 328840889 747304961 931012585 412184523 653088759 783002235 890840257 23479419 410473129 949968873 719759383 564797273 459297159 578144045 314019339 255005515 495187541 454140275 916563009 159057409 41429723 443233075 193952489 240253683 832020463 499588389 122988475 419503203 47298153 530646351 926367985 651486807 152327723 950916607 391482453 127060897 280339743 235718853 650850355 937699545 173001273 211390337 739513441 742946653 576206449 682871637 700392257 435278937 482339275 82452911 638091955 522381243 65501265 621172547 787796267 151054139 261020947 178103563 180501149 799284569 780261679 282956111 677201799 839011423 173517509 694178967 319857135 817347933 697708031 830007995 651998309 187770153 83884561 946078677 446275837 988463463 891957299 475059531 708507223 638905211 88624297 143939783 525684887 343236505 289485757 904335679 217145967 308536247 259889857 418660847 471734289 916867733 816883469 210644315 278518845 631334589 937633543 723198029 247342395 830880125 692405017 151306461 476984279 952685039 703648945 125453159 971441257 140040693 11186511 607253901 310894029 696840499 41802097 841791291 104104043 307030043 973367713 234986921 446846769 791173863 424524661 574471247 380971669 967156885 827548805 343837683 645647253 405518829 945581427 79023521 537559223 182896769 984612585 355995565 309368587 461645739 617886363 68717237 3304229 330444165 963925569 988068507 369792037 942625277 594072223 714775437 507057839 793956291 833394815 290829053 90344437 111212875 349372851 289321131 28528809 586814937 209970709 471673239 178571277 254630003 362570375 872652047 529674467 202114283 379994611 630415785 420289151 172627673 974291533 483456063 638988209 557403805 117237645 841543925 917906397 821351005 851375287 141374521 448881125 205114125 299762389 725603775 860519737 364617571 375970297 961791875 758424783 327245025 230404157 556876999 613040165 227308749 728859843 682216219 531788353 621240633 864968885 34958673 71806131 512529405 773552199 988601989 843497615 512165303 774079923 383554845 341522805 150938835 46341689 812908483 245655177 841519741 874601253 737179245 143152509 445169073 717519047 521016151 375656835 68557871 677354365 692075525 386296413 115100027 195050663 657600067 265676623 63379435 10503089 804300581 853876263 486005139 340108555 423504905 109727293 589685591 224758575 159567249 76467053 380055003 657597345 464855211 908630303 776743569 746387947 65904009 137106753 362230451 80896159 578473641 884269385 968896063 867223639 483361231 458945845 21636863 23723701 827249929 581780109 812857217 337634149 598547367 95404381 34787361 532590357 484489545 640003899 430636027 477458565 32582353 835521607 123887609 454641523 533742957 692902949 55610315 109655979 45062545 378705671 867923177 771030527 737329655 377828001 669293461 723148105 567299751 728887599 898685399 6725483 103373801 320037499 962977405 759540817 824556373 352735441 447336481 870788329 252958917 616230921 296474147 100590643 20450143 12698753 888479659 803934253 327774861 861226013 458381993 748392675 868589317 382360397 172907221 429516135 441732033 691010055 894424241 391667411 973406985 753768137 375650947 835139401 587514215 549419419 584862557 590337269 498103983 882196233 396701719 730140935 810863357 78931241 255608399 369411769 424518583 801315995 885791089 135002703 570129545 73905029 398733739 897483283 919034981 854295699 423814389 201366359 854996105 675155967 595972111 854256501 592954745 946765445 76589955 86304977 47303169 955431019 684176033 182965201 355212341 784799359 841576575 807355883 89378419 688797977 596746497 632029337 356297821 227367701 51492811 438448219 623812577 533435101 578595665 234935229 970777649 472996699 320499657 214192209 822493389 129145095 393711155 781104049 880097909 757310175 19449689 134634623 150619703 860612971 372976841 530047335 463032425 661666741 623968223 765013529 283416485 557535321 574868663 443971151 604899791 837334129 557529915 268647631 884326677 421711525 704134171 591804511 122099435 482873889 360265681 833560275 456375565 62896543 971046811 572910597 691581565 288098395 732122755 238048983 23685259 573767451 966259287 673708597 70848457 129635117 109930673 306436623 191710483 715948393 565140977 204437087 876266639 664388397 550630463 285174827 891818663 185371997 443092619 828702841 111989521 685592425 148715405 942100829 641083337 700547657 513084103 56773361 386770451 3369847 313036673 819695191 864273275 766297595 681364937 963528891 334552789 832517989 757108089 30288973 121844029 906507467 658258223 993508169 649447193 342221257 294854487 543825135 376061717 754861447 239301407 671366283 61188387 652910515 282112895 456075375 706674051 542110081 181734457 336064757 507687861 777961651 56689875 482966913 120752519 166108813 465162143 716761465 652143628 140480223 195659443 467168597 278536869 643497725 236473075 334927753 855129585 612980933 939341571 146490781 449055455 808685985 590593111 478708503 588033443 857826683 817904165 204695179 273867959 217792459 166581359 395938963 370450915 196759185 842966267 954572497 503311663 41514831 4994649 497373937 862417395 190538775 936507109 733248931 989249481 11608703 575851451 53511587 821408663 802961571 912144325 815721137 468013703 210623531 362868917 630047387 372646671 388749125 628633599 103788079 289239529 169717159 230515177 385251401 443697949 969513357 724394613 299625163 165127925 984629955 764969081 866644897 199639813 94531473 440211081 955849147 873435433 867676625 364174855 229848597 914929287 157586401 676812827 181847215 718483081 217625509 218644149 999697303 168226279 118919567 400021903 387942875 737708953 415864721 886241063 721621655 660738533 524639787 875271621 692641775 402942295 536867685 676329085 700481545 820963267 361331659 418164771 128032797 415833927 110829429 881967191 28472159 874743621 158315263 488091781 978489879 879315817 734145681 190549723 577404555 138050731 261801689 937568083 445526031 870540355 210702349 724655273 430592511 836257463 982957291 208160107 275019961 347709653 1571769 135466213 560076971 911728301 354326855 608008239 33734469 958865567 703121897 591812397 768278019 354038351 168277117 366650757 419175269 753990055 840616301 29424551 32430585 467868123 630883235 13997003 655823693 16362091 1047961 883039473 723135741 411393047 919305801 473642467 785331629 436215791 219257917 272178225 431343619 302371909 711508097 548154163 372605879 144257461 858340269 460086535 804922495 372370981 378276061 963235223 293426973 995017663 709126841 329474965 41413725 460653561 242378863 442652535 287323155 547955343 6245557 670797949 826216981 659558533 818652873 615609265 465001801 979985191 410370929 557815523 844286101 867190025 166586877 391477673 97333233 764733703 175341889 373318757 520787283 149970759 252353693 158595391 834787261 226016309 119849719 904718633 205278267 658480003 107727291 30386391 996204769 945446191 732950497 957198799 967354309 889787517 636754153 832736083 862446093 119266041 262063063 136804215 932121825 96056697 347249209 299902997 203733107 936280343 954276647 111348169 563216127 589213751 554248253 993914621 2803653 597411207 748507811 125026529 236390931 119270137 867307527 167695981 541741623 331940557 996383647 389171043 345888399 614278787 816068393 133842249 805026937 609196523 178003949 920173171 180639587 95171605 644474293 869116147 541399997 440354401 751155165 504249775 699799555 227302771 283475519 78818637 345024951 486391349 481842753 561926973 214120033 508541149 648326101 360384695 186262679 377935333 225121389 219237309 608946927 70541589 227244555 977251861 564167439 906344567 436574259 739333201 967913631 350698847 725127411 110073545 444133969 567423849 724196323 956262043 994234081 360129403 460428575 156927667 17778193 124913855 435722319 225231549 774117289 835311019 272517537 762460213 569333375 995734267 401009355 460933467 160477545 609748147 984079373 326596149 899610189 173907231 222529833 51514259 823143699 247146453 87967345 857764369 308266669 294370477 457755577 492487299 681807895 752707279 303818081 741049261 346553171 236395431 659585871 349544419 942648425 983147495 444531182 567089513 829320815 811818127 805031227 779118781 880346235 220116959 336802735 172682793 300733619 936209509 551986513 210149051 706934079 381775863 205337775 391742799 45345105 112966831 850405345 723718529 854741541 254439921 824739715 948090555 259857405 325953899 65060797 628762925 766066467 218003473 794825534 48978641 87709927 96243997 37675579 923793509 420432551 32757015 134209393 758004337 714486977 18513607 785564967 600576583 879381923 933238341 852878381 72073983 68397759 66573803 765906649 652136569 777865101 479427935 563922951 805526109 76784273 558459019 980664861 783553819 634773587 657775781 633001485 624828141 868029545 282329897 554809419 591170255 373844585 215952603 267715027 786183567 263936761 737225415 95108399 623877305 151117505 66362689 459436909 602253223 286351221 224904421 513349409 845065335 474542797 460900761 257213801 345745173 141825419 825490313 451324143 926634031 192866941 390276135 689085149 926726205 863704435 44909873 625667563 596281983 214288453 511133611 67210583 299681281 937037785 561305825 864122857 658732685 661901591 579189609 14664429 586473409 650104819 364882971 887988537 870475257 551831653 863331617 972613165 422888289 384367983 865634529 730697903 880736997 382815263 253439253 606538797 12347201 64407685 800704948 871738779 96804341 291439289 217538569 419405947 458088007 266015713 212986265 823995345 176927815 418214181 899819325 902182701 548522961 356055225 664441871 740875171 229735297 687877333 755248243 974055121 656564161 89074365 599916311 421915617 162179521 804334009 702896623 892651645 107845243 134048287 138516791 724311517 274257837 552164935 89161329 457145281 385705697 816067985 67970413 398081899 726299237 767227757 491199293 605334701 842766419 542801479 712105789 980528861 762810763 974704797 260652051 889458647 209522357 89615857 214706347 160934147 158122819 249580493 963086135 133152845 319383657 258725571 897482805 430665007 964882987 334939499 506195815 108017061 339703889 842770795 278125277 715296053 213169001 760552043 869947371 31757807 601627085 473581343 990793257 600835943 1359515 425815103 693692543 135201723 411683007 748160399 423962137 446625429 882955751 751379673 822523241 853111327 644501387 624132845 628283182 284431377 446283757 282986665 195126123 311226539 337781011 863007725 509445739 573370289 368547791 118725795 21415365 737653617 435685049 174849471 729507153 113875393 457325359 401203769 70268473 44121857 645376093 446467093 753093605 722148631 374588977 729442141 737596169 778863217 372993123 702816035 470438565 71090949 74327923 356839039 28382457 877742417 827651499 571811735 384432789 695578459 478911003 916423315 314845515 631413171 643256731 847671975 665534263 958643821 332760009 144196363 580465085 347229735 152252943 909161987 703562381 147798283 369497759 66941401 906235031 250569667 41036143 941572575 393596695 218768521 619673919 308177263 535323285 668005399 712722073 862523115 993761755 981433015 241379019 815419069 382726397 381655861 658321135 595795545 814795351 82737129 289897191 14547255 531308943 586132911 67381335 871689179 13884561 482306287 189534641 597156559 400945807 675176599 810982191 369284515 37440775 981631773 318636495 652338165 261699773 541565823 751331417 414906469 915657405 663991363 327561825 881461663 295384413 868682873 151645499 207943505 117440309 791266997 2193671 696550203 11124783 992764439 804928433 55898651 855243377 672808259 858051049 403333309 665482613 807305065 354069027 83359985 258487539 322214721 625804195 541056149 139932657 942732293 125046639 753585289 836016061 60996735 636754265 824150969 447252199 530138619 237352185 206459411 855372367 137510225 400746159 982907799 358960153 28336093 35016353 825946947 832169647 88971399 186780099 841034275 935317447 292589245 130796235 680709703 4372314 167118709 935292731 37470157 210440371 511559213 756562521 737630165 902530905 890965485 778440247 567665547 793837601 216504385 166104237 737169695 898940967 714585663 698662489 302529227 370675153 809937799 467420071 185860563 959121353 392246077 888945603 227864449 984709637 259216147 64528809 760138791 407167169 644287035 995599641 326627871 459220865 962069111 285938071 7970507 51353105 976126219 217921401 8271765 178183557 865484741 639238867 519498481 915358011 674314749 726969481 373619543 739128277 134871439 628352831 694871629 589748799 329802211 310306407 740179289 467609775 199913703 381681467 833916685 369342883 642092049 558555065 841636871 31472859 530208607 261966251 839733735 690829413 178567769 678368159 625102425 196935575 295123721 413349361 748380685 193274889 277539083 177129917 701351357 598028965 596600953 194047469 402603821 404637331 453150457 290093617 39545383 684930119 805737149 324486145 903358845 378689153 187315063 635395487 203921417 958949185 350739817 56033043 544467885 31175895 740427351 555808555 469987413 8282323 531390607 335133313 870532849 641203479 496003049 590149749 181865083 384239297 422304451 370414127 518261495 730436929 592391425 221667231 729257071 374677835 675100435 592274045 827776501 750488539 240454895 705523019 508154531 321125685 549357843 714837071 427034781 535006693 582789511 230801051 673678345 964814271 519955669 103868167 788865053 196002527 850107161 955820849 769533969 10725035 697278189 412515973 523559467 327534797 476308087 413897009 481240753 449986619 910453865 503472429 58839287 984169521 297878775 362443577 154948183 925240115 967270109 913412575 526482739 138553871 915234405 864249967 29513717 134028501 653846109 517142015 847859729 187062245 682065689 123056755 450978561 809310433 591465847 885847919 742496069 797788597 125274591 462468455 264500585 519002521 925844287 596554897 593434367 67857925 595070991 312530925 594052513 657606081 213262665 897339973 851337715 903153621 223200117 158307623 220358299 952275609 525272995 245379567 828875599 124730021 124440168 129775289 283233225 33241571 895399139 36956527 893587145 444501627 920577975 881511105 520224539 601827299 203260951 33397545 705016465 311372757 908853943 990838757 836471557 161526617 907686101 397492223 123488603 274742711 180029751 974445893 758106745 271934343 422273835 414448465 154559573 459497381 200340361 72388739 315308265 258208305 46656943 334003971 930773813 198675357 308863617 42863553 549011013 653416857 350592879 128813941 37172267 432631843 920305007 650242977 500161281 619761789 856264193 499942797 420531179 245713463 203180071 862036807 872860175 548053539 452328307 890554025 733520291 403564383 675353339 87111249 158164193 48826445 694157403 216439979 864129289 268989339 550882491 469938917 808604521 467306299 718156743 963906551 475675727 710334827 907636409 416557987 890104343 632512431 914140493 24117103 632217635 283910611 525049545 194056109 815180767 874363629 778678525 796568179 647108027 384515159 7114045 276688549 627875891 246955189 277162343 426457831 732434119 909272821 575679717 406088365 989585667 329288521 118004129 147923245 110385017 750681649 489938707 48953961 914115267 620835692 626991929 340248103 860553861 976854285 171302811 252459767 520210021 379026529 22342725 332631861 452355355 897008395 503633103 995091453 561753435 188062697 226818389 198857785 103308525 756948011 169533311 77453211 633681303 112171589 316932475 678642583 649030701 79359731 488766717 153854067 53574025 152083513 567518279 614972977 366767503 598873185 69975325 609146791 152170021 613473027 869337039 322610025 958248003 363505659 497038385 751382745 53566173 591528555 547286691 981480223 565194235 981328319 740651785 873238571 769263011 568480941 8851411 125458871 298659561 998640689 161514233 265038913 728460519 894976143 845775605 194622481 633642433 424827987 531128785 259537467 370466719 125896529 424487449 438734227 729622963 767816103 1459173 175610809 120807737 544687799 766886865 116474905 430281411 822131759 647930885 338318049 379914151 17276673 387359535 100790283 268913711 260707949 33761157 199136339 649802079 796184819 516193733 667935815 420053403 627744097 495773749 330135859 51047759 699460045 415498659 523886639 995106795 766221969 294707817 763895583 97813739 403409233 88073055 470355881 54788817 767905275 373591281 521326141 498195493 232815555 276891657 670347539 623348347 151049763 213101345 865478443 972938093 363242979 197250867 238186831 502726047 143305741 823605449 636349199 154490809 228288755 618181359 297723331 567104365 951009079 527962173 651515273 24628855 618245815 239161807 343341643 562882455 142739877 325265485 518920891 497355675 834894705 565477605 477741391 444948049 695369175 320905805 79858503 579439509 701310943 857543107 447248813 213139531 887175891 444284941 540680785 476600155 174710087 892702331 640681673 991983799 880251929 405976033 149771639 618895963 913410923 695723423 42170499 975403847 47586217 216856217 885366495 173046409 686995083 227435585 723597631 333731375 363037705 296669065 165280041 293638229 637306217 549050867 457342431 867749919 599289399 134806147 923627381 25976501 262364487 84267207 886138309 961471049 951479735 236953047 829726059 624672023 322924009 60754255 828604625 762974305 585106059 90543703 773643047 254066031 503883665 324977309 388693349 994382997 330357557 838366551 606932813 980777519 77242623 629149251 745861733 736046491 380860087 420379815 969569537 205767239 807803253 833074259 637998899 750270629 112661651 445825691 98228705 446554413 919470261 725372255 770643377 832146785 61310153 838349317 767144979 827862735 194291971 240009337 934673983 704619525 537728479 827748917 281153079 254947231 997805857 315243317 715847105 979369281 568799955 749815551 107542895 580213395 143351885 94170529 931188633 998361671 216466219 39332531 260566365 256250137 1176653 841049169 633787815 972198603 941049573 722811939 110281763 276406565 884608867 48414295 77960269 581359869 102653061 611031203 71235685 239471401 474967631 167988037 232917617 769595791 423356685 380455429 938721091 547805719 743499859 575616815 240274289 178744755 78934527 302178969 347776093 185623391 260663091 98685091 678914353 939173149 28565341 800910131 339218905 645340407 843693871 559045301 18022417 609786877 373003687 35210019 187659863 570429771 987097865 334386935 172479221 418990853 21846499 210655291 694819065 256687443 503158789 750636925 499249471 409864041 444762511 292240593 39475043 556781695 590104549 762330837 77196495 955124951 273236657 501978033 645033395 669342911 506219239 598516243 402319369 708560261 805207495 905609265 1159823 339927175 781341649 411838667 728586189 435628581 986342869 684919331 877252885 617347785 13795301 785413899 979376511 64059365 776613981 704542679 861188331 422811381 683210465 556716391 585348865 361895035 561153377 633762337 911507505 728201471 715395853 361732851 276175029 660349463 834631523 973995601 264421769 950759257 557558052 71174973 213321083 477272939 637731683 578179643 696229399 639253237 147200623 69758555 439751863 208199595 719959271 779541553 506081145 458326341 767984301 731099355 340488265 518370951 440411117 779230977 909578197 686280761 930084381 896753107 326115477 146920497 483520251 477464579 625467339 456809541 915150215 710712017 901363837 86225243 923470095 788226309 738257531 72639579 496429607 816180715 726750049 712578361 341617581 795315289 942795659 60899309 767624131 598218159 8707877 516639611 530969815 742821587 25368861 716928235 405143707 162744627 168395305 787235411 962907919 814132163 928916431 968485835 725467507 828003845 320777555 178912371 201627479 52822269 855354565 5465465 657071499 29861947 751632384 63336207 496066863 665195731 867963299 409429357 627116711 477285475 304552981 358532567 152307357 727329811 884905095 771041175 367528711 106904979 946047987 756448509 959981599 113034261 469935639 24130663 301124973 805561177 570020477 185661749 897509563 39494311 673776499 526292689 338576669 239394251 511219475 269511599 623794671 390795291 102364733 226923079 171639255 602955640 244149147 572362781 533207999 640339781 291254425 353270457 439772637 641965939 774418545 301235889 919419053 460588919 864347429 905079453 677139955 433235279 6746749 628893213 609161147 894829185 742659335 369441505 17316185 883730717 787989277 175906709 635240043 269774519 285688797 671043319 983036883 927612781 113907251 327092425 237571263 472069865 649171917 268985557 743782305 573370709 618386467 18366957 710691127 499734633 784059255 96561897 658509189 911195237 143589839 961282479 614247129 192672011 751063037 418202665 394709187 985684653 885439129 124229 182474531 850199841 601417475 794391553 68079387 530781891 549807713 940615775 584195609 658155387 992618151 320025193 594567889 436072887 390210443 272392497 810870845 636191597 285439885 513269201 874161829 154166043 399340791 335872617 13831825 874174151 489831129 381006121 532650457 798315263 912980491 356222781 121028247 244990429 50356267 133445093 96802353 262636025 602508963 955650399 776113745 681665407 420567973 105001973 205135853 211718425 343495975 873118461 670324289 307987711 95519209 760185295 843850193 294849521 93260405 183027917 389890407 27285555 577228825 93675617 470418717 315395219 89260015 10786815 451958601 278195559 408728025 222179103 749302163 431805329 531321211 866165829 566522853 14656883 992860999 371265019 248551287 708064765 603968375 692476883 555982273 101341603 791508745 437719911 620799369 146056039 747915461 591568217 489933787 763537871 68864063 45854291 141071115 4274661 766731979 356698633 394699191 820529733 438438537 150877747 703679937 409720327 540589925 762121109 357993815 638851031 376005647 296685305 63274475 401805023 421847803 902695473 647671101 589922265 765539693 672787221 818546765 7511551 181132395 454569099 334636649 370212891 835637703 344609149 428543015 389889401 696702745 189409243 487909473 914561777 636062401 17378719 713476411 348547039 346485989 427682253 82647333 58602795 289800313 272771951 807283149 820112451 382047795 374135447 930473269 282913309 314692501 334447967 146025119 184341559 839846885 931836649 940738965 566177689 64323381 178479199 902047983 579404237 921348445 90332149 222132167 448900079 856186619 266851299 25882243 714114967 549750907 476478317 677051853 280731633 353207561 253622237 361797533 234608807 548983713 731466629 11772969 511587059 465916931 654479039 243369723 685424273 143342005 624946413 449762269 974627525 951841543 631336825 235041253 549747555 470800403 754772183 331675243 584993211 15207355 164129153 319354903 15015345 934014115 908086007 453805525 318009511 321867325 282966213 182903767 312268941 144076227 2789757 42855579 647616217 204992307 352637369 143811557 653270921 864412247 378368283 51868611 187888675 549627325 499261773 669372293 677392567 394980801 543138051 697516747 872393945 786976127 361559287 160105591 647065769 758085089 724766441 176644535 189192653 470566039 729524901 830477567 797338739 351909657 175367933 156901129 282221647 392713129 398822089 464084957 289562531 886566991 286686705 853367235 131707443 367526361 161642072 244103251 568512077 200365793 299389687 327650151 962108361 129739975 544291525 532663333 928807171 65433779 246590403 992720887 701794787 583715989 264171517 116281235 174290137 138440741 156285573 720196083 861461975 134554597 66035829 674401119 457986909 290846235 586103791 609541217 707937137 685467609 488426269 698965709 88316067 571171831 923339059 930376895 144862983 56215571 995114859 353601437 468738365 545329049 338310661 666491667 551534955 198006455 959722317 313200147 369940031 994779493 684905621 789440475 56413677 974368867 362934583 677832943 727267127 724934203 49749397 484587547 120550497 358316605 72200731 954463602 290622521 835357567 338840633 26319189 264524055 574494693 629611369 262423907 350556121 403014931 606995505 191422347 558590691 401850749 283160855 264175871 764980517 108223833 715644335 923655487 129100565 755456423 390175123 322535178 114703795 501138225 457955685 223747953 418910593 540626309 115240911 303653063 629189521 389336575 643976325 920614823 244314231 667226299 195228993 87090165 498264403 950601635 414655171 566496223 842361035 867154791 105937879 321195225 967513101 974372993 632040015 501672607 512669135 494575151 298747399 508686387 781515597 133321083 158373341 551385317 940387665 957908019 590173373 363800903 944525609 991022577 22006427 673337397 620292521 810406165 911433073 904261589 34371119 636022727 239794239 915624593 729882021 20552951 39983633 194788383 84013941 837522269 276701947 673859195 856743575 152633467 727662355 951993577 491958409 737378713 122280829 124968693 387212371 782012613 608507749 658916211 696310145 794677721 350708987 554059137 899752233 365636979 800446585 973018497 393712877 5714943 857856805 354534431 812210669 884144299 403705925 820715345 131891677 195209839 375374381 68584789 636839921 519862541 672793399 362049451 842248167 975225355 595078853 13602849 538452741 904526779 71817283 927247307 670918425 254980659 722578977 641369607 244444027 317951063 979713755 958138231 840432649 643197133 732904945 670874377 149314087 976481027 800249071 742159089 561737159 415468085 578935911 516763049 111117403 122964067 834185973 93132537 679628771 297377619 685294647 280224489 835461607 238170005 337631706 687862993 663958643 951879557 495246481 767957067 825961245 467113023 290001173 640528445 833089031 281493165 909740839 160089041 159522003 225607297 44328083 366276477 750334383 704775471 146898475 234660859 129862741 803883773 676818635 692578643 398459649 496187885 210008657 20827599 473792889 205323989 283695787 828322051 115494413 663366217 859877577 569356491 691844753 185643435 437231015 382751821 502469987 951706147 772236101 617061619 333010029 696203681 806764975 94219637 100794393 363444191 857739255 919341771 540583521 297346907 83424057 384649531 361408959 509124189 310085011 267234129 190493757 395268089 652400435 798578401 565398119 321109251 594231625 468194825 440655443 61125403 213529361 850622507 185408163 475380653 689307339 100572915 270995321 334807271 475045573 889223513 547616643 211839171 834879565 515384469 899851003 995526141 579168959 16919341 45798045 541737251 611034751 806398959 325007537 903852929 104765427 399608043 317812225 924447279 688301715 145054849 606598375 673541905 756551123 803205205 982160449 891474893 700942907 5397073 10242677 478810323 426954321 916108713 585407599 959357531 904471465 435968477 216156327 239028581 324012511 583307181 863696925 788712635 148895633 722204201 285891413 62151149 524819309 948075427 825087325 563186771 579739939 141893815 936580299 677773835 72139887 721020747 671049921 2949887 484752915 617652617 681433569 17770977 870042839 480270567 605236059 28662567 732913295 958691105 743093733 460615697 905345303 361495867 909366461 910550953 944173389 475086465 532153513 174145983 144997407 144526215 492948729 605205993 758409597 432323369 813110401 100343945 623265123 473415565 176354465 680224711 492112595 114595615 444695101 374854805 255970005 576803729 262889159 74406311 86107517 901020385 391717169 317409411 42911975 756538963 998386941 93270123 583933489 763518323 751647533 326722421 669414537 278104855 786036565 666800501 971684383 575798873 612698245 722639117 250697007 464399261 811673697 678013093 113895163 71768977 546871307 647944557 961189579 408262695 844466483 307907165 443319029 4948895 973840143 81645879 208493519 127630201 34273629 42717571 696326335 95041413 959014243 507295119 77801261 64621267 422049521 129012083 568678283 207446211 107666267 57967123 295525973 423531001 829158017 779997717 308021005 493808991 115459529 459414249 878146875 185070891 424640799 87287751 388100467 19499479 54583805 64567985 93721169 960435499 60543069 287406445 784850803 87939377 755416521 102262925 452302982 691600189 944589903 401435241 666380863 571303147 794421633 372915231 695806803 461378849 871983491 4643995 643448197 599105289 790753271 491353993 697951395 142837531 733583117 640167525 53444475 386990605 224915579 209023855 89053419 346174441 605353087 722711213 672753361 48296185 659689697 916108017 488842523 295371475 82113515 777196241 113947835 502439247 496226169 247429039 393501353 207206805 853193189 701672629 90753255 581247249 286569749 479949263 623315843 953789559 275172218 462768313 322563979 877200065 26499851 790870001 329474077 893630005 542536769 560878017 914288471 376223071 973074215 990424887 634568551 957917717 77640779 555167023 808579455 178343025 882500543 243345221 787848407 237110231 129774119 345682659 82071987 885089781 549949861 284288057 948589659 911907263 361738473 865750337 30910501 902728815 759944233 922078905 826668647 685460109 858358309 127392041 30897031 772015329 703313183 361809891 458512877 871540611 317954025 267620351 48788235 292074189 898637527 374979421 402628701 453062245 189578953 592572837 373982821 767242293 347224613 489988423 863076269 56920435 184958937 462808701 220294085 131189147 763363417 61109829 562036811 233621873 311589543 471450471 343695327 390207489 339006791 390371701 690510123 417936287 854340935 600598983 811113441 373384423 356721471 70232699 351585213 217588159 616294989 145467261 947779457 842381907 200431381 816655739 451407863 397720597 718046407 654131949 500569839 222684355 600564763 688973077 930405447 954202465 880578635 750139129 548303581 486808891 292229151 718578281 921467297 652548839 181534951 190417153 655046783 880529213 676878201 297391389 463068021 524591207 507005745 389908201 551779717 962542283 704020215 265017683 126848441 384932387 158433335 366283025 641520673 141272679 857244139 97998761 802915035 982138079 572182415 721413727 697078023 165418771 906091561 311444291 800177103 491212251 678005575 907668017 166678373 413822033 654851073 418666949 186533381 374499033 397108725 808777833 291836145 965271585 11153479 749790543 652756851 519403037 440983721 906559339 647108061 4264201 446541 696999553 899317383 358608999 650689267 56861209 964971735 21449223 484281315 371076225 686273077 617507067 424062697 41814995 825345813 325078175 265728347 927131375 558407663 183085465 556134681 537925247 381865543 711702229 301042569 559238127 195063207 19705989 847608473 212355193 625752735 409635111 955728831 120613919 93108685 681839743 546167545 873844905 680855761 329319064 918685644 490451621 697299797 748968137 284533833 512896621 356901901 892892331 982289925 118262559 547890609 40012581 233239839 682559399 267054597 675040611 593972539 69378483 391933649 622549975 421948554 684433595 544898283 288337217 485139649 255183617 352673579 397273505 181029917 811157131 343777139 867784005 601438823 197062699 59169197 303081923 314677739 530335353 441582795 251769587 175581825 598808789 730245579 984210431 125981829 192563301 312899243 309136463 599465439 10735901 528876405 150866583 779947773 457376947 522520383 832809943 84069331 97699751 376030497 369693775 522543331 148086339 393957693 515957903 170037811 606251927 413553085 752985193 804585037 912209019 364636629 717146105 854491467 997497997 976390845 884254371 751454155 406070583 59190457 716538391 12785651 263888043 57635859 372346181 203961455 142480607 39957531 664726377 141084023 741629075 441597487 588602123 26885067 371475537 199813295 978339573 841505197 925691751 470838277 535708987 833060337 773298415 426830757 113422395 69334759 504028363 644709127 673693589 457682289 527651999 298030767 886283067 129894389 507044573 450724135 850174045 261409633 889095615 922770945 208834681 403621931 925210691 705174743 374576211 340508497 494859569 738574411 121399031 15912281 217174045 656169223 967685819 283671379 317688923 283543743 691043895 197064147 959716877 590326059 800274773 294314489 81513753 8132879 562908219 566070891 768460341 220758837 919945315 671702101 585789395 597877103 567243141 337897583 38370615 268856215 424185001 276894201 605322599 733048463 659440407 889827255 271991349 160418113 261447527 418832119 482516281 575192993 793184371 346981009 7512787 396083623 362741855 653116385 470137129 393672279 784966041 660871631 289147183 385130171 389770709 604317129 172972957 209087717 274088205 634649285 340518895 987493615 183278217 916817985 211874161 601600507 409847763 422589251 573683763 759184179 769857471 773222235 83394061 208199883 632121193 326256541 520408989 633990397 248523063 611104681 544968527 677880585 701583827 766485157 861041231 404885563 358410547 363732029 625028505 176741091 250272659 828478379 726992109 309537119 304979575 684518057 334039505 906452239 839130027 277594241 382528149 23432031 586717763 841462015 68294995 973366975 189127581 673855355 482982637 175760809 633281627 927767507 826408967 821323681 994372969 861799275 760242709 149840433 75048703 680589363 919148619 915227115 716914581 824684961 887836333 541766505 283298545 269331891 599838467 214171725 269077791 349264879 677196763 425926721 539716981 310181989 900974481 866894329 527442827 108424361 730455873 341560879 294572107 409286363 26302421 216966307 330351325 912171169 217737981 96897825 307310005 103166503 421504051 518260859 682780563 608985383 114300851 411733899 388353655 59476445 21951883 719941683 361318065 204780047 901483655 374128221 308669395 614030347 166790465 479798525 583710649 421511081 757933849 443756301 474142087 87750980 666827575 977296525 976659115 822144711 59178379 685023625 471281625 780834973 665050573 718654227 624525837 352232125 505822847 949245759 951409035 845539239 868516839 162276160 265344223 538742109 423595287 766743091 260569053 59288689 474646247 239363147 409534113 913402103 122589941 153803971 92172433 103900559 760879789 119908831 172140887 765981791 578755132 995934185 549413867 926058005 114748829 355443763 925925765 481107685 128459661 798119959 731251371 385038737 8139415 247218681 91907625 728498269 945114123 5530687 347908627 829996055 853702399 956451423 734843079 998905623 239966039 708237267 197388263 224988731 802751671 194166043 182252897 681225191 306395027 96133827 970144359 235986187 754338849 450266717 358045815 284175389 331214689 861783939 367932503 854630939 990685213 969224407 740473103 747074957 159472099 632307973 1860343 661448063 76548111 249838525 479696553 442232454 148021437 862479545 201500169 148753349 59537879 656927423 581154117 347945439 883760653 697401493 665616849 444833283 154946009 515707919 727581031 671036645 343773817 614392583 68833551 753319879 343203063 209202271 204791827 826065773 869227809 550750979 913990405 355802407 113152657 860315363 655412935 352643017 472139175 697927161 41879415 503649457 120736907 760420171 335852423 922354887 160171053 501840863 383346343 756635003 850085703 233660873 198245077 858834879 425012565 195367203 142860627 657163027 349991333 634168591 46643633 183558783 637627459 52376761 616128707 246470031 774611208 316380241 247273889 269585241 790272661 767682579 653107891 408003453 588558163 395272511 358543013 744919841 108653169 670447393 201317737 317171699 591938279 580792843 867694397 871090473 637589111 452378199 947718565 971851391 847190695 213948777 56010349 213694273 243644873 391170727 303021739 802324279 59529715 210953351 626023353 888094139 328591881 140746115 910620219 463333547 878808241 441790235 790824735 988453739 651615065 967200989 980356247 805508075 471169341 698825559 860846371 74461603 248623197 588140837 241224835 266186381 724452479 712890857 11366599 653896243 913201203 397377871 73552193 242722465 75281365 282271751 431809421 414177133 273290369 540836557 533407375 454209207 881959201 799771489 397257589 311348261 128555367 249608591 960566451 507013605 939108553 648211499 724808965 518798253 353658759 948803595 661278319 275944379 101245353 776300819 641464635 667750869 466918915 851172655 321350913 932607051 235535657 984064847 462913437 969639153 689515133 226664047 306056753 109250085 852638503 151086735 967070761 456577489 450461463 52101053 12745275 415271007 188779527 539624199 893100387 51787207 938692725 442673033 987682277 677545097 344381097 470357861 264770125 419290793 258767799 338696903 518636655 717354677 860940403 965351647 281293929 88173251 223925373 483576553 952216989 751896435 170113345 362169639 299780025 369221355 546430701 756001249 453854127 265045465 368110971 948984427 340901055 920215667 280853929 957700639 148782953 780379511 326548991 139591521 471074427 475560747 234328015 784510617 253114891 546835551 226907695 660817209 941647475 560377191 909143299 635500221 735690071 792047907 239831025 621398437 364649125 598412279 700950377 973738109 240305041 732721877 420120995 976647897 318633365 964182063 13444511 238474831 384763769 261314311 874995239 328510851 962775111 614997983 180085451 148848929 135334481 498725835 834683619 330418395 995854905 429400411 149848717 91256423 885554141 476250033 523263411 534300813 460151151 929478005 587440903 447680019 132008031 270091215 366656255 223127247 747778665 488607099 955997915 758075031 496530581 997725109 298530213 216078415 504961069 286350149 111307053 478592227 283928517 797569397 848998665 39624773 713447995 935376673 978233755 640037995 826354097 519151009 787135243 172331613 720230547 396911073 157193803 986006817 616297113 75829579 786712593 57387725 743574459 837383897 647512541 491396983 775797055 790837765 295362295 729259077 686239921 286275545 841910643 633761885 682200293 484377057 997348645 848767479 644976889 1589557 505627823 989132105 263686991 474636147 527383673 925831061 963115157 263312319 683190707 819810345 322374847 499018185 232728917 424750419 511275015 654753479 770344225 848497007 496216565 270176887 542482591 7620065 78818385 100769311 60803613 521372177 956825139 235618191 310143923 334125681 941892853 978834971 121600069 885552509 882584891 115112867 585037433 674544823 831814643 62486413 218774975 20447143 164271441 237806021 797511503 444800227 60768209 590235077 789231915 916109569 232444727 835052935 112092953 854642599 172286349 492385429 922841003 750510717 690134571 233777403 160695609 218354229 51583149 673319505 865131233 836644235 555729909 676115637 290891151 578204737 588705583 351201739 390186223 956055071 854705361 557035459 980644479 797173241 219440535 189100115 577034873 804069547 340108165 930799545 939248361 565072917 660226791 352031675 666897055 595942945 329598289 646808745 310876209 77464513 426230945 27758169 293216513 390496753 490179065 363007781 623117369 508258483 816725703 859852537 106516421 217500175 220999101 894844993 685680481 631001371 307630041 286653169 904015243 864854253 558402913 558219659 683614349 525977003 214331613 743571475 622913909 991842685 263886883 18098967 415398175 185498005 598676817 571388591 491061031 236487982 765191627 974638457 879497975 660706445 46140219 94475673 32557247 967326711 826506389 879337407 775901817 970900675 34886937 541092897 263645411 559412295 616592711 922498941 151920261 911536873 732734959 707417115 542537395 157633809 208696611 945104583 335947391 869568563 40134463 670802391 602032591 437495751 321060329 2991659 556638281 275267151 374395659 558828073 138200669 775325785 455234011 817690813 613243973 606215027 250741717 415602273 990989055 199475515 557322171 570863121 670085459 366333009 853806749 266854995 106609363 782753119 252686029 970646069 164868311 374736919 155599081 479515727 387740541 546392117 5532883 245680063 521754801 126471803 362246327 405492521 580113697 665873843 777570827 770953661 62398789 176429997 433025677 271018033 929727583 769086023 894773053 600412613 959152501 660089441 123145577 108121915 63883863 538012901 25154981 581232101 541422753 240141253 393734863 379832983 97525935 173005053 232143625 104776883 571314861 397710735 513790145 207838489 323441545 213823621 121458089 943739709 249658363 329776623 869792705 820363795 769574275 780499947 916889161 979548953 214839659 529737113 178647249 248967509 870186945 393805859 821547049 828106325 783041633 520597437 91652977 280105265 878797287 557992607 716872973 110706055 564547773 58736141 654075815 889525883 802674709 492426575 118804789 438448573 706836195 401592507 366672881 339011205 502418155 125840551 471743843 291517069 723151797 65686137 656288085 748856605 866296719 971799449 700600539 24847365 881896595 497479803 102431057 898700443 385311139 69276567 507380573 209023675 380099427 470348401 327798249 440113613 201338693 250564243 206410539 375600575 252740737 680492173 476995999 190628359 832928025 160185597 913926409 998592161 241544405 163137411 506860917 816835865 527238723 81286601 169659447 960475511 117632445 77177987 303015661 712686421 370389601 68490345 149931129 935732945 309865755 713697087 216956937 122961295 815500185 139068623 343796239 918304703 664653653 715826665 501718857 187084057 631683723 864757099 887897019 44916695 73688903 547378485 770978227 801021379 799834201 110931249 822670017 114684713 93102681 890954835 490214597 787433951 582636711 174203795 246184673 975200327 737249385 380861685 550714499 879301187 653143955 936155267 793412191 352542273 358845915 227128141 348647279 383756347 416308163 310835313 552771067 100486317 120137105 416127503 464654475 487497629 953093205 626609233 484646135 822747547 676714219 987751531 328790873 27798715 859599599 131383701 102490391 912467357 929008075 359407123 400425435 26658405 855805873 638176303 867707547 270415813 945451671 768295227 382620307 829301231 605415741 321617551 350611015 713870243 94679085 375338128 125351043 290762537 185122997 692625835 40698203 839322445 409064433 750276427 397198123 719401063 574255549 232512241 187260825 733927251 265169347 30017307 571862671 155215993 950261875 341265493 209782085 451249863 25588743 289349679 733961523 132890291 490262909 446500935 707553567 766192443 973022621 221361469 138637333 429996773 52292603 798281659 919148649 814008001 5094379 498319221 875352249 565562211 988108175 817033253 146029287 218660331 299351759 199906443 510381857 914838781 197858395 404393841 210843353 345564107 398544555 720168621 298406351 542704391 416393985 933590551 702685443 824809459 289604195 344943249 332437443 831185747 898397347 421336837 581910693 46182517 629058393 596759399 892865667 93016623 917594853 644268977 294088067 578041315 899188589 152484067 592050191 378743411 268317157 479870471 791302107 465655631 428630277 759424819 758117607 50653549 717015113 973342335 149997173 336081995 658571005 935501581 794209807 223823087 92791089 772582409 645740173 719198953 588596925 465933217 973685001 976283981 458084415 652301333 159102953 519237051 387989539 770911395 528367065 175197529 748733845 604982935 455478475 489632723 539802513 623125059 338478845 496209505 915728343 881066497 246170609 659365571 716878829 165203763 366665079 482336829 148014115 379505475 495243939 965873821 980607637 282589349 355086541 413255482 389074975 909660113 12915357 42707443 13889387 36995659 259377919 608943149 684828139 696790429 357120549 639946711 796763347 710920793 680254093 567458919 347481639 190827289 493751803 520104413 658211759 221174655 820784253 521835451 251386361 442770743 912725859 270500883 451595617 609429233 102701645 941858937 818625795 703816551 775133213 6146829 600991177 434919005 936279041 232200053 613599587 639864221 120901741 670821341 295915339 752661497 327021083 293913087 631550397 226923595 618298643 243892245 785328327 500736629 157491613 311696361 670071093 927592547 739396945 647931849 16501153 914068229 851628041 391754631 479213931 264800597 525619435 574296967 38715835 698755415 484919137 226411435 692386945 632225045 108009505 575509603 237867381 349063073 676896807 91862949 484407065 610866709 821166005 608468463 32818099 74771603 846062939 680046409 261579861 121173831 679065323 965136959 609941975 30757217 337545859 995348711 310675927 344213019 556938627 70324193 364986305 239062459 780323741 834316627 751724995 303209607 559104449 22952425 269300693 396659155 689891117 84232157 991745207 788559097 657489509 610473963 780657395 401480283 617204277 666000473 532035545 174194787 776464563 536376309 270804609 939666053 39300151 97242391 707862729 526651963 206532713 644665499 123022427 947637765 87567157 511851243 855557545 259478127 299213263 634769137 184573161 924943115 219571633 124843813 450587931 829845875 918069153 733537925 226335497 929562185 833127597 686892953 115663937 728779833 71200549 788548461 788115487 516040947 952263593 533718167 892698815 257954355 991395355 470193719 235417099 976049337 828356779 188150515 172099763 762689361 610440391 133593081 367001393 916321741 270300721 480137213 381876931 216903175 578768361 837663297 569311859 73184481 226402623 219241353 181632015 688057159 88130245 836160803 994086193 611986729 817840983 945061351 801748025 610102403 658393371 758751539 622140750 40835669 420807291 728098795 126111075 416213419 857295149 769805183 100600623 71841943 548820781 754905831 52006447 589562675 80412607 157953437 952875953 964905123 204642415 236225195 933740481 966755341 659127313 544693149 356644921 365432743 208368579 884798857 777072567 607713195 168310759 755359247 231623847 457220441 785702697 904897108 779238967 181456893 859847039 407492105 212324191 858328041 382841127 401057375 777986017 228188537 419781025 431106329 337067843 459880459 37697211 157122427 439377879 788320013 973269385 706665813 657558965 458771695 436044137 880736251 46746043 851352619 367118079 66285389 372212885 350921799 607499059 980104367 380306863 675598537 906255423 184388625 413929541 678148677 781217435 713879785 995494487 146689877 228547599 297294135 982270891 808335261 220466851 366128765 767349457 36608195 59953583 195381452 923616293 412762493 718279373 882846653 994483907 556589189 562076387 683380585 201520021 149246877 419357979 525574521 48156749 798049933 130712043 885271579 503138913 563528233 151581197 712590085 35598353 964374859 764856713 654728309 471875429 441624535 72285353 943648305 906322225 214354867 339527425 60540039 761847305 482418133 306550381 437899599 267480399 626537271 678387219 871956711 917173803 920317915 115433823 845604147 821493389 76392905 291874563 913438885 275238959 597598229 493073917 254092079 222931855 112554969 843408529 100703059 114531063 263876921 470634827 241465107 85535605 871069786 204933119 352368385 914130403 768914039 132343499 364533555 700125665 259757249 119719697 404228677 488415445 557768065 954566781 357790815 860246259 406431997 42355207 163659823 146357299 108265097 272757479 906612715 922662739 173704065 293452195 929434705 629934811 177734211 877433097 455252903 519402525 246067517 192399145 836408509 360092209 220029919 693759075 419290599 469157109 514204581 322875483 537571845 663967765 568309519 633265915 456259451 507464191 934726827 798419831 263901497 992759531 359508999 348100943 530764727 198480857 537291967 772266821 330858479 947323795 415158647 484051043 691152491 620653481 393865431 44565249 327128631 423371123 319942289 663180729 1815019 199371023 183602785 256452209 98220707 955803241 416984839 600051539 419190535 49598509 49041745 55903701 178031685 454438615 185443085 343834547 653626643 17457573 161059351 732636145 666865839 272977313 14970707 908875227 918220767 945007771 926629801 809758725 815789555 774214185 787167499 725677387 679295423 176900781 673816437 540454867 309783203 257148495 103852519 406836233 556469637 306842113 42732399 33614239 76643793 76023417 180281371 852834451 761482369 201495351 726407687 454475305 373627663 319863171 413978711 270909935 202826885 93668209 861175859 525180085 561809007 763811541 377946061 12828571 213125093 894232657 926538593 140778755 77009539 173940301 649943601 54280603 975623025 787527673 154284421 487915861 541744733 939980365 414625713 525540977 671775869 681276171 28772625 314804335 516229519 412529083 931429123 958755103 152507099 977679531 501231861 626828689 28708397 140344821 563984729 482859301 292452059 847393399 487583397 27887935 204170949 535263453 345222241 413702281 557397839 703595157 840948243 234390393 775342699 44630743 963196497 540203467 247966603 835800997 564167600 567203137 550289585 568780485 2523097 641830891 400758113 400735945 982827633 662814491 149321129 490000905 83669035 196571757 341806369 27626403 810512835 929279687 666778085 984241795 410511611 390437203 313757599 478703191 958983067 426714249 466372217 921402007 752787065 441014049 348481067 297108867 377824363 642798367 778065139 95090469 633627991 460584149 219597975 403992653 587712293 503213521 659754343 375136145 400772295 693580273 824383799 388079699 612365113 66785371 952589415 837051325 240316541 708499579 793728733 922477499 777856667 133783813 687745287 711233545 719092905 348030195 365598937 491661093 602534845 10171531 918150869 945788249 43734013 409501785 956157695 947402163 300793233 621338675 154601957 114827535 65523114 520414771 488977311 228802825 830480775 923952573 764483273 215544075 222643047 872098431 21054861 657281861 259018133 659531117 613533333 589908401 914988385 387368385 60812825 713533197 507361833 275388419 283187415 709220833 429427787 764425979 914602263 617276801 239270965 786850497 221723555 421705985 423711577 977657263 173704407 250356801 896890671 759916907 426856333 395892461 39060539 580283359 167628845 954703731 671195397 333407809 966789027 368116237 867426082 111121933 884681321 174393273 393593899 132285447 199816571 899776831 499669699 587309883 661054815 885509169 642119059 325052413 525808931 263847911 229041231 345546473 852868447 880684159 195585711 626237925 122077999 350040549 759906679 819241245 325102909 841750727 669097839 676207107 544808627 923697565 964998765 925429333 995070537 970014633 936029767 363083031 234591549 480643057 878016483 953462677 156802135 436308037 841839145 360772197 384235747 582948929 829465357 173734495 101148599 206976577 6405255 647416749 686753331 456212081 21719963 966292661 446793533 155482047 357943121 842859825 150209091 222935267 766636991 691499289 531818043 57951581 168424187 897125813 745599649 6085239 976048683 734703245 845073023 497721407 839088247 827260025 32628579 143277713 20898323 374336659 760521825 143763977 490751287 954613055 816276759 369086737 520459559 133473067 107241135 320479963 33509675 236598347 222869715 4083291 146037145 723412699 398752955 894439765 113095369 882911327 966779943 796516689 39754781 248721057 20465241 977340061 586857727 858925753 156414755 110031701 33481697 343869443 352000475 616066645 569199425 997176095 772491357 949341255 21119131 19357439 396800529 576437915 875762047 392831443 612228325 165309065 784128125 529852953 388616781 741684243 657916973 707666325 51839051 599298305 769899573 901524563 337839715 513648097 867599421 803249575 749330597 472275213 115935481 105389357 955912869 323444131 765620513 77459403 277593219 726772879 112156281 753972397 660112355 499209599 718142155 903957573 350815477 680543725 549419419 191847251 671622513 436427285 617079211 785839575 556583825 853298179 878777079 815713823 963601695 301964423 172477109 380310465 125570663 756862521 431445977 160183447 493748031 557383801 681638747 871459781 463150087 637920877 902682431 411083449 360567461 563147273 292852623 591562789 883930503 409540355 49565021 33081609 333453475 385699805 734610369 742597029 613617271 670266077 31153377 673886345 961078025 996050195 941243623 107774855 684552425 412212059 750470913 890230459 424667179 253672785 645821039 492076427 33365871 348484703 337588079 362588577 189679833 263248567 39311947 382145011 924516121 218581583 854654553 60019643 483883111 374553063 378487025 300843393 505049469 520621577 940977781 717811215 301980325 442784771 642449743 987094905 538338987 224868593 109518579 559634461 620295655 608829103 534935769 771753883 451207989 892416743 625372549 120417765 989677821 531651593 69265281 629942315 993483821 543503951 850564703 389970923 833050427 445205687 773113783 932909545 774816037 461862409 713002543 750615857 185504881 555421657 479738993 300285977 52232751 429666683 911893035 627595065 630968051 373832977 693389597 56381051 155898845 784345219 112190469 10613765 145525649 15550081 315664303 201765200 682528577 62063491 170647019 122363415 600009631 641510603 740747927 630082399 546204653 407374687 737649299 524937329 216727277 487568657 46928075 487157221 562576371 469193593 615712045 190032533 119441359 810982647 287181241 435481765 598412773 57569201 671404909 686506627 925379863 2282651 646633813 548540387 556317909 262985325 358883715 916554945 170346005 319255715 798411791 634745439 948722773 743818377 933212703 578177613 835043483 536569903 810130653 289776989 910433911 262733677 358309497 801152171 789377277 614949601 579176749 647931037 106141645 806747895 326349373 772668381 242625035 703273179 486794483 83604065 35367273 61089673 666184097 772727397 365701913 630308545 607631009 97204077 498888925 938587657 432506197 257903941 895717369 886332337 193991463 932202241 396500539 475212757 19942027 526092287 396052219 352002385 945300475 720973025 520376853 25825487 738409719 706812563 547988209 155019201 510000907 541681485 277140861 875822939 427134153 931159943 398753583 273108385 860464329 758737159 367432197 169246811 563856051 347108825 915440007 342888985 596505131 431875411 575105985 627361585 900643814 142427919 466618953 922794693 50394271 878062577 440914239 392967101 643891735 714248487 869972551 330075593 487847961 147184931 669062547 626323043 219838327 520568485 403059413 937647049 948274955 869631917 417182799 329005571 816145079 452361355 325152197 296258531 190827111 792291537 16261 753637377 284376843 923458651 971279207 196521405 853245341 294487629 713792969 875274815 698828835 550364693 538265743 596964215 976383651 113898598 749667881 599955229 941057583 510718527 639321229 274994099 260838373 21978593 573938233 958653823 302174695 686306777 275412277 264088979 62722139 233054715 98002955 722382535 173125239 708932195 750971607 476719289 563412341 257382519 5512755 654428885 65592725 145470945 812870215 484356937 835003171 33196953 183095743 136728077 724691825 377602263 576003285 542347745 773773273 516934689 451275843 829921103 103647933 127233091 919344723 906856871 222370441 951391569 724499923 494843905 84254381 306618281 122266903 386707515 805034147 992765677 730964221 503332863 20592367 395483402 728366573 497711039 458794523 494584629 907423959 228469169 367199255 766841065 204047405 832882389 696224611 986637037 863011567 137733621 542611901 830295625 537695141 39703199 720727917 526051669 228204889 954812975 473068585 27324587 52884135 323337921 64174507 481764911 555343529 119694911 897610419 528368655 652515847 894615385 60323853 471789503 942229485 872741513 315855243 940716793 36151573 179953933 769971463 314011333 997895867 224279023 856940389 318097005 851904933 557254397 142813067 744211077 45012769 796743633 449717103 572738537 765347847 82113227 943009035 211452604 316057525 513836051 288449375 634506609 501424399 112448665 513003895 315091381 584238469 703032599 124982117 729897351 954180109 28306697 997563203 463792171 330974759 571193277 294032437 612999979 239544533 346042175 3352417 437413729 683051433 896237929 112260863 401737187 545853369 332025561 987996483 118487833 513475233 741173755 803386227 541728687 917319561 983917053 150511323 986784663 406806045 492413911 564311497 350482191 888755095 77956427 828722841 89908635 99897267 253378015 535010477 765096713 675599287 539824100 757699441 610086505 548936563 238215029 444685653 178037531 754976827 201510765 280941269 60666305 989699053 651893881 283869041 587927369 873578995 111372805 221178037 673567719 785178679 223034189 776214323 805844501 13467185 223589457 360926087 508984217 675430881 500033751 555210063 685338753 711681225 871307631 712099385 571954207 649271547 367850101 127198965 226884623 77619213 211554053 570550845 910305589 53552667 561056777 53490135 536145599 702763213 596084019 487338377 642066209 463933009 99260409 815013927 595222807 137031259 450898075 716837003 369212581 647904557 230704929 33314969 95622165 354050189 436952159 972230713 138857215 188831429 886702313 327563869 362641215 614169519 942097441 662540799 627780087 516965289 9432367 27015973 223669395 542864023 982286853 220565973 830134217 615820523 48324695 335272227 522615957 236147351 695526569 39679019 989621051 688242715 45692227 840058123 989241415 671924095 230687539 161550321 127030159 712254287 276329811 649439245 315349803 339556771 55523651 419524763 393182851 70356759 805395049 235858395 410839875 583482835 822536441 379792409 345651805 756894341 54039787 938413225 607219473 679837539 908112637 606448353 621893599 282469675 879589303 726641957 912361365 430240803 546852459 843165153 158917193 741389083 612563505 503372421 948186709 865688167 932937447 112842893 37473629 349147877 672166969 575240827 8917327 491878143 406976661 455913687 423589727 55751070 986170931 701340981 193044745 49742655 803892243 921813809 178611471 654233817 345408255 902930281 914102401 403620087 903777415 276454027 160463281 587374757 819388419 776741447 832879931 999029883 967009681 612596825 559217923 699009941 471707421 838263681 368197433 311455899 165659475 372398221 227305805 408325819 263763631 511899979 147678461 214716075 907540079 188055959 815650635 640904617 417355165 497797717 977755527 270335099 98147849 289055853 118727747 197983345 294613833 353603537 745565 62853727 150056895 959398525 663301623 663603621 882969491 834859379 57533309 46597927 898258359 727908283 176511143 836624983 526621921 839739753 53242221 803432487 273535633 33203353 860492565 732701209 550784527 6541417 112460075 246848817 167751023 344140807 355004547 169769213 911582853 114249635 643747899 227634325 885404659 72037241 515666103 567834005 73244193 156497611 780662943 9494309 486149695 187426529 583760365 386664691 156156229 769276433 723951833 456725557 840765685 679360177 613654763 130783913 820229335 900086311 660901867 891407255 476852537 861627865 985962225 326052041 887089205 656010303 808296279 590161819 554378921 791671247 804792769 855846373 458644801 742595083 5988127 777647891 443587947 225321089 599465887 183415569 918510175 612663743 976735683 131490643 782876191 598539875 418594124 287713755 948977265 273354251 504582727 819029037 435809255 435199077 824975369 477781591 610130137 733001763 425917487 474700273 261391972 850704379 166825883 446210327 115128695 687046581 74821497 980010865 257998269 605963033 43320383 630352685 574899375 261554423 782143145 340972033 841786509 204650027 559891643 610943533 342546784 185109145 770420929 853673843 340299259 994736169 712484431 270880805 393218801 646432207 985964355 293067286 656118181 853713027 14735551 708051881 866819393 984854599 528666673 711869121 911912881 755889961 429764171 545740747 323780785 720505399 691174923 361024193 168559807 899190415 97821623 638401055 471976485 985751631 485250007 805609451 609454065 233330085 599321665 609347763 389740799 793689027 528011539 115152527 22367979 156831713 163510705 487512603 889835295 386862145 948105157 215186815 414296011 76604721 861785155 958143851 934848745 198416895 606252139 840413201 438771511 349272585 713196733 499733553 517436733 576711087 933843977 311156241 544635471 107480411 137393249 282678401 343141249 668780671 941888033 209310167 779689139 671823511 251381999 292102383 959392657 408479269 702192309 791272495 729533065 295650739 644195497 347264649 745874901 422017233 81517127 4952689 330628723 836704029 82782801 250671843 560486699 467992885 680067031 701319785 947507087 336407495 700627755 156646929 738377463 473801349 213132011 411919983 698770305 92266279 754879225 458751137 672807705 323346545 834658689 120147281 842337901 938191659 68977659 427403689 509268469 647736107 271546399 749285985 191996659 966274121 694905075 567483575 317176941 589228389 259648963 161222515 899012149 282191213 56111395 61050849 417663969 655967827 461813745 379456727 899586005 967870479 228059727 778353077 648397877 442309029 493618859 304878433 844635637 160454685 666697401 538041673 391041483 884811149 619741299 220961377 718588215 952460813 792822047 257306667 120311171 625620157 18453067 859058603 408458429 907350221 747787463 563513457 703573697 351265385 926780851 486495633 740200491 823098831 97645427 711132841 677955941 666888257 189561521 100569315 450586529 88755465 243134307 637294057 234346963 757418103 930557891 542200051 19005375 279514857 502755673 265913791 964972781 738613695 895629807 315520917 871921579 316330595 704326809 573692993 394722325 130592585 455485107 867786523 67084551 919060201 804609763 416117247 14254891 747167943 133792787 758622805 453482993 75944555 91530873 3142665 758514321 16100459 976557201 653406357 416445709 437395807 406363679 27490293 547138861 255555817 872020271 802116015 639989631 503977139 284177173 487986643 918108253 423206255 899531119 557618677 677903589 172059099 808422687 151508531 134544899 718661555 365646163 225605175 91917669 917802695 547742333 957530155 664693893 733762535 319350619 65061831 680675231 192879085 37896689 110534987 182677185 234598073 622529677 671427193 386675381 594523195 863232703 156490659 235306009 394533727 123022439 521619103 425991243 517474597 766914215 906141129 238053489 866737033 333172461 376486665 955909759 709697691 932238317 745335501 693299755 63245675 168821921 192641291 970440183 183899411 788057425 299165249 613638697 618647477 777749127 794593397 680173521 850384251 541233173 673103927 794736075 527511449 985919515 585234843 45001139 217286983 922233341 701326143 89935603 423806665 769065317 806452557 91863485 735141993 316135241 200341615 879397383 395044727 822358757 446269663 335687313 752240977 610265789 788901207 906166245 128994903 121961885 442342945 67349841 135318771 136486297 415677961 518311409 881223833 437976845 975012711 315757985 272158401 249698207 449491735 728769035 7081967 139683641 771570049 451314591 260072109 943791379 594084755 452252823 725019789 845536421 586726339 671138801 505980201 773887669 588545295 702116469 818168099 986432591 581767165 66614199 477892389 374634951 105480603 202049291 342629603 217677755 627908227 838456979 892878357 155291661 438909389 758846519 441405823 103999211 299399205 43203239 422644203 807806919 830266549 727969371 730772267 859037281 426124855 147097237 943955225 533110713 703916005 731003995 897282711 878567199 487993993 983049598 76371599 373898019 217360239 165842329 275065077 986222757 674438511 680108297 919356865 603423177 829583333 19394551 29188599 131325177 894325689 284091729 597247137 581100521 115859545 490517461 521070545 702496921 411988155 551997693 738923425 396917835 621067869 954056725 423575347 665206921 310321735 110393133 813986225 240890411 558616067 641132573 269526863 839682637 455417517 476348803 261943877 323905871 689634781 146225611 103880151 49754595 294458559 60946465 904358735 903586297 424879359 924422529 731539711 708578767 688904657 717187499 308691265 579817191 151375095 277117477 969860983 839924497 4467125 235515711 661838093 218988385 59101657 921126164 702796913 799712559 974982841 450675331 792865315 80423715 871130679 681148467 758173089 274024489 736771509 709566871 954498167 12638835 627757347 15995875 843820855 997600383 593112567 234279709 692219003 532138001 432383535 912845063 235863525 856061239 508834643 321883703 104672543 902435649 651706733 939499777 810186973 586914767 348484633 623822983 24651225 906747331 845510513 423625137 468890067 914650187 306947867 98455599 738021527 921316315 216322377 755382651 850994423 514499373 772282797 633786323 979157965 729410633 973851785 865545023 972857595 737811319 956049825 873333393 224099947 944517199 709634883 921058913 503098641 121828523 276600647 563638287 474014695 618335153 591465481 279858883 744733933 676177099 911060851 107691117 468490287 157279407 974019055 227143365 927790783 519279193 202873205 252214861 97351607 933302283 578150019 111376203 284349753 719657557 810064671 896817873 613998447 12230409 580084697 8646071 131118477 218726981 429960391 656834971 508986061 413425513 957922437 585212393 200404335 843685415 407272761 322933455 604134335 721981295 30501781 823465029 205354767 644175999 878757837 66913547 732004025 411263451 568295581 583625131 345862943 47600719 115967567 618120053 614365869 95556593 769355697 463682433 568938195 254425881 986524949 565406125 23441163 37837167 922824543 41899427 284800987 594119903 998743793 502246357 549627849 799460509 820176059 835186297 881647721 857434659 475755315 487852687 581373269 357131831 525470041 585234145 942726447 761075175 359578031 562091261 906148003 330464643 617234759 947162687 630761825 974784939 815253687 880093891 373726499 637345859 266764571 413191795 306938541 721585013 662692121 882013183 238248139 814946997 488731107 643920353 205320011 319518147 25195053 880933207 698055689 601297311 248581941 960857451 657165287 241119129 456047041 759770091 544133073 398560835 871966495 554503281 675745207 622670969 480789031 587077469 102276499 568771681 360209975 809686231 641379945 48978021 844914227 193642447 983394629 694425659 130966411 52757759 316752949 703609311 395563829 639053283 884497237 181048981 92881585 700421577 740840391 55555049 247588097 609587901 573755575 780358831 154644407 988970649 42604117 971642885 361733097 51055099 46308059 34209869 180036915 973796687 294996879 361504819 107878077 657947075 620556215 713247151 867712051 789925967 354560935 455860473 595170511 674403509 953824697 389390231 806894157 883110523 326481 274838357 836752883 772951027 613874133 714737993 734251407 129224501 44918203 899244235 752973945 761217311 110526845 622758021 743929487 546707549 244070555 950867805 555883317 134404699 549862561 794855309 942949981 988347989 21248035 513910157 76936057 912536651 3614647 356548901 661926537 638539267 827545857 46103133 849178901 304806413 761011117 842965133 852233001 457930437 675099243 906956111 92416093 615940423 295368695 444303241 577030349 981964413 68216849 937758821 854055969 973944345 507149957 500103257 481047173 198783377 752974885 486679583 448111027 592743205 310073805 420254143 410742759 991322847 387745115 742079363 199793383 861647757 185068221 486952703 57346307 42381257 841941731 193046031 15992335 657596659 419729609 761627609 428988523 463852083 279687279 85407177 411261947 37426555 5414881 885789329 363956527 301427839 66182195 25201455 966985215 971229123 470140539 446036967 226038501 552002447 938251997 684881733 614995947 749853425 122169733 203789597 379602845 512992963 131830691 525346701 262932499 146365093 489631859 112144887 337457129 118346237 57597493 963291656 350900039 619845377 509032759 593389237 198445275 317209507 715307207 589338425 761199321 634429095 994940993 895008283 587701251 153393811 778456073 172297251 967708831 574771385 740625541 273994599 986579319 221669937 998090541 132110405 111601893 17531097 381790069 352196705 66743239 993868893 735121893 808890277 433493123 198561067 752581891 649465157 173982213 169645435 240364645 711045313 594702021 659564109 503455649 968190171 112830915 809986155 507075419 862923933 351217539 249893221 573965887 447079519 276019987 453509779 671935997 475371707 135026955 593433619 60759633 228905879 952272519 2879953 563848189 694404893 357093423 457805433 775244233 552272579 698579249 56833670 283444105 440513093 387673154 368146233 673588505 422122151 763574435 333202329 1376087 524060469 673656087 163571063 715629361 17611907 612600559 863566441 681433239 950769517 453851903 881096401 492348293 661581337 875834023 789040857 383853821 854928627 469878475 14938989 241754631 572613037 466673885 602286921 498154679 477763653 82009551 388007403 89033001 923187711 434899747 253408411 916685435 593701481 301581277 559980397 204683227 402072147 161095563 787083829 262007163 672960221 555129157 494170517 512189331 578144361 983515303 962267125 725823333 646949797 690617049 986689157 962182205 372248707 466759561 238975037 614837871 861040450 910851053 786743519 108113489 875271013 464041923 693721587 244383049 221888185 154014289 914944967 387442879 526452815 292642663 748561525 956742949 734360967 395532889 321467099 487868663 682801413 460877063 174999973 930354103 647561139 182101207 917252161 119488749 361994695 28179893 518052327 720913709 778716093 164650267 780917401 390963987 360118103 78459141 861753373 541166653 409700517 187234039 808305413 615616089 999962873 406746885 802114473 646066713 859782639 156884673 327157543 379417653 963745389 77044297 285843563 263011439 951613855 669627205 100509987 404232853 700960247 277988323 652568263 425509749 493904435 421534681 623356311 268813293 678445143 704321381 304244125 645823963 962004143 597272655 808338345 936647469 384248015 469212387 138180177 136883925 155691667 651865847 110852343 259847627 61038883 714621675 866990277 29734417 370342885 657047717 59790247 672394677 417532307 669223057 888572249 708653509 20800805 762605737 189725273 590850911 559659745 665750887 667279089 492407971 886764883 16385749 374251057 171802043 407146065 674478465 625723119 894899161 846183413 169921405 437553869 613638713 643535267 251547501 148824883 864847645 919553289 553333107 71040593 723354317 4576539 66865215 797539873 788540575 816972563 581072391 426520417 234217449 391432569 311316363 364000921 474182929 726847767 934581005 531492637 987336319 782678015 392378719 388815873 681956263 240389779 160483029 727207205 361968641 908429425 909014607 345355317 126639631 518689161 568049203 81892767 265002591 561509135 486109039 216323997 618788479 720021631 149488759 59384621 759838221 901861533 245081165 222121239 875973033 751110773 986466677 222590701 62072829 762566235 610556671 78596103 618857659 438326507 801362301 144461443 464696191 826511371 468074515 670232141 402633067 278062567 661061987 34766867 932191465 931230705 437755037 901444685 6101993 881234407 749462137 337574461 473184329 686404301 792634929 61254889 549645033 572752367 272476813 404578339 659014835 388266467 861023965 729132929 662149017 250986370 771464695 458234727 873095575 260890355 974284087 221987833 267914159 748693153 794741125 755809323 641709291 231175231 508586573 568456371 898419035 487998411 536251529 575344401 929475869 21709963 851315125 463061135 77096785 813735431 165126359 388667707 770945313 2434839 563159933 990220017 407503551 363566293 267524799 863002701 812427881 925700005 693987387 818061753 838604635 147159607 785135893 128254055 512202469 269529209 455478527 165411147 670394711 673351341 859508011 884363305 34494217 651986517 308036953 755630729 484016481 762298683 821268689 957877945 884848583 789282935 40648031 174274261 245932207 295611749 568599641 697658297 518463121 962202277 710508447 454023695 831802609 308965673 283931287 891869511 677417817 686416161 934629679 882987161 883990105 815394571 498774749 717223943 280425103 113201323 887389599 86125913 203688347 187123725 368290043 276442397 627065639 426750085 604153087 906106797 538956775 625734063 312238915 895011369 453267 227104883 500493797 674193783 748153071 352695799 130067595 615362379 286577347 31465653 557394785 918470429 742662373 905109349 903774239 947547433 626750509 359780365 110311685 504583549 741662845 793889017 576035285 386488547 865478591 108339135 947309793 361741305 43292903 641105465 679038975 961858077 647149293 60584843 868755339 872085109 860373461 820162851 80412013 355119349 577942953 364152245 307980307 874860371 512416121 149156411 759520626 785281553 375115363 427458811 353070091 74831733 807381127 230469251 413016545 770644623 205810191 354069669 919637891 389740603 613580335 191274877 169256713 29578261 723234847 843078769 314617617 100327815 748650019 684351787 343372737 49726659 798738053 300351137 730943941 914716095 485474967 256351759 127190869 356361531 660354993 680040951 5118257 500025793 470251065 934241065 168455581 556145823 865737369 781029303 974983015 747899633 372768831 869470719 645770981 283434131 505134251 93805987 149642489 983021871 858009691 117778575 418024453 397744949 829482969 984465913 678502647 820611807 381131963 838621533 928783945 306471723 816767641 825076607 507874039 332980961 371724820 234923883 97983369 105792405 399261657 986629495 421661961 803343515 171714457 924543549 781971473 522649109 807572236 398460321 280067007 214124523 902049017 130419663 836830393 922616525 73790503 114895935 757467179 188146995 841228905 900209833 877996751 324354143 377736089 867160085 722573279 263058263 390856345 564636619 676462629 867104749 719678547 279105635 900142317 42831289 107253435 633301175 835360015 388749083 57004489 836458219 976840167 798528059 193122433 989495661 68032605 769099783 121865197 126159345 66274271 515640637 579722271 18713203 714486115 409932631 361547057 734629429 919958631 323484577 475552325 129584839 233411569 199502891 76119685 328451323 456331153 429953229 275259429 173287405 894482011 859363877 538892127 897467395 527280623 553459871 964730739 274378727 66454387 38423911 80490413 114944399 371673747 777967993 876037213 531789623 76617865 603716757 693128673 834850403 906773775 960092737 799535513 858907871 235065199 133083341 516713713 198529983 8091510 995887701 438460505 342805089 101757049 722715061 612724811 132825959 845445209 47948695 689658955 419005885 753774713 527483757 316980707 282554779 787633865 307146859 528813989 868823417 493482175 261838487 647763499 857772317 496932953 69935539 392638231 577696915 631475997 678166612 723535893 438200625 337190683 378592977 398669779 454783121 852208615 502571081 458851601 317330327 333781921 714360229 46526349 957818737 862791663 480085141 409229587 858835601 11042559 864843411 347136629 559890359 48534661 123218909 594287757 392702179 87244483 837704315 397181757 625342565 846888829 323751743 626399345 152593359 876391169 291821761 243373847 538280189 235327783 184019553 802098223 814105875 823110731 476326727 115294647 904257919 97122389 158320995 39404987 316547829 849982387 272561261 493256525 215484017 341485661 30821607 827781511 352808503 517557453 845758231 880264331 519958738 427565835 395265551 567416965 225902617 703524263 273420967 549257381 981067301 862901429 647016573 108714533 475185245 35374293 983799549 953953609 119332459 682892845 274129493 384188507 435999559 488670571 726393981 865367213 195943465 822329027 732471861 332968857 691311511 128853239 349847047 9687427 505314909 412987979 102900547 395386065 270033039 285166477 875948289 950253305 429520011 252749077 541902111 192500085 925038579 751689665 288293191 584921285 300249781 111459829 778815979 438737269 986725379 28671649 834266945 840117527 450474331 893936699 835318857 177603909 273441667 721920963 378864589 264258721 543985027 101171643 612815707 361877463 328873395 882903861 315555919 388381847 64550060 465518789 814214853 929383579 953444949 467018635 227680935 969744553 628270297 499181101 476605605 875115399 435391917 151852505 62357305 145017609 807524491 543448389 107098529 254782729 476912763 544033709 491164903 750423657 867292359 182761435 331695833 401514517 678086659 856816925 20220177 52702204 388793099 639054407 590483439 732768283 197037573 527206071 814003099 528194421 256893787 471730007 43123461 198437137 513885379 751085969 853676263 750695171 884333113 27000925 178423997 567875429 581512449 480832825 604955605 484871001 606594727 715454765 990002747 201018891 457081343 290778053 100881353 720529835 873441829 423346711 879897885 740554357 814823807 242804675 265436835 212382633 920550073 622394351 8961417 625499283 709071301 794163273 361037511 474828677 785246433 601421319 165510175 441030361 638935441 851084519 94151447 578609651 903037859 896230959 366726145 560830009 659833895 727090093 938837237 537607203 816849021 817399481 574579921 329648165 726175559 378939185 755968065 833937351 872902003 306012793 278601905 247836815 183707957 334436993 218838877 972045073 23317255 717550273 811768389 815269351 294415023 108045619 707371311 900400819 900704315 99040609 309370027 110437665 268190973 590826327 765336853 536177633 878656145 182952107 668886409 682923951 748867035 667146109 366020849 458694219 874588169 709183859 563214079 894404995 760624527 814924987 854802217 488483365 957411113 583229195 762843055 437903629 684907739 466401441 325141659 991474717 93475567 63125315 102865083 451855681 220716287 885305153 882323113 297664361 769690337 50332271 427498437 752962449 986808253 523308843 43011895 436511161 32997117 784020319 621179633 121678319 136208215 998500213 460050599 384387393 804184007 654871909 604539613 590670027 660514449 190553519 159066075 237556913 200689217 504691287 878532271 775538457 114839213 186163690 710218803 860608825 166919661 965247105 238961159 748559435 657433449 484182203 912956305 683254929 137697997 246055611 319100167 277290067 416240397 771551023 383963227 55600869 805828451 261941841 149024337 248133537 804407381 224570077 468977519 804673259 613417135 114196761 621131527 283139883 580629127 536902613 706170417 781364691 902906423 420278117 412871371 451290207 799121763 401670313 367551617 270424399 631882233 599263749 262187457 141556017 668033837 154624107 663173827 205762963 41093755 709546573 775251079 803698193 803994277 928815789 800384471 80536399 838969019 123723791 990016067 183369203 868464911 251040129 687219491 754600373 989216317 45460377 90656917 800546891 479412265 430121849 549627525 8748663 29134595 546156483 397003679 596998917 425255483 607415719 335085151 350825417 332709775 29444569 362335235 461218457 178271745 169056669 664233877 921887323 318072033 150622643 384307941 835464693 133318337 230659947 403871113 422708575 868249215 639193503 233796579 207977615 223139389 61826983 639412765 897992327 161498215 480108143 850959651 74939987 210824885 427504483 58132913 19832839 669430047 126054263 881989 289735097 927979 166681645 683091751 853635215 779883429 822123143 365150059 384073137 734987811 678187033 285381093 486827345 64859517 885490675 127546679 384770475 338139676 982645177 176953289 48316415 738725545 464299149 505816267 332589979 412638491 495534111 735062325 427258573 14039467 475008421 835982025 544558579 479727585 583907549 20508943 687100523 678343557 717507853 510886485 393242019 399752111 162763781 633385141 684068363 8807865 369826585 776213773 556676639 475054663 889356329 392680969 741106529 275768905 358277275 474431767 409122137 914921965 755286619 412477295 547255453 543402933 331540707 689936147 972402115 255723875 294434861 787524041 799607921 116922115 954446787 879365667 690406991 702598633 902646707 586219129 842185743 627367345 353625999 206811113 219879021 794256705 622799227 526819167 472963371 91335619 684196633 327462537 782702609 754921389 587076249 206615775 894445557 417309115 827055025 763658401 273170349 423722481 51674783 312360921 843107615 65938075 280913707 191845719 782238259 765472077 404679583 33263025 374436315 55070693 307743703 295485001 685627667 923666821 827329069 591105097 842686941 975943579 492169351 419479965 517595713 654839513 839480663 439120385 577082709 499999805 318217359 699592179 393929263 604310029 486588593 697562045 242801397 547628241 202366401 67226735 147857359 844056673 882257485 498808031 423739375 649319637 133169773 321568431 898485905 514657687 233699007 708396359 266542071 671069775 519965543 113545943 562786923 317550577 633001237 164798809 910023485 196178365 923716607 834771339 251017163 711258675 106414307 86673397 284815987 201155107 831416329 66138091 343146915 664161183 976140349 787040385 420801741 839062787 119637973 262199705 867373929 613836789 937691057 393799897 175891963 637509215 816118327 229959351 384468747 517457783 868137045 378809701 516091439 994795193 272258687 600611815 334663933 303727335 363921335 625417987 747383835 129025297 806788225 341261387 6531633 55815561 695186923 5726487 763985139 710138605 896970893 777529733 666696729 515423007 892992901 504414081 532393573 660165707 998152567 369360313 418657445 288641513 373720467 71980197 890846375 445761457 262611086 959741831 760714313 254250153 814030763 656078181 497110635 174661661 983321513 135784977 831620599 394209953 793380315 500407073 89995487 782538003 644972823 746700025 247327009 784454549 680347321 900396989 355243449 333225621 399347113 502181985 992889271 764432327 633136979 869145499 911001387 719684901 186398385 793743083 375690797 462801397 34214207 68533659 150282211 254202309 927926787 173404601 782096245 650769253 713574539 649124129 163745559 59152373 784452590 619700847 716131073 678899161 911825357 235927565 16452727 801403323 315800393 621367085 346796225 925367697 271310867 933835971 232260661 98315671 192560483 917865109 496980267 872471887 101688563 446442021 7782147 936571529 964187661 573755849 196911405 794928215 782525565 65975189 247573013 680406549 397111705 245922923 57460793 502474345 46402881 627186419 107630363 822999101 260759259 11245213 796048965 809666503 732723285 47695521 647106121 274847107 618368805 923133697 918480831 862959413 892866889 5198725 889355341 906058985 185949255 493699259 394155419 515593715 114586669 615760637 942901341 302619121 595105427 375758699 193646411 688107461 217236887 307749611 465898025 384615069 274062045 40954673 622152385 890284267 857888919 494080437 10192355 900713837 843748983 239266995 672764013 458164775 310155965 741130297 116727359 531227495 789355825 804756753 985359171 781700797 597631519 208710617 299135597 686358025 253354847 238756846 635073205 69415533 26153805 413173881 461901855 913956183 805565905 514660203 837486261 204934523 182322009 918444667 173447 837690837 3123673 85237803 554353587 869425319 422626259 869010625 156835673 965628545 310610253 83859277 919552675 165659955 707258577 992876203 763777221 740050655 126936185 123902070 971827959 4216547 41313507 796058653 622574461 573971695 805556787 862102473 832854177 264951799 209626907 541550967 341571509 136732471 928338893 714184165 242864147 31835955 12496651 858549660 546822173 930955959 817306391 107014125 648714301 801928151 582205123 382065137 422099943 990847727 135050853 800763269 543976595 366724005 391627481 393653331 331337413 252372453 357779591 400212171 513425671 934915809 943672925 648954663 757635817 337386007 232295633 642369637 457153033 699140683 815220449 205772623 696932615 815636105 144063251 884354419 431263375 441095973 937080439 484454443 148222031 18097853 917718945 447461271 290823687 580679987 712764849 91121055 960344693 420718773 38320973 124757235 437690981 688315063 252950433 294733323 513673127 416504563 761357669 795565097 475586585 779096175 146423257 775907411 555186843 105155705 95020481 382764635 605963289 779360161 680399979 562567129 473880705 894085319 449361583 501196077 234408403 781143055 745470441 298253951 62091021 743111139 150624513 70485693 821735739 591725047 48145253 742768805 117735021 689645643 487063563 768135089 762634945 936957473 121788017 467197229 789330263 455663875 349860253 299720489 829136731 612026825 45464351 284140925 579836157 117061007 386386443 69469895 376965751 668990133 47474689 244777843 898782989 532125165 303406631 142824109 758648841 959374119 948993577 348220785 755494333 98434209 260145985 597630847 298993283 943779295 773624105 274502749 362900413 1670315 65205035 926619739 244014805 261512735 477753619 547868565 974500927 842872209 889878073 307284199 504996979 730831273 253161593 475727099 365474551 779618131 776451901 138483011 962474831 863991489 783318127 848178419 390722067 372283505 74919815 344451089 278704603 719205929 472597123 129971295 917248585 289829361 493203689 63327347 601347849 673608991 768818889 165420193 215096523 156643665 763188151 840413195 475707977 694609257 507967955 56371097 651105607 684079253 668262595 487664379 709223823 725095753 171655347 716464043 459598835 977108030 657608029 998102503 786968909 266694527 151864571 868110263 96321919 196773713 289468247 150866413 757479541 543870797 530598591 879103265 546231583 725635917 835321607 771699379 282289271 660023415 203506829 328798666 508438145 28236853 839738169 383120985 739604807 679137597 287501177 391907349 830486491 633770123 844321603 455762817 288158039 890148961 629389591 147796707 419203549 191623503 23206135 704482637 74242969 263250727 590519669 252992919 832828347 571369991 829166757 602996063 120434045 712910161 235110183 806195217 46762277 138449585 525229857 174675931 768881913 755597597 891167551 652462773 390672973 38722001 209436603 517144927 25226875 938110801 93286225 215506019 386748901 506879081 976562759 209226513 29739253 296660271 347434859 669503617 595828511 959594491 132971285 605101201 152006621 956250741 117778979 460347627 92210607 992953481 623908089 246110209 461023009 769898859 418753159 55253513 703645125 984437397 2495299 175483907 596331829 929127629 153885739 88531129 821430805 968889121 592376263 412312505 104501515 715525089 362543395 191280735 956282829 866011565 409137365 27135687 823732245 754537577 419695101 674048219 830721187 408436799 212288321 619677517 438999619 838154915 840030671 270637713 616921799 506069333 387606107 60743147 394293257 216378199 907853351 288085091 473532139 547795443 934870007 746258375 574267993 278985665 999751451 107655601 762322499 274184091 317495911 555080833 129534629 74544039 181557561 609940063 206628479 611692111 565351033 965546555 178482397 830778185 85180311 740398287 940414929 405034641 548163461 931558809 503788405 193493867 480773059 250591201 654451949 870088547 517346649 803238841 66533727 416569165 473972691 707933433 341329153 251397191 420575303 585308735 798445581 530507954 899977813 532935159 425808323 834131261 906176291 963181903 687641455 745635293 439272031 333270847 981960037 374583499 458942783 397731209 810314235 150216077 171717503 704059827 420782229 267221487 622175339 668733967 383449759 6891271 581866955 404845237 269293193 507775021 70794489 260116611 328871631 403439627 285466067 458344997 65945841 572788105 771739069 612397831 380640891 823005403 815356071 244492901 836700159 332351617 440049673 891875391 877179415 536344635 856014813 417141339 947291751 188749335 99247021 904477001 397024917 781556587 762191237 100782949 950914393 861119441 844176123 780421067 26760551 708280879 746270255 324555621 550441607 647351215 749606087 445883365 437751935 778917575 164895473 658244289 243190819 267531827 387282019 253869113 494658637 358240757 569122651 25619543 142156513 171377245 996610975 373508585 542412741 715770621 292956029 649901449 197040625 654434225 225694925 564809367 517098073 841424287 585666541 12059707 494900997 99302963 814492355 777878631 270020091 69852191 70543803 317584079 662788687 133234785 858774221 149958135 287624475 362322237 239007353 152366119 247127171 871273279 826235073 971840109 222594735 359937595 4975673 963144099 360677073 644654159 225872625 779492201 893891621 787690205 217325451 375426343 13221611 818685843 744383533 466583309 338532719 385513315 459076485 300482835 764855043 202254731 113439689 849123835 105033475 991374993 51872183 442942027 797434829 122607421 616758165 354091861 114885583 909697959 826712627 654113841 520309881 167110183 183618021 6836413 571204423 440895591 83317131 292459173 564526267 334787663 307349385 345714775 257222493 893329173 883519185 5850123 775504577 561415219 348245461 160707777 404274305 170033265 283065239 237209925 338562881 461270231 80721561 524451105 702145961 909315005 919056365 960329651 4892523 405085117 845339689 18451735 214993475 146819261 695633513 274050361 459320561 302202599 390230357 95370437 15287875 513078705 153851419 540589623 315634695 105471191 765893489 221942477 95021081 829937501 281981077 242184593 706727261 111996559 723673679 413454419 268638395 452492545 421125097 778962089 810378277 284918671 756482621 781486325 110888343 515176543 516804265 977631073 515393553 40231901 212040585 771227353 238777505 968585146 830017511 947873305 157614421 632552439 883510559 825440415 82362441 562659797 375271221 44864435 706484385 813695715 682676531 489146729 585233797 473570801 112601765 582064533 522721575 844091935 19179171 501073625 528070083 395512783 883039945 573891485 644428443 491387823 766810689 559687441 401847543 775794097 426614451 191043629 152804650 928443925 930829147 116346547 697576851 918565467 550134263 737767467 908843405 546252883 888750025 612261603 83011207 508152589 580764323 149809909 175489267 558373355 626546137 467846975 397699401 914587019 532022091 470226541 477777163 648089821 354975325 944326125 159761351 471323669 580190465 392163575 889718283 960557999 445425833 789047181 825171059 38650221 137605975 26835317 323736227 694509407 40058511 28206913 287179843 276872919 964162143 183223113 621203973 267937137 449293919 600830123 794287269 413988883 736041643 210150995 453514725 573545961 633833197 610780655 359189389 560491365 966497103 648987383 180461683 393368389 93905289 435747243 432184173 152584589 757059033 390551573 563006049 864555145 837544965 413277445 420945207 743386061 586951261 621327121 41267425 365578551 68692661 513984923 617135707 739694057 601718125 792704973 702536103 848650063 250970219 505632147 922866895 220081697 427736605 460292265 869525219 402443095 637152887 312912781 844969215 310854455 457760251 807019145 985320263 110973517 378458797 154076333 483592675 589681263 294630683 694066895 785496071 42519479 134970205 839181457 828574443 526481801 532750353 745712987 833111761 428944275 692059483 198673757 607721991 311763145 519799787 663704209 59902427 398986341 270038007 69787573 258296235 433576175 324720189 652756305 489144791 552176433 568846597 816730809 929668809 603682109 597859099 885742337 782628338 856563061 179189973 383123979 548479697 439288695 688416531 732625277 290314725 445229363 153125435 553702861 910621623 455757277 960087865 883005229 343109085 344315121 327231623 844447905 792213485 721175347 829358369 409573103 746260621 723291567 821353357 404338089 66752101 364557497 166972121 599842343 239154985 478342893 582671773 20054663 470254737 197303857 826264311 116295349 59235680 730914993 702369163 68813663 326943329 706492895 143736969 873011965 322663271 545816441 214082215 620530385 433191497 144280707 175917859 523316193 417741292 596424777 154401989 736690175 129636667 299821409 508494041 235182273 821755431 229351589 957716021 218693771 95166633 385056313 482212921 697488769 833377733 301168267 532371915 38595223 294597763 674476877 732145241 398036611 436164345 267897471 110308057 667962053 267840829 174977377 142649033 952851623 33756277 773879169 491979567 618228791 822708169 51844021 217408409 395483473 405217133 157802263 846777119 435387025 261918617 547038219 732790111 156918369 780248977 177624897 9215869 385829875 225416863 42280103 757006633 376695355 628516115 181142143 332026777 965965567 315602251 365304395 56435341 384648129 451795111 874181077 221971271 366626007 746953361 743172149 144188313 678962261 421803387 477241031 885929177 150527261 926619619 987629099 473763043 233057239 287641415 383044435 447457567 409725939 796864305 25058415 22943611 821859497 923608631 533069821 226479979 184634875 732338415 528624577 245887217 895351729 186587391 498115527 764419473 72004697 322275345 124894563 686230875 258810957 405202643 460414003 670970851 581388973 173837315 706938137 544238921 586289759 718060387 232439105 968216369 270815511 123241661 949803299 258855371 393403981 467555555 156213111 421358287 267608637 853906605 228631107 814123127 35588853 546865153 335466963 372991629 624188223 23470793 240864701 437255517 79839673 535715827 401536987 291792573 209955777 557263485 691246929 694646543 315374717 959183977 228312973 124404789 949182433 119701441 3298627 859200669 369171875 660184471 508096365 12099649 895126597 668223237 492525139 113839005 111714317 816427051 727901821 211833527 394036746 83512121 946080195 577267231 870111003 503005531 617729087 588345833 303835353 190332881 966343511 108851893 252750001 766101721 382804149 958887079 946618575 311589565 191310671 909703793 217036591 579988179 110467169 490639941 695801487 178523763 66813549 489963235 870712185 411101695 289441347 546014355 798179131 478240225 191853557 971184161 358670065 405883789 929801697 945332709 575754359 758163579 10594729 425479355 579524471 879733039 450686777 498929419 257789537 227697203 337829319 815045571 595992431 563069721 480820943 331613529 517755807 308355451 810799381 212105931 259173819 98975739 356639655 969010335 451904849 360286531 292019925 159898597 394745787 842244871 768246079 560225585 864141593 854322431 846556871 419695523 381104979 321751535 314778011 244624863 52189977 572354209 553739565 344770327 130061539 718471911 928358203 992519165 523789299 901199001 424822475 879451091 862052175 666838685 680471845 894761307 3256009 295050205 792017121 208507369 818680313 727512649 419926233 294308941 890264383 857198043 945453873 840761323 703267011 312933271 685357655 634104741 733025653 597592711 726581247 821672683 686895117 169359549 87494181 617412275 211231243 517894739 182400011 323079803 700803769 493236843 666516801 952973129 325970471 963980335 750156441 888405165 729986093 738286547 45462831 731591099 522721129 24519567 127755625 217332755 966189127 767263911 147812337 732033753 300368883 571714149 696646845 409951167 822068073 136307995 384203785 611055095 955449961 236194083 158023513 571558211 378681977 391774687 424458361 211814119 424989161 457792697 310229117 333595313 775253205 307645477 996454083 701121017 643031577 569799837 727091180 545269915 82901087 558862241 583657191 673733119 721577241 67099837 21239273 719685651 318889851 808471171 497228651 860240973 752194443 256266125 869808435 440836781 513115403 384238973 752196429 953156789 266648209 973726717 422968591 663861879 115825 29629889 941313555 55727495 218209741 668250497 922868029 200504325 291183501 778978563 813252539 914371479 511707489 537231885 336664063 636723817 192507587 9004913 726780617 366071349 970211825 891281421 657034265 451636533 989455091 496585667 892774463 755456307 867068059 916842617 14616781 481412221 626790785 555129637 955307423 4190949 169366789 400670399 822844889 58001615 770685007 101446989 320211691 582709789 886675791 320080597 503313795 828629823 378572733 243978859 406659747 689451051 81538587 24062761 463499405 639268703 381302447 870714161 368747469 210865379 880098955 747021485 213967927 233726787 743012487 36417233 813323751 749277333 851336769 181476567 876204099 545334137 759245093 789286655 375598327 229848597 91499873 540837781 541644533 170530581 588488429 406963691 528142203 570427571 297513609 427281243 723655437 910325163 898745023 59123271 708983415 254259267 245518559 571668251 587212237 869869897 722845697 402975047 690932589 480372501 463012355 852335685 133868281 800807555 577951375 540747417 588490335 25079293 113267735 942347471 41482449 936515181 737753809 120516725 726969805 875017291 757336509 547944743 637367833 112820373 574588325 928464775 184502461 252139475 471466009 501305919 454470673 393484561 474541679 963922179 68178095 761118949 779142345 29741965 295809147 696907375 94263055 236476061 102479779 962898517 363092979 868292351 690060187 752150979 479749609 112044165 175710751 543269747 954085429 550083337 266045489 64156833 123987935 692989807 924255521 743849491 366105269 452273821 998996353 259668247 389795409 106844809 520129581 773334661 45160723 117308205 257912651 959261627 321939747 474025353 5531461 728359837 104660337 524778153 523429841 64280987 707272375 809583775 689128171 727126189 483083891 378523015 195491287 959029837 782106093 429125247 339426849 416886659 443576119 342653621 368576157 26496479 994754601 399779417 360351335 863430775 702958947 7056805 541001701 819185895 51983691 805538783 17001411 755232343 737278741 71086669 492775923 396926069 773896119 241324355 609628339 658918005 208483571 180623131 764586375 128032793 700338767 549111607 302477373 210868901 317007389 506877699 487371237 113762281 896264309 338244847 949972959 45765433 599791243 618380663 456874701 743668851 721928713 524431387 107490717 651160833 485636445 423880295 225309827 71479501 94922605 404204781 259429881 947118927 611841593 330886217 416604101 56584839 847236999 833211417 679013877 400413175 340689383 888642571 897883611 733785009 574468533 408061647 94125331 631289163 402749965 159142689 787725441 937286881 477936089 489109185 745672531 285950491 823559371 976166267 850905085 238438183 81307225 67917345 548501307 797669307 597726915 174157199 257506577 822961683 544551955 505332131 647537611 891021819 766865687 235596875 440241917 789967803 477910633 443406967 280482947 949044525 783563625 608284451 642419587 240895663 193826623 623101519 497057639 135386661 31211485 841692679 654537957 190544385 299530487 735566685 705128185 77406773 922750737 277416813 999318503 147349315 535975027 346574933 740794939 313124141 675341355 6593603 627750347 377340037 708568339 677583463 662621871 465330017 342793419 152894973 713798735 105987677 503050427 887636293 762227287 21831584 649866515 5066381 140918715 825670619 823389131 939078947 784434613 307319617 901756837 953947747 447008459 689169553 374327079 757919921 886240713 632512017 390597027 520301683 672975045 410867345 524006961 873003297 872546329 194550373 207948975 162225199 989464425 472295533 626686665 360543781 45986467 285974797 119561453 596275081 987656443 426379061 27216723 358641647 9973229 883871069 825688827 536216307 960382011 287166079 690368689 185311539 348860149 760775461 312868351 626236765 824129133 437530715 463493187 342718241 351734591 649674425 978766745 465975867 85284689 901817691 407538669 219994989 844452557 588920041 724386795 378568063 440389929 845295761 575811087 258818117 159617057 573583625 329130393 709006235 643602103 946080655 719807373 812329567 257012795 433323753 143340481 763881855 191976257 73604199 902600649 206045931 313408673 583584989 687429127 606709919 465659523 646566827 767232165 434428317 784315731 832651191 559752335 223935725 834798787 655571565 727136385 416067747 919199953 874181319 727719417 92949723 846246081 756164671 953821759 894009011 940256799 347378143 436829543 100135769 566809025 196673331 853611333 395036925 675565247 765692755 920226427 319097819 760189827 822646747 549278065 614620469 999558835 932880371 595169111 742582867 712449097 33757513 674189093 327676811 109627517 359430931 64226461 686115123 922559703 421588239 422934855 812262065 443142431 684154501 447037809 241633133 942853741 2086207 445693237 17667545 950942747 407849625 954632561 401503345 273153230 848902253 696885457 553870005 692833651 579845665 925051075 77208115 834210365 290205095 436396671 357424505 977252775 900466289 938262023 800363813 803042169 398984833 659074849 167451349 321303485 884105051 316484191 752132151 716962759 267274509 763578393 223601661 371971891 109668655 680009581 635420383 937422055 899394013 596468039 59867295 279859213 239230143 861623125 622855435 233723675 824244227 691114767 633864433 972645069 468009311 60949173 320056111 400874279 984781587 290097745 923302819 268842613 858451681 395089587 323101755 573995595 226210075 846259825 930134505 640037511 452256149 489424111 208716709 296382027 183267503 335910225 316246897 140943109 386289743 252000137 229133659 200692583 164064993 386627921 659395697 531484271 397996127 985214759 480514513 768300131 65654085 101264213 339698073 611923915 568608153 579850475 561356791 862367871 793674729 707664063 325203485 729854615 535591501 846638707 502516035 248742269 616260961 746462063 473985453 787355353 673703759 983285731 332258723 327438751 420564673 161456073 744252027 721662223 731280367 879495135 754940811 19799979 354712471 199495853 899441465 256732733 783346175 690663815 981013997 243210973 982337015 153353601 614420249 848725477 311936981 797988989 125464633 617375995 881541237 934303429 341679055 420930057 597743677 381879011 939127397 268909125 887925279 378583797 517931403 27189547 858311311 629816155 243902175 338728831 112717449 725389531 537526015 42362955 568726681 751873799 139702427 472973801 243626439 282680119 844655967 542527215 734240429 312191369 431253257 426825541 600768103 197658601 407207515 411088661 524531103 484477189 364357151 860646870 827072895 506490197 553330213 402349891 870887615 651775515 453794379 392782431 892860573 606170205 178036079 299799671 389053921 168913901 362046593 553026079 255711703 925547617 860181357 123161141 496597845 267675677 232309297 630923995 504271291 687378757 430370255 844165759 976267247 149059277 558147921 599513301 556773727 859029867 517196487 556050391 836821247 303272095 1764431 566932171 683208785 330082739 727191817 506417983 141552217 458195637 954555423 334516229 986864295 174691713 626695619 204806713 254958671 905984691 637893169 719912511 64632559 138136757 991220394 481025733 99716161 928761017 771906683 999654847 677284927 270811059 985296369 487456617 939921361 336399209 199241579 861259077 881330215 28069725 77556809 791626019 910519427 974521317 559091189 366363157 889602231 920971541 337209571 673103735 567658521 559671759 226057611 450187247 913009285 749791931 854629745 566710887 311928675 317538633 736366109 75350293 191576735 414960817 801975333 818544757 316241331 780842229 564053025 453501003 857079963 246037981 678966707 441620643 372905181 381537783 568715909 248829649 916739209 235905949 645696329 108701811 325232435 502828015 653673149 48263787 365149945 420629971 539711135 906437095 223672197 686421245 518241465 855758681 647642881 28386533 465058273 102552959 583039780 735309255 444893423 848171103 196586033 780389809 167935429 408043073 499124713 407500655 450146893 852415675 975850651 628567449 674445689 168633258 491764765 769358227 268578887 473219125 968497871 503060097 700333749 275452353 951047831 2504791 585644749 436612873 410353123 490750667 856312229 562699015 465032361 59896415 433137237 906409981 843806567 618108249 824991999 570487931 550696995 637189833 839915981 503613009 582571885 996964747 475785715 827868065 332857688 425623867 956716713 479063497 275240581 767182149 609305139 686952057 389376795 199370709 547249883 899007653 105375173 987354855 177117169 242738057 625851581 168756537 736023763 75557289 467145405 332984149 593951201 974911441 520736271 297799817 288940933 601813525 226460543 495959537 101814579 933643473 929797477 187761513 277939299 207681963 322248861 389692571 365929881 81222799 279250319 649933303 298159967 726856879 998593832 191781303 966364487 946637705 300323809 942384857 601407211 592847841 109603509 934435879 840861933 467929283 102351403 618814255 74261495 383835267 146037075 886664011 583754173 274062271 525014721 93228187 531290103 331659353 263420821 725531911 581149033 562544255 916113011 585947455 236302557 976966053 531298443 375437243 647150629 597356421 437465749 960479165 198648603 430560037 115203019 464693835 702890145 333239763 867927799 681161015 586885025 132890655 673558885 724932121 511163407 383706857 917871597 539348305 519909859 386012245 557934571 36468487 844533793 358580429 522083401 70412331 829525459 238222343 9364079 171536757 367819019 396439037 865456473 853529701 124706275 59520503 450413699 938885701 57262461 126879101 968166645 953943333 353517827 862659431 837104187 183199965 945901737 213335249 329528683 225106443 738946215 513886235 345633317 274796315 329859139 727669239 977512845 727728443 553594049 98140757 348434261 626518369 444099705 655238003 920014511 275357011 513098691 798292693 899049821 90189461 147659777 44284487 461109923 685327735 352995487 16775389 699320911 586664981 65845261 491053043 658026937 407840075 787634373 633481775 411994301 398840771 982812235 708218493 93390019 815517423 806975017 506094351 323797945 288501251 100735217 541430883 543092501 225463045 841606461 763463231 133299413 699783095 487770799 143639211 460408961 649270447 698476785 800073469 689263139 274290241 321984183 809338067 695093079 327400335 509004987 167801103 525237302 209996161 815029437 415859935 91615337 924652999 630687881 647800503 694624287 644667355 627071729 640881489 599717643 332218363 661295823 220068533 680550255 533917231 785046533 85611819 827100431 505391945 993925245 102247499 468697145 377230305 302059307 79603183 148900037 390542167 602034953 490859325 642652945 956554451 353014295 53167519 78362881 841972805 531823201 277537739 203442437 837928805 456447737 167562429 666037011 633480373 33319161 451428023 374358441 592524411 393249923 924660297 424554191 867165129 497783747 176785221 644764431 9447799 975375849 812027849 402605189 487518499 689940015 714670903 253736395 909533241 841796313 766619963 673210631 510631655 593258545 664934603 711539435 221801765 10248585 140338979 717059499 351186355 568587835 928463559 968448515 306614045 908372649 298000515 592103485 589487277 66378047 313341549 338039591 383902081 628742509 460779741 216536341 105055093 13665967 930603389 581377765 559451701 613395845 745809971 752749823 469810221 678890619 44678201 938117713 10796441 610363683 346745095 764958035 761462647 245399319 112367971 410825471 527446673 839330553 169595995 260174813 839880823 329641845 500723263 82862333 476495999 801523259 51534255 576220917 791800523 939485445 311800463 271796449 839332675 721636505 110532873 911896425 938585241 331581373 385559185 395622841 122726721 190686277 37399271 507647627 759222399 966742027 662201101 377321755 291887963 266257905 757916749 51242031 963949475 14459619 63998271 406558485 960270065 959479505 299512509 254753957 753669029 982101429 495240941 455026237 323603943 169017492 681270841 554301121 474671271 727992951 460240983 439550369 568777887 581359471 689710403 563047379 938270029 878366103 56451137 593023703 934212601 218629137 199475933 569687471 816901301 91152905 492286443 160038381 658466649 860975535 644053641 561411239 128258181 204677439 506417945 728310649 329357983 802735609 784941127 845066635 547922139 289098025 791161355 30816905 708894255 489636129 876137629 52268461 315567197 679941691 392690563 778896563 430229739 404968411 446462601 498856161 539513899 434585959 953239237 906872839 791148085 791516501 549534607 394535801 300906471 658031647 379393937 734220053 416864749 51039045 225450419 292563525 847134131 553674325 894145577 838906611 638834293 463550429 622968691 453049495 532192307 18444921 988049233 962047791 888138931 851293643 660918227 41547331 98765445 931488127 440517705 402747359 877490181 28482629 997322323 338726299 355967567 22913753 802194645 243463059 128967757 719833339 359690489 47948143 897849265 606820471 152005429 854499165 586263537 73735201 350882373 769866513 266957133 350086863 278286379 392225997 615144911 738392677 552560951 319567445 905906245 702255311 120453371 5626361 310238025 317913853 38865235 737924493 216898619 651184107 587120997 274736497 152946755 929105305 28928669 720187273 605379923 776593941 558596013 430238791 199280927 496266861 383469971 459670941 767865899 276459965 591220371 102481419 715880127 694353959 742836025 99882905 44665833 638538711 127587673 885847251 280862339 935203837 796239633 52925905 776072749 513602005 235689923 677093167 961385039 497338273 212687645 83516181 424270105 930859433 603577873 153684529 980788355 784860993 378316253 194059449 294083407 174145475 752339719 635519851 59603459 558652819 561007191 498446477 569637361 724462361 742626789 14168813 83767857 736756167 155946505 135424741 604600992 64148249 618054253 468824909 569991917 521210255 262634745 853299345 211969411 424324021 304796899 549429147 556816027 893908767 55441317 150775525 600079671 191322467 427966471 813471081 790019101 174238501 710705937 514430385 456086749 723954961 286509851 323663561 618446547 987469529 159322303 803670345 932401691 756659763 380049891 850984013 941361313 167061991 175635121 593558653 515786001 564978875 353368735 871596295 182307303 851256451 485901673 848181921 306182755 86483227 365103635 5088393 270499721 515258720 505327081 592460165 107445039 121140803 448994175 18340581 356810473 543174067 845191603 677207933 925981465 400557991 181536933 165439661 722593257 732963111 55711943 951988569 300031045 230634809 346128841 784871155 159187177 608285171 353814441 926393453 121513811 187652971 491464621 576717129 845189835 296264903 473087837 271326859 584402788 700105005 783821199 312922049 165032181 418681557 413094241 224977923 82469917 305694709 322479925 178646765 79318853 529671119 579019193 988712871 598735261 568572849 703533281 509823455 791376413 137375209 704112871 902183627 397421703 748737235 913961297 557509161 294597731 838727123 4614125 991480129 72351231 294252113 846269389 951461341 899088757 658685119 772477005 656408921 564640163 258141081 873722385 530220941 841261877 461216865 877030407 971108325 236768153 397833887 686975587 929953869 234013703 808655593 463118241 919991353 587526785 159138773 302269315 220284331 214984909 614849289 936911385 354763303 943545213 233516589 947755189 179441083 248577769 308962291 598354163 599502847 426237487 276056343 419671481 465936655 877996603 147222875 708937779 990884499 751914683 491004039 309775059 159132857 966101799 946622831 996150359 895804727 222384063 40669935 645069507 18766923 34653837 359343335 770684515 925881277 931083361 737882945 384651467 541676505 840855505 252898031 149859289 865398389 645388353 425808621 721767599 16942065 324962517 732447037 835359417 940901939 412468095 196424679 965516463 300071847 712032249 900491777 50215305 569779271 570484417 136595105 544122253 667116173 405387809 685546989 804192073 967591043 990113577 642994189 742771853 792036023 284923055 986868275 115910521 174657853 900699733 917381019 431042926 121734323 716975491 490581639 682144285 221742913 243860585 519020351 825306231 189505941 174553857 358567705 990154169 358435303 251054089 770406763 871092836 106401521 325417995 687716507 91131211 42099451 766161493 482135313 814652539 795011285 647353345 103937089 943243863 610293971 86148847 728572835 620810877 177163221 277507271 773615033 1515231 878197825 103495673 505400081 260367531 67174149 764377789 919040825 601512803 238570135 846854165 91593679 760014281 325585395 502511815 494766963 705272041 399453091 604304485 2733775 524984599 972032693 433799751 689300885 352466161 406434237 85057165 932727169 938528855 309262297 398997277 563178325 929988987 514943921 557635755 759738843 366713293 751268469 534103469 963279587 886499083 919142615 726088037 366598219 676303417 338274327 317271769 225390835 626927269 137857277 905682907 669571525 609899743 625155285 656095745 677456051 876083655 689670773 466974639 363870649 988744575 852837181 293995785 473246681 905590901 25091603 318098179 873180701 477232219 927474789 767118419 138021525 417623345 604330279 464168569 734066014 817163831 702090203 925901503 820196251 107002619 930716037 368995637 640439923 848801363 353248181 983356849 383210523 754494297 998364543 737996501 871251147 437644403 865430657 805975305 109566407 617321035 255465957 766316927 909594199 449253077 404875093 923574571 658932945 403015761 867165705 276648403 266845067 201690177 875360703 544079097 96241643 426049647 327656383 915857651 298590553 165766131 534461397 640374229 49883721 365562409 94523223 732136065 116144947 922669489 704552487 116826015 222099355 182691197 552271269 803116703 910290698 823804861 274208197 977116345 71197715 9940719 811495931 862215663 555166033 22182103 919372357 302679137 231486053 496312193 631311401 492991381 479674617 1193025 173568951 657245421 263713729 487261877 412577411 250618673 686576501 177265087 632022699 2996551 375986649 76102795 240478169 79313635 194772663 553372561 552749111 451235197 404221151 400875401 574717309 234526545 259159855 152113785 271151595 67590253 987142535 941353645 459554115 837916061 753796561 752742331 243730391 217884537 807568641 438927741 251197821 460167013 33943567 22724375 173055633 439322757 203409151 387724279 157437691 488763597 585279451 283786961 36171049 947917299 72036787 975683743 31467793 433533561 685125541 38293417 568347441 922834597 742011857 597800055 821463439 868948359 690730081 38530785 494670009 869601787 497469577 176080641 71441097 354551197 968563585 291980349 767917655 816004569 163154829 730780735 401628559 97351387 894317303 129294845 369440539 830284959 648070929 829810867 744703795 120209379 773988659 399865059 42073239 673060145 857315779 865214813 189039499 222820823 724993835 964226611 423536861 902627057 997138137 438590915 480346339 54345307 523996237 320118703 271716479 212822463 934071813 461267427 307350035 25016205 760227981 464817557 620281487 274901503 505227125 693958209 391881831 216459795 918041179 999613099 209234589 690885779 108158431 68023777 613220791 306032397 589773483 730919987 813723839 109572827 592141939 685834817 46712913 385969181 234444017 70014445 106502533 585988283 554575077 264664933 623735559 838145893 897610009 343408155 310906369 173445779 850973027 653487565 302957357 248563079 202459035 772343169 338560965 706015559 889578659 124189823 276192915 599258021 230199141 599719263 145031907 743729209 246688725 727226619 286822284 602673507 268434925 141364087 712856557 72487755 684432045 936348481 117656811 747038945 348977951 654273549 850775029 882518237 286971737 270090711 708822529 860553407 449225587 566947809 710892685 616669137 199669391 740206523 688746145 209142819 349971929 9102903 163502535 879624589 706496895 944810609 980659483 592680109 777638336 607111887 989426741 985898991 157347293 485935099 895217217 342086785 747234079 833692651 427620585 308197211 154818009 67097307 28907879 694255165 478850147 475744847 165665655 106079921 242757669 906816019 350150749 345668357 953739907 652220219 30372333 709970773 586602995 604106021 703267703 510676093 148039405 413233779 723428063 131898151 59866357 491677201 733521287 889764549 427509653 62202423 990978911 556428941 125795679 32858461 747831261 453437055 586332397 264119113 691697919 179427427 862640609 703250951 44930635 991438541 702692327 840389869 622545361 508208657 102443439 9534357 176233767 167948625 10104819 133823203 674340967 834204021 494842999 562422789 330752829 47725101 778240261 295203183 53723605 894954227 134423151 279011291 415563747 205962245 320512911 311770959 293361577 243740523 88525895 796852249 95685867 749060087 638930051 62768587 181991415 74309185 879264051 950831681 77440677 439708073 561372497 280496799 231594321 759565143 490749665 259968085 360433637 644045115 835375085 379691539 783162059 673945869 712139143 129897173 452663291 555509071 391191241 62558947 850729459 605665863 606544341 493457607 149497529 11759367 828495575 651461205 226353885 677118055 413841663 32319913 500119669 838104581 933343111 789007401 348520987 272429389 985065141 76524417 339787771 88932973 580112591 765178531 796545217 769416029 287499049 701260493 350510753 255257823 537967389 193819267 997797469 747190649 345741581 169854609 138176569 618843259 687728483 467718923 135970565 171431681 931208083 986764367 14774547 419107559 295923991 348850687 820101447 553392089 823075951 901816329 715013635 824362563 526197287 202557343 899337783 814503009 650640849 282240577 916735065 26785585 989017863 658268335 519226217 46694781 158698603 72884727 625364457 908824277 426225321 758081647 887624939 567665807 278412657 975406257 149321987 205779149 115866751 588266657 887307091 900525943 461978771 883056749 409073787 697504575 186361465 420644745 960293807 410557081 744887299 791440817 975892899 328634057 787317003 851196903 341267859 564155095 179452531 100471675 759869513 73269905 51733287 271729919 390282515 41364881 742082327 554132303 548657349 424766007 659226175 893477521 74652349 218730667 549340575 821517103 346271205 440486365 398412355 758771423 31440807 139394183 59796541 710578589 114450171 361098791 980052903 65450669 368699231 202388997 912057251 533560731 269054427 419035699 484385117 617070907 367697915 123818633 519181061 348308649 904911573 678288295 238634711 436682827 884916235 221646835 817346067 933086413 681239229 201716897 794686469 531786785 13160095 205535401 263096063 210054789 711074021 35754439 8113501 465817469 13230925 52067207 540302461 805096663 553765149 683838009 472101837 76591523 776378915 647419381 326349245 583896897 350225847 243008921 958008007 682873427 836764599 320795089 529590385 983631815 573915015 166351883 365245505 632523217 512961305 966092671 992635595 891571435 61553631 932042285 440247976 114628829 13602777 430327775 686662015 673041839 352106127 429267235 452655859 744411321 136535565 530113109 291891643 460676501 222202345 511382673 330720913 986672935 677103685 17635009 498843447 969991839 337189059 759781015 228942197 97758315 71258513 354862473 191847455 225237837 840245865 964296663 766593039 897058119 791036295 860025227 968159527 78845093 762953905 713086323 250927955 122989819 859665975 279677993 143000963 781889573 109878253 288400141 140917427 393499977 132153907 232895815 761026277 847396817 902116589 835164873 706097697 980039283 289504907 852403015 317790075 672127531 914346757 539289925 821297677 995951421 51184341 216798475 910197755 921557557 561157125 24864167 730975083 949142761 362246945 706760179 179086229 860158321 929825855 235062159 83662253 402453813 278584321 576892899 972914683 336104417 395833481 377365791 239310533 173967465 836935813 238852923 398210399 989716999 175351343 184094969 385017125 78335297 339653699 806848735 500298869 333279461 790783753 618736703 601741245 410810115 430709067 791903281 668104301 854556155 218273123 776146579 346965505 628545903 83703855 570404625 89128185 62785357 37034005 412974105 837035491 507055817 498250241 953872867 439657549 255913823 102927979 83569521 900111315 347244497 802735699 285936521 730145049 985970991 650054717 285121467 901306567 781152715 914786103 275067235 559565967 217370689 721823191 609960093 940397613 995851895 456908607 226525525 305466465 746210967 44386321 701301303 922977273 876662807 39648637 562028479 763830467 75079347 95934521 825710381 532293275 911111535 883634051 495800197 972462181 217155989 933073441 668415645 900239625 149939647 264559459 525670409 482852473 813029059 396113949 369958443 837809841 120457929 359606703 857577773 498789553 917410365 170146557 476587515 560636295 541807313 908826489 639401809 538321217 659296387 979053077 172346541 343207419 386365079 293190739 223484759 631514329 606092953 337762613 556342627 27812611 364043615 553419855 342103717 387919019 601969665 77877937 712382399 916084749 502374633 559304703 80854809 730162793 725418687 259999067 607186915 803145997 188687223 628569205 19941143 818614343 97656655 349756547 543283825 294838389 512966093 16763203 349297023 720057589 557745849 716561403 587514509 154405685 659412267 602921083 468946869 325465511 410992253 614382103 257163223 247599809 48301397 556650671 662922137 313835531 539055261 406731177 648424559 417374987 242695307 885722865 284944785 152020055 245608857 898161665 126535419 752588933 170084239 213534931 953822329 360091451 720174199 772452081 270531227 667465249 493109669 298315369 628804025 246420969 247115445 413745357 839477489 838907727 445534861 328357441 965552431 631035413 742395991 489872487 893327905 572414467 844446857 849473903 484866367 879108591 304895455 733794575 451957449 587330223 481265245 963070341 546332873 49163305 101198927 921567385 243201039 194987077 362069323 572701845 258553137 802315253 447866153 116111189 405463443 823783989 742860049 187968307 43085401 238998279 255211119 478225429 382069109 456113779 781856245 736662637 571559073 76293519 52438179 831086127 93539419 230137713 68103353 278217175 423976172 61703743 211294405 9418095 620364647 520919073 39175837 581856645 622522015 705459273 186169435 882755627 866648119 770753523 104398179 687561221 604220311 133104481 468255587 631741749 756877039 761723101 666234703 819413611 680776761 399886263 329896545 733064157 52007475 803580237 338290465 87882827 527507303 325466621 352323671 801711607 531513635 77210165 849397787 359656371 237201025 918293863 387429063 166675923 955612513 547413259 221791745 765950263 721285995 448855973 265037747 612133445 628205327 935302077 203016979 213732843 210705029 775620329 35444637 712425629 25961167 36637887 528406037 169483613 310846131 932205541 31565189 31966383 772000707 672431363 115864647 159839649 414685527 683957709 297682161 714262731 760731535 127515131 47851371 694691659 172859985 122027599 148142049 244557765 340153425 271610775 610105797 885012841 218054149 624419747 989018325 574644975 576330927 596061259 40167957 706592657 18925397 135856245 938024145 303633943 600093129 570746633 567667101 985788369 8850337 216079867 490170711 913772949 860237121 724648771 206615585 302487743 890941645 390574053 368564329 990979127 219142969 951523049 416155618 705989993 526716219 222311013 276030601 822058831 555408467 81742447 514235809 705882469 645851595 441097261 898192057 434186929 145936307 651687623 953752739 279977153 176937953 289156209 61707387 997072045 347476727 210347363 360346789 572617747 496378205 415617249 91198415 579299351 405616197 621172787 470977005 533664875 821359269 5757359 74342203 194877505 393933885 227294125 997755707 977775961 860814485 640696207 2988477 789282043 948284929 219764415 343159763 142217971 95606933 658094511 131540185 589064343 397017395 816616667 377344373 68299207 862642307 812592069 518146193 106705385 695659509 273598967 782984291 776741099 427359427 700136451 635225959 396852803 588252905 206069889 167906657 523262959 249783861 308110615 200769629 988711797 887123763 383273325 7385521 833215203 914439741 209286711 315228917 427954641 576452723 874615341 88805137 638572637 183953085 953433875 632088369 29775915 351613641 991810739 868250055 433381741 663830037 216247263 482126225 223211477 767483611 280972655 616937109 82510243 990134569 541373257 555937563 16396447 837890507 994687829 709457081 349536021 570519897 18290311 585373517 617317597 885837111 109243863 237603323 974443091 278731401 936141129 478375469 887889759 42225987 160044775 931740823 227494511 704894235 261155779 610656313 219158391 31817875 841114869 548154195 764812025 610862577 126967971 383681653 739554043 333849157 958051063 949050737 956404231 352962667 332194591 546307683 993533495 237311487 743588443 965790895 45404713 884904557 618490087 979813891 342421507 887356897 665097491 172069715 805269105 322578519 899951663 407185371 69019563 708151437 491818389 620768799 944887921 788952333 723019175 745696491 187398405 232363303 61800143 220549203 766570554 816020977 229287041 572337843 809011299 54346061 156260917 571457969 174101599 897971427 455929967 489004345 901387924 53456675 15801 204978813 865437171 75923015 519419813 50680571 150191343 59286861 70186443 804665719 973286535 158681855 163872977 485507325 800949059 733995243 983659873 887259617 500290093 14891115 257631529 692572353 240329695 53864863 826174441 257442687 622595447 543677551 897161311 461535305 827863451 570200971 614285143 158096531 762862455 25523563 410885281 258337303 275109315 360138065 465743387 486458331 393257919 358387267 614047909 985397549 911799343 291025939 554620715 708830877 683365985 498384473 406271387 982219531 469475117 953055093 397823477 318458011 900235247 825188239 790877495 200241079 194238863 427298711 646618733 13966869 387516283 942842949 670620073 550966703 257247913 526480153 587804931 583693772 860265111 49763167 210578849 281299961 979875915 767259425 724668589 138474757 300447573 534457405 95746135 614348307 494481609 101748559 278371545 297741697 696725575 956085955 640637815 618773505 101286133 959086535 195579771 154036099 241397887 814757715 325308215 415603781 18852895 759112999 842329861 441799627 790010255 64043213 118438983 929065441 955602457 924426899 934329447 118856091 971098505 763345557 396328409 852283989 249832759 210319279 41581335 398354101 579860737 341125771 383397793 871380903 62029387 893135003 344057091 542901085 47262469 622603029 720196135 960759383 347973285 185548793 42050717 535211093 967296809 953108239 212047637 430003557 745730071 73396971 503402203 957198043 950782847 402005473 560273573 551485525 344798965 192060179 875159339 585601207 895641 365071209 964069425 562696489 241898001 552848531 708285313 113515045 412463497 355313675 872327661 63077989 239402683 884114959 853199439 998554091 813229027 142579367 833331337 117352199 613777607 810976933 750331527 663792457 771225525 380504225 968921913 241432209 307356293 749488123 953672601 29345795 961266579 403575771 42636205 563411721 881761479 337225265 871147897 367526489 349077135 620650165 563823125 37652719 317848289 393086953 224157337 26160911 185993789 536265747 480144169 700197187 229771429 378549317 61253611 27175267 929861803 362691927 876718101 707954059 530744419 178444007 318821601 558369053 236995181 25096801 239101071 70321605 396489967 893330931 334350187 643880569 699748503 218148245 573958343 446920309 231324569 996888073 894558205 741016125 866205879 127524821 243754351 91815069 358121525 231941705 960279945 701352363 278913249 682521217 507169211 225748927 147371283 813692505 829353855 980939395 126749609 469081981 972268889 544627677 50160903 796128857 989999059 988518151 295952413 987453737 650400383 381998969 703420769 143956715 300281079 887733241 959674833 942360169 610856415 274167189 407804917 428414771 158342109 780531357 324972761 298442399 305458343 109699505 825627923 452195535 941920759 509047989 345748931 919298475 633279117 759932883 725894543 162032613 11285813 881244289 253059493 895891441 445528001 299934841 35148473 814286611 376014347 279384771 439989773 533290067 478941943 593547431 610760293 586396543 612312427 728453821 920579345 786962481 746966877 875975135 202714341 341332169 272901319 380589107 703296319 550865774 813365417 189773859 177170185 85602067 317153295 117477733 291628461 703918191 468052747 585212405 380492835 266906369 779935671 520604951 32766953 312309777 108054839 945650775 149955591 344773041 584124593 281852041 861164041 156335033 869173339 326931147 284326661 248458953 366321263 161853311 717398171 954215239 189952557 196321105 409571825 735464039 511180515 974423609 928805557 801407265 866821343 697650287 605873181 616527665 993636989 295638905 360219623 622644259 276867359 124560675 392009561 678460999 122897457 358692995 186760257 133580213 989797411 330496753 44414455 751628619 498810737 519450903 31975001 722968501 263010203 310344669 73696971 272489057 94965293 132874103 820705085 346431623 600582585 3271781 466278183 671403047 908668121 779908711 62514307 783387403 573085489 484160397 781163227 351673281 489819241 513293095 131775547 633499301 977489203 553135829 666086969 740304083 324893769 336023419 181223669 926098743 340565873 647097923 234104853 191858557 870413937 43451299 527793095 29245729 63008797 593475671 545179585 111071841 887297871 530047585 602803265 21436743 31005675 427825681 213494029 281693345 241369049 925015289 562269301 749221129 591808523 472443639 172383821 11588575 932343163 608696619 839009523 7345739 816791599 455643399 313883217 953805887 791260205 767067451 950658769 932670831 734830729 33679045 530083435 962354271 457511517 712584169 599463327 273886039 143522253 620606771 651602033 261500773 195933953 71529591 89643375 491464035 934134059 148384211 944691887 285559025 270211463 835039401 128861393 596027255 444952661 487422119 553834491 55436069 3491297 252564159 798924507 224661491 814884223 34519599 772504487 268503203 324682885 476344701 70432541 753309115 455382359 98981745 547025795 805026445 86764129 328533027 206308265 535948337 735190291 925237741 176659427 439632517 730855657 493651571 96647441 127168821 738123877 754687395 855851927 940752047 570337295 718018225 859198567 518247211 234108795 750381847 523466227 695978411 235277893 740945821 606668093 508793077 757187851 153426251 757427399 29446297 866352763 972622457 138164133 914456563 928586309 505336769 929207911 733007647 708748325 248128265 231452719 844234761 631115483 596575355 512353189 42348381 330702645 677096333 949365745 157046167 478513921 28483579 993918927 920062455 129231899 667725513 605319803 868592513 340887399 845219651 486640317 718582283 610675661 281458173 52569567 212362537 258029887 518458837 297010365 2754365 923067321 39557869 934355119 135722097 280091707 552017841 490735265 463366577 303581138 419776983 838852093 461615033 548950671 79190877 450421693 284974599 655965325 939641731 292557659 404315621 779813099 713045463 292232673 848470369 785294551 17230125 770117339 680920149 558292609 796520099 552994145 106401121 527277605 609286299 922698513 9447149 205977349 883192771 602112271 307511849 309378665 759419919 53172491 86377999 27211943 35753913 244547131 339229787 742851605 31245895 978720861 925236379 418268697 148204935 567287991 759215387 606976537 225209995 361580313 713190389 5698189 563028655 814375639 60785161 350380523 179224215 798284753 579769853 534267829 616255793 465195885 928967493 500857721 13931697 594125207 748344601 886060997 433589651 938689481 304720245 832834871 210183577 759683581 876646949 37974381 439867603 176179645 548004281 681586197 577399442 410457877 424522377 976971745 857521271 107597213 81486771 36621703 9875295 19605875 880530467 67020495 459793021 576504379 667339143 185417601 782961217 543382053 590063959 362524781 748929385 297192679 931761619 234752111 35238905 571933887 857827077 718556523 932139069 607626611 535309245 353654601 343151561 819917139 232147089 670629627 95918203 721937973 73618149 377118589 556986229 312142451 63950813 243379409 852465187 211865593 504621931 878808833 138173245 674229043 219879241 730533149 230927291 270565909 399328247 707751491 668484579 905989921 322895289 327135889 107588163 418548315 355402149 116200501 311590571 695400017 884887695 996842081 354254651 558873883 600729625 460731469 257645909 250731351 653762475 891879483 730829991 498751273 769131381 133438585 550187045 874049345 906175857 203450965 267351307 496093141 389132381 713085741 583321563 38335395 233458371 634001761 466804069 399170803 373468657 811443547 869799867 51261073 980375809 544736397 497881913 953880787 695285715 62930547 652909443 8514201 161085967 340714383 289550473 527775305 755081253 734564971 750124923 734088399 736014925 505759895 177527765 533333157 66312585 900001713 537978975 636381895 481064607 864577623 529695779 936428475 996043041 106015543 99085685 263995535 246046311 637953027 947566835 772735451 898986641 108203635 489333887 439748797 109488005 669597003 166195269 763678169 944146423 197215571 156107195 366939231 940161629 737313889 820278941 813958405 773573625 515427403 811110895 71744779 713697232 356828151 985296639 917860659 905240503 625396301 532590685 517667535 188021057 718039361 197670121 527666869 250988243 720273099 271868613 198771777 902145169 440088047 604599903 467474521 456334703 283843509 943908713 712771695 661854243 693736499 554686435 548530039 862131757 210435969 246711565 731744495 823617751 59885247 654787189 116101597 814521393 460138269 658610417 508422607 470632465 719692999 270709147 641476061 39900441 331677691 908011225 734206373 655868849 189703163 927990101 898329675 182946059 710353937 615046403 436383615 271556637 981073549 596744227 704688249 825158823 900049357 151062071 257367283 265265201 681973553 439454987 773089847 9322255 996916259 570640305 458762257 374274901 798830871 667577227 993953751 711554021 787329157 727115577 635108713 106545511 518967281 800871847 673329709 584245067 403437795 165964555 606106129 334910155 16503281 983134689 304679051 348647907 649268147 464175085 870716823 573225569 13067211 553964859 774563009 233600209 35774947 910883615 903396881 417174925 432447149 832382263 746695969 471255989 160633063 957616229 696590863 635081265 366488653 54980565 611744895 713966257 407555759 856192511 527590049 197733549 242405085 486802843 894063149 746468965 614215601 719119023 444268893 580714981 787504907 444192647 51385339 500711417 591939803 388630969 733646419 630360889 817957389 640148255 167919677 290085129 58890145 254930653 817625109 74313357 596456851 580269665 74598851 707224505 770483187 339253343 355546547 896735299 206635473 280008145 877519327 118801069 257779783 63719679 209149635 258123581 908117879 852676721 337951845 78484227 374040971 795183615 439785813 533146331 495826359 43648451 519655847 639702113 159244595 369716003 925074427 90793217 644618307 79444425 216872053 645352167 813045041 828836523 36874695 501379599 328254797 800809733 719080483 518715191 748137461 438917465 564067915 168607465 722810249 793691255 493062785 533306485 63154291 662938225 160232855 105600753 695572519 291746725 469487075 886734911 304977437 33384373 569885249 64000519 965069017 961075853 379523353 73048249 983647461 490028899 491248473 313809039 837097939 395029939 238773111 181134471 178296125 90987587 632963185 488627051 903124421 100178459 845249741 542241993 443337237 226970513 142039451 383206395 90063329 444563267 340491631 237584161 279450849 568232723 854130537 240055331 314366425 903102255 159698989 723397553 964981139 797406985 624772333 193872963 347581409 632856161 740550747 507422491 233090717 609191991 533092281 894692671 742796969 498237913 745971659 238729345 770160879 737319389 947973087 142780537 342477155 501437725 312985803 864335751 732808189 264363965 525871601 907405779 371278785 614275627 764477491 14818893 803050937 144413723 140553985 157952429 741921783 952929673 339059537 666132339 406600341 878191031 695568545 452235499 508766901 243549749 305692663 842703903 60026753 670080469 929945827 613736685 668678957 237556659 671455353 698048497 669369841 825898037 195411545 392646551 719285521 750489093 630962089 196425485 402856407 839587097 42878485 983273803 381191829 437214637 150836437 367599633 312419237 897549637 301267369 421900009 216074345 737596845 575289301 68674081 420422221 388265465 456296743 944973781 183224767 282827655 659497207 364521697 628630335 31428857 441320225 615258607 256331339 595770173 537778957 175472753 903567983 521004677 408617129 236112797 188609085 323419471 386978667 392388979 59854415 30622559 631491411 809764795 101498439 272541889 302329315 965838601 197644751 964805835 571115309 757356465 55571867 555353879 585158341 809764053 466115173 688829577 107140811 823992669 548228077 487202383 716575461 641630457 508957695 748472029 479210815 548270371 771988333 73326828 727223699 368899609 833556753 876512903 404460059 562612195 206536397 248547315 263109281 23663955 798463115 451773129 336002931 299954945 773855551 932368099 655676515 33916493 214690787 925695335 986186197 162772063 817180279 295848383 505251242 445201191 971029255 729503905 101579349 863422557 186455717 113285895 751268809 171031683 239592555 490605881 105773701 379358687 172503163 487498689 279255697 493482371 47836927 693106803 868448377 571371591 179356971 114860907 615514195 65296331 654538809 353256463 87232191 533605749 845070441 393404427 267536867 700304249 809425927 231199825 993948779 84497869 846018661 392173599 932024465 443620147 206536413 211338233 534011153 345628721 783459281 430123691 989954097 225596439 868985261 246146633 740828863 836957185 904123873 14978865 116806931 287267275 154265063 9133317 152382473 925382433 504604741 162362291 666285579 765079151 806223745 64865901 663990787 350153201 667993903 143862451 369432681 242347685 170987241 925033797 323113531 194414421 219577681 221644593 26443777 508509073 722446611 113020109 842816199 30310063 401538527 143422643 720148259 252615377 690103151 269964999 680515125 476853727 650547847 371491127 912664227 803136651 855325169 751743863 993449883 550483785 373554561 92355907 491146705 949043037 567357709 222285213 167407239 262111183 312635769 998388181 745970305 336294509 25825199 941460093 246795533 410310353 276371877 87223409 174659843 777210203 228756303 653458903 276441537 864442419 398696883 387751193 580290603 783963209 675398109 294181357 160182705 606511703 310696411 386325583 9633099 530767323 964301257 600412035 681750643 187594269 36490953 210546965 787106867 389420847 562724871 956262361 552639511 222941417 986626483 244828907 218706229 664889835 426026503 461659313 962676013 964548763 200885321 660229591 355755301 365833773 71460287 660253775 860034251 342621592 7844029 793970775 698166611 255042203 575589789 322481525 589167743 890229951 645968321 612315505 730516883 50836565 872369301 291770721 662748767 517105013 999746697 895939747 530352695 385031421 269978649 442291673 600009979 972885913 83905733 663581169 259811855 644044471 628504601 889684767 157461859 878753679 375869097 836738525 591066221 610286113 214546187 318155251 361074477 137284663 24856291 264077161 68240677 877311585 679624157 552433047 755924583 178231541 505624745 984797207 45712009 333143829 538210307 135557581 938959271 285819307 911295403 880633321 989071209 985623651 319884141 634820313 701386237 551041209 199319067 15196511 241170713 410019563 106533521 482901373 162665723 311940867 524070061 510489983 613173609 824631759 563015261 363432185 742722225 432558569 286262417 501556167 32919211 510563505 871282245 900355343 489567669 290089807 564132217 476466747 399288757 475953077 672493113 417179649 503512855 104820631 829841305 442309469 45716947 882007417 122672815 119686803 284033641 472112035 73425823 174593073 754901211 810205475 945446549 114123783 489720763 900942035 734288577 475568179 448754975 783809107 941665119 222798365 815100835 144737035 523394735 132164459 323401583 525408043 706538751 589657879 783281457 335096491 601209245 748737625 96762655 414851149 432664037 48044471 267549175 267314327 715530811 505766399 223777791 607758555 353390853 547831105 604488711 244727345 724746171 675554269 342232675 695057527 46576593 745448309 288258035 89341785 510799823 955113975 517333275 884824901 719895611 710568599 168303309 609163891 506445481 96939729 956294011 447060965 33610819 23789927 567051301 917915745 979654397 652235113 135878995 909497207 294903343 4839209 930101265 266875011 424501755 883060547 241347831 732661665 34681373 461354397 917561121 16841405 29336919 536927329 457830199 61108867 726546545 849634565 108157031 349179759 905421631 636354885 347867495 860822209 592205725 970718245 534523253 981377405 196585065 920566001 694702937 81872249 291628689 170970685 281016925 399938121 340889093 74111717 457249115 278081105 651894465 216616719 304523697 801085877 924539847 312972583 986654789 625275239 761230879 37345503 515017347 850371617 444228061 336398389 689470821 343510369 692596509 30306413 150697061 822908529 450385661 388877075 17976973 136476511 624259755 222051069 525404009 357071365 14514265 251587909 621618193 971028739 277048893 422944847 296196129 602067649 228407199 317795017 930677953 565679727 420664773 265437349 557390239 57957127 709434117 194609699 86776305 102031941 912237493 19706563 861986677 489274295 264151867 983452243 449494387 225486761 667043583 344413673 512049591 719424565 455989107 95957727 669378967 833258043 786218259 469842907 945347315 830726753 895756129 386755015 904853295 907596315 414335973 274012889 749971005 714077857 799769907 205215627 555352463 272541167 71100391 936702885 443175 2594257 462276511 565281073 305468041 385377495 442207753 14932355 293391299 736894809 279815127 139668535 475493485 553256565 111527873 868321843 551986851 414129431 10893705 931650209 331211791 155938541 238278909 540857847 700064987 583060847 798392043 160225521 343529663 954468061 915988017 783468435 769543673 411894081 604923565 994623017 575344207 29350251 393770573 694483017 212094481 115590129 950084611 946323915 909973779 492541495 751764167 1734615 184242613 192314209 204283547 830816729 304213469 123945315 805435277 822414979 774442489 150897649 346690731 329671381 267316221 512668561 704952595 83572495 677084267 756404357 221193957 486907327 979692871 131238883 151962699 598494907 724294431 678763647 924640375 315200029 503916555 258676219 804516005 631352137 389383335 402503615 307559191 995643373 708270877 167681531 527369237 578153725 166333975 717951145 745654005 697756595 459279821 719906439 357547789 306835095 217582845 230704159 375267011 560692849 991596015 771278527 858695295 817315161 475010413 874992001 231276467 812361641 773875155 603112005 54668253 566745351 104560635 805702835 671661945 511957341 823665741 992748347 49181975 854445025 344139189 280429077 987941957 756687887 774878893 97280067 673483425 401397419 17736241 643325579 16170699 228761793 711656135 805391487 140202349 429660837 801700733 298404215 651061817 92670195 106927339 811322771 266865387 988479377 517574701 140785337 510317637 144160939 942741485 250647453 645776145 320841139 465222997 372693685 853225759 361997415 143329053 50679107 959220301 555101131 747781251 874470989 464357243 820437291 832144975 593837989 223400851 601895197 51036109 886210785 125834887 701147257 387546067 682874469 765410899 232087399 717294017 401721941 820159481 487780435 227991677 574449573 480427651 989144305 698982261 977974027 365390337 796622139 612070815 88581639 506947217 594116729 585751671 175836643 804887891 271205939 431558921 349927599 528593777 142558529 950787293 390730817 460046621 226276541 621457677 521770299 363979925 919732491 488143671 620391429 62854933 922832089 957351039 605425105 920596973 242774043 177236629 871119253 231661421 416230669 837453999 997674769 233226221 212515121 773000845 805186509 12144851 772078679 996007281 27450909 235059591 409724817 308312365 25263125 809595517 361689658 551349527 515422359 649045037 13541627 624887563 676504651 344663579 788346555 600429681 408651937 194515921 476270003 576730423 379567827 570055647 701252185 510032081 593346781 855470819 185001591 863325505 47777933 810321021 914608151 848004107 603113583 774339159 586247311 521375039 386229981 883226917 48305015 223488625 635505910 257276831 958430647 749092289 197906853 922505 834403963 587461331 128744599 649759403 752870453 423236567 165404997 893253083 665981859 824158341 173705713 952707057 404567755 230286615 692154529 681527503 226657781 266385239 158900263 195755103 627166391 205216657 230715673 289775509 104859887 420547483 156749019 378002793 972547009 377762773 570571923 942535647 205626007 161366565 477764655 347454719 704337445 731298041 717859179 152721887 957924203 214816839 9749191 70636439 194641577 968645261 928942217 45970505 647918703 802395601 877072833 740151839 16435855 596695203 975607115 112240717 662623013 609049367 417968835 553377803 723677077 874486221 979610005 132892573 905261455 910479593 728712685 752006989 149371393 287243547 123308999 139568749 306949677 497606299 940088289 102084181 76491925 638792227 838692549 788578155 785506309 742507005 494323139 544065049 582663313 389577973 948462577 883240397 314445973 383357283 259520817 220006919 708292535 59800611 39322411 734287685 766627811 889084317 463760975 815826961 673749067 862913215 167915223 226164737 575549037 312110079 121439681 54299309 453167373 659589723 610365911 759751863 360238391 455518809 942170791 455708361 884934977 76303113 944779147 599277719 750433219 162722047 368244387 686859737 907756709 303931227 555811287 622228307 809630227 199230145 229982679 478024143 646753153 574876771 60313371 973091103 537602217 804500211 482644197 647548701 116578449 772628403 317497917 432773291 193758855 861400933 95464177 616513203 841774363 828461405 489137305 997806377 346297645 894706283 319909785 969466885 436731105 594538995 93769751 264268363 960031393 712365783 584058115 419522309 453622307 280153735 641812245 484800581 899393889 893163513 624902093 412029477 149582243 553448107 840209015 863710151 230925427 10716067 631811357 888138325 73552549 784330865 302977437 749241347 898446677 791396393 567437971 857325323 270797033 153114219 460693611 74648237 376731659 220001371 869746259 531626549 431527601 425950123 599605059 498931187 227238167 505976205 656618235 8065093 163704513 468742083 47536389 78575755 258460539 935176593 116956591 915490353 422992985 360512197 513292053 284794791 412407991 874932919 992828947 658603879 464595771 988992835 13349203 92170997 131875025 47775697 805211207 751067 99009963 461328975 16505381 103831211 358358601 139391027 233455341 131098111 323853931 996825979 460008551 234192249 580538399 573867439 38942503 191869637 78548665 440934619 564844417 358501009 560404951 982195349 182817430 85554077 557988445 696857341 932877137 392969127 116013429 484516279 695547231 208139899 316127635 832790261 894807611 534412011 510507383 115912811 542922275 194637265 951807777 461558357 836017439 924897039 792900833 45031549 600025601 262696079 383230023 206123311 495138145 796373829 456844595 520327747 836195999 429482027 406106313 271962647 850947299 701216065 80076403 444508303 721857053 194534035 963122919 642087963 726223877 252423987 630467873 730994865 33777949 393143867 194200421 146784463 899783083 713420237 600036925 783175293 412188353 760528917 858566017 43807303 508873015 666792515 256598349 713670211 953879725 928527249 743404291 126670097 333970569 293298755 921361999 299707607 166714623 608093859 107482151 72963649 526113285 900203011 234313671 512639881 172548701 963750333 775752115 159495529 419131533 956997685 371153079 199831083 258928613 758535633 744071913 827416221 351443329 318869511 491185825 15496467 9120573 520518737 136340873 216322667 480902341 163199791 842110855 881547021 359455365 480602925 435568597 889295337 561312441 522538973 476625899 467712369 331713119 302486233 373796495 302025893 193781825 939346115 414732495 250929165 770570735 596403783 359860475 557328051 203080895 76493589 346481075 357957939 457259219 222804199 896006875 574298279 214647315 809178243 638509724 249884599 262615345 785525935 929163887 39574927 456667297 609913151 30803467 610899689 414551975 504394765 186502265 887897857 462736203 376201723 76238081 957742237 206255963 202796533 726562875 318791435 783880561 92928491 599994115 422228771 715794413 641972183 759670649 269178947 292941046 153005247 948756495 508915535 430159231 613114793 106955893 969162679 431457855 110371497 597584551 650328689 156411061 689754073 884397549 62360829 134813737 356263003 941256657 653682781 749314221 191511899 760121127 944261667 217817113 845673225 126648077 269276517 523504397 495273889 55578597 689406911 708208623 830988387 820461659 555032153 489365491 329564315 779758695 871051487 186896913 162112667 995352129 69072011 608845829 762339517 738400111 639324441 141813595 19685989 314028477 756532175 259128419 154699513 317724737 369337981 47392565 173055217 557662805 820002423 471286959 952526529 663785629 111476635 78385533 65005553 280175111 600162131 630862093 441468935 834620613 849265545 62988951 706459031 919939927 420012981 318254619 499423547 892803453 940416983 972434787 206453397 790605639 653374321 845791487 888912721 505307653 196570773 975023429 646460959 175309143 625830105 681855319 153635259 679624737 192811609 187481631 775785445 561250189 92585149 642169673 134917739 987918865 521563187 802511953 430439963 852056169 644460655 333680501 827669969 642162839 813913011 174295231 343977839 228787435 193539525 264357629 575620833 104311543 611207407 692680905 498475287 72236185 619093259 688266115 752341261 935233265 810203767 355313749 521106115 122599793 320724247 445938987 810338887 8771785 549486429 102878655 367712423 590793207 370027323 442684051 832680703 716331839 932058929 986380271 148810611 927163693 296027463 325580513 711674921 466104725 854621192 730844739 915546199 946809493 991190927 175992757 735355191 605782927 445123701 169989279 809145611 924762161 410164963 973825841 942169115 466108269 893375879 437357923 263260091 138188419 378986647 490681847 687202117 853821939 19995857 785596787 281923357 159109259 978158715 233812265 856891819 770926689 470556773 856102449 704914529 652302799 397342435 430299753 133924027 446582905 728699091 555139965 679954745 332052557 979899039 274462171 251834473 137974399 311406897 56165307 904953817 83878025 235763459 756637215 307845925 508954931 35593487 254042061 61580017 691364741 144992223 436158549 484954083 482115543 28956287 993293075 967218099 740064453 892869511 459142691 361483797 480650287 188888595 454203761 505075665 317213765 41702091 818484649 869031341 79177339 894777053 340379463 766648703 179895949 433830143 500469643 354710813 856376191 575229551 187421563 576885611 614504605 50017779 530998503 272726869 514674299 480658651 601130857 144248013 892104695 714948091 170295139 549537737 818835251 875913395 227270905 630504785 92433051 71580649 575492381 244384875 793483237 388998409 910599305 737759533 785043215 105424139 43159227 848939437 136343385 844515695 983779581 62008081 426464337 850477369 745351005 306996353 918456523 671230455 556072373 781043759 991819237 93248193 722319525 123305047 764369409 637875507 664978069 266689593 464623053 391517813 949061301 769884451 367538493 744148021 481304063 221612387 849401483 427879337 549490223 930980693 379954493 486192783 490193619 570422877 989538081 541387823 205258295 718461923 279054153 168995411 36534389 594737753 637029649 951232599 123809901 415996987 371781405 277997077 705041605 230907659 967769691 313222899 643706609 743994449 56145663 80321763 391626281 871045283 498520453 151349079 129243753 608926871 752311217 487592017 282397053 96963027 455124877 609390933 143792117 987003391 320530033 614059121 556504105 104982989 42888185 773148989 135133497 186338809 614710021 809150421 817940491 87660613 467722951 175201761 680350291 348815481 874451887 147506575 986381703 827465067 679281275 708663957 342430695 905753073 202431791 199562547 130646909 84244977 370469399 817033003 228676889 504257875 483162311 659930319 931097425 843502857 680560413 668079603 966202249 802579471 684497467 420065015 301333733 999507047 822101901 908622273 344623961 286470169 682781131 348273853 389088921 288629307 861575661 209472485 688574251 48733155 153215033 727187893 300434769 3873079 213543741 417310771 773308449 429657695 869965001 491251693 459025007 594654349 764039421 197769466 397247453 499691261 855503675 972104185 566327251 280534513 847836465 316631311 618427011 537231283 90359251 790598893 333115873 942635411 147574365 152971205 621424305 226814703 679797585 193972823 536873851 361534501 231807 625527017 222270861 743525795 43465465 305379403 149360129 354580699 997282331 309008595 497679543 943318853 675245705 124253021 94128471 825076581 591207987 57198159 660924497 794950083 349113929 758896283 972976093 331732469 980318791 980966581 529645821 588115345 413763829 314554265 667021431 530375485 628178781 537362897 111957981 432725921 720940499 819838059 532215943 53255279 371673845 651978747 928857237 636722021 399445669 680151967 847955437 631058751 592751887 643146241 491389763 315562701 379142057 198880331 487404301 172718557 904414255 949386037 80258189 181066829 128555943 168369661 863551177 615390973 794624857 658860395 28533139 933622487 402487771 714736331 496536193 911649229 601626123 681341683 258907127 265691613 83641355 563341635 412573209 668907011 90133577 985692321 177628635 322392399 199104631 595653243 68396531 451392465 125765781 122418629 109832673 657563041 743987171 604549121 916575983 846609381 130259439 853733427 957527853 918828485 935481743 579526123 292692081 894415221 773186525 36963389 799075165 564646701 46585663 681928391 417366105 435019825 571374175 483081907 599275159 175230409 724510515 239532459 816859405 703787083 508492788 374806247 338833275 516602895 502824493 704047141 118268265 302776949 627423653 654317229 820572971 958311149 172771185 565413451 426625237 857947107 790800621 494371927 956822857 972199893 490301631 907729069 802403631 2671173 408880081 466486965 117696503 293270205 286714969 116189275 950683355 987991501 249144019 535727385 481847257 666733075 673690371 2540267 863407801 454285615 42437365 828940119 775908365 936125643 197597693 823523437 393084461 41340315 673094073 643729857 230959673 287259223 786625291 679726961 239113189 942133443 331328287 156973863 797555837 327200937 273309805 229715725 388855261 210573529 860674477 439290075 641351547 870648369 329630437 835067089 135987037 640710801 275599969 902868145 315809877 995056611 312292791 264877775 34061049 936053531 421751489 602296059 439097005 382720305 527527075 980203927 230599831 552687657 87822027 11097737 808244389 761567245 584744429 25458239 201778323 582895085 687879427 80466095 558648545 696611559 918460501 999117399 88670677 288914203 813568619 276447549 725879937 668928691 181856029 480040433 586574779 346602723 517368453 32048263 437395237 93889763 118053385 112040349 377817641 393769207 111695699 308743517 33534195 674671977 824599385 710071921 114931583 729388939 51039575 54561043 438786187 522862263 353758161 318305277 816836769 101371215 617065873 383298425 22806289 199036861 271881391 658763347 813038321 519657845 777167239 113354467 51544099 621528047 478960059 303945733 143311951 326833071 402816311 739192353 434733543 223444287 127996209 46143013 827522335 206251567 150332199 923143815 479891707 689994269 24514009 394949189 803356227 458042793 55551061 700890597 453703813 327806847 875530991 811243639 61093659 525311309 460984389 232095887 586514469 90660563 600490041 424493899 533428619 595495631 631579897 107341653 31241213 732067339 211165687 512574935 476981747 17659996 903077619 964166027 437769390 244154781 634838765 75216299 869490489 140410541 533718323 819246337 514326367 432343671 8841307 984242905 741664441 494628591 509813055 172371467 474002859 941570063 113339395 922103795 808208987 317516503 1011989 760103289 919026617 106318419 570759209 318243851 499350141 942545043 343456059 157952159 226649639 871275957 285917069 120362163 247882243 104250073 27265711 969148239 229375515 210525483 597365107 545609213 658152525 413107419 741281525 64830425 536036661 560910371 342878619 768032893 307264319 987056199 112768015 604160271 6812057 915284113 599694407 763342145 261591355 514213203 641748607 455838277 463585765 167831271 72580667 231683549 177614625 746286255 408668999 812443981 6793533 734098965 553472183 678794339 26223189 47579021 808910313 18680951 72610117 872768911 430889343 212588901 423618743 202879393 297426023 751398037 312063517 401660231 190506707 770665973 122935469 626405145 755338561 538091259 688376423 277706159 168274805 333668261 974189331 834860203 951937405 479735675 662887749 343881145 241389225 637249671 464351569 898448265 986287257 911241829 302146137 376833237 128576047 901967151 491961157 473111393 49333401 736731275 326271429 115124983 991900235 711251115 327515475 500867177 736275455 360945473 237574701 621221521 521047485 858382991 285935707 414720849 370951629 12109401 223283887 152084117 935327175 481190125 89810369 248337229 196852613 418853411 349716208 572522099 898101804 374139991 161390439 674081291 829342505 972502899 562225939 403232287 207031599 111629793 693921197 945721793 153318201 345675673 826274231 401224203 456147855 905993497 853339511 961862943 381459131 885092455 199334911 51108649 613246097 107819027 501416487 283031385 767948077 185481267 400953743 257474281 298547189 403765091 963092893 13859359 718690453 788566985 368526981 204453185 843148287 680423959 879624765 481820067 927943537 255245953 461282183 324310687 835420527 831651267 255083241 55997079 981658821 734806055 239331251 982660085 606902151 42318971 855317761 699931693 782063635 816237841 216943791 528676537 254377483 619817165 524306537 819825177 892122461 133721617 788396187 749064409 522810171 328026061 920791425 392004235 758514469 62808185 541424665 216258761 17517019 897419535 929471788 854187575 882528875 90143255 153625165 796798843 75037995 625970337 887790799 421060683 988780213 563618115 787692757 42675809 241331437 889660185 594265671 695011965 430552577 668244169 62650327 551372651 397890405 530067845 65551353 525998333 935200469 319756801 243162609 841779981 558135635 915512187 488431815 416521853 989368879 507749049 148863049 11574841 881500667 726689033 701817361 549202481 116852627 322259267 200731263 807599201 96621341 796861125 620028859 94792137 285592835 795823731 988069557 201868661 963809531 248572349 693749799 380684151 462534401 301737881 719425935 172263401 670676569 681186695 598232117 596726255 502515343 495230601 48929323 113156783 651454071 358298673 428018505 641604703 47361837 484769685 530805295 301773625 534434071 104827985 102035779 420844157 711387361 452710285 142860217 798755703 173606525 625034997 60727945 865827963 337737769 970538435 994710895 663795167 213917547 929294259 185916407 899643143 856263691 666338315 121238641 164836191 168016159 130746009 931665141 317543255 302654469 966614709 969688673 356124009 455687519 846533693 98519905 730392859 908567067 673229461 591823715 709977587 531458157 812084655 648226719 81857669 661227215 176447741 655320085 24458603 786905353 762385535 298935439 581841993 113932067 174544829 88571805 454844613 886738549 830209219 834588565 589263767 253871769 482286889 846654361 643694451 203209333 655599371 882676883 430386721 469021491 145722897 653552175 574480743 347455305 226373223 835865065 798153753 304804209 940721095 123511807 325422353 894375347 310787181 170874491 36653619 673574489 776960543 694158379 869136229 915265783 506562349 362896297 431269791 686091625 218253163 497964629 421341141 901619413 476078905 247007065 35827215 956588709 231542907 797516961 246236755 210174353 639671713 821777383 430896565 872418449 181598371 259136429 124078927 950377451 329413627 162425915 288896325 922479659 888860595 34087071 116201919 397034789 426159703 247140275 122427375 326431991 222716927 147524375 639314193 143662339 776937799 387667507 252923237 441318133 879493207 357037367 672874807 102522821 582390237 158524443 417690585 738371755 20868621 902258593 228332199 765157421 366437801 386037839 617018879 715700505 856708343 761411959 531892815 529210751 529314497 128953905 232231175 402280383 895683425 233751133 832693667 189384573 608638389 74134433 578639525 74135203 211895331 379054705 971371669 132858469 944155543 688793859 68882183 919477827 444498569 754078809 148460949 390001917 653563897 856881977 86990563 189333923 494163051 649997107 513342361 658950791 841350381 344615843 246444905 465870917 528464919 334530213 431041551 920939715 327100165 489253413 754752587 387895339 314274399 956274383 345848043 562231283 738307411 863165215 972309949 580571095 458566807 571867733 310635677 471565019 801367913 498328951 578484335 978728011 113744015 138160213 473532955 119345339 660719961 260271753 29710227 213723399 267076251 851697781 30664403 184245589 243232181 308523581 655722202 73006097 938029963 268859603 133132473 745497837 281247631 756263665 943151227 208277991 346739379 378612757 511794749 247343683 120724089 732220297 974091555 130290573 783552997 470401371 305344085 235303579 470499973 743961445 703358981 391673479 477896049 375300166 913373295 652523957 385169989 174384233 882565333 118812883 720388137 913560827 271328383 837101523 147968715 483941111 929116097 257231093 229356897 938124827 609503991 142250936 39747497 574722031 718200191 203091949 278485225 645086917 895927495 521358503 206962929 922956469 418671425 823419713 482991381 670575775 348872549 737691233 67354933 261766953 252712629 107740401 858720951 615797190 965438655 343209767 980501383 530079153 589392401 482621309 940970783 914708707 237155143 281723323 662329211 255835433 807026693 758557675 827470367 193427219 243067379 727603553 380180255 104129273 402507203 166697913 384933389 398940155 494346289 824799705 563280135 473096959 562588415 728467179 718588341 613012921 416254965 908834661 234335301 151719839 671395305 266724867 758136429 397358833 897865649 238037193 76625003 157356985 983855923 261113859 864613383 636641991 335319127 255643463 92196749 32621745 152679439 561001581 513798867 328251611 495002455 212667037 104836153 434998889 36528689 739567427 768379813 510476623 662838949 216770833 365918595 9254721 809632713 690245895 356515277 661414597 575123123 214691173 464361213 429376541 603430793 921593017 345281821 456857695 681447539 224731865 168796859 602219103 360956069 704330719 360439787 172175295 234803543 29517615 825304395 322396647 941392587 642353783 29462787 778229513 945647951 777728683 319643585 849066265 180852785 41725189 969821627 371294427 8679631 454072333 817263537 49979607 363787145 552690315 278213605 694090843 450887881 130856087 156590889 211659905 102408705 360206987 642658257 138211625 158612653 570739725 548707517 764840955 544074575 443561735 717363283 858169191 7283311 707529903 505351041 753777573 484903843 577346177 515630779 672650679 516078721 7873345 48488195 472758883 421927855 56530939 122944733 145216315 590106069 808320771 826570073 198386583 234756775 404296437 232450827 802324375 250107869 507987895 891583761 992070945 926186043 381532021 95067155 308172009 264583817 117451169 365769023 256047461 648083613 548862969 627796301 194146263 904911437 747630977 278784375 503634757 787007615 779682693 309866631 272487297 256520731 921013915 228432327 993010721 308431125 122316699 546657811 13694857 225717093 565590191 151753413 939524573 133487119 184200765 52710597 529237521 710471707 152629247 633302399 268245723 764835231 495214061 617452013 211024827 818887857 275848527 585174411 771510267 903311991 826879405 837723999 133143467 512747545 875788767 537038073 772096673 397959115 875833087 398005099 997420927 191070661 717600113 43442265 801840303 757359435 309013987 220316389 381166429 226751399 140158025 696514241 885598853 582950697 20053215 987797279 566434277 288229423 624110375 460072895 602078981 585175065 641091825 464947177 855889977 251039825 130848079 754797417 845835669 520622409 651450269 245048213 183955963 746332543 498440321 344688717 492080659 975784047 9885413 158507255 480325965 175306153 920954625 628844417 27542243 230133693 44199245 185991009 284226259 934147907 84638605 369821845 910595813 749701601 5714384 875996323 523191211 268359489 439625581 348130713 958003581 976436241 955566585 391789327 548029307 902975247 616932445 30482211 754155149 216154621 855508933 451041147 922007139 168276645 883377315 825338435 809712245 724541913 501826487 506026803 561694981 301091953 620084481 132469387 755997721 741549139 912071887 243595277 774279299 879280999 280912567 661532683 754088153 268138145 263262353 410578011 450135679 577200889 236814727 623449 679283355 543943283 329011457 666566381 752034075 234129177 58870195 138932613 824321979 750438909 102396061 682733335 191344379 672248887 844828159 427215905 502147361 606495725 94301289 254370473 329834815 482468169 800240557 41188157 111372843 604198777 302918631 799108085 135123847 717598653 892383355 395744623 651486397 857321555 574336281 288125393 686995961 235008389 964548785 588598215 154540343 833986217 448962175 381571465 992931125 578647831 732131083 691599319 291500669 533713713 235508511 581593845 496466527 852116321 962497231 633226161 218086897 202649883 46838391 452407393 671327509 869981143 57333181 322157031 704381811 494859289 366797453 727362213 195104637 421782635 266803737 397097865 232751975 15579231 78501343 435908877 556693557 205834127 818719395 780684333 458522287 841901725 814186865 290761073 416894051 956600883 752744095 103295459 872475819 327677445 564711621 483753501 733577127 514149835 901618123 778894141 763148607 820010057 888701917 634852841 888588835 794157129 166506607 645790029 825697483 852682653 890868027 495598115 105661049 695639069 610324807 335803301 373367349 732207791 569808865 641946781 268028877 247794237 925679513 5439575 362768601 305126583 3073359 103716267 908981693 45709335 170941223 393722357 834390687 729394017 509758859 271038493 94183023 54621599 442552881 15024529 254597093 919209699 708530451 952714567 457028739 69599047 465693561 202386109 461181839 819994093 407371501 465256699 840769305 780438527 61851203 245600651 804524797 924858289 721417367 600741767 490216407 627452219 642003535 417348749 448172051 96578017 864313365 228746691 423265503 887223021 534568927 828811477 746054451 723117233 246371817 432240893 96236751 611178375 654439351 188565493 200665405 531921617 934403349 513953543 76731597 361644537 323144471 695753729 562334613 459266931 459323161 913796149 623410807 790346681 971868099 982201735 15698971 181829707 550415355 826100057 464976883 342666933 888953849 783166363 345781557 844808585 411103803 567174595 386967521 170902369 308216961 894310351 952339393 717280735 26859737 459969861 438049635 880259757 138980505 877330997 207226657 445576319 543097689 927498803 458162203 517509803 814558723 545868127 633218873 994557213 357683647 193913695 325344811 147216245 490815745 913903677 258339435 431725543 600680073 579590681 35976759 986997073 779299415 878858441 654610839 93277589 64518331 345562677 516408669 997212825 944966981 20685483 446962209 102372179 304186839 578348547 108642115 370014907 889457039 917552281 718987755 502993111 55865821 422457429 609612809 527984045 368794485 650344357 30223189 989950545 264032083 564343425 692955217 620508125 834885563 339219299 244100419 477312627 166374711 779783763 90421053 711990333 645812641 703326177 583886615 843425391 113747727 161019937 972315761 739991619 939120361 145955251 136856241 137339385 131296473 919100605 663116811 381127133 599440853 219185133 131849333 37579585 59777305 800768887 886915249 667486591 441692969 759974941 452009797 782150393 157565139 461549603 134449537 996629019 476607527 871105111 646180993 244107861 733895557 910932241 969446433 68861217 246020751 22964015 494586893 208559363 809553201 441482517 21806257 527405191 920493219 926277555 907432009 685441851 838070877 998110079 462133715 733271739 800597287 220881273 22604825 918585769 13870089 14247971 569584299 810534575 222603609 446326415 215727839 774248833 169394101 972782929 675033303 413135833 621376257 599741833 906463867 303956087 438201703 328627677 264143485 510360103 124233821 143169403 279599953 612821691 86749597 594281753 987868731 602944013 253854767 914114035 231184963 880992001 448697691 607336659 817211703 542554237 213049785 839451911 377368241 477114999 469019173 832486243 625480465 71014633 772146879 384906053 560083071 952110803 530540024 624494487 942218219 932328257 323077507 569704899 626970127 155885125 814654809 902766785 804438121 448816635 137747139 464807951 782879297 646974337 207844171 895504053 374022057 29695493 270725061 767205439 688360057 869198263 40654159 426411971 992267601 812469969 908151883 867530977 11656857 550269081 648787303 365442751 842474367 641597013 921699477 125937931 441450241 894424665 27015187 82655995 720371929 407941375 830509413 937933901 19079315 837789609 566099031 467311175 984751743 106765251 694610431 701900983 198163125 480265149 228482487 802282229 327923219 350692883 140966435 85339871 792855365 981964869 716300849 536850905 475745721 619187679 312890387 551822293 954527911 590542707 49848393 554017349 490531855 41771933 334727315 558627625 16305083 435118075 712383745 182367241 805000251 5027899 810519779 664558833 37958117 463934221 750712795 298938231 339111387 310969645 341436103 220010429 42986759 439852635 84533975 869177699 811312917 486586467 59679359 514258077 662018433 524111895 334068859 247221023 542502537 532843089 365316301 757343527 574492215 190198517 156865989 655235707 856620889 342035947 932683509 519352683 866447497 296506405 605496379 758007755 534076199 852757663 116457655 112027129 18197085 396157273 550904795 755415519 754888727 30663775 579138647 614722023 285991439 853574339 560856361 569079307 406509255 242962849 670709397 243009221 294769799 873295127 94122791 958373407 709944413 771572563 235841203 547692709 724834595 769256325 839151959 692508781 24967289 360164073 577002613 328429593 684486599 354090943 216646075 437016523 741969725 13016661 839126043 953693745 374833875 169547769 255618773 953783172 98021195 153912839 63596649 276250243 196845867 542127329 62426533 16545649 268782021 962319091 165167263 45171487 240377905 784904109 753694641 468390881 923999823 503325835 386313343 588173975 564672453 180166671 507686647 61163941 236909831 494817985 168619085 832774653 456208971 535937589 392029691 117365265 30037139 950535687 910819017 182736099 877238437 890752725 346072001 782208247 70935059 97167181 789844277 934810971 281300019 891639583 390637511 23909541 388913959 576062471 516763477 66102775 892100825 143050951 439554065 436431859 996659703 795901991 684210027 915961289 128525047 414444539 607976223 108192813 637048095 64307743 801356853 526988899 677431667 837684081 774480375 88189739 556453315 753357535 492273913 480612823 719263145 50355289 502299161 541686075 6197127 321034715 129347961 512794807 887875969 318179943 497550725 889099055 198938761 148338437 591845877 352992789 82227033 984074697 678816449 241743451 814880111 247832271 661422383 485911427 153643541 425542965 574642891 161723535 277766489 91142697 351776361 955032339 225870613 575723483 185348391 345825823 516856297 15225479 747521383 966475095 56164925 126168431 305696727 132400605 556231489 677493722 233384043 491394913 732110831 68659745 693275997 272840473 866118661 375278231 728846901 752348355 320297227 499554979 550164155 138480037 173967698 394388397 863040007 441132431 585913077 265292839 171798899 806299605 912204497 556308109 899579299 483000407 918806413 24861791 863631749 9249915 54095005 434657067 528150349 186609197 748983609 872457599 95551863 908312807 788433757 977709561 218056647 366881443 583193815 176049719 64485959 579611371 194910257 376728039 340909135 848632781 370353097 242036667 460428667 976626907 335602365 757235307 792940203 587446841 700479987 871775673 14600465 682064777 754506015 947835251 589228317 958479099 670889911 680489063 173632909 609216069 1858555 295695731 256183397 574076325 713623541 20512373 98188273 419949795 885253237 306073435 668959685 719076425 253471249 969857815 730404287 264161203 592209965 213574305 714280193 273455483 756916205 774041595 795946233 216708487 965322053 565915443 793228377 838861385 565552105 393181015 499418655 916710835 276138079 111114629 877652623 323778119 608581865 399479259 74319415 488065033 7320221 229428871 572619495 827913607 613548111 38897339 941686975 181364953 448743329 536605615 193446179 928150173 865950715 310141351 24588219 621685495 534146959 936270059 750290305 856837271 432488529 675932369 487567791 739664307 546611461 23046831 920242887 65868041 677071411 964100843 994375577 176064737 204710697 35024365 960691255 633829895 170584833 321744679 148446461 867239121 232717211 60989973 246584207 38022175 197467295 990875449 548099037 241937495 374517885 892427037 472381207 59280487 751862125 95742289 986247353 102644419 655666289 808022899 787352459 271759981 220378703 5049889 312720023 537535977 535667865 389693963 365404209 467752005 547821223 414958301 230247159 253801497 153289880 140244565 578329291 23469699 735232085 92120373 910634969 869454375 522662031 550848069 630733719 754709045 350890941 599501147 405714881 274740579 654888737 794446415 388360541 992048369 627343809 905958401 606144947 636771233 278282607 120696159 374315353 882759877 777788865 148101723 274308397 941229363 939669787 400930029 497480859 597881927 65729441 232401433 533485619 603487977 814314055 245913321 727156613 973157509 871356355 339969389 807736647 446142485 395887509 206890947 897881273 103506709 655220999 564603147 854456171 958246539 791698985 662573679 133625901 95264261 884917457 165969441 88544799 804529307 293627809 791092829 53281189 411146219 391168771 729307237 939925353 904810777 48152099 399516035 321346913 441555925 324476925 995287559 165837255 937413975 116867151 667052623 16699427 759168857 74177697 291671995 430609471 615142181 352331591 128324533 836434735 631392391 532293205 314993329 221075535 275732693 635470509 362009383 471505989 625990639 505102071 506674843 758906363 425803579 145870499 726294677 191037351 431691943 229691627 324707755 195282885 974600617 570046925 149069941 410449945 577200703 678795025 460020373 564177071 19143151 814113609 817751989 126638811 821505223 592214733 408350343 15884859 723381855 278154429 107520457 504467377 104111317 209470977 567608633 187018857 951122381 584088649 261121185 818743515 747640185 429856013 767388887 669683135 150675339 107790479 809201331 162473243 516997187 474299605 221443095 38022973 589403497 456764593 88565485 789031349 494784841 634170553 659683367 371121763 473515963 903899217 106751683 108829801 294051611 379715231 845313215 252506421 161508689 704166801 935234597 914662267 853009611 29068003 728768011 945462837 700202365 171888405 713961353 11537323 550421993 754341485 627486401 723184741 161137173 804819453 212418525 251731003 452663435 636100251 239100945 833924423 279535461 906120681 292919957 86719215 842457921 387844945 534519725 408893661 33610819 995259135 745321891 310471687 486584093 357607151 19687367 326665641 700460545 479103967 178392439 262960199 87787953 759668825 967167763 827206827 84446831 283976621 778704645 416098031 456871693 221087473 898817729 431022441 382351841 707262983 95610303 506058689 535298503 161523863 972444803 257268705 692397863 843433747 736704407 982673153 682003183 452380591 592882317 508085401 804374421 891282287 884065535 619279215 158578199 965901083 216512911 246140559 994778363 43139649 119441639 480625229 769145169 449961531 746412731 621968711 631676845 710867241 709138626 306447711 930207535 997006067 411295683 621391554 951686269 144337993 3712645 598703333 882959043 188793763 328909019 611344773 614594233 48350787 126973599 198940067 337870239 490919217 475691699 943657613 540848185 419733051 982427649 629261529 21780949 975762681 81352317 49288545 655513419 779071951 406103583 648082505 304616439 186178275 57122795 258813439 368398529 193023781 165165803 177525303 591975703 901901645 637952305 418031341 225394671 80534749 94313175 88568163 717061831 744502555 900035839 804380969 134009509 662327831 668689619 535615761 86956313 148767661 779271303 162986551 79973687 846031483 433960531 588163329 819905695 620388583 384057725 845606937 299834487 916673573 780837193 67781495 695601259 300133675 722096143 717312849 345470389 811091385 636922407 400821553 159020047 233733977 696983283 462227681 756632771 153710683 592047583 422181749 235608477 269483733 147809627 470252107 922053621 502983081 571707361 640697349 979017639 968259455 742012149 938769809 739784221 32898505 358741537 886782753 174677313 83432381 77715447 835546931 740418699 128987995 481910545 436797835 590268921 114108013 746446609 873567287 263129873 495373185 958295969 124350599 708505059 834379505 479599477 889718811 825401347 222688221 253642055 491182549 820734353 737783597 632639191 821137123 166691379 364692113 503127537 338993081 556947989 218841987 899339111 235180817 137389297 649903169 515464723 424199923 37105411 384800467 447126999 895167399 37704207 811921419 226239133 78220485 214661225 699388033 151235929 340707367 986674147 836045717 326118661 807695091 388453595 576766575 475813281 202575507 247211321 318415615 619266361 706676669 919903083 280249085 159038687 56411499 885712743 769217771 767408557 359168485 743943085 7735567 178988997 7982517 601773631 141076603 655205203 156538031 892274607 82503687 812625797 578965743 590489617 823697747 373149595 764540891 111248389 152040901 384260563 804572959 986873265 826962833 851448953 896453549 543457217 560052397 13304031 165314755 550900847 736094171 552416351 355470565 443524215 216447393 487337307 666141407 597432863 252704079 325002815 294644421 697801269 952343553 507933819 474375413 382956817 85216659 750672267 404113681 855665041 121183665 422331887 492586759 12409881 97992903 261104691 410540041 279443865 701477137 341586409 273389463 347204231 813146509 845323435 335701617 34184673 932507909 446762779 547405733 622060079 957473545 825027557 987766665 765792893 856900335 526281401 218480311 589882721 969501401 25743185 651065107 567105019 792697519 530376307 111917771 101471473 89790243 241141477 843421011 197382001 250436265 831712379 766653543 530655279 510188167 152092943 438600969 377623149 573944767 55214467 736113289 389523183 394080293 244979907 647603577 837136645 982491473 348848831 59572917 320710019 443753891 727268721 713326691 98339271 606322499 872117727 976784109 298024121 76615459 414779151 302319625 513778633 806364151 309318933 786911667 691807721 226270019 265065483 164621103 39430809 4364365 506680083 721464841 309602017 400282919 883285337 156856597 612867149 935197609 673417997 651815793 613253107 734010995 566166123 785630589 714435443 234295789 200107187 727283691 738537459 505391941 362313521 795415723 926358817 645493113 484617271 278996989 477504563 742862915 814238751 839595361 305006309 689057583 275496013 369584805 765799043 958018189 175434791 689220829 837731029 36033141 358461987 502004583 569163061 394704837 146930363 572273893 218633089 579295529 643290991 811555397 479059741 632472079 815536077 862310843 984446969 440533423 620478051 503192513 356947853 384415241 932138957 400218143 710090195 305472743 930760621 825053917 186167381 946152665 475594671 321155411 956497695 814948917 40635011 94518555 451115975 919955997 397790437 329289499 239125101 399357819 769964181 897412221 462998199 197442043 549304159 659747767 973967571 914075929 428938263 600992131 408856695 413006611 434198931 830949865 317889505 58102259 530406327 880097587 419650263 434967175 345036399 933214965 398481319 685942121 476876971 272693515 755900459 639289851 191897959 417336475 794237115 233517921 889958051 758542607 54733123 542256013 214097003 723743007 615664173 279874103 119225811 519712706 501502321 799040993 196193777 606596417 569299343 729147091 641357545 776702501 708380297 579613723 889304295 371703363 110334707 660092051 611132699 769937849 641218269 903801307 697030337 185090025 267672297 836582235 524646427 126335103 549131069 195550019 335152497 956777587 451431047 704327051 605803031 105812221 998525693 664102132 843213159 510040739 198163805 14491655 819193797 975594547 504210413 253250067 783310233 39355837 152995197 59833905 859216981 852315041 968645729 260269121 156447605 510081411 977590649 55680489 646755705 701721933 255929641 638063005 148035821 198009907 632910435 68336019 244854629 350076341 37501337 13370061 355167863 444836499 444248525 954307601 496640199 900228573 479289729 649225397 22817537 188660197 715959239 763802307 403604695 322989895 844026165 163990441 880095231 403689961 507692263 944463245 896074049 341753845 278610821 701056285 97332579 540078817 147268669 159427279 833223225 653893225 68823493 967593961 988970911 642804113 356591451 727295855 331563123 643388837 414897095 139487537 202594723 850301753 180645971 832501449 858235167 298603817 915615705 377953433 425250531 291660699 398926263 210275013 166062065 539635963 808781011 730636863 951502673 270217979 715134617 412520385 554005273 910521241 609725443 756718281 452890463 27395097 986274443 392827041 296418121 133294599 978808123 321604951 127194109 977628729 336516511 528090309 593428403 738265545 736731855 563042187 746506401 409101083 639354983 927674897 217576969 110858973 473890705 503808903 141905209 917698817 907921911 763400935 296061055 543292871 528868561 179926511 457829431 870517423 222469085 885253671 175988677 357832585 838299745 438971361 417830545 275681125 335983661 44606773 62039309 959604131 444725909 817027331 36880309 545511 35288441 495978481 89513995 573818907 223674429 326519667 746872215 524557173 614613715 497942721 269998319 745663343 986256047 131075031 792262313 195063761 162064845 684635267 78062699 731620005 733990839 458168143 15593437 794885439 326621817 165889177 693220273 924625723 642150827 525980543 498746019 864695167 534217067 332577511 930676341 405681973 846576477 596885125 662914799 971434195 199136177 66416591 375884005 720371989 917892125 978283781 382996275 963544575 496485599 233166385 210456505 442866653 484392893 948181027 776275039 679630405 579920647 846057329 497860637 280311055 137223825 771597695 693536745 215832419 181980859 191458161 389328327 323588269 116513131 104193339 285410751 379970463 27746063 722717329 993071845 691419961 449025947 267113977 902803029 520667579 722536849 602889141 840920623 776136115 570119413 599942875 985632925 482676471 401892949 528783935 793643217 60562849 781579721 74159491 983064583 267724565 457752559 493769743 397750913 169615105 89378027 432461845 692748423 339230809 26193773 830078345 933948783 29639767 384836011 424983855 187905679 659341187 678965347 845843854 564682317 221211813 176713181 12223991 430561041 354810325 1506021 553931649 200348239 618349421 964586961 189719053 490246527 774463763 612033409 369719619 309623075 931658417 949080155 128660883 956112841 886869885 76330827 206837557 93944575 585247475 935210699 69344043 45680739 466406871 625638871 950104635 824159893 716292405 490532597 384131575 258140223 586437985 191294259 720845751 103700243 939562231 770788137 421908891 699204813 925907421 159529973 137997705 433292847 920969791 136230459 596789301 223326211 714468751 393754411 743688725 168169497 936041867 567296379 24517227 393747023 87031095 382090859 57375293 958359429 726731743 841882301 109080413 85973157 979233817 456747971 354566497 492778401 870745789 942408273 900609197 376829045 526654453 777845705 915630437 693703203 210015783 830541579 936485501 248554421 31208717 316053899 93235371 460204859 707906207 607648317 940522863 88755923 369480229 316321951 182803475 249258909 697342247 388989367 18950311 139632835 427784829 696089875 226734849 292195961 956612417 646930891 522853315 502488823 542910423 752156029 50978135 682407809 660271853 862255949 526453993 446021471 57530999 608152811 970567541 297129191 972750513 5287821 117997241 762981487 111880477 420967155 112002111 863638365 922026891 411764319 256454741 794151193 730543885 719930275 163537685 929263127 597244159 879797781 160080735 808769231 271187975 741345169 20137435 778651333 293804305 445830015 473211897 421841283 370291279 210504141 887117555 129995161 820297791 185137647 789255367 752526757 685904547 415689191 468551485 749720903 786087307 587837241 240013031 331528233 602627659 671356405 885273117 636927743 273697403 432942511 592130047 852776065 264224003 424525959 692119925 432594035 806444815 797014049 584379951 43682463 494948113 746277037 891428261 49159125 966021577 29224931 230646809 507898099 962957111 572061181 323584913 396121049 863926697 693371589 157066975 452094577 313813173 794947719 156915865 622035887 417769011 78457113 104356387 936810635 50450765 895387869 785950371 983893257 310273899 948764085 718012935 906322739 119937345 248463887 10435083 582259225 610367951 392353765 935163695 597526745 668501333 213974963 11119033 791750547 34828387 610627455 215501499 61259377 754675403 357308889 665959179 476726439 165158057 423533781 957332043 927503213 381374817 850449683 192197605 675567879 619611811 430699191 205120005 269646271 442713951 216950387 111976615 792567015 100032721 541575289 764847753 642000343 47922049 715480457 59101237 223043317 578533433 48976363 412346619 922465451 44457741 385071723 580920305 205986407 476516441 396630369 157807865 428659625 237596611 193402793 723533755 152005359 571386167 371561899 699438761 314202821 989124071 966570581 786268151 116129467 706730321 572444189 83347113 775851631 960529977 299442177 255137159 905136257 799613355 112273031 271466015 986879823 543869949 957216959 233362891 410974577 528319851 601968445 188736171 639558587 669136627 860612897 586008231 254680381 750427047 389558031 210091119 238873281 12786525 602836537 127959163 47929881 875392973 588166481 417804813 91271455 257101821 865785241 395543597 536847541 536125755 948454869 922021033 555806661 815784473 332940627 324463897 646189123 659548019 75946217 477733345 547999271 250684269 299821049 647238951 319204471 721230965 235662692 990521307 48236599 704329279 279615133 246705333 612379007 715503813 85729943 211476279 811574375 632525135 180016337 183257255 53599761 352833383 268712017 88331029 47632297 668160481 42131111 55378013 881189213 320831449 12538087 319022365 699107693 961087925 652371121 569923515 839377175 782494751 672796969 942940523 639072167 578720525 957599233 650323747 987098479 620197563 746962027 206332579 893692615 272698541 151586345 964837237 272776471 618706095 727726719 986342889 269555651 453390293 873417531 636303381 459747649 119134077 576059829 560041179 17482761 769384009 372616137 759455973 296930719 219967781 951315167 255093151 686255501 217200201 520391909 15687237 63790181 745543213 862049617 484000981 532141249 7900823 913070115 410227993 95874627 371414931 919186141 435233695 214635671 2769527 147528593 746458305 540484205 916116699 860664275 296201631 195176063 324141993 370094531 937629473 3325073 740411401 555626759 55985911 501189741 711850607 930992587 731547803 373631205 899892123 980778953 491642443 370760403 180498829 386852155 988552207 902576665 654269077 440585195 502595771 779814051 393148483 282337831 380909793 726405985 978853497 571439041 135381991 876588877 379825237 420715805 598847219 990982763 72139079 480500765 383153653 547687109 889008643 821211441 818286757 56083309 94576005 868750415 379365765 677955453 647686161 136235509 429727963 455542039 121274931 255390251 176735161 732532327 953704895 27058557 493432055 595919005 397356241 843196929 101793845 854532339 994730191 527082583 964651737 945462189 213081443 48215717 226478359 269387031 65373059 466161047 381247205 795451005 950887021 35988839 867324165 547276097 678429857 331029713 676604413 283316159 403311853 419191835 561740061 491454563 882852197 537657875 592050561 850000545 250814055 214147345 853160197 224998387 740088725 538784241 621930325 974062809 138893021 275242269 806991581 746342879 517563249 214002559 191834073 828854935 733143759 944442767 133900105 663829147 696774077 679112779 109470193 752940685 392616771 802844731 708560231 327180569 343615929 930738795 472278783 776933359 645178297 50571633 93176539 434364107 295135015 944759917 534683875 660628077 201647665 737594885 310044105 502239137 411183179 781011813 350841857 973168185 85283631 515506503 252535505 332788239 369819109 370930919 699146555 907229701 912346039 775206155 122499347 448480007 761742135 259538177 11845105 277735685 190051655 634086305 638945845 891542523 267230725 163092553 652993543 983893737 986801123 889312733 765206105 430338267 599992465 481255373 866542047 294339555 212784653 787635985 749416989 948445723 159992729 442214179 177268825 774488741 766963909 210699021 572318885 855317677 78967397 987355737 293794009 788275299 435175313 435687971 52472725 709675523 167758513 603619333 45644609 941137101 963170929 607236903 938217741 833019405 934909635 30250807 30575089 292223509 9122277 296453993 79469997 411699521 331688795 628985215 534054861 645095151 483219697 859626173 328370331 865279117 943560637 362454259 482553397 990150283 819760921 90312053 489065335 85075811 381103017 296375841 987210509 496651419 780977755 958720609 720370789 594759097 572664673 615861791 606173367 370720593 19545403 808568531 906533379 837101053 266429865 828803709 946339859 463444833 331297467 464187551 411890551 134414627 703270849 483548491 557171333 978949625 285834333 604600343 580114015 17831581 161632621 195565855 383250415 216558287 798308385 348391435 723098337 601609309 383331053 723046665 303469233 743322133 126454413 363027919 737247133 603691219 707501829 216097435 843303855 953902201 44704927 942900019 52167093 776612083 454276339 944065509 825519689 64624945 369160157 909343881 297443533 224330799 1582719 976711549 706762853 95539695 672618053 282848933 494399747 137461881 902252517 363534451 357582431 591714017 441761883 67516633 101810939 639932481 676214251 964616281 59564831 631920317 433483041 863340277 408276441 962325115 364632017 236283711 618366979 172959923 942478361 848217421 401038141 536404121 298425179 412038587 850286319 203700853 115264325 110374065 793743177 532484749 676084937 777943773 23241795 942082613 4321063 556788341 869072031 154857673 685521631 511619127 557118179 329780391 641577151 767269993 382975073 348595261 24830173 997578203 944287281 993629947 526349203 599442145 779736627 161537117 742952581 26921051 576085005 422036707 683079585 114351789 91139123 855859995 344615963 110788295 593951451 655012499 642160493 219128097 414345991 944090343 825877087 840136373 538378621 449071291 950191611 594289677 415853007 768158391 289767059 932191797 923410771 301218445 942898889 993245125 390363181 624633337 196642939 975710169 877730881 79018939 724824539 472013593 10748995 898082975 215765081 119508147 457308327 240302201 119141809 966322013 586816691 509083423 382006507 483721813 600160619 217068919 637145937 825856609 369527455 569975911 479560567 770044625 412206569 285271015 706230331 756665465 959398827 748941293 829346751 897362105 118752777 816842619 690392687 599144567 947450357 682593183 709266947 238452511 262136873 396745319 437385843 979526059 498305059 984087535 574086917 418850709 244735277 185362267 529832261 570288615 858504021 184824275 471913991 407538221 886462581 140671881 784622697 930429823 639463725 184739513 407955149 131691385 774157797 87307939 978735073 780100931 972963277 177825941 670461849 111054475 534502367 87268573 253290543 548876423 297862105 566039001 477906731 679807221 796702019 889385703 962212949 164161821 958513775 870753653 550995141 125800139 386642805 445899763 583889365 640428373 413627701 582183133 782662185 355078299 701635159 749594037 585714863 799065601 192980553 548520963 434927003 540221817 106055241 409212509 21176169 158895733 811681873 361075033 196310493 890106103 929995823 198189213 519697665 21092995 524211309 496823249 613391917 891156263 181834089 706089895 688489213 747799163 260486721 141077211 154544723 176661659 639943643 124174639 202429275 522751279 632205803 888862315 470992011 774365285 579413991 859614565 858532511 520023029 508726799 74744051 956215707 897581081 347650157 150827259 17229259 990890649 388143057 515743589 764819651 474846661 634650321 418865955 242899553 539950961 999552209 10906929 615164359 275377149 21848309 571278225 645805667 211081551 91040049 743147083 764944615 944057299 735421241 383233653 120817745 42109827 769739155 957049637 651846373 787287259 578164353 547488385 301400369 376156129 470224665 862090929 164212997 952680739 373773359 928938727 585160833 419811513 323772773 681829983 351769865 812380991 152820771 334808411 722827335 198422751 540101275 997706277 355092271 640633923 618587329 460976653 964206849 615552931 882992473 942777457 303613501 625930685 224112875 646066095 299954611 36250327 314472133 392254517 724987253 574355905 359814657 524951413 367927263 317565137 187543679 867074791 267352215 811222243 661224935 782153999 962741127 746885213 629223081 463950965 313815013 852409905 657797885 247413935 222889261 847681747 752607205 229888339 238597665 871898433 702160423 783414535 595832273 751582721 740212053 443113587 16369807 394780193 198561479 101271371 401119481 778803257 30260893 899958087 285263089 641681765 661954237 415928105 162483363 56280143 771324891 49578431 44518277 661659681 106708589 255165657 540663637 311196051 335380917 246888527 999546131 343859171 745968313 511223559 202173453 486359001 828042059 362362857 312349399 80126145 586777857 395540713 623232079 217481073 460804159 858529791 441712791 405969737 452763945 365062701 96911901 36967727 859631283 789960321 772279955 643350161 937269139 758764811 218109433 750427235 438594889 860321251 288246671 200526887 489997599 247400495 839890149 474472161 610204965 517306134 407767243 12483617 853521713 442247375 214233697 324642555 571469285 112333711 367245323 794353421 288043947 196477595 495385715 118856577 852873135 990110011 471439 729940481 71010029 254872517 245652889 42340293 587110691 704000657 811259929 744455309 763307483 733406977 741908185 161675675 487702883 143981695 656103149 484890817 297491925 299906941 656365489 128570197 905987089 177692279 220455371 551807795 625921727 324834543 542888997 506619843 111680335 27999855 491923189 231062769 918853371 845052809 908491959 450996791 921480129 996638933 963858223 497317777 580411241 603412985 730669161 150769285 350937733 326717085 681899961 25020195 458985325 902648693 558718141 366120703 771330369 132799801 960355415 13068855 753179369 956761005 903925173 69147765 405898773 595057307 677344073 178915299 76692029 201569491 770573265 678047801 513383842 381449011 498014033 872034231 46097485 153170331 872629271 856336417 626811149 919557109 982608819 371176389 506332793 238401333 84681221 452496505 423878645 32815699 899266095 470755485 61595303 828441939 885878175 771620375 598670973 197870655 43539721 636266325 673280819 974261801 490399591 147322957 505987913 620254761 33382145 535486845 217187589 778386533 73393247 207683307 907959161 351087367 569598297 826108199 646786939 252044093 940439049 471754821 384237741 728997957 825440213 177727717 421576825 360726113 432780391 65403691 383505675 521314779 881369269 583580103 404465759 478830597 885459963 597056241 947901749 477395513 446890173 74621795 567165457 763799257 265795527 812170599 430118473 858286159 669415725 621983689 175195377 851523087 610500427 186630369 431484907 118990225 544789959 897203083 9272543 956526425 617398923 253845039 152127551 549430257 59040975 17025467 593639487 874755819 513941003 403638949 843156451 762411487 865201413 125956075 656902643 332573043 743824585 532510227 603719677 234108497 906529195 484197421 584164187 181903911 44582985 219189453 478684205 996968629 305122437 304017171 111358555 525940409 25755277 938521507 966880917 967713023 794169811 132962735 25013077 381139799 734019095 632112617 356951511 132607903 411031129 993477521 89806633 662557367 988840423 896243567 248119575 827241867 292024663 598330575 151802169 61754377 826865539 442366601 758163955 877025841 307740817 845389305 231436139 653757697 669552875 65348105 570172049 775399301 260141637 649236001 822076957 646544333 614296735 362047293 134993297 727800311 156445499 38473947 922223667 989910307 186380707 614911485 24665621 269489277 468725423 672627253 520963853 785641525 569411449 797867671 915177919 799903365 710451303 403392707 743300239 323763376 350495781 673325021 778988721 85770243 18633381 158366103 273960219 994072781 221165603 8281891 718349709 380818793 581742119 755700291 40702865 691633977 30402683 743135291 102081911 469499815 268735541 604230361 400585557 502387495 683405997 818486645 933747725 527277107 680897163 673352171 558920265 38931019 322319035 458277795 190956405 210879739 453020527 547371659 822345421 531772115 830854437 634752025 782335567 223014513 655278497 774230603 679965637 930043767 289178353 287277737 337361853 97017739 7648357 32176445 233532049 287813987 452005277 827722659 139945825 898373047 497207163 496701941 853123861 81433675 374934829 671347673 780702557 639602921 24928038 634497921 798336947 666187875 426787363 945618079 33735253 886964115 695505449 23116149 899585867 286961755 833707393 555556295 91784553 547374247 855308227 664094179 444452673 90957159 361382089 739607457 250367545 106480533 623305145 791041375 718639991 106167093 697420285 284716801 147645675 124489297 113803339 435044087 788427855 105199611 370786207 901591863 778413087 179140941 258875963 462877247 164336807 336770667 969516207 644961815 782708983 445937531 896810189 169623881 31425511 837825459 554401459 159793649 261822231 402368589 489871297 561531049 401151469 370634633 822345641 808758167 518525085 647760819 925779291 910796653 582250781 599646749 841414677 768304223 276803119 731848737 171471963 272249641 209848409 171266081 25766649 383431701 669464299 191376009 883201027 655084529 853864705 877170889 789877719 317049617 161155191 622083675 17106455 92158035 136332537 256167875 236590257 847625247 366978803 428599179 733036759 25861477 88428193 565337413 955297289 162898071 194915075 480073355 537768199 626990773 653967581 270958593 758470367 935250475 572962757 513448013 535612903 158878295 492637455 856175909 719393465 769345409 76148445 920492099 168509753 825464543 363813143 699656295 227142037 697368857 447086703 651147869 922485569 503009627 262122331 408583671 733907961 354567774 477456155 979553551 383281855 37256545 199291063 962761353 199919843 786824487 365116417 662551883 292951799 406330111 747966609 744996171 682637783 140415425 374319815 679017091 181956521 583939275 124025035 494847475 33646295 111522049 202065807 400384167 264365847 583035859 691273159 624553137 335818853 539223095 778636023 714926635 482229253 659102637 437332581 159624761 709076867 754407735 446203427 118146049 746811315 802873959 999991305 169827257 55640499 403728467 843062455 610970011 774013413 143347351 662030485 413427431 451071221 297231963 67173587 848388331 980185 690726219 262938729 673574901 363913679 740239009 747479319 208691297 668788567 439054361 721443433 277378449 943633215 64692473 794093225 430611185 420174491 441064209 436422133 192188145 569767625 17952693 989401385 914546701 821132907 529436867 605335281 656063941 253391471 153287589 909416635 321883045 776644873 182166085 721181631 220196415 408285875 12591643 216383997 308265005 977180469 586163495 68621119 796622099 709441687 37360363 452775957 327685273 890790961 142850937 374825173 228909937 453860253 323630183 310511265 892778069 833328577 32347601 76311651 164519179 857743815 425919839 470271943 441188185 585716773 751272767 242143817 509045779 461018517 765723941 226998823 264820755 171963935 676526931 363816811 288021309 262189069 696653197 921125091 697031031 982069491 186418723 828039977 382190009 857783981 26329833 572384671 804914935 177102433 616022079 721155433 771081529 35546491 653368329 554111097 252263045 202100909 118976697 773787273 643939823 10740469 826089025 929571349 700657297 258131095 496245025 332271979 114016399 869391391 28095329 140983191 261517329 663171425 208643981 275692915 90220617 932190331 614410173 91512991 806065779 786228943 639153293 91669123 512803535 358509065 877590053 603476303 378598825 217655585 487955763 548591355 504591957 187158863 859431917 709128777 348498473 461519641 365860625 722737599 185645449 717064525 381946597 675929263 523509985 712346107 423339575 173262897 974875041 912528771 52167521 942139429 529221445 206938505 627346747 924616241 659191375 939877879 544524337 95725257 345180487 561190913 442699053 623363619 184501185 826376487 265514153 242719553 648849239 358081065 841724831 259609833 652202669 225572887 306921625 891284141 640223339 757729603 801222819 540712931 265152579 400652873 697155157 909214895 73094641 929649423 392083147 863041781 337092149 509544383 596628141 567536489 956675549 387130831 842658089 403987585 597010615 704027899 657635061 356234109 468206751 64288327 692748111 708657511 250121337 807444223 523376381 899669005 595194669 117536695 788603727 252522761 974476973 445819723 313018649 314824381 526905077 729737697 303324091 396976461 699088645 704286693 144182809 43454891 823240683 436617993 324295589 334976657 205770165 991348555 409668433 615228797 766944385 659865071 239902367 845108153 511151469 838542979 109853331 803388243 316769703 783620055 370748603 135801893 883062623 989327627 317314607 222427343 587317457 643430529 701048459 982772153 596588351 584844007 86273783 479851027 828201457 32855087 934801697 592040663 268931387 798960281 704430143 246249411 408788345 973265829 603219471 42145375 961499657 989869347 234021337 490244861 238554201 771143715 855958375 870457781 284946651 621577733 635565077 841168231 771689991 688515436 72341947 714446011 709054303 66863429 74671045 892742433 254956657 62270403 810112031 313372625 70053835 330441571 230457917 280200395 636782091 675680231 582138913 209756123 180263631 317111647 360309071 292901259 867128773 491119389 790076373 528387641 940229021 291284669 447745355 811457283 516493075 717604133 867860941 284234959 478303721 245167487 140834051 241944401 414326249 323572291 392533275 322341375 892052451 19060265 62560203 415541529 954178227 949908789 991997265 89767081 558380605 31749561 240279925 487333759 533532777 60916035 623074947 871661617 645248041 160689 160717393 109724707 439646841 339799081 638870847 172459128 616790875 274817559 543187763 159101735 699153113 736098351 258504345 277437923 816950275 779872619 784611691 628962093 229501431 410523153 234613797 538479949 788215507 763563181 340185803 973281623 70320325 706922261 542222833 893839903 780780287 980318563 37225897 943249735 740551353 485634299 989277329 388155959 611639349 859300235 953936081 753160993 154411457 497837575 263919383 775794681 933921963 407665577 354151835 608311171 666931281 382877433 475111703 59703879 781290259 707424959 911795155 189679507 384413019 823771411 137433759 226609793 953631387 653528655 428654033 335227633 441335887 617064985 646387269 630592139 442032889 958634075 773642849 666239935 622186785 696932427 803929879 224733893 264688733 166818661 503578331 595593375 693219397 827168365 831677097 636386835 726718329 160306799 30082315 815307443 80816295 918736831 244709647 411742679 37129089 405468921 922538824 828566431 14960063 971833859 553645271 768688115 155550245 154926345 80936545 798646657 608257915 416361341 466861847 411704519 112267159 30465309 602620331 739446015 487880783 862705901 541217117 695689013 841115273 84162617 62957813 387749689 578979629 940317079 288181937 277605025 278244399 353949663 194500241 612686801 80830343 365520699 588568779 101058797 264981561 556650001 525862739 948658409 480416589 289088539 365433239 208899195 159320793 581891409 403319947 995374371 797808373 643771643 742066097 81319467 747607745 305172641 789410829 360770467 866405741 842691867 195882287 890540897 401349413 526316419 757741611 675660807 339299879 65894461 675685535 668506622 371977653 539889143 419406773 244079733 664661785 709425829 120283414 881981541 413756067 601384579 120651261 661110669 719636145 136061205 848751653 605531511 51900067 926882853 61159127 402698353 501418979 3798219 570622943 123302549 464941285 906072673 135553171 422417603 458317345 651315085 47088853 680993699 807887643 92807483 67037701 710605989 720889691 829261213 469588503 304184579 968423799 877254449 456787071 826732731 732499463 338455995 83416379 393248149 14744235 277277511 618292689 217580579 960609043 768698153 848926289 483803325 754517483 590081789 727416911 516232835 788893683 49004457 573520873 183848029 114928359 549981273 8861385 259290107 242614423 601601919 984118041 867023061 275440083 95180763 633516177 428542253 123672435 192907629 520971633 264464137 38515549 94734979 130862971 130115899 500006779 581106355 253784321 575094361 840257211 805063639 403625945 927200711 249625629 262668051 465119327 720957099 436624797 721734613 492982395 989445875 150803787 482454735 977574555 331640925 568124983 449163521 873889973 319244131 737792379 545000107 941093703 487198801 626231097 892078173 386315351 417177655 2971547 324913129 322034803 484813291 389443541 145249643 383439797 342569743 514605343 39864393 752243893 201931533 130646973 733026349 413158303 306894865 872885239 367689741 740169501 862153239 354356515 107867939 217381223 494781407 243716249 322307063 673307453 121621485 770483899 365814099 950251747 535133591 811240947 753072971 72278823 762792945 732738997 80285245 545280607 997069021 596332409 499323337 606283629 867797507 68872131 72332257 486575283 820704213 288893725 145177525 78948641 584419975 927112985 197363395 551414059 890016541 245608785 697685967 708417493 40589919 342727783 817423845 854306719 679439835 560767749 823102299 576838553 163335915 98723551 539685577 8414813 11828655 574469037 59525145 772281603 915026447 640086067 787257713 648882231 526823611 128623419 909163595 253119779 732092461 708971159 818239071 22482561 17757089 85506593 226696885 34997643 645564453 120347835 823811733 116204811 940545413 716296015 855720599 707558989 210632539 570034641 82975125 302444073 594720261 278168121 405556147 766225403 952633263 88321931 876320607 271130283 296883015 956939473 953484365 991608231 613327237 783736861 947889783 993252837 136225771 119212425 889154341 978893027 747328447 598061111 969244641 346296233 147022099 506614097 817008511 950899649 490918845 696957195 933372699 826357319 341000801 874123165 786814747 560730835 656332131 177798731 464363049 37174929 581236215 163876959 167936059 490762027 897537811 869154347 495908237 680865243 594625143 516733961 538082723 910611037 910113709 215057243 213302345 100682741 429409029 805931405 959416979 12143735 640897685 373997837 569159647 652258099 71789375 791143003 766608591 221636621 135256493 681003253 602274383 19022951 908921675 998154343 687702679 61005873 482692437 279690563 918935071 973331169 3620297 986520099 652945069 255211125 284119153 353180841 865950797 286795891 152833499 832022655 534191701 789270763 806828129 901816921 446715487 991329139 445360419 297038577 996203343 93244453 676493065 72867335 435490387 114930349 620832197 646763367 813382109 914551095 480454347 118277603 845784749 559241079 98535519 228211797 505062595 238859695 459117703 86842015 754535023 554799523 202457623 537973419 882498883 639402913 432876451 747198317 879321883 299171201 784457355 161100767 25910043 423750559 90713595 399676417 291152049 403147237 246158817 339897823 58429073 132624061 555922423 89353867 978844087 653783071 110794425 106994975 511941223 620321929 907110517 382156221 486288173 614564353 74880053 707452046 425360349 791981847 22704343 182865609 463724691 80417761 800290297 304177061 700081845 612863227 417544961 371261795 687823853 43420811 299712547 649576527 758531891 210929475 89627989 521900475 773425087 278194005 122522457 374824193 5563415 955148675 124256949 203580547 309812999 237206033 953587387 709206189 117530275 184948687 205330561 136942831 449456457 254396175 827789801 671144643 57692315 466332853 463120541 421828783 992386183 867848995 157924617 403539769 351376959 370666825 520288105 600347637 198458177 246987677 245180093 935153789 342693459 878826271 665588681 835683187 674064509 951999057 181182499 681825667 57490967 377477189 288498463 863784029 10517435 91409809 460113631 567675835 766496077 251649873 980905805 53433441 809692923 141678123 142716693 146903833 163769401 161233233 246480051 919418805 822897857 724916599 516785509 465632785 814761883 571033561 727131187 19018507 479695889 275985731 304709871 156571535 937429685 817307389 404103475 573513619 949448297 506983905 923718489 794808075 444835659 356614987 982953359 662714621 299926477 267748389 461653189 824623221 233130399 40600025 735298479 104014209 349232319 65344351 599067089 430664253 830473327 547385909 289071729 661760971 741707839 704351075 637374881 613927767 639058691 262072949 179052345 612337425 947922899 207255683 752030681 937507635 264508183 120866089 820425193 717439235 806251387 244792717 809443481 690599879 893660401 91607393 769592545 574937555 319062455 360294873 584307841 434740097 351473489 794967219 418595589 424809523 86941067 858691381 112836791 836182869 99682683 188227373 335945141 601564503 448564859 474626035 633848029 496226997 933922095 677330277 432470229 843556591 166144133 641242343 738360593 163989393 448093359 959066731 884460743 787065647 377251373 243560803 173978615 606789215 576287935 713817039 42152555 94771397 309159029 834114871 549567155 563397645 808602785 11413927 959007013 150613223 248441055 513219765 392521955 375538703 399492627 642158211 910001879 939366213 155277675 895632051 940056237 796437077 793023835 356060019 782306785 136667665 265826463 452803197 474419377 581723477 829468987 742981133 841240359 959071231 434499449 272195049 144166417 525412349 233879793 644247649 176110603 992133183 189845887 43504969 367054449 899088321 790521925 46554369 611133549 853744771 179677871 148813165 406871535 908463761 992132467 13092605 603290289 930214655 799805837 275934121 127270705 624463587 731802433 530069483 731210167 937575521 257243419 106973645 423298389 869743525 237397745 568716763 427720419 896856031 673341659 129233963 352116225 194561611 799132737 637734239 677641751 951317801 201976015 274998681 572059477 57145543 511648631 574257033 677258163 39527027 950591353 128279395 461880819 692825481 419066709 919170537 717886107 268351085 918111705 975676769 99757821 952231813 94574363 694688917 574043697 880132681 557650805 133599 865551895 99296301 75265163 738451997 69948501 520439225 140104267 274672053 570511711 241345907 740236265 173709715 225348971 481606895 280949471 190880815 627862395 350663625 654112757 261114505 978355797 224488049 525274165 96385317 165110155 605270559 196860401 669421329 636417651 924864505 975195083 600448227 331532081 318065641 148343201 970073533 592178601 496256689 35794853 522890817 893600399 441698073 149141319 414062495 261667417 693846261 390267971 649008781 828840007 230546977 306832801 758113353 415091043 108312443 215014059 68615577 92559739 787748337 750875637 826445261 815856683 398035827 620964957 850934201 897941967 934575101 459520517 432678589 639706257 660470417 772962649 456543676 793622881 873151543 860279313 433377835 735967481 434433795 216982053 198797049 931349719 658579217 573806811 16270761 818078789 444289919 953844671 471704383 361630545 704421755 262762405 967519049 212464085 315377975 676512683 997332701 257669745 382464233 236032563 75307933 529723789 854917081 655031787 709062315 822039129 126939469 974201543 101706167 63538127 86801819 36376321 76647415 452439981 925155097 796921377 231441193 259273595 243766573 657300463 543647379 262132107 254900543 497643907 880358917 284170741 865468353 870750775 663256275 487083417 115584303 160691375 647107293 883911967 869792011 535508955 347561865 784687095 402036957 500046313 529159875 509245785 230420793 491876187 424271877 516259141 60411067 676990963 729689417 363182471 711492569 362955195 320329753 14800043 993352121 62506507 749690499 426328841 456248725 853174399 647003673 478342085 157771597 138671097 500502783 236519363 848265379 963269029 301901015 747325111 557637477 584976377 931951057 527275031 174204513 462069681 90913699 991399459 5565557 301484753 482620341 602788581 859424127 88890789 224873553 269750573 369266029 515401153 464984383 210530195 269250353 404402947 346235185 996018549 526091203 407194253 307361409 516448765 984559397 354066893 146567957 993859869 904419685 731565941 991609695 603438219 68150161 642769539 645563731 288703687 256702151 535004477 781100909 889823259 712517927 206785579 776602039 45126549 743510747 329152291 522913471 995213327 523370773 880817731 593064087 899415337 147261201 299304687 686197219 847256139 478447889 514875089 121800389 608885670 636963165 688587997 589353965 228265265 987514187 75384915 421428113 58417581 48160305 529379251 366714993 29470627 91150965 219930061 840849615 844725345 281410175 482039987 304962429 972562177 333372353 422978241 860586191 221162851 52825527 5865885 957495717 306747695 442441443 296876337 646998629 158401749 646103503 288462003 116219389 156291213 494568971 556026783 566421217 128701785 26444597 946324663 206496275 972876799 258741741 28748555 805231127 129339921 828982493 598365421 848217597 730911463 301496759 1357563 616490583 128325793 837311031 249842967 937851465 629337383 537487135 929656173 559991413 910487847 128204601 915925365 897667083 920878879 649588821 686649575 127684547 609837129 780416081 541965513 587701463 79934897 165234189 424391783 132837903 970981671 65451635 610548309 83812539 939781699 613072245 654884721 779986353 510482787 338780943 866306525 629902413 464313009 540616259 472350727 190257527 397642527 101040155 228876707 233465499 141708131 465927335 513114795 214784179 75870461 758335493 204487781 798229307 981929783 459105109 637794399 498455865 595636769 239668161 852377961 218740795 454017425 673317243 627058339 806940505 21285929 150331585 538204785 124034097 118244947 429873359 109562749 499662823 96613179 803070709 365837757 902751789 941069789 711008131 664936299 920310837 177414135 117741777 346741775 323292095 156747027 140871237 693449587 818104339 929922431 651345735 265856171 312951549 678247765 831158859 513223443 262521811 746993525 340697033 946101073 207860853 765050503 170997061 42700879 774855241 329384443 275602505 775250499 141536061 722910475 888072037 835450281 306220743 664510901 331845943 33385029 725763301 437804481 618511199 784622627 149032733 149868481 989467015 197974679 621111165 890057741 372762211 197502271 781583773 698146245 763901099 354202877 83970943 715072465 112998435 234237695 286521115 816478689 5198483 93326775 40196175 734618989 672291537 490406883 961684713 807513783 248517557 634695047 683180841 121956293 649295649 201997041 108236503 298988905 134094591 757301169 251926591 966312507 690678339 850327975 158940473 277142425 381847013 748048885 553640481 457324719 625986025 150193161 36007135 934670187 815599191 395461271 292911073 710503813 727711813 469882521 11404573 629946237 657514699 52240983 737314575 346757021 365083147 115940953 50851779 208852213 210353711 409799287 967286721 634913371 644024427 364044491 108792099 389087603 862292471 423550651 631492231 899332001 586235159 575807985 649910803 931635479 208522261 349302013 209191027 241659855 745350209 883653197 214307807 273029769 90035449 964756275 951230231 390285257 354855581 64961761 791170141 515167973 254675865 6689643 811459717 401192177 926814555 432667949 35313631 972634575 511574883 624235981 211825997 807390503 522607151 834369845 88425781 504242027 218193993 490735773 738696325 117834447 921487175 15605629 379804083 53812823 46410433 821488795 969506237 736871115 839757145 220340483 248338219 719062457 718898105 778284809 802667783 624763 671273877 906146123 84654059 338903857 114833061 436689323 8350965 587253187 593024429 955712599 561907915 651334881 9809271 862798529 470717081 41082117 402818517 589124777 966036249 962253163 913146017 860002575 944657797 646279969 785755837 622414657 930263719 472525299 142531859 732751829 900934603 714202491 634174871 139479973 443082185 569768983 216420417 821910231 947485693 184432115 761015829 515103189 925909327 783833085 903656477 422561875 997642029 845000941 307366507 968865873 217738893 509351493 962545945 308635921 867601133 222452555 877725001 14946333 627516755 900007441 530332709 841866829 489664847 380954221 280744929 667557563 18084341 602479875 289738935 610169805 741688037 575673399 100916711 149428783 799589189 36670781 326403261 576848339 728543937 468709643 259123081 300499703 965446803 322762593 240515753 974036765 804726901 39928265 54220669 24165397 287100337 25460371 593415537 137278707 322403347 145358805 831184629 44794127 849214707 523394161 80029827 520318737 818272815 487265041 346203039 98722789 101453099 819085089 814133203 954453437 797393879 796144605 156789169 708584727 870920105 426969923 793368019 283952567 677593759 942337821 709634011 690638763 657262655 781510137 166875509 516324419 675689625 866994737 102328655 200278815 717777729 212409061 642540073 995862817 222354007 848235261 242893249 292085623 206040449 607150635 430936547 423462549 930873579 360676835 430907233 228091701 486675023 987752553 797873429 914816863 308969449 100867523 728525025 208122203 200431487 347005637 701300399 490604737 187363167 170451459 317055347 265364331 357608289 981368029 835056167 544845439 805097441 178160767 278989515 296263527 869528263 902894807 705669483 271599321 344539265 384479135 72922905 782355409 333590277 691775827 408126703 735123089 674967251 602756673 930021647 706714025 358974445 237533043 719555493 808917739 836461285 672984519 856456673 401256565 564310479 343247579 257541885 605161895 268255563 720677909 446707005 574526003 338216831 406771625 168036587 424499977 879994137 61027213 239118169 633118567 667864141 101193859 744892385 171801553 109867997 856562449 381438695 142337299 727568397 492333705 979570897 227810115 801725355 405328385 296431381 845637305 118601999 22352731 843200813 223979293 971593495 160903233 94544793 594912859 833942055 508584735 227223269 974636967 604578607 837600817 172106403 721234555 159718565 695477367 311317101 134279581 537168263 954361013 470888165 237787163 408450653 343590017 909150903 873301061 223352883 110766895 309598099 788455611 131774367 856058593 767988019 463896417 307036097 907800449 377091165 228929633 530893631 448798139 637450199 640065327 254054215 805351435 586619765 103773579 731771533 43134383 104904977 631255669 456256595 285233071 822883213 512918333 34932573 474758621 320419285 792400501 501695227 553241555 825405401 402600185 691526657 860470763 584292755 223068911 895958477 473838163 916062217 558183105 541471049 798296058 894237761 504228901 724727263 53218711 836263503 616187159 894840455 795336363 781945421 383223003 913139391 757646973 169991005 358247165 45310351 650692383 925081771 285594193 867090051 647715945 790452327 965837301 236664497 845618427 297381581 289430603 434888633 676903741 304334109 643978239 194713281 381697631 163365539 154132233 306137463 207741273 771746225 850259873 827673873 607241707 508278945 990901581 174693197 382818209 409141975 830155737 967588209 213082309 396559289 994956889 888554315 858662261 906482621 33075755 112555571 861054095 229720925 751991283 540859399 117602489 532885531 276714137 770870315 976149863 605721471 399058519 212345487 895427023 339675165 634279333 844422315 169011185 104411279 867448907 173608057 867994007 872184951 608776785 123655555 72443217 7880065 280051983 986377173 120430453 113194589 679159839 318504709 697454885 469209031 444922471 968012595 94623051 506880383 991627537 178735109 914955155 45939026 130343571 475971497 925838201 967456273 561758631 661151701 882759483 68348565 796756565 59122887 418845923 333994689 242427111 722090565 44774719 211444865 516039921 827221151 463805675 225931973 328233551 358795689 395487043 361709705 739681831 344497089 130238321 572026317 308707301 982788817 45799269 267120287 240163899 887422787 580117721 523953165 612311591 95635727 839343691 828278067 365217261 73122485 832310787 731369011 42227737 653602872 200272659 699034937 365911167 779475497 930352211 937900405 220704573 522761371 518448995 408513571 86740405 114574895 863695275 640792965 120226709 649379083 895074651 290495971 138409935 900095453 686507627 402775697 830118305 774060763 584805789 986211049 319063951 841437891 961220471 749907791 781791847 714617307 732685131 799582763 523036729 707259635 785005617 77031663 589409125 535755359 138365961 642267415 239747983 900717823 101260409 859475746 11111073 742571319 15085557 870218655 295785423 180624889 49580723 305195039 734805145 188431287 869977525 870500409 308560833 99313011 444391873 937912467 468328017 381628335 867832425 901043667 751079585 164566911 581047043 909811633 166627147 698516851 908562867 632002017 467648053 212504751 886466141 201719083 463588233 582517717 459908021 411159125 698303165 32606739 292550193 492138293 288233357 626558499 866152209 639665569 85674237 182775105 892858719 427945085 201996377 364396085 891743977 997909685 895905333 842467401 426035019 678317115 652820845 848791641 521314529 727394053 766792743 880133565 459778005 899358747 139279567 839323489 281450775 14470275 729034519 906796207 579074913 246529107 307504381 285818017 492573745 345278881 24092613 434414257 769704657 822656915 959062269 410426857 208921423 409554769 628132725 870818263 412543365 641946893 921151053 890561421 631562771 647703299 794659815 212547759 811209057 493324915 283920625 512877663 164983455 706920107 265879389 445776973 135881927 717342201 51809131 926515119 44299159 824020665 560031387 153908291 315972759 468005455 591070397 510481231 502143001 524806179 632788193 714695843 66087477 875668135 216855655 965660051 140722635 774236247 531196915 530364415 918385027 235245749 749129839 486668109 637761741 575946569 961330705 723913065 22773473 388856489 384148821 844049869 969804223 713251179 773743101 944788083 631456051 806388021 716452377 640677093 580731337 682970543 261478139 427904303 866240473 803153291 683227711 781158121 533477511 888139141 703057099 26639921 928257207 850027359 8152009 616066219 410207261 816996065 499912625 211564679 495581231 457404639 848702779 551521147 247561519 161958453 256338029 55714245 398762273 651096771 279509395 296722731 427653339 142576242 24542273 399664637 664433395 793181751 17486419 203982353 791571143 954267403 14676721 417289667 678703489 962445553 575641985 593678585 178367251 170189809 769491133 694465573 558027571 509734177 692731293 593998137 64229985 455578519 583727719 963463863 866462951 179363193 794845607 700312227 40875475 392665839 590913843 657212299 423217151 331800363 461047589 738043271 937936139 838777705 883160289 181793077 716322399 65821163 574178837 997580473 293819437 227984633 857502645 70120131 552750697 999173097 502864635 638177161 220471767 636565009 324150895 279153609 261621503 337593303 314290905 699122123 938730799 607806371 521632337 922248283 185720705 261999337 402942257 825393615 843806677 942367009 837177119 464897799 78356435 355664591 875651589 385625705 904781803 571115131 561802009 555503841 93105237 995406267 59187159 170048745 370724883 50530853 909244675 578260349 281536491 932940895 59305 966294307 312810863 294131985 199175709 653214441 886328311 703700973 278821627 786761063 70207907 349018289 905045545 297123771 415040091 976749081 946171347 474460297 48133325 496595701 818044779 272577793 135668087 118908179 89905327 683083225 987941267 557990481 364059811 847689808 90179117 580275599 984105107 488241963 820768533 741341623 949950229 773906873 436742115 43038395 638668035 102505681 317455605 268207257 701205633 636285391 326193783 90851405 206490109 914145177 700145493 372695783 990614825 468926881 430558283 491676791 964876291 183978203 974260951 367937301 678575569 944895685 806923843 91117031 261855771 74781797 981456543 228550165 975748025 403327305 198896577 513694163 181367237 401354377 24398923 93269849 964933795 507542467 664679079 650494955 119159553 385829403 37209089 268413136 810375379 330457921 25096533 511998049 472251477 393781869 213559393 708740339 635356427 886167385 293877935 842718695 907406527 628794191 707408013 908327085 704307849 775328795 450960405 325996977 165320133 922465555 428942887 505846129 308165395 494151703 946182507 307022191 569150821 447788173 36449105 48126773 72649451 572939363 273933587 93502803 371299875 522113295 414443183 55836775 622145745 865557645 844682221 408361489 21480193 362894441 398363487 331347451 673458183 828649131 898527581 707414745 800628095 194401517 598444807 171496802 931065935 991109453 658696005 806173021 847346595 622820207 279071687 500626577 97740783 166095749 731686917 32878543 916879853 378794817 62586945 449802741 9405859 462717155 430107777 992714979 925533533 661152819 46848407 31885199 467712689 695402877 743491611 881908169 602465145 706301081 77158763 565749165 782931673 471732195 785005235 445153331 964883519 673664835 538928609 472930149 869993053 842919717 184157357 936502355 945844787 358067587 172463511 634554907 583859713 870930137 380831465 383592669 97666647 216199981 228033459 124499139 794332935 353492239 593251531 250241793 121026093 187949715 679523285 289774287 417578799 333359193 511072309 867115633 196452791 190843013 435233823 191232049 154522811 905106889 170064263 747820897 218633079 579462743 89937715 515239259 835652717 467699953 809889189 98990209 729480301 800568793 157997619 934309693 362684297 753235425 669404145 100864771 795342367 449658207 647087297 994961739 991212497 83479855 967557195 300081817 511246987 266976697 292262657 602941303 39431555 361466347 912846103 566232303 407145013 432712763 934234513 866166321 610040165 500164519 85456183 958014027 990710303 433038517 943023511 366233711 155230905 739137653 277645835 589264459 294253003 793112955 70896307 120712607 101865791 165235431 460970359 979634985 871001403 257586525 272661767 849148339 450553657 104257039 923736029 953693459 866599153 448375215 42919733 450049825 518066027 746060159 573874717 106177215 445379567 779962435 616772193 435577559 20343061 247934793 756142491 676030813 989393847 292333417 538049577 867215947 604386809 324653567 341723703 809958049 547349065 332781555 985863859 516284267 194999387 368172723 220998229 841618617 681536043 564346165 249062047 944087721 464733435 681505015 13905623 427547227 688221275 922709759 429629711 923064059 192802077 800098013 836977437 441847479 736360029 652864421 415155621 484012495 19611265 904342263 418165003 244792705 610894387 396837880 772028035 667509017 726300009 355020375 653718275 59030761 320182879 293844811 269861451 261045579 620379289 77810831 187453413 931905441 149808099 728867181 818717217 506255701 654286161 298975153 651760917 391319771 806849600 232411315 736248739 793541803 513268565 632840271 263933045 397707337 159077241 284049901 630141687 954552639 826087141 442307965 331922021 191293471 377958417 251361905 493292733 785099651 771988163 3222217 314906057 993050893 412400903 257817099 174467607 558353001 178419763 579534919 925259265 78615111 841895393 810541329 483231911 818356065 670917877 776718473 860062961 557292411 134858909 656333397 702030993 490322527 800391499 631066273 671080699 355410655 594588607 665319719 694571635 109898197 281629177 107304481 336882945 39345955 216035401 784251225 28781427 217240245 507490369 168344349 209075299 653537659 901500349 552079167 744040751 444485231 377438177 149850659 315419395 912351125 814908443 846250923 51606989 691384567 361392415 921368135 938834247 428807591 354477545 209531885 195474413 388883647 187372733 403649819 126692877 240362081 683992615 192585689 497129137 923961529 26596347 655456435 957785783 383502071 780620373 262188991 46426045 79664213 724519067 925977501 86685993 128584985 427331191 279159411 616181039 497371017 504029409 251556077 713461701 906673913 665546513 57596229 80360365 520808643 11984268 124886071 775094637 517112649 9198369 311123977 73479255 766264565 925300705 589954953 921402753 252947771 225731115 412147471 42787533 157917077 227913633 148420983 438476261 256666243 241840177 884194603 628097845 105895057 846018829 383243029 58815737 919862097 791272371 555573677 154533937 19464797 507115241 192958961 380639137 80730201 888801719 686411369 280621279 212008939 647607925 443901985 800282431 293393097 852795837 595383215 524269283 964715693 585186163 333540403 435252149 196218967 64854981 615834707 606102113 701440147 326721575 390423357 961704803 81067315 686906451 462275493 498917369 552024593 288152913 477293773 56032043 950406159 112045675 34889593 647975629 13405721 484771381 999288569 289011315 853237279 274341259 951264799 48353919 932455965 273791633 197705295 560215833 462298898 51275191 825720939 235238705 800410125 125931181 336252901 399261055 164075805 850546033 856038319 362135429 856084573 848658759 802559817 868219017 983473905 162664377 711739835 571911837 232999423 815274913 239679633 240796569 609014717 945122837 711518433 360010781 887732325 748127613 941951563 157344913 53414711 169453189 763132917 300092453 420210047 42167071 709138435 414458833 90650001 403514761 804390471 953184085 138189251 248557895 518368741 952314941 791363449 209906727 279141803 212218067 606174751 967000377 656711529 493206325 453483045 121381853 455309939 109668417 975912453 717926581 870500521 249467037 146592581 923476655 719625583 862049213 233263979 423513087 798606005 904197335 957464843 288234783 98757617 121745387 242158783 484415957 406735651 35598531 943528491 77584431 525887439 502162415 588226805 700343167 25132547 559229893 587330517 465151329 934947669 815208295 6053247 844864185 902598629 642532287 492067259 856417973 175791449 896062073 337193551 63542729 639504863 494748945 812997647 899377841 756310317 343663045 538131413 550304625 249652097 428811935 69295493 707538515 457755809 135340653 935013637 545835247 466166491 54115787 637109579 244872481 370128391 790819861 867768657 42039819 664366723 442076277 623853337 644405529 137817141 865927387 849027243 443694337 651910537 779071233 678439195 602311871 373843063 500673381 618448259 597195927 551540094 870729807 764429831 927729941 443656355 228049617 900656847 368601103 792286837 878725059 28705549 508546973 454747403 856822469 546533371 509234983 938262273 647123775 11302367 49102425 5847679 929897313 613001471 839191589 568840243 793352995 980795567 532070859 908019795 65063751 787793483 443057099 171327901 830108243 332008497 904542963 336783959 772552601 410254031 529124185 784826193 804262961 933200789 854086999 50933983 759038971 468248063 993229969 604298209 47478429 838520461 630951157 146764475 818454667 737530317 890143671 8511583 285339643 773869389 746037843 272386879 388884975 720802473 155248011 57841755 168259373 358486661 383318639 632812603 210849095 784249225 84951889 213925355 745123219 490600295 23696077 935539203 960845365 697424859 912553159 452256159 36659473 338807205 773954927 244917607 908258011 333132691 19002421 316279433 588006921 773346675 978612951 806081979 500519899 829572385 146650711 732138555 854078299 715779969 529635333 741680849 489037911 334148475 59915891 717240519 365595243 877438209 953504383 743681271 809485299 499898383 228820555 761041599 751438105 383040933 96423491 65936133 171331789 276585681 459929631 565003061 379292105 795923873 335629271 609637449 712695691 222881841 360051889 950595003 734184285 116242853 568744505 791185045 670250829 5549861 349363525 292335203 510602037 417798883 277571309 276816445 469712309 110744859 500069787 730070463 213499189 382076687 496842741 814372881 776568549 721668103 987790837 270453473 5884351 816370263 300305363 505982309 158730113 343948891 984333079 899804509 559484339 66549105 827808649 501637131 967927463 842191623 267776065 652617537 184196213 832917903 218739865 374869075 590547965 847763841 772300597 942019873 176403943 218919519 755652869 549826831 101296547 551777207 728489527 370592271 893493353 334352407 945293133 473887123 500847163 916712987 539437065 668634013 853843167 309078375 966509687 531190705 660360423 683209123 782725099 431409117 239732905 451619201 21223937 464774585 737593161 830308285 295046047 210305377 790908843 48343065 279506415 684405887 132711811 330863709 64817511 519750461 979980871 262790495 80222915 681268563 357082169 758324213 991460359 293377791 920445791 359706117 325685631 337561095 293563529 803152247 15176383 346849979 596361811 599734077 212364197 422333679 210416665 860444755 119451987 62919939 831867653 838311099 972406583 918255837 817208585 896753789 698073603 378556651 216007643 95499951 912980661 547732769 330171899 72225895 936148371 207838721 994003379 518036427 42221861 24682383 315644433 630330627 111582528 306551385 383567343 80785731 535659013 611273847 325123309 563899331 876225749 473306757 830855283 744467653 682604379 347158701 764310195 521192087 815123595 510100889 256712609 304141959 96949669 516670337 671568385 321523 57775913 71223587 843075675 102693177 185917927 224628423 379088893 228937417 285032433 953327415 914526721 235795983 550283171 705939663 911168071 830139017 182683299 8560745 204541047 155014841 12246747 17235053 114518785 303980839 940023681 477943239 344073757 586318185 533880337 498626289 621865676 457790229 610003277 648490727 482972631 464565457 103337029 812602415 295707853 364195141 385732427 476386775 59608327 573712933 217318141 967463031 495395493 993368873 791599421 374406957 57700239 529495317 604605495 755031709 853381747 762401969 148394851 679900151 908209103 11236819 580800121 364997105 16686813 65193041 894957695 225167305 899819177 252224785 404929729 681291335 410337027 876025595 184402387 311945399 862116739 109615619 136519827 538896367 427064967 873711137 857549603 202425679 110629947 882974297 121544177 9659837 110495115 786052019 101928113 541569191 889929011 860754501 950524765 959359747 505368241 82704421 235495227 859485773 281976143 823185529 850616281 263935889 442192157 655592041 391986183 132162135 711720945 827322921 743571685 751508921 101054061 305890289 885690071 563130197 763370235 843855109 64329351 113149007 402154695 274465967 122940907 706841175 621322445 292674367 989983549 631219875 956776651 740233491 322614789 177140467 585324107 598813067 546018317 800090761 262608795 586928145 110866537 772934967 999363285 757275927 268454517 58056275 616466137 652855067 898683607 116830137 813124687 928953241 310018681 314504913 481130151 444778017 994786193 560149897 517436187 853062979 303219867 789073749 406858665 755564951 88303963 755091511 982830105 189035715 337522653 828568499 33758461 742513265 539138933 848035289 260561581 418058575 519621569 230622781 97475145 733365787 834708899 983435007 506431161 160233111 169380937 328386499 729059245 807995533 961093669 240127673 270172317 288404175 95993845 241349529 366816203 592177717 32752061 32925853 442769213 384501925 47676875 90448783 296150469 148044807 558281135 503947451 329874427 445937999 503718217 563251191 750835517 365742453 794839483 185003941 867605175 711670909 797641843 619560869 265656919 224488049 454763557 929533547 716824021 328163427 40142285 412593643 501296049 786353515 468097453 118776995 54774325 600979375 462313045 496239769 120285809 247373657 807441301 123493981 625795899 723961239 111228301 280667651 660057143 674504105 250908065 735469611 702708937 274706893 479587707 391771897 373010213 64030285 896250385 460968733 454314303 457777791 938755743 962810063 702469085 668400571 815514537 380998857 269407617 474384483 126639099 836080469 541846913 24002273 762513321 92725567 214842609 912966825 194460943 889767135 608819123 5905715 183544275 411912977 266644847 324281603 181016545 151480381 813008023 649381027 163121771 183801681 909576543 311355813 869823727 373660867 241550027 516805537 777545777 472231313 536634275 831851325 217883453 767990337 272272757 399742755 789336679 782944227 724659611 182666499 503594061 138221835 168605749 164049559 849847505 335693017 15840043 266142371 163453985 187251185 41640749 515742193 467908015 412877189 932704949 442542163 632378683 966707783 411723007 659396513 6090181 863834489 601746201 948111041 925295773 867609053 915802831 925061277 525270611 757784775 909438395 458233637 874002375 747680519 81928763 465352787 330252061 663268353 516699259 733005611 847141055 204908695 396537193 866388151 88870497 264428089 666377661 139333385 38996995 442298333 930945785 929993785 844126959 286932225 685568611 67331439 302590615 276908715 581523469 626965455 818802155 195429483 984251341 744332175 574491647 830644053 485530695 594719463 375765811 67023625 819237343 898794779 464026681 44032683 303464393 469373813 166510849 853499885 170020603 565844039 111545801 456728577 633077045 397784043 678202899 798654121 511023617 528716227 446990767 23293737 627081647 379661625 182535601 757039439 939185237 161709761 551866225 753557619 849515733 502114517 358875543 756590705 763547097 778702581 241329935 624650417 171290829 484952749 815165963 321782049 179889389 172194959 565603593 98751799 191255095 632938805 501645263 673295601 821986933 658358849 800012901 417915863 120988213 343614813 514654753 877301749 981242321 891287357 21409953 405717729 487988841 476881561 16231623 169670331 433884901 820939575 34331585 965344039 107080439 553317597 479325699 773823063 652780051 832028765 905903686 940071423 820188285 618870421 141342357 267602523 19987005 805350759 970672437 487478581 580306465 274715833 78582207 142342361 193149123 498188161 640038413 460379423 76958081 493546167 831594309 662853733 666096007 177557601 760333521 367051407 736627907 38996101 885559655 575109133 473658607 520870967 498564099 541088469 227604615 115491985 606996711 52636517 354336729 172145077 932602531 429791685 798718961 523149773 107837193 720978561 963207078 408522253 6401591 894060463 295753887 49024943 148532621 173205487 992218685 556520691 292659901 51234151 114484917 420203045 807662263 958666947 42786301 90894487 457423033 369727037 927565015 851645859 107143495 329316497 427165129 261968299 87730989 734926341 894865445 934623003 82168448 564887911 332564737 553989987 717431707 697765135 7168575 155602941 652786723 307100121 615214473 761888621 720772613 217148975 905471821 964389949 89107573 703081723 243671489 791387135 838011117 688008373 742683627 581077583 594509363 658298971 984646797 910141387 306392917 684184181 683136759 367750943 455041699 846773261 437118799 555205631 833181885 827442111 596376805 669548581 625672071 534500005 725361129 396144721 878508843 266937703 956941063 106433871 10179357 248581425 926528187 893773041 793247005 312095421 446166083 60618513 292057645 417625927 512411815 438917779 457425303 68099477 187008443 864645213 710739443 780592373 414594835 369313381 626975259 243933247 470762257 664030373 755166773 377208017 956463581 550122525 781940395 133145999 17771111 743360473 326376243 865573353 58222439 2084843 595340233 297909463 584604255 348406383 866558385 483002323 825817749 931051139 519694967 287393253 16471579 479838037 107798767 172427421 894650057 733633301 559725111 731763985 190617407 316653053 710777521 300646621 118337509 825908051 878326025 685807913 191363563 273882717 919077687 870144419 756501577 597532015 364583795 81113983 750000321 553997027 915469635 594411647 704523481 474124315 451730547 809765863 688024801 779594371 388423193 657692551 267817717 280582283 179827085 754085043 348022259 664088239 393931129 655963977 6733441 927350383 573461699 476055219 865519635 992539991 444084645 283116251 419739615 968146425 627851929 921371961 131426789 391769329 471007073 674529741 144998383 832132061 655189003 190397977 628007053 461728363 823532013 24819759 906249749 711959883 136643233 516722085 428183979 518849335 303732493 978865815 344928307 331025397 401067099 607494317 965367135 449811275 418226433 715933205 20601512 724111885 119695291 155034243 269418575 445656341 285180555 658745401 784213595 762112583 441334721 121690365 919217051 885041547 989336815 259659545 370283691 377274323 382005745 424215143 566573287 382703129 834670573 621959493 881085305 587535970 510084687 528017303 801009233 524792503 561502665 907975119 873924905 167601193 762067289 79588319 956208255 590882773 755979587 91972167 961118875 776108505 77528083 920182543 571296911 147406435 224581533 480189635 948872499 523343523 112285695 165843835 933034023 495112149 816220315 926169043 333745363 373302329 163678495 520352243 42940775 157098523 604404861 204505225 574545883 459530447 181883379 461531083 889814769 656711083 962012679 288281207 761281839 306280723 362158465 307819731 7136231 137974643 335703671 772694959 740509233 825306683 179892039 218981215 16476653 827099367 637591957 209804993 766697665 721334265 316911435 215476287 309374753 288760313 877092255 354305219 102943555 116812923 872741899 926399175 784273961 611957531 396773207 718605125 429416089 46528119 179726987 329137863 833699365 852369213 802789887 454314073 259934243 296687901 926886477 827552403 149693111 487303635 627664731 192151185 794793413 963680289 836458835 72002811 760832001 376206543 197166507 934283519 700688353 738034609 742609439 164142931 404553893 634791073 235600307 319226677 250988887 898568323 959175091 752591211 708368837 356289087 340132019 290045765 608550795 937899463 815515535 603917207 865465605 187399959 422870125 780689857 818998365 130018609 716422073 439477929 366893187 21511453 571552037 269739963 430453809 186158831 605153967 289030639 286920933 28889283 999416731 481467589 617061353 624206775 336533879 87153473 130860875 153153785 255825683 554338033 383631077 428159673 60867983 546492653 948938583 618916147 891871053 696533201 542855945 322147241 909064955 238725061 702633259 684446563 561500811 939427191 270497975 219572919 278200893 315269917 112505195 894334971 501115281 477668981 157180623 190319765 703630935 63211207 177901365 102518765 664638367 389687261 537195189 964141173 402112201 534069011 45012015 436285097 497419897 342101571 417535051 132775945 902491033 825071315 414556281 386031139 415626335 34465461 330887153 275003269 874108743 537112923 388502709 862664909 898273811 273136327 690628235 980931993 61771987 970626685 324380165 750330775 560172249 307531403 76109176 770781561 696876993 552540297 611297291 116029431 379818609 413617299 205607583 998928083 266956821 407482449 415932137 187375067 574726431 684492273 162223199 521565149 117258317 316014377 552380739 547846071 402432931 360059961 790465947 402521927 198658925 639187683 71347767 360047739 734271295 336853881 540137395 490702405 440317175 527870415 95244139 629164445 209295287 860048453 420958345 190466181 577224427 453522113 134585599 14971659 895195467 714592175 841087107 889824317 696805839 646631177 111347093 823057209 680386237 820744523 267479167 997570589 702626977 465133691 104932431 778601751 280337745 113773351 842745823 295230297 99172071 863472999 336325839 968995867 728618695 258493911 18204807 764591521 895610015 175651487 87285049 179591731 842310499 832796271 626454233 169261351 102691405 177189241 398867499 818185171 191669221 592683133 782424503 797695133 302594293 173459905 543510219 208083949 893565839 542992405 747029121 973091637 463012373 774508495 592535737 495685105 745292837 709862347 894097179 643860643 485228463 560499823 287199767 880114645 375880679 68866221 678487013 915590935 119097417 865861369 421561223 659124231 181909401 528774223 737025989 57258307 957614307 933934393 588915243 945177979 52796539 475196613 690563607 301755995 676687101 854502791 835005863 982566305 754624591 322711197 147559107 610736143 765484701 682207409 378097177 274080365 873285977 138650349 201218087 997455505 800275009 859541513 258105383 965716051 170945625 674446147 871159589 918925971 738558189 42948963 401820913 859383871 291512467 578498485 318573859 455818057 141453861 337341711 703088153 270473641 83435975 853741265 11354111 525421155 801147367 70346209 523280833 241842817 201020983 553255341 514168859 505869843 13091509 360217897 834715275 699502903 463810215 707813335 621154395 74086669 999007637 350185659 764113307 632895167 520397911 146616677 758015009 108980863 858962439 607537385 847174799 865716361 370651913 129258213 331159375 820853791 970404365 126929539 578951565 154623115 964333313 865910637 446317125 469620765 903375399 474508507 313772853 912064819 249871105 555451021 267747815 140973357 55979865 929304517 233557673 771517813 687310919 470763605 872341397 291667071 680960295 911452051 158277515 462738627 741138585 425344859 245060403 929649605 13745039 372590357 603206141 710965517 934605881 548818605 662900003 605043505 629496085 740496797 741002915 392702665 475677671 724984801 683363909 194302839 920628923 576025343 545849499 970189541 600286949 276923143 436172797 864790981 893748225 914878861 296742283 862669013 999742711 209009839 698776109 680567251 90992877 123913239 487665555 664739465 107962973 90275823 351955253 549940685 398442495 795272687 132490069 198629495 1342425 488824407 561409017 241926249 69348919 329072361 140182515 887677325 497132719 597294585 968834523 654880469 106909467 956885847 12206863 866881855 870519967 728355173 278796475 64101065 971780265 146665481 99822797 830301565 167916525 813396401 153109245 505792113 256642405 733949523 222158283 359005885 254353753 376421485 253041025 277238403 553527377 615430149 531173679 901073901 18172965 339237803 708066219 599124015 919105775 927083891 606038169 354327681 723469333 646158331 591152989 358699303 181184833 548262253 742601771 370306155 517746025 919893619 551544567 81809309 169455561 757004103 268615303 638340123 886401251 480632995 94993757 473179717 861913991 644758737 574108879 458379397 147633095 204918941 556266481 559918159 278362113 148569183 556801189 845482267 613691351 267288819 613962899 978584429 460451637 659068609 266578989 282347983 506036049 381993143 647119783 883805651 602885031 866169163 695065605 819294995 457314555 526975867 840180751 775491121 460640347 962589645 346349395 836010455 874849303 511540049 122253611 551254969 403047119 755634843 644046263 798710159 525754469 262668489 524541663 277622301 463400199 401207429 600070483 67599405 61041191 244762361 569425293 711076753 287283075 506635487 211591369 846027299 830679073 551779185 921367573 288635589 943024457 925194105 133292349 60228193 173927827 850662467 267720667 632835307 196384729 536662183 355632205 126011995 346575935 198299649 824763583 197959605 486506803 25256249 790825503 273805315 152445033 797308861 64908581 654752087 764149213 910118531 849180499 537261003 238601425 370341129 433433583 866040449 932341461 803549783 630351627 703811235 659817147 357665783 528935549 793555557 146346399 471500549 409528553 809962495 398111207 196847899 335993011 394467511 204475453 297060703 958229263 826157521 148214423 468056963 794438387 674614693 830148913 415598777 540274719 188781195 698413455 616057539 947814941 567434213 141249917 366662885 917755197 708067615 43422735 271655149 574592405 770305705 958308515 526156851 711909383 425483005 38446043 658589843 335608125 91599775 582314659 111801717 211479715 581452825 835279667 351784647 549528437 957775101 560254467 226353663 671316913 999071461 235331289 649657627 63612705 809784691 732829633 877080995 682726995 859820625 389664273 166643617 136105889 499415091 928274787 588190385 388437035 330763731 496984731 114028269 369937625 290064113 772839 254793211 613840733 708056409 686897849 887641613 8168747 552730589 293496529 128712917 177918599 667907927 380499759 14423189 772806521 443809193 862375971 182809361 274737359 53612221 492137279 807933079 554953507 823633287 452904031 420183295 232874451 828059905 634323111 840285861 864114699 62984491 165402503 594320755 242411449 688401937 512431533 865892307 133043863 892845253 377707035 536526269 761769761 484233825 903132947 628960175 350012837 644590343 735938849 94537647 497418543 848254691 741305881 975356493 844637335 866486051 64082455 649362335 827859841 392890631 797637761 408208961 272776531 211801805 764690689 830388825 438927931 829735105 966071439 924826777 137359413 297854517 253799523 724538165 929454081 526738563 157928195 812151529 780076069 727763981 924046139 156094463 334202867 128823615 700121887 990933829 466097281 686803849 457470733 67869967 494849971 667016293 90927783 107728955 429595949 182496857 759062491 980133169 660424547 239149547 886853083 690058463 102093449 315350703 658779173 810478013 769167269 877374527 590023039 114065093 696028539 692447037 339789553 111165055 599532955 453214293 669718739 778335739 152564063 84231479 238753215 652512207 383881447 616222109 250604953 242794263 838686237 562710093 309258895 525470329 733048237 901402125 84890133 967161639 962023955 986066097 473801701 667860437 327295117 474248211 148686599 881752001 246873123 975047957 301263557 567066545 864570025 964531875 268043187 744252659 502977971 546330285 521918637 646883935 171342243 4776237 364077529 619109203 865351841 736754984 403103137 347739315 759072157 734401959 103506875 884869103 554133839 633700539 974497827 339229181 346855225 116029055 384336413 50990685 185286305 72647701 332794677 346986513 369613721 248016552 292022847 697153195 734539257 548506219 244355671 568179009 454006369 661667223 827568099 418724719 366143289 602658157 625097615 707532381 152564145 287973689 565280077 476686775 541260993 238658381 299092827 98700471 314462763 293752323 422925629 881678617 576619893 838543039 173153473 456257059 338787569 521831655 760490231 6163877 671129269 974442225 605465407 122384115 305212837 565197655 692908603 698053099 448454245 118718873 744913625 508061687 935377513 649603397 33587533 932545281 711787751 930515177 771033617 14950017 357553119 694784289 520339691 699599989 206291227 112540047 119404009 336064613 691501355 375609823 353347165 62447709 322904165 547693761 822835683 549738997 536345581 720244465 586194271 89502025 462440103 289021999 54947327 673892353 623963717 420712519 319486007 952343625 325406785 111357453 63722179 213826523 662249177 424489559 519151527 100009715 346911767 309071113 816082735 715244887 199242953 121796623 24222447 767696215 484851595 718538841 831175875 799365319 846846905 581502691 305863121 122632711 200806525 580104621 528543107 25331963 194863559 45406915 381536399 206708755 700246353 355302201 65762801 301520711 640831385 222760485 271350765 111516945 928568551 436465579 826231567 688023419 755961933 991576567 442648877 384485137 406762659 527614521 445544031 905740267 193264009 583057837 167365645 246368421 990144103 605446459 528451043 787943783 891066733 876241721 654657237 140655839 247099539 755120365 195438621 836286787 516536475 972232971 627793985 350580047 353267211 844734967 331973133 895422799 224212021 967697433 483203991 515285003 121541169 231557347 413107513 132312029 499070943 549579217 55611543 317971363 48610533 550519651 437493151 976417731 577367479 430667813 508871045 233390377 110776459 401415083 783590853 403923535 5646947 236277643 447855905 193189935 858020357 16772713 66520233 889551699 366884611 421475057 338962095 103447239 85936819 538428627 445589967 199117603 376540985 154477003 928420335 474620803 631492217 610965659 281429817 123116687 78531879 658641419 138853667 214159221 721965497 637979631 100659561 87370475 20668783 428565539 789837069 188800047 196735827 543323013 242821983 599435271 142580531 154725635 552367857 980173763 667635371 392135821 180653729 695758391 732901911 375397407 806590609 524748483 155677601 167831227 352713517 263045195 822976569 389215593 821723181 140945473 948066969 820260927 949558153 271941527 680258623 218504531 402095751 833994703 733944949 875903945 866399923 462982637 787086665 434785485 6058723 629281663 686575765 577872017 765117487 38770589 494333689 659806029 40241921 319173091 245802717 253091395 16237055 521690489 159847793 48266433 476976931 235492877 536600495 693347093 21439141 896775381 734003541 483546523 320508429 767385999 267396075 861584823 135549731 262831489 69583811 509773521 615088383 510001787 42745589 196775259 744923387 155735505 592063073 229852625 338047933 121347427 760195759 570188213 117954095 660686999 756553551 83996303 834789509 572136281 604688761 179669747 58302271 837953315 193296175 701686141 953436191 789428721 151908919 525148109 291659569 459273033 643483427 922008973 228258249 63990073 57428041 591055215 719769987 710235481 435964109 158463535 242686277 529263557 603813779 617236365 852117561 916054565 341858383 114926423 735627477 54418599 804066935 54352475 510371797 812261633 725101133 395173751 375799101 830133617 861645783 856038537 629547353 963719103 863331301 873530751 778608061 888383031 38619923 489040203 373784647 738649775 630405309 935416037 481533465 184350087 678872077 196193361 602828449 361868453 174830837 865768855 268421265 902963829 568319787 675673547 207298791 808511217 842638639 954167817 725579241 629344915 332111691 177447025 700604959 635545957 874434701 48996653 76293473 841337845 375244751 320168303 256686023 444844119 298107057 33062003 590970555 705427753 404319901 846714491 687757285 359520403 739736511 36133839 979801657 81323331 579502609 929774533 996224759 431491439 449781333 169938867 777180319 112393687 516400403 414740479 330048001 993183933 920284569 470833937 989202735 416045299 321603841 781262941 397478533 234094285 886367019 830015323 826886569 597676843 885502911 624683149 91239045 633065587 931449645 334930561 633219663 445198739 695691181 41576133 782998147 875022591 950397505 176013559 219551717 390949817 673854897 255437751 771858303 399424581 712355211 814431663 53839787 346713523 320547623 987605137 756002559 511675543 520156329 349832217 879362403 243832335 547230711 335995657 239008001 6806723 153499073 29387307 977104209 626555363 405552255 568575823 849663499 262897185 274228593 983503955 347927093 329707709 126383521 865981463 45720859 886102143 148829919 730596229 907225425 652081329 489678531 733697679 775138741 584231471 488657835 864124209 555103337 475388499 512547267 45731437 907261915 989235205 21999095 640802125 695901631 374764721 408205571 701394913 866439183 334496593 436349031 494554183 251570193 176336737 140067687 253558687 200420179 977536999 152592921 812168467 600419493 939790451 642910801 213183703 261737255 9134105 969263795 620075299 848848701 933808247 643738531 391503673 932006801 453375669 493821523 251316327 114968601 820657283 696892861 518785789 478566673 4765459 2347935 52732755 618217979 79965221 29165955 910570191 72893095 32849153 668352951 186726617 995158055 103098227 567565397 387177445 329573847 724810961 792512061 335101035 107285085 921012989 301042199 722615279 737294499 80909143 770596691 732360187 224801503 515166163 579031339 617791263 279124365 70029285 276887453 108791289 418019441 967277451 665932913 408772649 820985239 524656203 885712441 941470553 970696275 72704563 886261581 297130045 52208195 862622941 367041229 211801485 771731017 910335073 26929569 42508045 572124563 209449067 226815353 560020615 585112211 175747877 448346061 868308171 734526983 867384903 370869471 843359415 101206517 413823505 458981045 982257707 12116133 788439621 791848993 418563857 659890093 485113141 322848699 2006621 393002219 285131447 584344801 504922887 658654593 887526183 122820799 619474195 110097117 588201069 914927427 160978571 866689459 44713207 867300901 123699839 758437119 291167419 308653541 478990349 270869763 591531575 440983757 160758101 415470671 178613105 516326893 288079489 926286515 943052535 345264667 630829765 949243985 77401825 74225915 907212121 456211591 532984781 841960945 489801345 246123269 246327265 970673969 413327495 129038015 265633737 208450735 425476285 479095985 902457277 895153457 283682427 809213983 95715965 885173561 506620455 292508949 982694989 803325469 402263083 920779751 704038395 871659249 879665141 192815345 788796893 788977047 473104133 472955353 430209749 867606455 125723609 358315147 517966149 751535043 228732155 500283449 440855581 245466607 563276289 993591905 35038161 304535871 355367555 252972999 126685539 326767739 103155491 988200311 196549977 676137777 742836363 85371333 82387133 901202107 25001071 963031375 469913129 937372985 536384135 564641271 919302843 227503251 189851031 401169899 179957017 999815033 972793960 965180063 167574127 395585637 369925839 531618253 864852855 594491029 92737699 557801595 833496427 116201745 764053703 320061943 804325141 41953707 51089445 533856977 535793089 643209211 322205361 848013289 446181959 342554207 844757603 451783011 814903811 939004675 223321665 648053161 977303517 432094421 639269711 674114161 247659842 42163341 131677093 980920757 386068267 998457773 931531611 794264765 498573075 992212859 242450323 361312529 727535619 71935497 855637367 254769545 28178309 236554541 674229563 476570433 145697971 13268875 866489625 207152793 21696811 894310791 841309777 746993731 781099027 842413653 720553519 562405935 211682583 953980139 322571013 271814299 542021489 837909257 513749803 992682763 999839963 775778873 378850825 269215051 356285087 909667531 695459587 498978414 77105803 217446613 444031119 202072019 792367089 61564729 954213669 165397533 310472373 98533537 929772105 41051193 803340857 989973113 600041349 159756377 918601837 70311421 576259435 779300091 848458951 92975915 34076821 417891813 843824965 819684813 501228197 860009759 84386157 349480049 153681735 97111551 114504015 491011953 143478571 802269219 742328959 474988525 322845963 287909485 852293404 800195277 529419435 994124811 605112527 714367427 682935253 787433329 260898243 379388483 158270811 307929945 306336685 779023505 831212055 894682571 571438799 517454517 671477227 912712463 931846381 555174781 733814467 184030397 195429973 238375811 242761103 782340271 128903390 225310245 242633033 922699275 587504359 483147407 446428149 362465339 151729749 553037999 210723741 149572597 924819353 401857087 848341331 85708341 164877477 813749691 962362929 933705021 378887673 689652593 926730841 488863133 791665563 939306093 802269687 487013159 181049883 397727111 401913915 957220857 358680973 388410467 518397023 840541557 209126545 465261159 234053287 488816455 792571213 75540417 89487197 199864421 953918575 813166701 443694035 171072523 933787179 654084395 814776675 506136253 603018563 962035841 86510193 234198855 740785147 879781313 103623011 11065791 712511777 951338497 608952751 103224445 614876941 684158245 951056079 434152233 151040669 799967953 731924803 725211055 191820341 581450105 615774615 371878211 119436485 173175633 660683613 572436831 577465539 644767071 249967151 917413577 962292527 485718119 622252207 87379599 27450507 832350713 595563401 136072961 866369001 197523311 381273197 39929023 476051421 856620777 16939799 83946413 260732807 937327697 110925383 277883381 680972173 875708499 144353481 927229707 404273949 30908267 139406447 659072687 35816685 704336087 336988947 65157603 533535801 621720479 15230359 285187569 982370763 214139287 291993319 972496753 310447345 767408211 745891571 542119741 827403391 253105205 720061367 558173051 439789011 582154597 810501683 97370261 662018007 3918035 854137715 625209921 94088181 991922999 401697673 830536315 799286565 754159123 255304847 41770631 552721637 912420525 827039655 205933041 645104701 127159575 898795517 487766413 786311865 586240809 548410817 553343097 149878639 746101123 470615855 177715479 74394625 637734029 733285255 965669907 555024783 930046839 676259861 530994021 710495181 964662073 489977643 763629893 929229807 483988373 647233317 515756061 900315571 436490257 676690785 419842829 815925855 922156287 156489549 874914775 286222273 560550005 573079385 495864559 921982257 428926807 959227903 766996735 46730381 163364425 253819077 15441647 274509625 720953023 919293745 105611507 902095655 169692655 334076375 126131083 884231625 360649689 121913681 376745591 932183327 879761479 419548995 640032709 932605617 882955209 556451667 804610251 325604491 329458357 164181047 233825571 418368067 891384879 852568233 558457779 887073787 777228571 281511017 367935397 676575571 773972779 739059525 233188207 508457599 222137817 606451211 982535117 478097203 814826339 228701591 746771137 447304109 29981651 136478667 682517659 410601395 598388215 244267155 196946157 970262933 401959019 334043359 325074323 312608551 944647307 899922859 482112947 81668807 445229441 530569975 622065337 543880287 152075069 751795921 461546839 269147737 931809657 24508487 906686603 308158639 408529075 289859189 181102233 446375899 588244275 973244799 517487629 352020967 137160715 944170891 402944699 968146783 637980691 805656017 313935041 744257113 203309803 807440773 713302401 6681463 922138107 253347055 189840553 685083867 960305523 774212693 920107819 899764531 207896395 373639947 398684741 263147705 932388933 482404461 850601597 28113449 803562727 948550361 299845787 915936715 502004355 423982781 314109111 567454313 645986865 708488584 681427241 592893021 435475409 185034937 130066331 298446981 41760521 778744525 429600245 38196551 241636941 207704659 319130477 761805711 368576979 967438041 36679037 949377493 533076125 124281339 801543405 72538393 194809713 412611165 962217157 83702239 210709985 439749285 477650269 327824693 773522243 914569867 969328975 575309745 491609531 321213893 848846977 92936821 8342316 276570389 739197725 259657763 503156301 998324551 118898329 235174891 503975313 563165743 624414385 381496963 500830777 344905635 264750696 364460841 934006607 636160137 211110157 903624355 43741345 187741127 203913521 27933249 115834827 712330069 931353521 497584343 805253929 769006377 137117363 228187077 65787621 925045829 597970083 139220463 443209201 750749623 498834227 630295751 465200385 732480909 321938529 78172991 596951961 119163363 575755635 44447961 828585217 239783389 52760561 373771415 443273543 792602275 950078129 488733709 65343557 251134055 705414353 904811083 222465691 661638501 664660147 966133493 358797489 446201565 912981253 518642477 655330743 436970013 104569787 932407459 170948263 884472691 505711375 930588813 49549119 50661181 274828935 127307945 827306759 931780313 639549937 526977085 400624721 498138037 320904797 828741401 9611061 868322881 414031149 11709073 550732947 798902009 377032447 30233733 742794003 534594911 689202883 754772571 366553125 411726587 549755565 839321087 514314497 247408739 16804153 70055147 74725289 395448877 748742185 179354905 427652067 97167871 604817293 275372051 397914689 535403393 371094711 667214823 883823897 691640677 620130627 732295207 972323215 190902375 468446743 680128247 186791559 458983497 414034015 410170873 821649333 611717843 82677389 388223325 497326735 82803931 801088351 715420377 988045655 413228855 737850073 688037035 945519123 257142733 520300359 192888987 292483987 712393349 985089085 912133875 925117555 46729297 164561305 461635983 769168399 625020461 593885821 780275913 469729169 134316571 381568597 386582663 461632235 790070819 656912857 835539259 592124371 706331483 828709889 882788055 368995017 993063641 109520147 59775965 72356375 976885443 208971677 850312785 859650251 874191169 819339119 560228545 177742271 270437765 302207145 314628421 186329747 872785099 742567597 331994747 64822449 1806677 695401257 673685639 567433285 625169773 337625361 59565081 692609353 262587491 13563295 800886119 631600767 213693333 35602779 79085871 712819311 605195105 745100047 439891897 596674151 11178037 513399501 827857873 636365185 626911107 600992503 946915789 320801693 502094019 310242091 613512845 797619299 840598649 249106777 553091703 546855491 874673965 964280501 321951865 865490293 663774325 83676859 950396679 457363195 709808103 635080751 355642147 453300125 903008297 755036189 618982737 817173737 569438179 53426905 957951135 730147895 670783177 896001279 634887589 691515819 16921747 420998261 281742721 197656875 351367683 185187687 488686807 231451495 257162727 656356167 752565975 603544791 386440719 249402323 961693239 97405627 662632019 872253967 514040375 18757661 540787097 78624073 242227609 894394573 229356233 119728145 183068079 178612835 295820247 269822279 818197327 697878333 69330107 840780045 473168341 218007431 692602999 323008465 69423145 381622317 473598489 344391493 527063479 35817963 191132081 463664489 291419513 235671105 34528087 297917821 532411115 564390515 20498993 468888847 840322835 702424727 955700071 101683445 313307007 712829569 745287981 506224713 646180167 892413141 697704891 611617137 524792841 797817847 297414741 264917271 8112873 483051801 888901699 295897903 524707223 850385205 796500955 281183225 183491403 449853449 281184117 568495863 529025983 687137567 339936369 923835891 297969725 794962117 916923455 706504197 424866961 933406485 500926795 561022089 321187857 367884015 959994899 910026783 363348637 569805051 910261273 408976825 317429147 33659561 685081319 839214983 494778105 765760307 560680719 319680519 761766445 464458391 275568425 719025917 983420725 530569373 116541147 106853493 943665559 953208791 813646797 584291779 542584673 831606941 305369267 295032965 278355499 299297807 313541189 624892317 980098579 323379477 981640263 623045175 596135613 148115807 231273091 637249739 854210139 432569957 465158089 175454737 233292447 75139689 450382071 748570127 382296009 937981297 101093869 77414161 530153377 464054351 810010261 173904045 87137395 515673499 289111523 914818749 775083031 300900531 364920527 365608037 877285609 793480899 656614237 544942355 986941649 405490105 138341271 509861243 755472957 404518221 315553423 229262999 292513569 186627071 982336861 136335023 950121983 973375513 511533607 801855563 799668445 320282283 149590293 741092163 817014853 93807755 343981915 306742193 681824849 810286941 740293169 207776507 913835423 161978501 618730971 139926731 551335507 363387959 966679715 770864663 61950751 762550375 695367131 337724443 800861749 449626587 283182813 344853849 375492183 427379991 636137995 604796577 587904967 666572139 380213711 143026693 375138137 329079281 368491421 355962851 902865245 713869449 249211629 225010653 970839221 817267933 688684611 432015327 46332359 887080281 293751337 319776031 297445761 363328055 767857713 291514649 372957273 899846267 945990131 768147601 391984973 455722215 658748949 419595925 68688099 892139279 316674881 965850485 312172075 602858571 584062757 342873041 96580025 479703227 230423937 290983307 587261101 406442055 7773459 726709969 154702253 352990623 399913639 155672853 900842469 373902141 500035597 526969877 437026829 122453599 934565155 924258007 953746789 958618637 60995273 108100771 6796465 4434457 526759403 351582225 643419967 300365851 998526583 360622075 134488551 26089073 146836077 292429445 739012613 992902983 836631243 984704541 184277633 624998795 444412061 301120119 196699337 311079925 502817779 232342927 99502035 663917575 790054635 380545703 127890205 267450119 896747685 313090383 213516717 521713415 725114957 962712665 700066579 702688733 351449107 640136929 363248227 602226733 893038641 582620493 380031293 940714075 100548587 296782919 932417735 283266971 956273291 668856773 217872045 305850595 165530723 702681603 96983593 953332211 140936141 762103429 17905397 51708501 685747243 628281623 999536219 130272345 246337255 811233485 407674919 135222293 700257909 380724485 913963441 456747627 958228303 481802337 821565653 881179653 715761397 444307917 577235709 566166607 725875443 301158273 587501587 601019525 697022425 331605493 658714511 726309029 990075461 631865071 157389167 390749305 307233751 959366779 659736377 781874831 442740795 741752815 797891837 156160321 303192097 63041765 653530703 618952111 285392451 84382785 867088207 626435777 744907877 905039664 156098467 209240105 796285009 777368617 892408183 67805531 399983321 499766755 709828741 796557467 93049559 860882533 923087625 516819441 324727853 904014333 436454087 934009387 504245447 691677757 515015699 196341219 27684245 420403457 403569343 768299641 643338641 474946413 238894889 747052819 205684927 154189553 602697017 782130085 946886953 345696315 593430877 834255335 820512225 486173773 104725899 117913685 155713025 128495465 899386435 27515197 988113325 364191259 955186055 189049259 126394635 83951671 699490793 8061559 830157649 491429849 981257597 63847749 994473401 538454631 573200099 986069883 343796867 110430093 652449345 800801095 92661755 89387069 499124805 347473573 34487667 334676405 228334883 507719253 283936325 442351225 500461469 880094429 749451475 375393109 116434935 199759759 913264009 67035741 164862719 385375105 927299541 791424495 431201037 513298583 829442359 675816877 986554111 156284533 212653613 526439813 350239033 578200975 359875395 197450409 577572011 106591257 416307211 247657625 362043339 388275481 690653727 180307477 614054295 172780883 953526819 868709419 851988119 131601495 572149437 757903153 157755863 242004863 75788195 105587137 352817133 616543467 144157327 731582399 211643385 671778949 216566849 414712153 655093921 966468345 593810309 862359555 698551571 524038339 263908909 330776441 811631107 609638177 372785171 206411965 276962483 49585435 716412443 879993119 507282407 8429189 646975275 151521073 598980847 71319795 380815161 809247183 623609503 870276807 693983295 974971679 733441621 719707689 909481277 337797003 789143801 356449801 532984127 179876553 894579707 75490079 810644567 877318357 626025549 391142125 632389791 726910707 84718959 562063545 193899835 503845551 526267497 503519893 305042257 284279005 172236999 685596761 108507415 442043545 867257759 782442149 590826183 352042569 64828049 208801761 198633377 634926745 263527619 920351037 191238387 297149307 525195747 854740913 768073483 853503277 653819687 275863295 562555461 864494899 77964875 741955245 660134403 989194075 785568923 546481421 348833713 583662261 723113439 424712757 183800255 727433889 975934321 268392201 245783209 58781633 92733743 920068141 54679023 612841731 542787709 281641749 148561693 463167131 868501835 592870647 806027973 101495555 641966865 300214227 335343489 503145987 145216456 585572211 866423541 985850787 198898429 461968487 751478983 811759931 481233593 736625925 511453615 618430053 677810323 304358513 739047009 523910149 374848171 80492431 573759653 931197259 935209639 386805265 723183169 574872741 921810613 841329521 850147849 426696917 475180683 438924781 192372439 845544925 385580647 866115471 781222031 601813513 679428111 39108903 141889815 344410349 316776401 194148171 255779175 955243621 481488263 283560285 722504819 81391511 883780489 777960581 436345411 233580525 66184131 716976307 574819549 999546909 475552927 122771873 9400661 447930659 298730517 275081165 98526405 744185155 582937253 175302015 936889681 494943497 936120401 360457673 908182817 614265419 293120429 737663363 292436839 601399585 401401545 819417165 156293471 613699827 84732999 896825231 912949065 212343149 986692685 608032633 924083057 211298691 806358921 734201859 821163819 207504495 972974641 124532207 506242509 91850423 949481219 429283781 199802811 33045801 346611269 38354641 261587297 940706773 953491143 371325489 324242991 831134491 573522141 593951171 564224417 692519581 641385831 544877871 79835193 251668553 428523721 691191011 407012991 80755027 65514997 406401307 643037191 360932151 935833437 786381527 148149867 291658423 869264899 899111133 719096911 776298723 501368425 696190655 43394139 883419149 114964387 274109395 746044993 768008913 600820801 626529853 730287549 225026837 89530213 267313121 25691535 250157827 531931573 556886899 914544261 103610897 25384543 248668009 696080493 133796859 433151513 877389059 517821219 816244675 800521249 764853579 804344715 26311353 807214399 175526415 485477517 511610737 383184573 866910443 430917147 9414339 446485367 655850555 132707377 692230359 946993349 452612649 548818895 814667801 951996819 182432679 416912899 540575803 258756939 257613161 436424923 436157755 536051943 732206323 536769651 399408221 629341665 387422605 826097135 389006125 403273539 5308229 108509303 507189377 865915033 115514869 703489085 846152561 73729275 848875069 881806205 65500263 74847749 627849861 181807993 735208969 25589473 525369343 192989049 695012945 693348665 531259807 338188241 997157239 779238469 187007273 415139549 94851843 626226115 414350371 842276859 72391869 42893049 569822943 142943385 514436029 810385847 175583605 265959721 36685661 514979153 769735877 953102883 536314947 288667047 355092343 858603273 433967961 455613471 13502203 24696681 303282901 641409189 628984457 985801169 747900209 456747699 311904803 196073693 328009781 884113987 408338319 460442673 940852203 329277151 248301407 346776949 143764903 124924563 75561961 842700635 236710661 994051319 321879633 464713375 531318507 689609257 386001275 79885059 723741315 191421389 407612699 175949393 81742915 334021139 584658087 657739609 839456999 552825009 523306593 286791927 674615411 636797925 65740367 622076687 252222771 208430965 862158657 577165193 900168379 336878513 443003859 486209367 75021033 795269229 824540001 552836469 453230815 903883785 657649941 711800805 117139979 971466347 919705313 248420017 447590175 482513921 936975483 636109545 433682715 667662527 424785507 194877867 791673919 939201319 64144611 545301781 32654105 833893181 535312137 465702741 497626495 23867279 405627311 380493725 930769289 423029301 857239669 476197669 103845025 15819725 877389509 549362223 512720495 704160379 277564107 378622217 726323687 930255599 772722305 92878081 280141385 516234079 811868841 918652277 198155287 872200329 209441227 181331141 853740059 961151156 351417141 763742043 988509293 811756207 509558273 877664937 500734311 125005005 364614671 453258283 497240239 367141359 539755783 34723427 225791535 339251323 52107609 825207257 492648221 525603165 197295933 259640355 160124661 465056015 422530485 961857753 133664379 115334797 525650825 784509595 636759737 80846429 603162183 996586519 536253449 526623629 350138695 151578879 495243521 749213877 370136237 537701131 823624585 299004147 799658079 781414143 524801995 689759979 553239309 545097635 886390079 134670797 527715631 361165005 580180381 761662031 280630277 966278739 190278123 582783921 730717337 510355739 598511988 433250485 650461883 275226637 864451791 941449901 548297219 674620701 807425239 416077421 673882319 411337795 398115247 552367959 851149643 203126915 530480069 494389323 275581539 341479653 964564173 941183165 41541331 497725311 818116289 579958177 706728475 945459305 371285735 232298613 817742207 904262851 938952909 283062847 199878421 535329723 153046853 179369101 93034161 499557251 257332587 909070455 203508471 185166419 267855779 459262363 769603147 947572079 174337179 646514461 643695583 819876385 817219655 51303597 923737261 728387769 167299299 391290241 203257971 15851925 232507377 832844633 229165755 280507925 415241537 331014519 960969683 977187235 843258853 80418733 937852885 679969459 882938169 53320017 23556001 608369597 301501411 553155135 409887711 615643205 76718797 849539039 751276543 224603603 290408493 993557535 792307003 342320381 389711999 149616755 283344273 863744091 132066695 145323741 757688521 191638925 247523153 752444643 289348981 223364163 955895091 943441551 82922477 318895913 862001861 537408379 374886225 470469885 964155119 951249861 268745353 823483265 613762269 474983697 633043269 467145343 89980673 474291087 665358077 861628105 852685337 309750519 247523827 303450423 419911211 88231811 731615789 716218287 56613247 256078077 489320061 361518619 106273195 143232433 790682491 838634857 644284557 414601589 55777413 11285143 598772553 183887531 814121671 823121319 489048903 124058307 325394991 231969955 4996417 146067329 28469877 394001565 951829041 707020169 180382745 696037551 819252313 818963913 836213093 667887867 936712265 792989767 289118057 978534315 151255505 493388179 929215227 973035505 405223699 109659585 80532415 251668747 829309293 256269681 737406745 55944503 37670543 878468807 167540029 513499839 424599405 711700085 670090783 697042681 286928195 683078317 509129349 306558780 594997397 118505519 448793843 144322029 985149487 926031683 122456249 206352755 46278693 302758581 807023857 795053379 724667091 873637597 210318715 483918037 991868895 319079063 321042433 401063815 289287477 262840395 762736367 623398741 216753670 607409895 710629505 965966943 473850835 13764833 80686005 403091813 896913245 904778551 967781715 867072777 903542193 468269167 804724461 155007989 420085539 58870681 426913755 37766621 632608337 169748297 112219709 272902265 610152733 820581023 412365306 317231245 480415669 204917311 430050757 176770787 17933197 122808155 185680405 882865997 793774687 729403557 528342057 924622755 795503409 636646239 631053577 36921549 888515921 674664013 263765127 226931631 323300687 883282109 51410491 304813119 137290251 448737669 859948675 446914676 736229801 445716999 761087883 56389973 789646995 428630309 443997249 299517929 372181119 44889166 557482845 572228675 232278375 579260539 139737697 98603133 936708243 55330087 473213075 137129401 742345101 255312217 65441285 83569953 433148199 174954145 573245581 909926121 71757443 933649427 763287759 386236233 833926655 418836303 691530031 812252549 759558221 376193913 686366433 576262375 8748893 610195523 696161499 859311553 278311277 751537375 604343517 659604589 967646721 20455695 113807473 758662733 264116965 612316183 636705767 256162509 601069869 718804421 996421461 56357979 891319861 884832113 746172317 418027895 840311971 942345975 972795241 632875423 660142435 311454143 418559013 135074399 882626727 924639159 352021773 818607177 625521901 470384213 140879391 837777399 912031227 501866905 856193829 221448971 81086937 52205317 59642029 3905327 487709149 524012203 232712977 928587543 540306341 466931231 101702001 511947133 360623125 511492993 58961077 611862049 223141973 209341047 171411087 546305743 541673695 190164781 706523763 978874969 180335725 175047517 642808997 266855833 524494081 123097921 573397293 770503793 747268841 458749091 504528601 724659403 321412027 695462353 442027075 390263195 108822865 462238365 584914635 354465755 838204625 930898283 930016663 508999563 393569701 579931165 444337819 537303223 188236419 601800995 864778639 873734769 681943143 444720755 929275631 720444883 115231635 146274955 649083657 747957503 576915607 779875699 482147049 493426719 211749189 583587255 232057191 86186087 370781115 48192365 899324455 647358737 350532443 308764469 901786767 962068061 915186129 166867765 852468429 843040407 85443091 73880089 247741663 46627601 450942301 419938843 938798463 304448805 186377863 423528439 141815609 478532917 123936097 149714419 911082845 312503213 989357309 192405725 697031425 360173565 419568479 489640205 861111305 151008671 417288753 735647071 716379161 658247961 650867033 303231037 859815845 677697265 16837137 480877201 321817315 879807163 542022097 708115155 120026323 909821969 982331231 351768577 617571391 401520533 602297801 944360611 136824501 459809777 199774047 50079685 536913807 147934425 705632961 278201853 804318447 851227143 748184531 598349419 614205625 175027771 589309119 437888949 117443999 837463617 335945465 528235271 994064923 491733995 369088065 262315803 425363819 765973781 419829145 356792621 883734679 235541661 427821131 2446851 430218099 359105903 501313263 329517291 927446419 213732223 735417951 702788797 596185945 503002823 11870401 426512599 762192109 590915655 786345599 912595997 190612287 22375693 115262799 747057663 729893639 493764391 247809837 938221429 252495815 454215345 848450908 803758585 638731461 592004301 429474155 394359445 695029781 528531111 400352298 536935125 38252937 424087151 354206395 110711247 679597511 390270047 890157949 287850787 295673653 159415741 248134941 868283383 160277763 166303183 3900307 514676217 348057641 848380649 424787223 533456989 527504489 919431525 730475823 584959205 840256329 410113701 456556967 381599957 89029915 122980885 88511381 841569277 881792501 973276197 688189521 936463793 561744059 695812945 720401029 996604879 708327953 815185689 764909849 301443009 275811691 112498953 798685761 166835569 550541823 486062005 985861245 382830167 155875277 776101299 464003469 849188467 103624863 608604839 216082305 694595911 429944069 887786045 779038633 836540133 654606677 249094949 387259813 412949219 245547699 502393371 938694233 155064669 333374467 311418079 524805871 161449979 954516727 990900541 699827165 361161963 995954953 654033415 126639583 870104035 237281399 898741273 240736503 207801633 187491659 20309329 176433525 403458667 495075413 584484253 243265259 906840079 985175595 456372717 744823605 823547877 406788655 194555709 531221881 255343179 362606473 695871885 46139171 925465893 823320617 684571881 364380901 307726565 638383049 503010403 783296957 131689341 684408551 475754263 639541231 997664111 274710987 596433187 503273991 45163709 71417223 505195189 465790425 601221113 672292595 102795005 712523139 237442361 487766447 327200055 618161767 288857881 220023587 335549347 61482547 688848833 610726783 928606863 219154905 382911455 752580797 783635785 918163607 657908137 550443929 773716781 103403763 904189404 128442529 770502815 607366581 524434625 800908065 235267589 193874165 338832677 466502705 685683415 690436877 46997341 972955573 347074185 566384033 997848137 407019859 795880355 810919583 875624013 545233785 893175467 36946747 620295257 533147237 666433333 844126959 197643493 894934801 948980957 812275843 764246251 891531337 780134465 837349119 741367029 753314205 300209167 50002107 741945359 257706595 842180599 120573009 271043281 802353855 764732853 680921511 27476567 408711317 264301579 744126183 981205833 1139353 294477761 418152839 263028949 398115137 597025451 200458051 338514865 942571469 21069989 591184671 340714267 691842887 324441229 449669735 42195929 490517885 847880529 462105007 764704571 83782667 900462817 117401557 200710165 438917453 632895801 49195771 745305543 620464493 758165851 65796493 594405175 243760477 758756943 875600705 487043025 558887889 745185321 15116307 584484495 970134093 37993221 752065353 205844203 854721049 53621249 769554539 776391663 268498243 554860107 745997391 31879463 893062565 549331477 741660691 55537067 550382047 458084757 662753817 783262999 89417817 330175507 167477007 718035603 166502981 760296661 909105385 812718029 344029847 820890673 181019617 122814459 753598739 875797629 571604349 604417243 785833791 495724831 830443403 707376053 343866221 468306303 226629405 689218645 738847669 727188495 959613839 608217617 807337719 143273803 138864517 937572041 365694939 614941877 400176109 641177569 526600145 509091285 778765051 885331275 338049553 944604479 779558699 101743225 755808413 844074383 674804799 745932653 693999931 129264739 717839431 70061995 684439677 274186089 549483669 574380353 143869625 994266963 579093189 350191047 954914579 973954265 417126845 450394457 992641647 104946621 680929449 579471775 950655105 356148173 447849979 351019721 777492671 890231767 756937329 570399369 743172459 299615929 671610895 831685919 784684171 77661777 846881057 302144081 794297583 546189965 1009979 483378799 844690227 10303071 367537723 266130765 801002675 513470655 666960707 410203979 176044697 267722159 441378751 159293519 602420439 701358909 419362919 154858693 96778019 948487799 235636275 832680615 265023997 856920186 980664681 583177841 252183983 271346023 925364887 370998313 17302343 26010985 781745549 474069085 444485023 815501235 546957931 310184741 876634199 540883837 364154515 864723741 267456217 200865035 665490867 456061039 416411473 650973349 477083327 967595461 626789307 507617697 202803955 859610455 567680213 664084821 145355985 940467683 383633703 144327719 603106601 13566897 91906563 483282559 535857675 143756683 289110657 901153231 643501017 851739085 725814913 703173011 851555377 399043409 380072875 479856205 919476997 728807039 946793071 401813639 811338117 352060483 520650503 648291793 510183725 663418135 85850223 744091593 148097733 551418359 110999925 34294543 224968535 955691369 991270309 103424077 765856567 869417594 551042135 709636405 233700099 798832581 807265711 603729283 582548123 978309219 875072915 211976697 777601585 959817983 461174963 122031969 872750389 151624387 389052807 924395403 123200357 49432679 394971983 19416149 47837637 739409705 264828693 530607261 836946339 191161297 830893737 607901011 589321615 116321195 632109987 231702627 210130025 626055053 400064097 705842123 693795923 717760727 896154895 185739405 173563323 866716271 897952409 444665779 844810835 787389379 580630459 305612109 173339675 28439497 544726517 973886841 760751187 372523005 206694029 204009303 633685129 179959145 679495571 313345553 583880595 740627867 199235809 731534809 359837835 17368487 28155673 690553067 417425367 755546923 655804575 263454857 275533345 104336721 192423077 787699709 810050397 293820355 283705381 490908569 112606155 290176441 869782237 776710581 401279725 179829491 583388759 353524663 113421965 139359411 274726113 981569287 847322051 705064651 839341205 382312473 581796843 933169297 326831699 679829349 433846693 360525793 230155971 731620463 797485027 956234275 282329431 56728769 971327189 627986757 38984515 470291179 487504633 226713275 183491211 14859659 581342739 184633991 66939637 208610369 11769903 690515501 913611539 798230711 609365665 582480317 220725565 697807265 882315015 194982603 764601491 215365559 545148483 416990583 414104573 833304253 434928001 985789797 173653291 996033659 589040953 85132997 729487253 878342087 206202403 633131343 189731197 796896633 420876357 516069181 291679977 963490163 851662827 608713305 841316523 552460191 823582379 342936303 981183835 803072241 253838943 840847573 691664471 990351457 776633387 551783019 458928843 637053427 565215101 979002263 898843813 483303855 310873865 117401799 224022941 893738667 609871817 213271025 844420659 456122367 348376581 674520467 974204081 479750605 864201797 293101491 188015655 806559807 836404321 854249185 237072235 743407753 410039923 371361585 450759713 438409187 309647841 668108611 634829741 932029073 174682197 284057915 450057283 357055709 619373765 659026377 798271961 816960535 529857133 660350757 650756399 212434845 910480335 944317961 257492687 442417103 680192443 444642495 548688391 995175193 632244291 211701779 533803505 245569257 316042693 622697565 986333805 537663679 75410915 366110841 578687781 964359960 657483913 195201231 587641989 432957569 314801389 376207437 56661193 386786957 559974539 611943785 676940527 428022485 182644263 67101473 493104575 341835259 119323855 685585915 343880907 44224681 702575827 438655751 385038699 536214675 521245907 205455065 146422719 636788593 896951985 481824401 817438639 823683079 472486043 72383699 453690859 702149407 928336899 271590609 793636589 369166987 322786983 598929725 203356659 487368741 207824269 725927769 136072709 37686991 602420733 429339111 2724085 190785907 836685455 804212283 169842779 72986117 299686429 166795045 417461909 270239869 650898635 50369545 556909007 439819743 724842759 4420041 862007031 515386677 295305349 193578453 835085509 853515921 233310017 773287713 411571899 833912333 470419069 737154864 855820831 433585867 962597833 77824773 507464451 812907509 375830007 655492143 84067133 664568767 35312163 67427267 331609457 244623971 81576627 976572769 593282051 367331105 460138065 548697645 779989031 614428485 72049907 231699929 773079763 940114207 854777557 287314327 988098503 8832781 510919035 656291625 829961869 910313071 503798961 672318419 57962869 458603697 531545995 544264035 179097749 849834051 601229671 186365233 658936017 143282079 393064167 353999641 671666893 624300617 916350711 464860803 957246459 3757515 887041487 76179293 772033941 328977591 539718119 87694109 906250137 9172391 131376901 728522689 336695249 408352829 703497525 710866641 953988299 473821219 209540557 250256985 420804321 269182989 363263079 387031023 623715635 663942837 991876583 968644019 229745323 156315099 129532283 255337289 811525365 841262923 606467479 862534883 716526475 535700439 429882101 648430643 149169839 636383833 951929755 386104187 540011113 955757235 53977047 590016639 189188487 574941391 910135611 767083405 158554787 943386017 810486179 2323069 389189405 701190691 619866163 347713453 675000859 583981653 763656283 536271617 583993745 23411779 46037195 321152744 97911095 320657663 246173823 273511259 392270219 73485219 33247679 716520661 319196373 655165521 880748821 580128094 164677671 165210421 559071317 485219715 574916183 934136703 589794715 928791901 161151753 755533929 906761805 182865287 637846947 989257783 737384471 340942887 426124371 713180979 887995371 11749871 919891223 815357103 525687559 209777427 233968297 624359429 445106159 571790927 55276949 265895833 375752047 288190957 382423339 56097233 599869851 59550395 4038785 813923875 474201297 882609421 905922939 156578313 421728435 8090561 209692093 521375747 595648815 249338687 934919611 604654237 782792055 544363127 768013227 160749417 4586763 159584731 439708813 419914753 37690539 176442987 560827179 588979463 787560293 723515565 469483283 275129639 716184975 410354097 33669023 936720913 930102723 196383757 261128433 649838975 158741989 873347293 345811181 691766839 782704675 370111177 560368709 804667135 553531889 912341245 232872819 613379499 174827275 603668531 474310581 539985429 750733427 916245415 315641363 968799519 869784953 370685983 22022753 177116597 999481007 921347305 19353139 606246343 552879857 142293213 713713131 151721807 426004581 3130713 723471281 864268627 326136693 634957121 880350325 752728793 539890647 172488197 539416815 554597877 886069639 375294107 213294753 706554561 285403081 806364291 868098771 380764255 467171369 474283199 496996755 331550203 485487995 322291425 409733817 768768965 125570779 399288831 33490665 486078457 571791535 941662133 934807689 605514199 890878883 105048363 336814793 815231147 12559785 641600525 101816993 386716871 633042175 239194005 965749715 486107781 342025515 959520127 9344997 879606089 909775349 491777809 367703849 203561593 471623795 516134939 249590709 809579658 775185411 516046321 567762029 238603769 784375623 277736561 485655029 428198467 758806829 317864196 762858433 696776439 435822569 413579159 423019271 402404003 717261813 510019999 87130567 815924707 132304665 945690909 324400075 939226713 99502941 39603091 456547235 242280369 230305817 758981395 355393957 36688539 259449575 589051187 406392053 974871507 97159339 751634959 327073399 640136473 48451221 854831439 798331359 450477113 544235795 944943905 217576609 248797191 33953511 190201657 511605505 152205657 818889235 479302105 26802439 280048147 847047395 164940485 418426243 341870113 670161131 360702029 317901067 147684467 494908423 446265413 498684161 691578884 328417117 171004173 713474189 76366551 392091223 745396361 105375135 532557559 122837931 966060331 332286449 869200755 15625301 596198117 592038913 368151911 775421081 757841463 351823383 580646645 65995523 412647721 334707013 57304649 47212905 475039303 7322723 462147731 461956579 202582953 184220433 727296271 877319643 796167147 77934263 61800447 382651639 266986293 514670469 261883307 574349361 483632181 249850229 587261287 595844289 548808993 787218755 972620429 295462189 340968631 918668157 781446529 619246147 316077373 397571439 108818091 826160659 47253377 869380657 229728637 695552253 635416029 391076775 544211315 813419171 977604905 956599159 370510093 715088627 697656785 602838543 162885847 730393889 192371903 928170413 206557285 805123753 107880045 569004363 228124493 676573773 48938453 741976501 849693749 54849309 103028609 602516603 406648771 702216043 606350973 155088115 122882479 177309651 410538337 279367489 406557101 942033979 879916873 774506313 997345413 551946445 307085533 187263935 187095805 37872383 557058891 744201497 757012203 405086861 783702345 728727191 458979365 925343355 469921813 248110403 883079567 122812435 520428661 761428715 843812373 682303471 293184953 389764395 362953641 437235941 436583093 146886751 513407553 845531933 969559753 652496561 170560741 533963011 79093465 692613395 916249755 741085769 836120151 354335289 172368249 11910893 932180533 706454439 309120917 521776691 529703925 136024229 991318549 978244519 606561947 908534081 783363615 306966047 539978677 113184085 163821547 117098675 710946907 452592513 57932207 535636941 519774761 369893933 351503533 55248405 691475527 495915659 62221363 527263103 962731107 266463119 278846095 323438155 503714227 706357501 970685469 76123129 549775861 980474459 683308097 360399447 946905201 351749627 259109475 420029563 510616305 18092021 999577333 280383423 943647953 692121897 118832243 447398089 86276073 662822975 336731743 926202499 599498149 785373351 520385089 378184995 86028273 141439897 41465007 990448419 99716161 865420055 821767743 952562251 616075415 474603751 858047639 755768997 766931063 187087771 663828319 393521029 151955951 959712649 686306121 767440519 586111639 263381461 969992465 890538641 914536587 28107621 389369977 176250573 175398259 3084263 530897225 117182897 686306173 17458391 1931861 394540537 424132703 649866357 265136249 546089897 385794137 904846535 810971541 505710861 116527917 882701981 89801107 834067899 460276013 364512403 600674661 723588491 801829421 131180037 233126919 363112357 564332173 179482141 919111035 267531637 402903603 904810701 780261321 69730221 924310411 206585803 16367111 568493901 475529359 504462743 225285963 414798997 228934587 751126139 184817083 931265043 15255827 361250693 586764159 710175133 972779819 500031375 160615881 264910157 806681109 990179899 875006933 443931271 46780015 481475821 796453861 209170681 985718369 341350871 634911809 879801751 744384153 122010355 422946367 916023195 301110095 766577919 608101685 978881421 843197757 663091331 846064521 589637685 754258091 76235985 924556194 497928619 327502953 143968001 65004791 857500233 698888397 393821939 612278525 504236981 139120819 698197583 739244087 647450073 620814977 29985157 160551731 642907627 927287593 604844239 998659457 342135143 499452191 756563241 57345721 452838673 185545055 369188193 496267649 429143541 782082163 31102723 966788225 107314791 853346665 473184103 794543979 270697219 889715413 613890737 478424059 952954287 182219733 5104839 49027827 804112535 459745553 486477913 866105117 710402349 121929145 30655455 387274313 99412783 921185919 873807513 195288149 711415201 57846947 573330833 988685345 255685071 547436781 917954711 856493719 870030413 67607721 592971587 310593961 890053625 824968365 740200947 957444949 415667445 785213017 837204179 778559127 33837487 779948691 203576527 674852991 862569947 757479625 126789283 248015643 952748915 456152559 924225999 506611337 644812221 999281031 355379097 628962793 148017223 576045205 697349649 471138917 983434211 618837673 87407377 525932593 958003629 951403735 662791995 111519109 180831241 81276093 612497139 525393317 73193381 6756741 465521515 715700185 944226933 615949017 997559709 440394871 92795061 141136881 876777799 101810133 625718759 799678091 926216691 811450201 115258843 29866479 613498351 125017707 219958691 533088233 126504277 484178815 755165851 433090001 297256709 564940557 450162537 535936899 269531559 671697049 619202294 695351911 985700013 127379885 795560827 203455081 314246987 494350553 311858033 797282051 444013957 690587323 580102301 252102193 118607137 41486067 48752395 27082617 657455283 704574763 349973521 827158251 576374413 331883031 365555526 335961627 749817813 670940783 542604693 329373479 661235057 156753399 986232359 319564729 681104657 726203513 79652719 224271355 976650797 566120133 187596331 158910373 724115719 924025273 167691361 659284215 121183653 619917621 373550169 879858099 152051417 853168419 171771817 135665707 339588923 214414967 665080367 332130357 332661289 986146857 45303055 126450733 242209487 266655293 276622259 648832507 760103707 233268413 404348111 750251021 315138245 597731001 477062499 190363737 724203085 799135055 222780335 593114461 502000125 216154783 218419778 794266399 252474085 955763411 116428017 141412911 402963931 410198303 955972565 356882081 367149187 518743227 39544915 137556243 570131009 446861803 315971611 653602223 987418441 860867321 267271195 126915871 834424721 680812343 473356181 544436637 742050777 389117951 872334603 61538787 760526507 112499121 405980489 890790971 433558357 612016829 63538275 776442737 917597937 557985425 967335093 883609051 31334239 720561831 418666469 71518811 337719881 872858499 204592094 161574227 870422043 158869423 206934485 20250547 590703889 379117755 637662533 540566513 988812841 431683653 818901747 879961355 781466155 807323885 215655915 199838087 960240809 991872349 477886083 79306867 557307131 829368649 168111955 438326889 552149825 474921579 946174019 553170049 272155491 412456835 153381759 627537767 185326609 623992667 101466235 25430597 178562501 150463945 395209457 671468501 461257149 876429989 898020839 355772753 416877313 740883665 882404523 993774467 464341859 918781751 228195277 286780855 868910203 365162955 969479213 845368005 972471463 612375687 913188335 967809033 394229779 125039211 553795453 104163947 474131373 463069825 188052621 873284953 608554029 740668639 649814297 791321033 363532565 211951517 680820841 859822905 99658667 25023965 458201095 84938929 753669633 145733323 679493829 53883323 830733805 469892757 666026437 224266611 13694483 665342331 515365733 20356465 511596759 345600699 484106839 604788449 89329005 3137953 399941771 676273007 972651723 704018047 937454143 965301327 591313585 77371311 712630007 523886915 667030185 881555091 392994943 606022029 622011139 638543509 173216747 450074881 121556949 487478825 907507863 531038447 52790787 815005639 942383401 935657787 626781745 352700147 260859533 505358151 70793169 107016503 407861493 727894275 601107485 17125157 602162401 614356453 62301971 995615063 563916305 89648619 612155005 322872687 176270995 75756189 245158121 189648153 541685691 574279685 231661745 804692741 652074279 79610303 765853429 34923501 263454651 70976995 929987231 652572053 703769759 23818269 621638491 999487431 276710477 488343193 919824547 1662805 670313855 666350347 369077433 296479513 149349943 885451701 219156901 486664949 145191621 2438747 901407285 654079701 4302521 9351499 949036291 258651561 87253491 660983901 613747567 349465195 17257879 215715821 16957087 659128095 306350863 325585381 724785801 165241295 596466961 122709167 267678943 465779085 153050777 440512579 531715109 931246963 30915563 326707999 793653921 379797923 319851921 789953865 891243365 943197769 625676643 166847825 192027463 369230485 142990717 753128781 585958379 246779329 477391169 294285785 551282871 265504787 743062619 829977883 588696025 596285905 888482753 826168773 751766863 128161359 94411951 238776841 970323411 152619751 263644585 573848745 407911409 112719355 898110331 587442153 111108857 317905909 241057339 781547161 295473665 66244681 553334337 702523659 466321645 566329969 221212983 874048035 964636001 664770285 669034243 626338371 303099345 936926281 738517215 884955739 155104371 787803159 193445955 670421217 476694599 692085745 69628917 490112725 641744407 231153273 163146499 369166521 239434609 385394779 681252285 645200287 172082607 532884807 647874243 213334557 597959923 983279865 467599353 899198799 107023649 532494897 154911113 612645339 766209771 972532667 310597865 828596467 392085195 820370793 690883687 222318411 318510079 948446997 935925071 790016033 338833807 543451041 77707941 643476539 547518287 131149305 392548461 614779623 30605011 81754637 443553665 489792253 667532413 874938329 675023367 860059097 96764021 176182877 900543083 139706469 320253355 214711973 921133151 622547467 438155991 797199555 104932831 355505091 567716731 546011857 396134451 429181197 275326175 389021171 630972133 759857899 294662929 305556303 889701577 21405423 506199017 38357786 729568509 413833775 969727499 476419473 287252451 283826247 162661853 578024945 597528615 27229 905866383 1098631 522646977 909921827 252579097 730375845 154473193 142596813 8912700 261914023 609788197 201148953 776331905 288823787 984451137 842067789 310984503 965393119 704581971 981093943 957375349 739764979 864830901 67419183 24581151 25488033 983739915 387118867 241811929 726324591 813290819 751429703 92625943 257382627 357457295 704570301 608691727 233466257 473852271 947379431 244440001 305906707 432250531 927137221 267033335 22768141 994822971 982479839 792340033 32504613 500513927 625052481 778356213 464527889 364199463 290999683 658200375 459063179 874551551 476350145 262853355 184920405 273168441 727009443 770043077 710692151 233189963 371598165 738270777 975707653 169519089 390949009 144503181 116901529 176098093 723240595 117253827 567642839 165791311 725990177 612000433 192904869 342383337 307648139 555315179 832023289 57806553 867184293 812001235 598115533 11079487 75728335 104749457 566204963 304300429 98431981 86827797 49636611 873958515 821777263 569732121 651703937 778325231 490457677 732341531 911235511 540318021 229353217 51860579 568628425 227269121 343928213 496405251 886607837 157777655 36773013 538404307 544697899 15051333 256064537 654445683 694427879 260394317 714481853 357272139 983055449 940860349 606604457 916473227 296470215 796975751 391759499 203789357 28563333 306616041 466472599 932595949 662091759 710337385 528680335 707010649 395606627 15823055 768079289 786952125 47060815 368957235 154255839 398204465 844652067 794305263 491445339 317089689 704983131 86206375 531202571 102925211 606205559 452293961 802715989 543461541 251558149 344046345 437391141 481265397 262395795 331699297 500895219 527896453 686930365 598757913 945507519 970025761 2762791 47831865 646449677 173785433 259681145 854438937 455577835 447355267 158243173 737806675 654960111 659519427 218664359 33353421 218964539 826284541 220730111 603434673 140772977 936928485 650406971 48696949 995780545 139064049 77117737 268120021 565408481 678270817 24924069 675138005 681176335 965904703 407010963 217049025 683454737 931803227 273218779 269430829 277337143 947776075 760889967 320782327 222418261 224432497 880385867 478635841 264790987 553534453 43739247 991708791 179475581 322039497 661470441 536001359 647085277 587089569 522028231 430852551 47728605 705662721 566122021 997619487 458210559 966044465 168544295 499428581 229266247 660471103 85990389 28504045 131584067 302169861 631671233 346925909 379139337 271046947 229189575 505168767 371115835 915801601 805105325 74042137 621413371 849894609 731643279 390154263 617658617 144671367 188003053 570935475 12093291 182186727 809712063 510014579 982447887 764617079 496584035 878758693 948725547 120926857 539469639 66218971 328993167 510987317 669788125 396048369 524194191 982354267 330596763 503474187 886283019 595977379 617346057 188628759 388412265 738638205 464893615 6094665 150430869 198310177 65374237 609051421 263930377 620368273 279732975 495548501 755872193 469799059 401204937 943033601 809593153 306293945 202676563 139484275 806005405 863487065 988467007 221401161 966565733 127626903 746371913 946416995 555620285 513794137 779319091 989777651 289828679 356441933 27565253 445029225 969919539 297397487 343146197 602315651 240331831 655676799 987750457 193633605 163943825 988602115 128696535 720596219 652933129 169444939 806986903 56375353 297883627 434750963 759633003 285930205 680674573 939171671 626028879 448564233 802195407 310924193 944791365 218396969 146098197 470181059 535604309 836826357 290746961 640686707 374441877 765291621 556203127 697601841 136005147 942962623 772925187 966958407 914486285 394001809 371507711 922273219 350441875 552477611 692524537 608038271 590040543 660042796 401442051 754636317 595254319 912909945 559230401 935845633 536005823 28386877 888183381 538412637 223640031 445534829 64504687 304567339 234359517 236709445 122808133 814825257 540037399 340015687 849251991 655377887 398299883 589640515 939316135 211798431 441291975 115664715 848563015 721544065 685634077 288501435 459381707 256513893 790174309 218445623 418302995 642673395 445424163 897829039 162603141 100757147 197087711 50689619 846678543 459288727 318767919 734717855 346230565 144937955 123614633 10364763 198591689 340439373 894716403 577868945 689405311 233543777 483647157 344809877 166442583 478048887 206590371 166588677 846423523 631194035 24175733 669383875 63745863 360891899 67316207 124085499 59979045 91077631 835325657 365656355 14274221 253446199 420682505 969889527 173616279 578654691 217839189 106718075 142594589 769369103 631472035 915458557 524515847 265254533 231015899 684185869 155235237 225026275 42702065 549761419 270038477 968135557 871261917 611313561 229815771 107264151 239321763 284871589 537182903 506146565 351878475 416811873 132298701 434245003 658672875 289309901 811041303 660049321 939471257 432163113 319675665 399537317 658151547 565274115 465140161 988496015 761960121 61461553 196518837 643577665 907210375 306672333 221188101 233023325 765709341 747868733 754266191 795755847 833848511 293163307 790044599 970109489 937271735 700679053 201511919 262112533 712019797 74519453 615223849 352110001 990480375 516982499 415781 526563215 95655165 756867881 489266987 85636861 201453009 633265025 139548423 836620309 194416357 860351309 846454543 493096887 253242039 862325037 119425827 817263243 918666947 470180365 944859817 211232259 732293273 865606179 746510223 887828307 562341065 570609643 674586955 215372415 32468459 642480937 420151259 332854093 264810405 237825513 271471813 10676305 869490591 120681343 164549655 29872605 940958861 252016521 635163497 441078039 489590567 660938473 161983193 501849317 819863857 628645067 487450123 827322103 745789557 498000295 470530865 348476613 847127493 937364533 534039037 203601041 959551481 837347963 682184367 782501473 512835831 114159301 660797711 454560007 42500775 29033129 321537897 809785115 164906493 370578945 944713621 291774459 955071473 63388145 583051759 746673363 889209479 365685735 368635999 133376401 241892297 764842647 936482643 487196653 459776201 246175483 26433729 263650919 561105567 821031771 341657383 244691785 796320113 753078847 311391883 837609379 518045545 269926783 108301179 102923851 687217589 926962485 786228239 395498213 190254997 938548423 132172005 900342997 431543623 927062495 282666531 146036815 747305749 897423219 928289397 115179337 375569493 123242687 856645139 180237955 686194783 642488903 89729981 855907463 335616405 109652181 131147703 394010787 541281 171037825 81521871 486203889 629613111 344958375 398086491 233198161 992025231 254226409 155653181 498410349 639074285 828795699 770567127 110663601 896800475 906158779 835447063 73010009 70600939 735326719 633985143 445160803 226004405 109825983 745393395 992707223 98405343 281888521 909328659 934492295 484853779 120132657 318155233 664941707 366816769 244139477 282859511 931349699 589439331 602938839 888141939 58233111 259328765 333301861 630236667 566242871 700822937 503631601 173148090 3688093 717768455 821927227 513518189 873112967 755498789 141613635 369914187 485071357 312496851 318880087 698933023 421331409 569715965 894541069 870782773 12047003 824357779 729616959 142705253 688240827 887989391 681261841 484219403 937100375 600867573 758598129 30958351 944763491 752852943 508758163 655301855 922563989 396592431 914243315 461687409 400376687 679773485 626794579 580110147 349504311 680920305 602928195 31239771 180261119 374017951 463958933 991882057 988835485 111123821 808677221 443861793 995400885 76615315 735154713 38835075 243698091 788157525 976413787 460091797 121504947 886877693 362775073 607092483 71699139 457027549 262798247 336933639 602106267 923914831 4068465 323256667 672767685 924852405 729100363 900158281 685472913 290416249 538953801 149875869 312431893 187177999 506694601 852485807 66899253 722223601 571117421 488123741 537453973 941129631 451147299 430531083 408529319 800839845 658162717 906331817 938144933 791658389 511654361 564148909 998728845 648198407 552953627 616378389 462474537 78273187 387800049 775816807 303330567 778994189 127621035 462510003 65933441 185662459 535940073 989290893 99937975 687349541 350089613 941376021 471530131 297497425 246571973 516887793 393292225 339310147 838400261 6152781 958559675 8478931 461231623 175244259 543988931 360064473 413363411 425709551 53592289 960365881 273562545 458132023 444024035 141959385 371525177 982262537 167424355 239396271 620601925 306464829 263071681 93895859 278033659 509552687 829043493 551983083 635413957 580581063 791429503 414296413 627473241 317441139 29780615 912196123 685282993 153990955 902110399 69507907 316859413 923617641 366977133 379794679 947423759 313681205 307408547 849999197 210809971 690417439 280069175 146567083 425916765 591023419 859158733 818679067 931641395 640267817 828295627 801779181 987678881 630051343 586979681 376519789 546746777 850702235 730185607 389573613 273512025 908629249 425472253 448368071 165149029 809142531 926899789 900565597 57252745 605614565 875877575 323003419 563927769 742422645 628815233 955082353 323381683 41797899 11082335 40190169 288454585 114121861 10137349 942127063 368179417 752389447 173493735 709927413 66962501 807600705 432250171 238423237 486824829 314210793 941252097 897115107 271707457 293785407 11126019 171946477 527958175 650961605 487245263 798152591 169606125 22659469 433255871 685500541 128852933 683297835 185678069 354201713 40521227 939493311 760457045 342418475 455875309 625862383 257148817 390030967 693070815 296017129 554035235 903205671 272764061 214446177 109928521 825882133 250924585 411772057 315616525 535546917 992703443 262360661 369352253 730701373 667161133 188843237 473935731 301346899 110004755 412572445 450075919 78281825 156323755 831239771 476830521 135094631 521340255 140005769 183752417 9572977 137316069 336791057 531038911 564344209 968075321 227825899 711480917 68939491 699918495 768733077 364929771 316961669 175032739 415734039 413018255 982641315 451401753 615769853 452911385 317565555 301424925 963844189 665128237 678937897 695766292 742738647 425759537 357278221 264761517 588462481 844868693 356785765 75343831 453135417 167100305 424596101 554706129 795100677 392869031 365797063 554987297 428964019 829233949 180678797 426765455 619714953 856390981 723040579 288650801 691888213 392237877 101334873 644628325 832740463 780915665 165621579 889734861 895358901 335337405 602423449 985326423 489145227 213930605 380502223 366600503 485459937 607489303 178305663 364497639 388555311 197366717 507205701 757472303 174474351 702388259 23708095 661780247 963261995 37697759 14721691 703457015 322855279 905038405 842383241 231737193 484061137 991898489 717942595 155154769 272225137 272688479 911550863 688582111 687584245 11006891 389362739 412425603 229874571 859403729 355902467 613581561 299166697 368393751 16329689 608971849 283793741 90510463 9914777 273848765 387444605 869599199 137604395 746133737 376964297 1043659 892081025 986340265 783717125 240643237 349921173 486087459 926087311 888945813 743697261 696013505 18308945 982842507 405903119 765428539 485334453 614428737 624448399 694881161 373434803 540199477 641548809 73566191 9166795 199025839 880625819 31255807 162436609 91497155 905135987 596729479 578564323 241057091 465283521 605561509 518921863 574818773 276879553 807438017 912389007 534686687 538425523 91053185 3268123 763445137 856280035 167893727 560475871 840449253 503037349 106623251 222656527 453090967 811334479 117968291 727148137 981416757 323713861 103086941 738073139 585994763 984621555 234037841 274062909 871219249 787503305 832979167 527631067 749451659 70212931 977074859 88542957 584476095 425952227 220205471 739157207 225540923 74989361 591423727 531643787 662236221 601852097 682461723 569892219 481879487 727262255 892006371 224764841 837061261 912414745 914684759 90064023 978005047 46722861 770207945 815864153 864768531 397850907 670941909 238935167 83478597 404220319 219103073 17760557 624604849 290101115 938986134 53218309 592445451 442933623 246105581 17313335 374587593 988988775 480825631 788851831 353233963 613679909 286920497 869425159 497978683 873313685 374006639 143647661 483905993 995410335 39301229 247918259 851448171 566454581 770092295 695819765 954435203 618815571 115708259 106090187 756544825 515820027 502023661 608713249 616562815 904190773 317655127 560521569 353040649 537967637 234075807 229773189 672002139 546497719 768157193 387374089 549811645 764840505 536048673 818192881 909551421 285280713 970178493 308832977 285796533 627527063 395536375 330892217 2696389 819184095 180247859 235999309 63085013 996669411 548676639 303857583 35044631 212535531 987746477 30612879 626821503 563917645 318306077 19517731 779269329 340992863 74371311 800393257 886530707 188016263 251319281 609633767 998982423 803821099 777041721 669081133 886035573 365771971 293597217 121696847 407132045 468619973 630061903 446920237 163958535 59195827 996147629 167298349 745276499 297577755 64477041 413610811 418655913 215389067 223588117 997584337 171112971 179642273 586815585 187418857 630318655 162449659 458474335 57187341 932881879 578591047 71998819 913023817 435710249 90015543 890306057 986502197 829025113 656001411 759494199 145829103 650965325 309864941 491518231 643456283 622400691 454931523 667059487 388694761 268489479 725460819 622301451 495116815 233144457 931080697 390206175 569676491 538960703 977788953 112076007 673476325 218131449 937884571 735030969 805356711 118910291 690000755 616422957 429247469 948049577 307801241 231222379 978823953 434491175 992363279 925810911 731137529 43377849 718378723 619178043 735970583 243686171 515229987 168990590 172388957 979838155 826135277 593910507 751864909 723884051 130414175 238119181 634530539 55485953 348692391 697832379 465052869 384287087 38744055 846492943 625567731 735800831 390172295 340825197 620475155 287084309 541070233 178597763 339403849 664458467 600808827 514507077 561008709 622557027 37866363 760614637 846013757 750796627 899413239 809790723 107874799 848440123 92661327 969356879 896691363 277332077 198311917 911419113 911094309 430018561 71305027 654133035 635699403 132478935 417431501 287024315 367005557 131847575 161643533 158732163 843162249 897930161 537797773 687951545 756841715 323591775 367482589 246026201 337591597 260728989 943734427 475516839 812724275 64977209 133797477 871074095 617253003 408964031 961034473 32327365 385270595 116027783 635485145 840579333 313648883 999844533 453187821 227143637 6094009 993955119 672814313 768877921 511337785 806193573 317898389 633991451 566265251 610075791 396014535 554553537 681746093 361993517 631144535 380611927 247451031 104668811 214887205 448856105 153875235 534926963 180712735 18433485 448681123 520363139 600723511 720987419 320027885 546617623 382604901 447935035 696603997 190515803 655818925 699207065 31449817 59990331 436728343 625096425 322233555 668177523 231059129 306950693 202843199 217205635 719519403 481171093 379903643 433619377 701313805 369808321 901315309 528111373 256621327 356885121 505491139 932757361 20332253 250620911 217116469 924707711 21095605 308333167 23043553 421907867 418823641 610962095 369825771 812278007 375742867 39691939 13172995 383868045 772694067 332956807 84003425 142233627 561668119 916425181 892123071 501473579 408276127 374364789 824423015 628660747 755636533 699085153 648149541 458322133 219304013 114537981 654655055 652487273 545365599 633564911 921721029 761572207 715202799 928028449 873174252 497677145 817392005 164342987 62541493 559144795 703375543 782689891 953302419 67129721 531857693 51530675 309849475 899647353 52100185 237185733 573270545 753519087 740717077 726759151 962111813 622129965 705262851 260832713 877985465 889560153 674410465 775395899 567386251 85997145 276809835 142239089 689494623 813912797 193253489 259623389 642857575 607610717 431408835 6069823 594375765 689775131 836527675 624913559 688824937 778643229 368038585 684991283 4097131 312447285 9893933 121689511 529838759 524566779 737752451 932194769 657420533 872972749 761021883 907711189 537382321 7272151 783539923 45138461 591252163 242863623 251128533 369211997 355843737 183776021 553288919 301461141 391026983 68478593 859474417 761820421 107051247 368145045 489279557 102274621 458357751 588985953 635633661 386593807 235963081 902406331 910462029 308491927 609603455 981987143 150528621 226579769 989973175 640835433 906082465 362899365 766301845 582774101 370853171 371586251 797739979 807222017 6279027 15016423 237902475 12730157 782420671 631143809 707818391 151199331 984293239 687131747 212252465 978587633 325570565 656965281 552255019 467931889 537632733 456989335 318797019 448323 293390967 473906155 449443357 808275089 826254423 847381641 759442521 227056967 682164743 894910371 67377789 752225185 510550297 931706039 265272063 346187421 102269223 778660489 254339805 756986115 948404947 937054245 394798749 136370789 10071751 293880289 381952847 788016155 658399415 327757909 665155463 125205061 653825115 191721833 349301861 526678731 599439991 582324041 941878925 528686685 400714197 639863657 443310897 69935989 741961287 183629187 460493571 291404113 549033383 564823709 372851013 633669369 909474007 433857541 276805307 936854079 653085889 932947531 864929459 522052283 692557145 111833679 726093317 958229709 622327447 831871541 14439437 729066651 544143743 692688999 87899571 66951449 985983771 365943963 650529893 361398525 805211005 270142155 252975385 687627209 923665087 306969151 994540365 621480643 409985539 410814081 261246983 711201277 969601139 977699429 561560279 153952589 783553091 137210119 877373649 512913751 35321771 571000525 109703573 65278079 975331823 612577889 431260745 383635449 907565657 740965817 797915289 78127291 965539643 96949521 773777343 157379719 257344751 816523245 182557045 595443425 361958615 258296345 562103045 757726239 728787039 780208809 628791355 199066197 286434293 966675193 401903215 439396455 75633177 611273135 761873789 942091513 632261705 945206199 879113423 919271293 81477649 150507331 126432847 283076397 801307139 976031443 630718325 865990663 108463801 962437671 800238143 8330709 428967893 807374157 550570547 498684709 998122241 772616603 632218465 623753809 781227249 24443561 21087069 916381307 624316511 725999969 882594375 884806791 365396235 17367275 353697733 208476711 649379521 707076539 243947523 714994899 556641875 634608785 130587835 146445005 101853851 929999725 770157607 905178141 213233019 179245727 248895505 29943185 988269277 968322999 494971591 66130371 387929013 843736725 695543325 470299155 379276029 9585757 374702705 745184169 20725941 263064697 164163499 427229813 821054185 507900319 285609529 947410991 613706411 526607051 382978577 519235929 905194773 560095809 403703217 393939001 975403081 568391307 756152097 468803041 267963505 994099073 117874413 293916455 910666945 852196159 273062187 426933167 468303475 890461479 918567035 765665503 208023495 245280997 746279683 197454055 16375049 434095471 718401903 371646911 797144459 778356737 450195449 176509479 780294311 611034399 435954525 510254249 912024255 159168919 278668769 763991701 236211775 860638073 17679443 292626177 386785943 211523365 172716299 68344785 118468417 395651645 798475493 665570985 925731011 291781805 646165067 755241469 779202467 781133741 839289383 958675459 622175605 203583669 344408817 843135931 787567059 768197259 468851623 8681967 135646559 911093309 697400017 322772013 119922885 264914459 239801211 128346063 135492021 642944197 892114491 225203959 35060201 791917599 266858033 486287241 657052197 786244691 570647043 384536119 935301429 385850583 112461023 510607739 293530855 366601061 266167161 111111315 306300695 22466821 505629459 838490249 802548391 76529407 130160241 440106795 715466371 630095339 413529315 922331155 908037275 904097957 868368699 625634721 876933353 507424077 202856669 587085821 408804979 131901013 819334315 536268311 337531967 236709229 117595671 521965735 540469345 968201361 410518035 238251311 72203507 974225673 391861279 272649463 652651799 523453535 786431299 937818637 55803385 410024807 957335307 895778377 161421769 95982399 439714957 954850383 351026369 38342729 995066729 649979525 223604263 996237619 315662021 900174363 916200257 921383919 694297679 793033737 235774563 920011451 277823293 125867025 626255335 18977051 651504459 695161785 996541745 444179163 131581379 52021587 90555303 596440337 62670451 923194101 181465023 511631639 224999599 865348995 49570803 705712529 911784023 354966433 59933635 322840429 989875407 785140419 131675325 556711133 612851719 458949663 505269103 797549153 637773685 515473847 82007669 151787961 709798169 640562511 336721777 988767477 610892407 853247869 816539663 533825893 638950301 255705749 60034303 871645865 962670625 697898427 464156925 104663461 912330787 857329107 435995593 484830595 448211273 73530513 685202735 437230265 337831873 804013929 210005505 677469699 980909377 775434913 544308507 423157091 675082247 679778363 512526939 782720809 902382553 823230221 535722927 828893927 69281541 718590891 710549511 851407483 413921123 618261367 331536991 61347077 176083793 801528729 486639799 199066615 667418293 846789633 642796315 995260929 28468731 11495529 279952031 218833441 333778715 160047439 386083929 933602971 633997461 609371899 974578797 231668219 173528683 876126337 144537351 753247765 632676655 491828403 39256407 928520967 480078583 691006263 701917849 669082163 506747487 215482227 729842957 708819271 923373455 832064919 194253569 257524021 203729717 727543709 516757955 301169469 928604551 216246849 799617711 320545247 274523459 169581073 327713321 537727977 862533295 462858329 795873943 883503473 371597979 286539313 545528177 819650769 16257371 686620029 180210221 598998445 950873039 900495843 273380173 626558451 594943579 618981331 78658909 535858903 720710641 779980677 864174577 996402131 29606147 30642681 879638687 159945647 518941841 691830777 883833867 94571379 904033571 55742229 664742113 874853751 725054917 178877603 941480657 357199959 747790607 101979335 125101463 874972659 19249693 741632869 740085749 598996091 394213271 214716721 442815155 725063523 180281003 12460705 103253925 623892583 831623695 315648245 718107815 216080523 288466689 26767671 447973015 944864027 342549577 70832951 519884387 789653163 923705137 314028171 192465403 778179609 53756563 910223765 903242587 984202119 138492365 216026237 785173893 247514465 849771973 420445749 545144705 904120669 737656807 946023281 213148005 716340089 117734189 420295093 65189703 712401653 183522065 23065673 489431627 153354079 537992349 442044731 202887581 141229451 274376541 599392357 756745583 877510807 375703657 662567527 486335993 331566309 551858525 848202153 950971517 974801699 884629857 268035933 437264457 271287109 34715683 559025271 574014379 2520965 777936601 224443067 563857663 320099177 643374915 333718447 498461609 155859647 646557347 504332199 67242769 114014873 285808331 991607989 425031593 840401491 858696975 824207295 633019885 209495185 928729423 844922219 75785055 635919937 532713711 155132201 485005191 236725655 552302561 970669617 469407993 652475151 395352471 497282693 73102417 380760685 881596947 556194795 716326191 831632826 368852697 137544437 658413883 5372497 780216311 487095801 111814957 193803723 611187461 657988123 420565947 205016329 748682271 580633153 126657703 572124477 726778095 891988505 601644479 318430423 162605471 633128223 789630417 604033173 485625831 623726483 429206971 72678011 177364997 298166139 734229339 462482645 880021951 181413799 311678623 416488759 423074149 130681523 484021369 977440639 855539915 461782523 64012769 848161487 478930513 594172587 879370969 413599381 11888605 558154415 968996207 94153603 50307549 389872067 503108272 873392791 293119045 205157989 721640893 396397589 1955223 957572831 700606131 926881419 537821143 406453311 903612349 645998025 163403667 274615135 912012813 818780655 618168547 89405409 256831199 767729249 168391267 361654569 541206645 5710023 45009981 85901673 959106839 487195163 447844635 712095899 450120731 23238551 701587765 971717501 194153175 669752253 588441417 679010455 691093937 325224797 202605983 360099131 950372625 117096585 300151043 78598785 828880491 611771293 500125643 490491977 804163383 721405501 184934103 305225787 160700919 46932569 809820301 981343431 517582137 797895457 313423321 27295783 493603467 15051281 837569845 233307991 629120395 101220849 379650973 403156261 48377561 227277771 515142551 597930269 356170527 954049011 206900273 937512087 710685711 631864583 397363203 150959543 618812773 590970601 171312171 365880931 870467043 87409093 864127309 564072779 423046227 310886673 566722201 781849831 394216581 125569673 53362885 666238583 688831063 99065651 96532239 982823687 296905897 36225111 167505471 200198753 35212389 909745803 837553568 452995619 517093245 525400237 831130123 860069033 897103341 502798047 241565405 391270943 986300087 758936975 446228733 59183473 760846565 245245039 488511961 53131611 478780551 548702591 169436775 590386525 592407483 490978815 566937123 183299773 57608609 165589375 630117913 222082443 127476067 48889039 637826513 370657697 60589363 934112527 48173157 854413217 434556751 102346915 744144755 637990383 961676531 60959797 11538975 729341885 894189935 92382139 54885401 960666117 278235411 23667567 338144919 144817797 643871799 905522393 73273689 958067911 720366145 175210435 42710433 991182105 42768537 978936129 214847297 250046357 486279091 984069807 561129359 444272923 311233031 925057715 273308263 751445587 244612377 109963319 358263089 24047279 977898611 715940209 67517403 187864931 945679525 126253789 156243929 978914419 219717197 671200319 472975149 598888359 678413579 516122531 971487067 247124877 954900105 572449373 826536051 403981437 993930107 811652619 628666377 906320795 57664665 941092239 557887548 486287821 74269095 426704405 355943091 432418499 566795373 839426581 628600219 635428853 651194817 525171783 696423597 945627045 129155195 57193137 253578787 561404377 192730237 407098785 911107015 177851747 405550513 525877415 970750949 137372891 324682507 202236323 586766931 730038175 69949827 365533623 484734323 487098587 246546205 937778769 350417189 432384125 610940387 876748837 310267357 69612605 242132197 695432237 82344335 222868635 129243969 493004465 614918329 696563169 854514455 199588921 79240033 442616607 220558993 385290909 646596631 887510315 23938275 924249591 486762735 692413353 97148229 63308205 648836745 378836989 180934651 89005929 451287305 774622811 514132815 269218849 257740065 708462777 69977747 564560145 278807811 346304471 57064735 359966397 654983023 664031295 879839577 25305583 581672621 795195711 632309675 103038655 42986377 31727601 829542275 559776649 28603995 621990455 353875553 840866287 682277375 697268149 887066819 518271965 446359773 9637597 660955443 997288075 182781923 637761001 347252039 964764017 388396423 402161111 581958807 539610965 218901191 225105775 551927749 809223491 964616745 547078211 344877435 82796943 428161725 997566381 504405357 688872663 418813719 573871047 240020819 848091389 319856215 429527167 198501361 420198959 903218465 13942917 952506385 596089823 104094375 109826125 184371589 881135053 659789723 448993563 510660647 724582137 438512447 395807221 688762585 988581041 749830229 963492013 908585093 569294219 620108849 852294875 621813023 118180961 143201699 826084575 631084703 113114967 973307919 24113375 263817737 957778139 748915287 496050639 63196263 467104417 319683051 149602405 480130507 431373477 344212417 639078947 749530191 309908009 439758679 129655375 621957909 255632061 349676467 833273595 284705607 570730803 666082917 262440959 580930329 86336679 983599745 632474105 499368133 802633087 379946919 483112277 307070859 717417573 382706427 212007743 389557943 494799183 142115375 68244147 995951257 654833273 66501749 394037105 487056271 351086951 101289359 611467517 343795961 496567781 198204609 605458861 678286403 808312071 181357017 270092693 602105821 684503595 292793903 138613657 35604545 95371251 857197471 659625565 669656307 860253005 729073041 72480083 894852989 448671851 4679667 85504949 484362353 223775691 917776955 943202177 47635049 246251825 433127527 329111169 949501191 973572779 849091071 311978819 294771191 770335625 511114511 116864035 131353575 357364075 849816877 206109245 977574807 787076403 17516153 71595131 702432453 17387023 306155671 568285325 667129661 417896051 900169145 540823531 397485521 330942745 59715475 408864983 515152219 124522505 304261729 567372633 252470717 54638987 546911213 581620799 612128483 341150007 757661315 358845475 805531067 147686631 816080379 248950373 751940421 708727233 366709939 749116461 173349247 751849263 110068879 556902251 25926261 624668135 919081983 95371735 934172985 250180323 515610873 237078003 154720485 678800491 13231611 40405509 25590683 936467209 841825549 20991263 878038407 484340369 681995963 439285273 66816473 826414367 869065499 325396625 884198859 633137689 587705037 148566003 614824865 562289451 824928247 196597869 339764133 780174151 942702405 363481591 276051753 135408043 265167601 90978129 997985159 182332635 4556727 765538565 328143651 150997411 874302941 973292643 821325411 302840855 41671217 814703233 609367229 345453205 588721419 516949315 230895019 365329599 237393734 439218765 358698413 116866691 925310799 27285011 821314383 944363795 874902029 34240203 107991075 793365047 714984441 901652341 13577155 462211031 527925777 84701403 316858577 222032857 859026653 487095435 717991417 102059595 523377511 867109345 341485291 879156679 783962699 258234105 588759393 746777649 153920163 326997437 1985569 306031543 907370263 80618717 366866417 175378381 66748115 293808851 12040357 181845039 473662097 653893853 173011991 286838239 25900429 89890309 210954537 970812973 397969037 233008665 124624071 198706603 58829023 169935539 254391521 717305653 224981339 767537715 685560177 305590513 569617759 501645505 195684733 324897609 780274639 580914509 799836683 37386227 664909339 626443407 68349743 749883627 423384379 723616265 721446147 89030005 874444969 503001347 96278185 639942429 156217197 364885387 185789261 525651639 309005079 130894203 893872415 377121119 941392573 425779569 741039707 863628155 640037371 871779801 927650881 508765111 207830521 587939809 312222237 550734853 467417701 147322497 520242753 995884197 261816947 164940667 632553223 493298455 568785381 242001493 468231635 962742569 564912127 125843809 852819979 189467631 78565009 997587637 317658151 333212359 306485487 356791605 547257499 403941459 587898103 179882373 811845359 463694209 721522707 266678553 986507433 559968389 62079021 782619943 832516701 890909657 508298429 768324529 881405605 78118725 623607235 861457533 434812195 214877905 485023937 899617819 74604419 745676245 350860233 111389415 67512949 233256427 282029169 937957373 119904949 717940729 459299029 448235591 442625027 22883625 208939165 868772727 216029229 423657457 813902327 513729281 579799041 141942539 152418457 667335979 685104731 214748799 61413567 807170551 663580445 544029847 862089269 976246331 576183347 846669543 193754947 550302859 618906253 496278859 284377539 667927625 978718503 873933033 81775635 195011741 792445953 136771883 79496215 492805495 580597033 231786185 651571777 135220369 152909229 333404859 630969987 317216873 451188393 329052487 119915869 987484999 400930881 52536569 581018839 94829631 277609115 836642725 81186685 865210405 731267823 568384361 850504039 149702297 667126897 424099239 66658097 576822023 996418921 439551499 961971459 198297501 613658653 236147085 954572683 791637589 686378977 297099621 515691263 909737451 314734609 378455577 250760733 469001965 399746315 326249591 418195755 315898023 115957565 319062671 171663097 872475185 195907095 10668737 750253019 246669167 584322325 433727153 487842479 19658759 720774327 638826569 508365279 642473065 349195147 839657149 590947925 783658189 877518623 721035661 962661003 303557683 126820111 526846841 889298299 454941029 411111423 86907281 97240495 516853747 600641685 601857575 819967539 419429173 589421193 955907031 355900831 146138953 644725649 965699207 606638351 237927449 267104879 513280609 315604779 445540951 998508527 332264155 503699745 135016569 671690725 388588977 798942631 298376639 762666023 199418343 371968507 144772403 398515611 271762121 302599395 755745445 466717479 626749163 724875695 207988139 410591427 705946921 314215731 656089255 199548517 592093609 828050639 475524545 289405711 410788055 615813481 747894763 655897549 694368357 169774701 710199257 471240883 249845329 249490131 116064529 89895383 8850911 814523419 70191829 231411295 74931355 262866761 472361785 370902899 421354843 940417515 478799383 283907909 338139961 613520153 247611403 967393297 447057681 686836847 717676415 950769431 377749545 108524309 765538723 559354789 201061339 934293689 478870383 293214217 428440047 257888401 64676517 887701665 968935397 400314971 923739339 979869899 937533325 956292959 514243125 414103541 868851703 533075303 325375221 254359695 963197571 258763215 782808048 693718293 334546901 192766065 398434767 89655561 925676247 233971379 917021695 212333043 556047295 721708679 755308985 915908713 184446727 390115679 57861375 811206401 930239607 270567741 787207575 227313505 950901785 364494245 12307 378277169 693660993 364974757 708740299 833065763 851028875 105374165 596403933 982908915 867781085 16746321 264827701 375347555 131286369 850421953 537643903 25269051 335326348 358869587 922876215 347241041 379484189 697016765 477341 826134395 606947861 570420031 298910647 934904479 383317185 624621211 272196437 467992485 347716535 250639395 542606867 233938303 640394959 477095339 23573325 758560041 607287601 208759699 543509551 64507557 894495305 31125440 418581669 448513019 810466505 425111713 43466859 591360577 451655601 297490989 98892799 59579533 498795841 530228961 252993963 945309445 974767111 96286915 30805117 217681361 905770969 738943585 484738385 264432675 981491409 739513299 81761219 593328951 233674323 960099253 825112893 547385167 984285197 660304943 570183151 63081653 174141171 468643313 730832339 977197241 440463935 800773933 354168743 273843897 390353017 39168675 515418611 305356051 14448233 604113561 657941001 42165301 674153511 100273631 794053889 35540881 888082445 435523787 739075771 610296479 994301377 642765881 671089887 886226403 930931501 790802063 389304285 633134565 632761223 102779583 519560175 405668923 719504459 509686077 243260945 581636219 661934653 950706437 874555665 781847371 795194985 92469921 320364667 796219731 64987939 489307423 714051497 642546247 920929031 221613843 105590969 203571679 375788539 822989723 647807383 126499037 700971051 99363169 835682545 37946383 491307273 214530447 141549887 205786437 392281683 573554397 343869889 45553239 7917325 943636617 885755267 273709611 19706499 887331675 213652047 124143017 874450763 271712927 355788227 443863237 135882813 871659307 80791099 829424503 643617155 809221215 202748387 368883905 928078723 794167585 287736231 823939505 975714295 742034655 822689859 325508695 437979863 350241933 184348983 595122891 50149739 337038253 383290825 325681203 736455995 944853315 275782153 427260855 257292575 906755295 483569107 822245259 611989553 805266837 737680323 724765159 909639893 636413699 369882179 161840655 138806201 340361299 237457539 116455243 168848081 169696046 478880125 174909937 403753561 99914959 316896495 766103641 154797011 953434355 4353635 173809635 905585935 49963741 290589223 796517375 435362591 783476831 769715797 623292697 566514527 218100943 897037261 240896943 940155509 523636233 605814583 809820483 473977165 278094197 730121221 970829151 102250009 967854847 273918827 668179093 129269591 968020513 990607213 467784573 365438664 461306583 141188563 137398205 543925375 496091815 870710571 968816381 121359309 535345057 416336847 637375473 734190155 552986457 662154973 172131153 562956001 17137133 433667905 956864225 843010747 378320135 174894761 184746091 63014987 537153233 194577037 976408767 635167825 966489347 392483118 351383227 910150861 369922013 154439317 584049727 242683405 143943971 144060817 358141237 599143847 683625763 71446203 957687952 452115315 950810035 56360305 736714059 744761499 750455603 230142175 847500647 486535815 98970505 626653427 371804911 494503915 180014371 219508069 480103669 231442375 69417975 931507893 128116369 914683995 803001475 935419693 221309929 609827383 249198285 582786013 184852773 945645869 623306085 33755549 372680569 469269337 77461087 203153419 317632541 9430559 455817817 480417937 677135701 870392111 52290941 387482465 590991723 571694457 342368885 224821873 602422705 777691193 192146299 338952321 78303105 50250231 319702345 181836315 83686717 370798461 995499561 631611021 804170063 510966495 988069607 944621809 283035947 781014137 619922395 805833513 824367689 776604657 385598433 263605977 684244781 269332787 550505825 676582003 219287137 986176369 956922697 79804465 109375349 503174185 247775759 452005137 776488455 475659295 810916529 36262363 863457463 98325599 88944565 506667555 796304433 441895743 153851435 194684221 304095779 127071575 350319783 408978761 440612941 776905873 141722185 57533491 351906157 468218643 684177845 783427243 764021327 937592919 294131739 735374117 946076355 905199125 327204403 27529957 184455847 76278611 291014455 603219697 807310043 444808543 149484529 974471963 75907147 601319625 95219117 916536059 964691173 570841201 881447747 565648113 918863017 401744507 647008783 656234787 86915221 607817553 736205049 845239941 885224373 980126377 474175854 991075789 345022489 940968573 84370023 949937277 14487007 814109205 832419679 599703003 205931047 441865467 589833567 350823417 791171101 482489347 226690547 739049647 168864241 201347657 213187121 9370267 896978397 439978547 978474425 653275689 294788389 196648043 930568111 413226629 375800083 165457127 892805061 879123627 93500921 852775907 766542125 619812955 851613233 158665443 198571945 349491993 302697245 181057971 405773437 37535035 813217831 175742823 502248823 493499605 352078275 356719965 707063791 303713483 882124905 166511671 934636481 518912449 295986079 944728289 268443221 697355049 545740011 594900881 457040793 384080957 809684703 723490501 349167875 680309499 307767321 387961917 716124305 434913581 513903673 355685383 701348811 403840353 305586923 275861369 936085691 134819315 6204127 244798507 731195133 130878975 980416207 297985799 349408427 463355503 343677055 616638773 924123499 554708211 181209017 26660137 793763695 437925635 171764559 810347939 217588841 103275745 523974171 874437283 320984219 192485013 564638719 101177977 533398985 901895917 253674215 967170229 399617601 818625667 575408067 675208505 895171035 142228151 895916429 733691171 930539253 535016625 947901513 784818147 461071219 114200161 779903489 816938541 598119365 318268287 656562119 69421821 221433825 610136717 764694197 992176791 759235653 780766673 799390447 805364103 594646777 909023837 643469467 890844065 974410375 682657545 669601519 334053633 808592139 760608115 183052579 900236045 584671519 384356615 443218813 703714159 281178857 941786611 719244867 506104093 267234587 102572079 392622281 649969491 704023529 865589883 789233769 930393237 792848399 9868129 260682117 629176241 738543063 462387761 833100935 712375479 668742159 303739905 229689059 981519879 271649035 654839477 908741651 80266051 261805993 268785 984145559 741617751 318051409 428959273 991294203 209920123 851495409 18169235 3380433 489431847 379906817 827069743 267457459 367440675 361436283 168828871 388655685 259678583 854275303 790586089 198877997 584840315 440915797 960702961 214348321 397844167 704048219 134989051 697820379 340155973 463241493 462763505 82677275 55631133 96402985 996233091 332669101 456105669 477380809 815140395 840194147 238932727 343177129 111400743 149960471 319559355 586121735 952765825 917712813 846863705 797777577 110705415 758120203 188809065 374088925 208837971 462779175 362772423 39117691 748600005 319857147 418537619 157454817 533859205 933338759 52740671 915857651 691635843 67024855 887103099 850398753 437792887 652553725 455125829 333985889 162267363 103981843 462063583 193390899 491211535 66616893 418917337 279676825 789012233 245466273 46756357 112664357 223269547 881039989 870001025 388954349 323138707 115408371 762445487 944252557 67366189 749748315 316069437 300210477 415283623 468180219 214130205 965355641 716339961 413173793 868594829 708582315 707245285 853450793 828343569 898897535 337639153 37119093 548767605 645672507 134993775 144530545 799193807 444172975 984434293 556968589 626041465 909290799 173247719 459313477 606876951 622963097 168623977 161083417 165366167 972120407 616399215 830669461 940148779 809362515 557785647 239488331 223761747 394290181 516444075 876109525 100927183 518894187 555040169 63355095 339083439 214599437 786220729 65823479 743250499 535593975 402420023 934468077 736217389 407403201 113066559 918478445 469205067 686200710 127055035 427789887 322048205 980909553 598340701 590621481 26480935 596649005 289916057 285906943 207749653 170196975 327730613 542602139 570804123 546843001 615958451 419065313 818576387 148298383 131486569 438870711 567072997 199801217 619936107 110422293 602431517 83461155 103676187 786586095 821685965 88127701 343580577 709743437 311796833 407895931 255671021 320109365 852886415 315801221 129694905 906669243 431883603 592891883 976273283 612639993 818352113 3637287 978586515 908070419 538021877 519431491 803236861 275747377 826028339 755844043 447302037 955641989 339802569 409570263 926769659 870090827 693438233 598400515 804907163 639571907 638194385 594496119 99901347 888080697 24884195 856121825 609482509 287778817 929399695 95160439 700592021 86654833 453627989 814142199 196794825 831440365 424828163 32497063 112759029 298601441 892237231 468350293 857337393 286138045 533726899 121519195 598887777 703241725 953973171 189605264 630115883 151512611 975324317 207647075 795603199 631563703 746020517 977871035 613390357 990684237 935101253 613474323 720444525 298811263 895822661 147934821 396811985 867834353 810211247 729781307 282289361 161455179 86101717 318316193 357972933 150999103 856585561 58658351 527457739 765230985 516271897 651526145 575075021 825776361 312169543 696867007 516651389 877573933 274371297 494978967 714009169 14479395 295351545 667372351 273516169 471298983 93351233 664177397 324876591 480861341 535048309 354760063 491225619 994706413 57879337 361168941 737537739 154295177 906146363 84231635 474912185 32979821 696518093 179538385 498576133 696316569 525151819 799868683 972854689 666865691 865322861 736692467 520300097 936431617 138388778 854395515 933871211 486770791 365685451 865295141 946547041 999490161 974040025 337335797 86258487 671231815 59028777 988962425 49280455 703791387 570986457 844801993 883433901 40393257 401224779 668302209 597386579 396010419 852142381 292193993 744223209 202648833 27802739 152403279 872730215 548166247 742585943 830939209 17769615 850574913 521458785 780266357 234031079 244443117 623931993 435637273 607383235 458454745 414162263 456258565 206026037 781193591 709226165 983156877 431134755 861412415 276971799 758422929 413231155 874049715 613857131 448525431 509443797 946128993 595256293 188498219 821149505 864527319 646957313 256417575 823439737 175757233 919331971 205595751 283127619 868928403 165953653 83120241 180912945 476368165 831555119 974504275 321422747 904313625 272592205 844394149 815067551 636574251 212969135 432643715 964177961 620687901 529973639 615464085 880591077 394836663 252904005 436694793 250192719 449112783 909282727 546044821 775685543 575559995 298662321 544372855 873372659 467401697 375501487 498559351 763635973 406842025 424981557 507272929 658312051 852125829 158108193 991326347 937390751 757908593 125030805 253538005 27005363 955251823 180204031 532135845 79057563 907920009 495812113 231606119 749589779 143849935 997581001 684219413 395411865 975467357 339925611 762822185 785051255 22977879 545554309 214256045 753974971 912482277 456265191 364197679 580111169 30972475 29659057 939805379 159048613 626932113 718460487 633989895 854622545 459996713 59202387 881881123 902819445 524525137 496466377 325746373 904817419 305039703 128687337 74946851 175758801 997109913 843073331 830459389 904976207 406944375 522886007 848267669 129465047 527932763 994363847 745815741 86104961 939297975 20825727 833795017 876687661 846457863 218685763 640720281 958880131 90374093 128015875 984649875 911848179 39486097 836778479 960425893 510310327 572095977 797863045 598357827 659193547 212183403 410584199 877598831 339529981 938877373 433979653 948051885 497216985 358019463 448812113 348664845 65327289 120776317 986715913 721541155 114986939 479920215 196521231 233753869 600807115 445855193 248931471 147733875 553269911 151317450 141563647 597996165 960416151 193080835 36919837 449080565 956919053 724741719 733388009 683711491 876281855 371535789 40927409 635278967 338961981 367067373 779576841 230701981 682109795 323533835 784682959 108901963 653457869 294749439 507910693 685755361 519194535 711492813 168080761 968297285 820107231 808151677 754194813 654094821 552097579 104980517 218327601 573585589 173653777 824017885 337181909 786730807 529070805 915269829 866246905 10172015 784004231 747432459 640635245 823452653 216885251 680460257 248645969 297895621 990563301 388347519 740138249 547349141 183723671 530729769 459768127 672945797 433678153 384970537 109757929 951492677 545387765 408983759 457943873 279599879 146073433 337758841 856303823 361275019 328347647 380808583 901607005 144007193 284532021 211831139 689246463 579283837 505963285 976885377 549374481 158176269 158980735 134989145 941575225 473508267 743470109 833368943 67996769 271401399 684332379 690892363 527310527 688560165 805629811 78968963 191050703 911447657 491902055 827666607 67484501 835659905 306449407 63850607 499435357 6223859 506062025 119625587 358628155 755482319 949265183 525378663 747580045 735829161 138950687 320391689 115205685 307253151 659083957 651142171 820530529 657188187 542434959 955371111 336890499 366444551 465917221 278888895 587134553 940945243 613463225 367861499 779881703 312741271 189412689 267790849 632414843 994407037 13913535 808317115 708073637 358001247 980225691 190291991 345233221 976644883 985076549 136817939 592534909 309193461 980906211 473237425 383497915 289751533 58911081 275675131 890807731 865990249 657937037 50169603 593228127 30831711 859475663 461925347 414465031 986857549 190328441 448633531 736889395 222373945 415824539 560163259 456838075 707392689 846344205 361975311 938071225 212284879 259873901 850341111 814550675 159886379 71527205 824758961 232833779 745260529 188793959 563922311 679489743 154995659 453695529 469426895 890423139 627881969 687385387 815339489 642765619 551734563 312178167 998041375 619534601 311366053 455478747 66225907 702588159 52941893 195690993 94911185 257433451 894718809 430817819 134597681 864412661 468663747 65897469 661418391 597720199 399077861 607860233 922256269 293684313 335894703 797318777 735654821 105030883 396351637 676305483 96759673 531207403 740945049 341258823 197216171 833458557 76150593 945126401 970872549 454844653 716483991 989125837 677890267 382577625 703338039 61645515 698888517 652453923 18236985 52153319 765113063 66264569 855707209 359321297 73136779 980496589 281598353 978586109 287890947 537024095 148852939 59362479 3915047 246134191 244407601 318725101 960784093 34101771 507244941 212824457 664549391 15669257 999999275 526995739 954140333 881931395 787987171 459800835 10908849 385605533 40315409 229228903 852068639 714834887 233248157 69360955 942736641 303980207 574722293 691260213 733623913 341958743 421392143 675145943 114374001 698584577 99103081 536139623 871129403 753353015 317200139 50120439 370902769 961449169 446034303 520134495 341618375 36571625 486213089 230487869 15227637 903028453 932654025 612226301 47983295 845405295 511115875 913513931 89106799 533355647 353423705 467456675 614520151 366982475 544950757 672124229 649831633 841378909 363326915 96506167 970481471 647882623 81606199 401539273 268277259 494345159 996581653 8106517 763275177 260761229 237571501 972317181 535443091 866252921 393966563 638369573 224241225 75727479 255574809 562843391 500706391 563036345 579353919 209304261 865751887 293592509 618537931 646875765 679701451 320806727 560745147 686536153 106785133 833066853 556417429 264065407 667215327 702474087 44393065 299426243 765876181 935564013 349077707 690654145 644974089 433460441 830323931 31155811 24714810 714812505 698098239 779417945 210462263 59487713 982911269 458508315 280999631 195246123 832056129 52031211 702521051 895456063 214828757 702628305 986110019 229849957 500157861 194635163 812235481 802903093 631023103 458648291 199868873 278610825 621190075 744549641 186707415 461673607 441865525 86622005 571992341 694321305 80075349 23839063 714359695 402341493 924140939 870771495 324606039 327292693 888582857 244126503 751015047 58662081 477916815 780888477 626087489 399112195 329009379 778465179 305456559 73107119 227894869 888973817 363542533 79185633 451910905 358617173 463476349 450398207 77539695 429042203 602634071 734051253 880913885 508985209 628916447 422427381 85816049 96380007 883126887 147989245 48838367 658336165 233823049 965930577 530970729 431703485 881650151 959947197 729021907 848221695 616229549 911081301 734273515 577981313 85697803 427286391 313914121 471434791 820972667 612145605 601100299 626806677 185450371 73256493 432994645 349272127 495387305 830042593 253884375 329939547 767722881 875223649 182565895 39208169 430427045 497578093 191549157 821932723 946670519 472231699 862859507 573296967 630382177 668269737 809102659 70097409 333211479 178463689 237698153 166969085 634698835 306593367 757897605 645620261 254772757 144728705 179012925 593308713 710848873 14473659 723113663 217187715 218676769 528618433 441210561 935084401 481735193 977047445 841119359 498972925 498873903 645794951 531893955 426806773 885330767 988075817 359496411 833182707 714934637 962166871 678578075 423561047 895005315 603400759 851524193 577973321 460399505 788485427 229693463 933853113 680092067 74251009 664460327 291138143 405659853 908369821 431929225 138830781 205583653 852721227 505475003 142823707 42696143 473385623 740563909 825637511 476477943 392644437 460385075 588615643 806608845 419399075 652150555 413682613 423000971 334655459 336107807 213831809 560161399 614314177 918492767 299389805 947664343 162303539 81485455 517029233 381478399 993190007 289171683 590197839 878212425 335784205 461473049 38867853 435023127 479005123 552069751 478270333 639990485 568032685 743591115 671853109 477020403 547938857 146918765 283048601 475791341 466656729 467969083 20505423 710058819 475783083 209570969 884660165 20149889 320393683 471184505 763732279 114147897 443690699 929143629 218816421 198622983 793713755 666026773 841987285 155745929 190411915 239654745 754580823 298187885 160987315 790805029 409828743 200866147 680560237 243806991 513638017 162459175 934216351 245602360 34799407 476888185 333228659 83788101 524093763 426796581 771819615 444765793 184781361 549980669 536033053 280168775 297562175 810619101 506521269 124846643 737806703 265541283 859010417 223640299 911920791 193090877 536558309 177985983 401060427 756696475 722687725 38267011 58644461 199933113 221549743 451197845 171607717 756590231 466556821 584812255 69139555 963024705 826378327 742193355 770234593 324198345 608071661 368445779 751968925 577813835 310639773 181615345 458094047 175095781 31771379 713225647 56977851 221814725 511611587 820135961 614650629 347861531 827230251 287349829 887491933 118972963 756385421 81140949 85938735 89375261 479823253 817026027 732458409 500656727 844342843 592643125 98605509 237097503 434083255 897872877 986036031 913750737 836646031 934043087 131354789 623974609 310284689 871594019 170899779 209141381 125380301 517031347 239240241 123597669 935622307 393302233 741733203 487343333 392327351 297156211 571886671 668449677 842759411 900369127 176931221 952140771 498151051 877901601 688654173 142406011 786627839 786976127 581506215 378372593 160947983 595345231 447088189 149121507 173964235 520089799 282036655 714468351 291637125 266983695 844386389 246633973 628627161 791203517 796670029 349007745 441100717 707950835 624727425 642203493 326506539 698884691 249715875 419430505 241077193 942938637 601575465 272818273 395186755 643672791 572902227 327829801 233651869 769592303 159580971 552471455 657760291 521470491 460051841 493731505 9437033 372379819 775149035 84666447 21091147 791856755 820404427 527755381 762078955 418887379 999558217 794211877 482764225 995482287 879335767 68717671 405889139 650852217 10935977 601681743 215450115 51225635 398089157 471785209 952365493 893640751 557674989 903920259 855677205 746180767 899173175 866162459 464518905 271961863 127574391 101107953 181593211 169495671 576023887 843111489 690117631 454332563 44435239 507659853 713760819 180433021 830825007 589961309 941992713 471839205 937417055 994688199 330715329 287758337 400494713 161358817 229088987 87646815 431965957 853168913 260722983 91966165 361533265 625440703 841146037 170024611 951361909 223418973 885606629 854932813 207836245 125641063 479355995 376176307 367467159 552023135 757427201 754857531 162625451 461484749 857877005 517939153 907355337 473031493 738806521 217587439 833898483 898230883 981790349 648524687 634949359 916229061 955115731 674318139 161004623 708949785 233362719 865682945 25277547 404245265 997759245 913130867 14456417 513312357 355060611 349454773 460844829 359029463 667876267 161700969 592754763 738229813 426450940 634130367 847154023 796252493 923860783 979147629 541508785 431554301 144943947 871541169 455271983 287711011 161115803 84083795 517936307 616636333 476148405 223288221 840787667 721275789 622122865 445458795 45923825 326982587 229941751 357716503 97687351 899717689 704616883 377824647 644166801 577563413 178259289 199864877 182014907 233991005 84326371 602205693 230112051 476165679 418859415 116833139 198966083 193606569 563787009 26252953 341144313 19663353 907818487 280980989 536253233 446087249 957803667 759182769 186551175 345673193 262139961 707949657 166067045 229759237 396499095 194210327 31120635 817536493 854647457 283429275 741512771 349788151 922894737 105667867 13582331 862837369 489328111 420082007 925564587 517682649 737424515 391673489 682064293 162431615 539828581 82083739 371969537 326883805 556798191 897933513 611336607 762508655 166757063 129343739 497009191 336391095 835855575 709523095 57600009 352947519 781804117 592335499 658257279 231105431 218286781 66592075 661691783 332691037 421113555 801597401 137789161 543241265 992860579 962115769 58474807 938537917 770086273 113265913 583019977 65281715 509196041 302603057 499685565 830893263 17905697 446035583 686466559 944059603 62134005 289741191 248054333 171868553 467200247 745173369 791099375 36018369 169855461 955991309 657352279 390088793 242474179 399723901 247417979 857911087 570683613 733272465 238262315 803165235 72161993 484511897 354759427 799119185 892955487 90527595 971529055 998193799 612692681 875941219 474089835 451731671 652512109 972227945 329727509 213189451 99273989 335593193 175451155 690540531 202580873 368308445 552992491 264865517 641152577 953173697 64903649 305402713 449380021 170593691 943083781 440213601 429315517 479990521 866700339 719946295 688858739 506388979 789882375 554041623 603768123 435029031 586290411 878356547 639112387 53572793 654290961 323578117 875396863 473518427 637524589 345826223 862443563 309017919 999448003 67718809 40304073 595783205 986843035 192799017 260155305 221637461 901491779 193209543 293066973 66748059 196580821 825194983 809059009 623513421 959200561 683562241 680427003 283466059 273791745 199079321 239435127 455386619 536010929 904142137 213235559 837077835 753245563 437358193 318920777 671134385 813128033 150456287 871482849 318644779 814320171 861483811 801614907 540891455 532396135 624870375 808115371 794152955 103928431 497392351 792115405 852012535 106475361 265420483 53984135 901820241 654248489 21342551 600616453 922278317 326580853 376870499 255574713 115289405 142805437 609455293 751765603 395397555 20855875 1063229 373059843 485578063 109082125 661223365 538494695 934164441 410379757 654552639 689569189 844321693 996505723 243392925 922805525 652132467 939772695 244737245 396629089 596874935 501969639 992515069 362042609 546431057 653872607 672514311 33476985 29866415 288869813 726258449 644395257 55234757 741141225 77280051 491420081 113267221 825100229 685901199 44039217 672898980 826530649 429353039 418626123 481446911 471627389 345894567 25689115 550989117 599203535 872213455 818206981 877901309 689066425 224709131 180574905 706143845 844456813 436706213 932829222 558868257 381900769 587130349 318638731 577641577 259146709 536863809 419058285 919427325 892816851 504465665 658400407 165746463 575219497 583299223 140004637 851826083 603180273 112152183 826280029 526304985 785849101 414809625 466423287 992598947 893835041 91386369 991552477 600683623 841779615 856491193 93723967 205540371 439977153 284442067 618876827 608224029 734116229 235084521 609367989 111535747 369225907 166912157 523075737 96910539 483918303 936381337 786208413 223194373 392562269 548984421 144399449 583840197 852409423 816985661 260490679 282279979 174459291 203832929 554218205 49008861 92975351 748954311 119252293 795062023 930833109 401340737 587495079 630981473 687419513 743309737 500631563 253004075 715720937 476963553 637321913 135998761 160814071 414205395 558867273 344561833 427491131 541698675 53503125 820554883 782385429 492720825 582599361 969094163 116697515 287331241 461436987 543140929 362489329 726401613 855711927 142288507 483738271 519279287 638655023 465016247 629527345 435991809 372028395 45884275 955088115 506646605 683485045 295399093 735510005 786188741 648074145 416186125 841537551 584932253 146337163 612175759 11367391 991891471 82091929 910115291 986356689 17817179 398573173 168630039 920502033 84030413 968845333 768045807 960765595 915340469 292761269 63742109 577294895 111237489 19423193 944868827 900265299 78967649 403988813 62247411 634990679 418281969 215056933 838386865 191967061 763133841 793681343 126475117 394166575 565994683 47246525 395729413 187628681 637729523 771494923 158370269 728340695 5161411 165126625 697652965 779694413 741041597 342432951 120047763 112977903 185361787 728865875 629347557 839207063 782045343 354362049 743753569 663860637 237460691 154930007 143241751 490688403 369439435 849309101 189375643 747705731 614605633 598428845 523781901 146204247 711326709 382429567 929669907 324404671 372706483 940956311 406174937 194386229 656393805 344724149 158079001 547802869 454162845 553477593 449589007 831008525 524088965 932538963 909818241 681780809 805909231 685250997 81163709 51969347 591287759 49436123 930784155 488538459 769620511 320197609 636102007 977604537 504314847 803670861 817465 920086093 819519771 639142075 567855951 127169231 122298597 818108719 306220975 403099073 880422999 26628333 475794137 224712553 65163155 582003329 829624527 394496729 476544709 940953535 684264483 674015465 553925917 56330435 39673577 685221175 722540501 954900211 353999809 699020079 214619953 289655801 800081105 965120767 261467515 519555277 561180871 930694815 23443973 455415463 940538327 755863247 190377513 750359565 607402179 57711641 662544459 149813707 892279247 89401805 925467857 831376885 392095689 755158785 844508465 49680617 508445449 974230425 568149733 484007497 86206061 278468921 894636141 9966595 7403097 997362261 659456085 158512457 839256509 499607331 459370031 317800345 897061647 257373859 844097429 156763577 369972557 93274527 314162985 239490737 64492799 645598629 439154583 615885017 546166065 975880209 438111375 910023883 320052857 375226111 192495051 841910379 600964087 747219545 642833937 724298727 435701841 573896399 730245671 235895987 131486901 881770203 749079009 332104841 684073943 857807803 11897625 765906545 814495481 602422905 401833649 709747637 341346527 552998115 315239317 112834791 973949657 735572627 243806645 397923561 101097403 784852969 706054923 137959897 656599267 947337485 103892637 714738729 914299193 400100591 600024433 356651401 628060205 180827721 951853467 832516087 775737521 767615127 592921397 439500981 907221061 782484775 434254177 868596563 464294897 560517125 990925643 32948389 264369985 43671307 156318499 109326275 240993099 942634199 101079333 180118805 363615663 706485717 929668753 18766151 88882067 465966387 263937715 876184651 59881637 317174249 371422685 36836959 965085723 360766905 244888169 446909191 854985649 974339625 623958971 909701647 719620787 913323403 773381945 587183757 672382697 797636085 825381721 915061723 90696109 415291467 996295317 425866909 342822621 983486259 162723949 622740929 482673629 729829403 731068015 393134457 92168349 490324543 835421481 728851525 276823189 145518495 819655991 89717221 907231679 101172737 526650427 357769833 299711909 884428789 938025953 582998307 82923091 644842967 346421465 315102127 645927775 891363523 914307551 997258481 730705641 372732835 214925491 66694167 409099415 667769897 333333793 715474837 416432791 490653643 312261117 677355559 428771487 339819721 63356957 498378193 130563309 196369707 210212709 695936221 89465671 120388037 838859713 711644899 287277565 796273963 470103073 838010815 256273123 246866623 594262913 321178259 35054167 432634281 580586465 394681547 464112195 866964441 388988751 640723229 311009041 620034313 879938777 204930181 926663865 198803895 302356891 774418247 891079099 310463019 112188855 868394479 246598683 801103225 446945625 701675089 345046119 232196725 252960689 135766667 844111541 469011647 410843643 763572223 221672869 836314051 946733689 310344795 694929757 572961199 874271603 804551313 617319051 425692797 160026685 287285217 35072357 223547115 355160625 988924619 640090793 819993473 239807923 49374749 92605597 448927633 611371819 370013677 162125328 836428849 845718539 308333167 777634137 383214405 956292047 110922681 949948757 882935411 364515063 310146887 134887017 106175018 936274959 569447027 716489607 958609061 980970155 824671927 483225377 16114401 605574241 455531739 744143929 56058793 218494421 916815849 57944913 556662413 866201011 703159347 183170429 129574629 685652397 832385627 258480461 684379343 479604601 995371071 758091235 327826485 11779551 605724689 952860135 926794697 921320869 664217409 456529537 589600257 338746529 28662155 533576301 159594013 56202921 186289143 352077031 11190055 889910433 820245455 124655799 195703023 643234165 878133159 947602727 824517899 24588567 762384477 813929235 675960285 969887613 534086675 730740179 172203405 721210287 457194293 685619795 832245005 762187443 433627003 971940349 56838419 210793631 904443613 78372811 273213727 611608457 537323681 765887799 117643385 842833047 273485395 842959179 706413365 17469167 526560967 52319123 958561063 551531721 544419611 277482279 621818609 513323611 914057649 72295845 574635771 566047975 697488695 919063089 242014325 874816955 903916449 427124347 260845655 399176997 938323241 350612408 750782563 750093185 702984023 775097257 445682209 118763059 354853363 941693329 304146911 589364899 121385493 958984001 290137013 218024771 769775895 406697485 961626759 466905231 674733981 137277909 311157499 16435209 404313237 911318527 235448449 344585017 976088627 686252151 454491729 60095157 158793971 377337527 778417773 359402771 981563545 630488249 742191259 362863097 197742895 877609991 20018029 113695503 243074061 46229677 921466683 453723911 745664719 576336963 946262307 376097437 529039959 69932775 785261073 975256467 435646417 970591805 175228337 373779377 672534451 889739381 425191809 139994059 264229561 242249029 9721787 908066493 861504743 347456235 975759467 472326759 711399561 553376557 508767841 38026419 56708915 917391963 333407283 942669459 235448003 417288267 943589699 620126979 418833499 187418455 619675835 5897733 99570025 491348843 876831367 28564897 55820959 761363187 475796067 345263853 404666107 969267683 277110477 448031487 823717059 138014909 899838479 205583869 82664063 26540421 147429175 442217998 248582661 952266953 849328929 735194215 580576115 566952097 131093865 37070913 314830381 59603371 826030457 176166879 351119837 593371147 22013825 715701129 68264311 325444209 108118395 327068821 229931067 943928595 145247781 139716185 320214697 777411759 484233735 169319739 24305553 981384589 103514741 409970083 841938693 663048313 469892737 975992581 632731489 780606409 112311313 308823769 730330699 718407261 314403531 487010721 833017261 403198107 35698463 788802027 1488573 423958383 903522631 722459461 529832183 458292563 670575681 644509005 236897053 894541123 129687765 839871139 390356543 913347525 814508693 24677873 402926767 839031271 296876249 985902825 767312651 609491521 801383359 528946503 745314101 372723697 366372147 976757709 480460121 276204443 971899875 97356101 563182317 444882031 135035975 216572799 371777455 301046563 297649569 175604313 290051743 516303607 780571383 718951603 951116043 32919725 265162777 351999351 448403335 282489239 527619747 941774487 453714161 483822729 907819761 875069455 885929835 375514341 21932847 428232929 153914211 288925067 411700299 939786775 948642443 136664559 97164541 236056513 924733155 673316613 308018885 885363197 850111403 351993931 186781421 25435115 679759475 590768839 557366147 276930229 581359115 599664647 498025059 725929103 957274003 60375843 970795049 368660913 390838639 916755897 323591999 74985823 582554185 619026157 115966167 975223521 827077655 219081839 711981541 42282637 592943891 269286775 484240941 314164409 838600389 776077247 907978039 341599947 137477367 418885263 78987601 345666091 38537405 480153015 39752853 395145037 853201267 146718861 975579621 756538025 470642111 643733741 674935269 449110467 36219019 759232063 934487047 676118565 843418637 817769585 326247811 951441503 331296449 880475385 353016923 217956623 411186283 881142739 615533655 404328405 859501335 719999627 900788741 60944475 104259609 489131817 101105599 24093013 877379343 866803015 776813219 309799291 793257691 752891139 440556445 913629329 792510123 475180545 899770971 587705953 525055729 781615729 355776599 899311035 620258923 156666891 35987405 226217341 285780253 352226057 826522825 951420807 811658069 835911989 956429339 76732867 200663715 251228379 363659867 20327205 976888551 84750801 344034537 786675877 593604931 288661113 828284139 513326151 344454437 321848501 926188117 22864917 291355969 692165363 136781021 52102431 487783569 111659309 301836037 400145027 883855709 249515487 296049427 202145889 575437869 735297807 930786327 63304419 339806425 67666765 295190253 660434749 846260091 753328813 906556721 900964519 700713337 478449615 458984525 16611173 529839741 529991895 831463539 692480449 432703357 837225079 226450841 572186893 948538293 562734305 221265535 92462753 960160169 562987221 301119919 894587107 853637669 835376795 958478455 999567421 534476093 469262591 404438003 812966941 914733901 316647513 698553343 734995459 934844411 857623429 605513797 606685805 938947888 593099499 758310197 356892135 219431975 101888889 136808201 574854657 12871765 726782885 695444159 192299097 903702145 513630829 971480351 316963727 786209719 459592791 652003261 709416013 100551755 130930803 775515629 905742407 802059483 636518229 32518609 468387639 455173961 906992157 116234065 202693085 972474819 963687791 925674269 729865475 610618811 803211901 374962093 666858110 457431793 340088313 892835907 126584361 995674213 340406053 575614949 222347491 596609893 776774341 351919717 953989527 627624583 958262823 651400539 79931961 317804197 346951201 397179175 419227843 399160805 617987605 742569455 240373301 790996657 558914277 808121511 247532441 93656765 637588481 653306887 445790981 973061129 163186271 107259275 255561873 12938711 239604605 420429439 231772511 417127857 389594721 423458035 979186331 500389999 869479579 298839231 872938611 375421227 861852991 357997697 964745511 466450507 48805357 931741861 894685685 761866875 629829067 69964375 182358057 612080557 149662341 725806739 232676373 776634911 293454675 163704089 654263827 824600915 11988981 398459247 779078021 785492249 595194287 785987557 877283285 60301445 662975567 722621079 48895351 822851823 136577325 316434529 82935523 742013183 40214565 115163117 548927389 499060641 264862879 962794157 465420591 895658247 317841033 655433685 715191004 987914671 77026649 238113641 795458347 655957341 363130639 976156465 353462737 98412063 122496301 452760507 123286473 267667781 719706053 929384803 176991171 576513647 106776171 122128197 311509625 848006271 201965887 770530891 318966703 330272931 348569575 990247973 166141743 546998095 241351823 877635661 938701771 791269181 552160497 191786239 463680093 674793077 539385671 319869513 14948551 820746047 823982939 276751095 256237813 91377971 669773691 21831587 21777367 429927467 221879673 88228781 319645287 446337869 77830585 902140477 631703209 35151363 266071581 216049987 206112935 204708611 840235285 641618551 892858227 414513481 623249559 932002907 459265575 395148055 400162081 158487861 975584997 578067709 940568251 693131287 658699737 712731341 45726705 774068185 295337523 960521893 240672985 306217497 768408365 343215077 222386707 260874307 598670605 554640959 753348549 967054981 800548889 957843107 377595035 693874903 669461413 578065487 780815567 726227961 628100875 215412679 880938781 375839349 825702573 35335127 684920267 503386523 225124085 423756437 477589927 943965827 813497687 566330969 837078793 152645899 920778573 587667147 557090509 164051165 785529175 458969559 359436125 282882155 518914561 738017969 862230435 775818219 376794845 785321683 67297815 781769821 509304709 658175235 127910327 493395595 915934363 9656911 878122763 928440835 402546379 912381703 998475039 288694817 329336773 742813131 305355913 130625281 233599301 329947261 675133545 418054797 823664651 604540237 916775269 819028853 388615907 915851689 781768875 190707251 512347039 460277075 57368815 441602565 584009241 662170955 50496883 394336757 202642739 919582945 359153403 723272145 778501593 480441511 277888213 899058995 881316347 321393529 264410585 687215227 397869461 488902013 89060197 826646481 412002215 604042013 263733341 975929893 556724541 962443279 82295345 630892593 685123689 471109711 74120665 804077937 772412741 930583329 735274191 25290035 839936245 807492113 154240541 908575619 611349663 207104499 317204815 542868027 724432505 254877157 665493883 86813689 817101501 18313289 874274881 342551849 608918187 854243787 966237895 131683577 459945871 25610337 793918139 843269729 158441403 283750985 407376721 326687011 63387019 662297347 189515851 730529989 815101021 57355869 916467437 787737497 620035999 639322475 634775303 850416055 418910657 175678347 854126061 718176765 291774781 337159009 288448383 166946071 831041433 64231893 789013281 91685489 148580955 661895457 229431491 716847943 311917591 478557629 361171931 156561817 700880743 963465585 93773417 624104749 570743791 190829637 442817007 66588307 502366549 164366737 9601663 107083303 321165903 50453743 989097391 766851333 886670743 824025925 683497883 42633239 78000367 482386877 387088363 410845455 517984799 162407117 979895501 29543779 904978939 472728367 451863543 576343379 643933533 372666091 907282343 33377511 499517993 231303243 987246499 679344371 155034693 569496803 807148601 578632715 453464743 791671439 135405889 690900881 234499657 907832949 386202905 290266797 289724717 847624193 88569765 573861199 229375323 673803237 794498903 514661681 716595175 25812767 885877793 452175057 383065067 418311667 677781637 180914809 877803403 691024621 844009605 971625783 273236717 895977441 272903347 505656293 905394505 669997293 619993381 536612387 263417811 354023283 298648695 892420951 761337555 484703519 933837521 748588981 252828303 716051689 153135841 927374645 323406939 725019145 908451037 109836949 799191443 371878661 440380803 230013021 680119445 657639595 733033753 444170207 260049359 747462923 548424815 467148339 939746481 24392837 956864473 111723319 880593591 992536765 269360695 62506135 802955873 404325277 289612269 972342465 499763261 92531289 199608299 842732013 154662873 607327857 319653033 324472091 852597457 793265831 955076897 853882133 450427337 837667845 523060189 916537195 914648937 584205539 814273001 575021941 858277731 566935003 515246557 322216785 19411827 494520531 544892117 376154859 409767001 660536821 38781305 788658927 22150371 217647287 124057847 649837529 592696543 947298005 493515781 775492327 910045225 688063315 135747553 292335395 829994917 254065533 896306513 590509149 243160123 761192423 147277221 868695595 146758109 832591725 808697777 315422447 414305415 712211509 640514773 739926737 324982073 819955883 583442935 34695875 118326529 116423297 211885187 711720827 157756397 158465973 165191539 365029497 2592793 648871307 288111681 52640517 286218921 651564945 792321527 593734963 297505477 664460439 481471009 957951703 148812447 803728829 978259927 35844755 128553075 663867749 651101365 224446159 971122051 68779581 714158051 194461371 570478871 754242103 330735887 749379919 7384963 241614739 220236143 795470925 744762659 554301905 508596417 852617533 901699413 942952641 761998413 483322477 74857863 157173107 647354847 190339575 581869099 58274119 290674381 140192953 165192119 904664289 510793463 842074975 920023987 892890411 95362497 796346199 960456101 923733083 429536541 271012825 124261411 24822509 539893885 517009127 401328067 201703587 113330147 614950983 963244075 132928397 732004051 709029003 327251203 264931581 773022555 120189963 942529277 456601743 328961299 131093477 407894229 840349481 486765591 539718405 495402061 793226229 771867665 120067353 389620013 355479915 491898155 36513177 711026763 181465667 871721245 293126853 408466557 814243457 145463333 868554919 438518697 47919223 677592073 248521231 799682999 634789299 790728985 969479059 710091673 619308563 424358185 353460373 3807307 119229117 67991705 517343295 852102095 568758557 316510031 872598141 491270701 206893031 457268153 714772747 611335291 813168149 335334347 441607783 77795279 763122669 303717895 422310619 379157071 26729467 529512049 989225333 391663651 448633877 329422231 674727185 132748413 191982677 484148113 328277835 218840217 446266399 796772091 840844685 481021113 978522913 435180543 951463943 531324711 758952015 794394439 811582131 503722291 355099875 111038219 28232783 267267643 506699621 342141449 709192035 293744797 860350109 484071561 61975363 25304775 192851107 624464213 898633475 553739307 966254033 103911113 788134531 615647297 312828877 648905663 29924207 985863053 146339457 793899679 55282229 373425815 559164707 32612949 845452559 473285877 145199 257110875 695599867 968604221 632392553 37820589 825767105 32409877 125883101 211656913 215950835 803855909 11898335 734637269 158314985 212610849 611867915 757216081 750683841 256601025 703221831 227080545 401596519 369025225 424688063 567494575 956539785 395854081 515437285 84914532 553914527 935307327 923888503 469847867 730290923 625363545 903369337 937435759 759718771 701539381 233917239 146594249 491862535 453777083 885908551 334373013 243106883 454766047 708244609 366139305 326107267 510875033 494822927 718930533 5755635 788153068 854893911 811419567 619839617 879639779 829925395 799433461 422165477 845069201 927815739 197319981 32396959 90387213 843070231 840481235 629416441 554395261 50775599 854451185 823186433 10832649 327164507 873519381 406953619 902737637 718799541 230634067 539290187 200177225 820827553 950607689 252217235 571779193 94267341 284931361 445439389 373814461 454767917 842322821 76150109 334039915 385902077 241524141 728317591 546743003 981967809 491593049 79255763 678647407 340006467 683761611 634921567 582738321 426922651 274940629 63719767 844369075 668789797 670464461 527149719 274165331 883461505 424404623 715504841 766770157 506275233 180522627 238642525 473389329 101253301 767762327 683791243 529827407 217425723 233117503 552477013 770681407 559581431 254801277 839804547 967442567 621739509 693135829 801549731 354942159 61368713 976792663 521314063 64550347 132571983 574635671 30310885 285792307 917824045 863732917 809206545 653521867 876798287 926008917 173164097 676012125 381004071 474817959 327869167 789210811 153242741 351060067 831912279 566310845 3558713 717254339 673913221 274242377 524685761 470804113 754387529 434612039 317493667 79352345 735127099 493721259 240173753 911660337 501830843 676857453 191882279 410413625 713390831 392822417 534428507 478908695 48845003 368166177 751878407 814044729 686537733 981499183 397064235 579202965 976443167 257512403 141171463 881103273 897696863 506521907 255629355 723964027 903838421 425262969 199492969 348128923 702617949 429471699 274687197 239824925 38179219 924626817 912187373 488455585 447865569 91818177 575320643 93266251 806675833 994251229 998692053 963893195 674676561 999961131 255369437 804983129 261415721 690574083 727486179 350248111 964781963 340416199 682067377 947693591 922714053 479852513 527972699 510436445 878989043 864470469 889722943 828478937 338219249 105782251 802640381 313769831 700177769 471077591 757193351 574867823 276142283 150349075 923048205 611296479 417868113 964730417 605875981 406511149 500753913 310014921 948546379 349265495 17414539 781723777 241893075 634359267 951227803 366813955 182056443 956893665 688377213 950312189 215397723 976381669 443155795 524522543 962006749 874552335 698802437 928431959 541298855 111329283 609795907 903047489 79243827 334102003 471634053 156351421 317457721 902036625 698923021 407365801 647931585 460925727 191421665 883565797 553592851 452010591 88536787 203464541 909100487 560766373 951579003 921405951 266820791 34462657 176997177 85480139 113069831 212927511 591025715 619117247 5737765 464047497 771164509 116414695 716271301 872036743 424510831 146382165 870132707 335191303 273864677 549819425 979682753 247105415 897959435 525535345 328054767 773475341 798692849 241866095 338729791 17603625 657564015 400928587 278152397 164359919 276367651 891696191 586674943 666540543 365222777 318657422 320356991 220403837 458954141 238128261 54570307 631768603 189588619 641448819 93780871 440469233 448637955 517474483 397752527 503936527 578591115 323276199 829022439 516991339 962880371 250294713 882044131 294565869 559018967 368127837 335261217 980353772 578797459 57728781 393139011 778412103 129324881 670825033 297313589 743468899 685337731 947024029 686296623 475503663 345490013 344488603 518771881 593186849 172742883 471663323 565002345 613358903 804153309 156347653 654123387 902485241 51271131 311151805 265060661 731177843 426229043 958694073 186125617 596228155 275164935 858398641 766990419 637946737 635082303 702836585 407705545 855359673 849900171 729229739 583601157 7901765 449884517 59126601 94481863 20990407 797297419 314311965 265562895 349040001 82286469 825631497 685841453 944516407 372319653 752317177 567738035 196970295 491991555 694160349 682458749 311506265 676758015 272537263 737935023 613043707 963584193 822915957 891944119 619125505 476707897 735709237 288016201 411988187 78855711 820278785 210308961 458000255 855655669 733638135 423172419 746446699 466669825 686638137 320887163 266682535 328971093 703700717 247937501 844544957 403885769 112680777 905897093 175943881 958234875 8215687 364946649 150259813 600292183 876335335 575427203 207112377 818187 848914613 18150523 107858033 321522959 148271939 341887481 100017095 155562787 525234667 591421315 791273333 104229585 441593615 623014885 554512325 758334825 449824027 90956083 545614213 82264579 839649663 643651531 563060489 185007741 599037877 566668111 204421423 611966081 310797377 198832045 208280671 894325889 280008109 341443607 199610761 988114611 398479755 835881995 656281375 741767703 827912565 305953359 756818465 412332919 595889167 572594155 663332119 651297377 717011967 222324535 503360779 199194161 996083451 775905485 479448217 163770115 141046461 256972945 22836955 349908673 921826821 655017137 783117945 440822299 734930335 739240609 702013599 705687435 179361629 313954843 648238087 538948687 562276121 121230375 273239533 288233329 348697015 797310991 796660503 539510463 203718173 966962279 460406483 117786067 800160321 315525131 545355769 302949133 675564573 514903839 43101159 418670741 873547441 219898899 470513025 924706651 31823113 889569431 958197303 336195097 358310711 547051177 676050175 242910795 20279125 615045517 205775193 896400191 669480583 184490189 855434311 835951873 638758387 43969859 650709339 82813803 886111185 230511109 615533995 971826971 828460117 850127227 185901779 987656829 468174533 206331473 286316539 94108351 869082733 861314169 946772687 171623641 749052827 691547697 397676169 214795917 932011179 933882109 473602789 55708001 850847487 249045675 458509609 619928487 383938563 115134539 335370021 978050423 595109927 855497533 388918317 40418735 351768551 2857507 414173727 809806587 948646083 557734379 297006181 448727239 739256391 339752649 858307305 242718799 42179333 810711863 285902115 821509523 803969433 287945467 777430291 199722585 581159841 467404835 689902651 851107633 858051787 318372865 237784237 717842551 784682951 725366833 538068479 601344839 202261327 828485015 278077517 185512587 630866217 470958945 208765759 544862197 589528859 988548611 544034563 743079675 38178809 353097273 586330957 299804637 707446941 15928327 799180383 871456931 500399851 76612535 729426431 92142625 201883851 947016417 588043383 871893227 679407919 855081313 22377377 395229795 265950481 289419865 69225947 788494769 171866743 439145269 21603593 824096967 825109862 773818027 402092445 948021593 599058165 344390583 685437321 956003307 476099133 390691997 609007949 764997829 851551581 534785001 229917425 633213173 783550595 364081009 66681089 290932053 129552607 544059213 984301973 66156933 254662573 208052453 309310281 490787563 14474541 177974757 299631685 864989115 939594667 910030655 234172727 761299437 652416123 872719411 449383509 802896959 795943667 686157121 544409693 789108025 646602103 782731575 668586901 644917293 380248179 660464171 810797261 659195443 892927319 685245047 604304985 506614057 100043679 159181247 984780055 959656123 915795405 83730417 912900465 694123863 668981865 310605889 153735249 700247861 362984711 812306987 408305201 225885525 50988355 68225137 860375563 398977 389338555 145487395 394635369 582096969 945687325 9405843 677491799 620540421 393967385 991601501 266445933 850851283 360502123 852959077 451559879 591037343 541624531 650955227 997915917 237873173 480441375 885752879 273063789 164106673 705549085 261465631 739288989 692180401 723880361 604429485 964336859 946218271 358840999 831043881 987516397 767883723 922623743 875456549 340366883 420415819 283096227 353381503 33383505 782437377 856572815 46634585 323815895 477357589 743645893 154683423 171917209 441529977 977616717 443182985 130886921 670445539 665727803 101445263 849560345 147583443 920959659 755954807 497471307 986799505 173498555 73240781 758918307 476062513 588176537 707588197 121807023 62102151 678175861 923914845 482354311 225118773 715996299 129343257 457351111 850455203 584109085 852965697 11025815 204322561 540023411 93516495 836813733 589907015 466092003 916794875 157616423 671462967 444183235 624396877 701318619 700527193 514693753 541005709 159229705 306896635 576353899 920091347 280513659 440088631 413220625 438603641 329918349 583211243 730685153 312246819 297526295 429337539 215901021 870057921 885471109 195162669 66114067 803307137 724012995 737231713 514773905 335177957 108454981 619235681 875099765 386542255 418632461 323578355 591402589 939513321 977022367 537964457 396328183 523308523 353266697 13057755 239796469 439639633 16653283 440258727 671163149 463721469 953033545 344584185 74154247 631267867 457053155 509261951 924213419 591340833 439421919 862867377 910871241 226131915 224067315 573816271 797404221 649582109 369617759 645705955 313108203 81662051 329426149 470745533 551808699 876460593 891688407 411479795 124823713 805882213 394277385 519252455 341920149 348586273 794214363 253782467 495996313 333953235 725250867 984323699 126737083 718909229 728092797 563681203 515685385 712158509 498606515 978617857 611552417 556279577 90405201 342313895 402462369 859247481 849561437 460882867 600162359 246964771 285485669 508612353 393849493 777505589 880077441 164031277 178499827 406051859 797080653 986645409 694012307 753269863 134820337 296463501 738506435 36738853 724359197 958338027 505440209 124349325 898109699 68800633 334312475 510197791 502749539 97424063 362454529 141482411 527170947 575418385 652613101 464732227 589592115 656306051 17687377 514228291 430580169 116618997 232326569 396001617 940675361 672497683 285615991 734258007 379656353 795807563 322102085 229682011 672917819 663402711 233412259 358151529 887333731 165622197 296774959 40395187 573218837 804971181 545658759 228538233 336243675 543489361 583105625 561051917 445939139 947923705 614984535 441422093 270851681 78190531 286312505 437262683 511929555 553212315 587086787 644764707 213917123 963389743 176585405 179696349 384800859 121030391 333420285 346625345 259089747 987625525 813124187 357947477 27497961 966267887 962621879 69752165 695707365 571457527 737612799 840753413 179958163 125421027 929893669 239495187 285146825 90168855 439894817 136255153 662691303 909739191 20311287 527992653 543321555 558286519 762651055 552158619 734286843 854354125 621119327 635242901 879224659 11266681 847634975 909106305 874897757 7904005 481890575 157360109 716225821 125786751 823312223 325271209 734402083 538879683 395335995 237315541 126147971 201870445 776300769 493595605 84596955 178427879 538487699 490032467 616213333 329698402 562296475 898622021 425522331 806338261 987494985 217009381 187230693 877618945 824149243 551881915 981065969 847917679 226208785 314437521 442745607 437522797 509439733 420767355 685394419 757114391 169594395 713130709 317291277 582242121 986748923 942368069 725768241 975197613 454983193 877399733 777095367 798321331 891176957 19946331 672314555 35357587 731311165 685146035 713155975 690623055 171330417 590682497 991398695 677099695 314277691 848067281 208859937 604858177 954602309 673619703 94910341 585332831 568796225 977341841 821159911 328211751 16625901 653629825 656715877 721341573 686156549 513936885 465774249 638815783 370185305 888258911 82244828 770514823 381189049 721410685 634566329 820919009 885993471 53200211 44456573 504076355 46957835 187537455 421088235 8120951 27692237 697092257 368044885 833636379 584987185 804203657 530787473 255850637 530906679 918470409 646331387 730961651 909827803 503548815 51347835 707324737 49343533 792926415 595896191 672166189 117545789 825777603 965618173 29014329 895477541 591608499 485380979 275263915 679155207 428260905 662842855 690737555 76559373 787892727 675227625 669430221 587974251 245238333 670232461 440251381 230719065 91653727 656889201 371593077 700534299 252858887 290504127 546572415 46313979 132813355 922624801 713394953 897172297 715267079 834735057 546626515 890336099 892002847 951099017 551618919 543645865 330062143 369367443 896851219 198014341 52913019 239757243 973733363 454422379 58810159 564279641 412855779 777031123 901374465 81388361 916305037 256846657 114276315 393830387 604414561 161696831 258867701 979343941 642381721 273186911 895731655 900864181 758772531 469451067 527396375 619447361 906990583 345731957 979475953 339643759 730682745 685926327 465090985 738927949 91603725 27450805 654319581 427991669 695307477 68939047 805978223 337970687 323498681 385994449 301085581 191538327 266494313 17984893 81372329 886103911 704209757 540701437 568392579 583838505 77777879 420177707 732924187 928613655 155641821 506986729 569001153 902735867 904144193 12903201 329688325 152259873 361404827 898041799 312669895 430758753 276065099 606658771 652293163 758687255 565350521 852130121 168650139 971702315 625563155 114165299 251180747 15898891 791698647 604976547 471873467 509872045 243652159 304537523 201599405 344779663 232969623 387607941 139852331 321243065 357035759 636002371 641763853 123461557 42974751 843548705 399821423 200539807 62914501 329622359 342112177 131464207 152426061 270576425 808927365 685148465 714206947 174669537 146020571 637420977 128932995 378372305 920404209 791011011 988102893 990647635 529905225 309633577 668285351 213184969 460629683 433986855 222805249 561432991 771484483 308216715 259083543 238203203 138028881 899962539 39007429 369334069 742696325 899518569 169549493 126478067 993022155 942473767 775497817 515511817 690752853 847375317 529662693 839535881 163486625 472754409 315597407 175648909 131042675 931810657 178099337 893899319 140972249 352924869 402937 18599345 731220259 784348447 262252291 434383791 277662705 503381003 197741769 668433643 350244389 184804771 60739635 718138149 205893357 341564813 524071665 740039721 705539261 3238907 203461245 538805961 676270159 40688799 956494101 340138463 392199595 351383483 980120257 493024589 848877849 333021459 711073363 893135613 361298993 821721845 534991459 529848803 889534669 708169529 968160337 542520057 802381331 96771643 385794373 476394047 936595309 632435685 106130735 467823553 746302353 884533921 283486151 977974929 488204155 489056871 608940431 120467401 148494189 452390837 614610637 57290123 145071095 541464209 947580563 703448065 866461419 433113483 820398521 761055327 297041511 214792889 617136093 729481183 110474187 245440183 543736427 657556673 715996873 927254955 13720465 880663889 511019601 445273671 261735751 914735841 863277985 119965887 312438349 731365579 630248765 726884303 449418541 83255665 689160177 547595201 231957303 884006719 885011411 330008419 168169347 290593189 888691515 308487943 9521135 152274973 782256081 508427665 61205541 923108653 316644737 471068515 860962967 687702363 92374399 387426669 76618107 454121531 318024005 318495269 437570513 620887911 233406873 658732171 660114019 377801089 256886665 719451425 435631807 159902517 219316069 578023673 437638721 468836403 159589325 786507945 76609285 486778421 366566053 437346125 364105973 993479679 86956055 85035403 200692417 126683741 902569367 450844821 919109347 121517341 63761637 262414111 421429401 371156507 760268033 736521831 816361197 526626361 804689723 95409971 235705773 330582627 19435045 761813201 793908339 832259721 912052379 192116249 315962783 645283493 392203971 744653929 138301273 575432635 634337031 247799973 141020305 515988695 895851293 596863037 401662977 955338247 594333953 999787559 608487717 313255783 141703159 945817571 420975947 401915417 73877899 741564531 967122047 826402121 13176977 356955497 18967707 726066471 881005095 891573723 193597501 443762157 464328367 786256741 558641617 607898849 280230613 255191855 809144965 234807625 454160529 531436261 130272081 439336313 424825371 376840129 563024375 20034507 872821497 125851007 407694333 582634403 530438391 353123173 347415477 199785575 387229995 819543361 669172023 341669005 222918381 928193131 820666209 686460047 514847975 461437121 500802783 468649453 40595967 64489383 40219421 278186035 409585775 835399439 517540183 704618997 133665455 274343019 373133 689566665 696909447 279784379 239151493 832956755 647747071 199594119 838362063 632689727 559838319 955058907 467703495 387518269 460003697 488303695 385769865 393857289 356199403 765983487 592569599 899556195 932100359 484245651 561875675 165783063 729056059 397226295 342693011 343577591 389669697 898228389 632043623 366818783 503615265 320378137 853879393 459296685 912655141 668056665 862135631 868843855 800723169 319499957 218915275 69344693 880548913 195496961 903056181 64118747 13079099 109984925 680859317 865574849 381977707 776305261 141359677 756351859 258397555 906040289 354654081 429911045 853438033 824057073 136133893 237619853 830893385 460707351 7419665 252139311 162426087 718715741 131943603 539217943 434913023 677745999 383674565 970983029 932341679 58072069 384208615 902292869 66225753 651927067 296970367 956348807 445616811 87877049 159920067 717193929 86451095 263285133 563583653 644091033 146268763 478665163 589373417 323658835 93688701 151748917 924973077 601714779 320574917 517663761 428879483 145828119 990221641 333269289 811712051 133142015 753785447 231473879 96026395 625269383 83568323 46753273 792218847 257242935 375200839 212331765 771106285 249148565 406620711 54647479 531530365 604035127 869048803 993599415 840688527 902096819 294101565 751495925 535833069 879132589 159820863 681552629 773777703 257311953 53390401 819709637 747231381 503075535 896935133 737667325 581783125 176358755 325872121 930590905 792911443 583128399 497758143 410251937 565535547 473819483 335358373 863198691 274993033 48698715 782050151 768104245 343035003 341269803 142505481 382091733 394508059 743975337 782742231 181490313 620156729 421318595 327188069 706928289 453692011 786168681 847449999 565338353 889568019 10843287 114622075 306061529 997331803 184610383 413787541 164204349 246822959 711109529 651082895 70042511 927361099 248313993 755768167 651282113 615567149 223827259 627006817 789976661 825664029 873120973 723379211 907400015 439151919 541191277 535642165 406174525 986209847 924847693 510520575 770094903 905181143 344138917 29961931 209888985 498158711 45077687 255248455 545422667 778716487 116844495 762407781 428666427 799370047 730602049 828975717 824767711 387007009 197497955 934492359 882447605 746718069 219247515 595707483 550828483 942584713 288801105 672171057 793257753 187241591 169199095 307818409 66073675 447919901 733819913 49619303 538401081 362193959 317570313 383742549 450060617 671162627 846716031 118335145 134949479 721854697 559344383 788659935 297312269 825491931 152455461 588935353 918304311 177657247 642013839 266656327 942121577 347321031 948534507 943091931 453905591 300204459 175940331 524492305 433847987 574235497 58420551 283439823 361424507 921767149 147611585 559012929 336776119 253970917 766208039 435918553 730238613 546396105 80795975 119622485 135145675 964592345 588828671 23867833 893778583 160035615 582655021 594960465 510229441 577252203 183840191 918111409 430452885 663549011 680136615 347991221 614393065 634355513 420034269 414811013 981882653 693113671 755124579 248148615 451821335 837237353 976403271 730517621 704938819 747509851 832242583 375308359 137667995 921996187 585846641 581755971 574399641 954369139 125429493 795210485 830764615 387835379 569679949 913137715 652206899 916438769 223270059 160833559 294878063 374982927 134278475 644304389 168350111 740082101 945727599 131846571 748621285 603294995 252511 2615293 928259313 645782307 128745585 363627573 646583033 125456547 609540603 321806555 288863421 546941979 667076451 814841017 96970367 201423583 747165457 488459233 744513809 90838019 855082617 703834293 263093959 736483687 280067859 982243539 544262785 860985015 769647457 914059819 589206693 586030177 780824049 269310449 221677601 657233055 651124817 392141729 422547305 371807855 330371103 465559039 561995647 388934297 813456891 206775319 176372967 256794287 558881423 834569277 190651057 276345865 522995085 816328973 85538671 616048325 881498801 571398253 389318725 812488399 165569725 480571529 76870613 514631381 556923515 291186387 322267983 296530767 192371643 211639049 764952939 751302015 343213659 570455599 400026979 983681643 778763579 740509585 822315007 977174501 242686277 97221 999301263 516464515 190040683 579199909 198580201 183398825 178337449 848772437 270934889 218064507 91994881 346779459 206830583 310537453 250320509 762584353 931621119 498658229 197430061 880494317 547357563 939833427 552944943 346334701 551767271 937339409 46827939 963220905 340743241 790157053 596274099 925694713 864319279 240224499 809080721 648047351 957443249 554459279 875068795 119582727 936026221 668364347 545889965 265499353 938562951 814582057 173549687 220466523 673147313 440133709 948913961 181574095 657841693 230841707 564816155 329444791 423866507 671784459 135206323 277269213 712250947 304693371 320718425 991653977 466442513 87924951 588706689 92829575 739422795 468926459 114023843 398471943 998814673 112038545 927253571 907070923 537497353 681956873 995021547 1480707 677591009 830549915 464501291 732743213 73602511 747083593 570482849 548307469 352264913 607834331 429443565 16811951 416759405 381406943 796057017 515199079 150689969 693810095 306993337 241402833 810876213 361955435 334564261 824706773 15490071 728926201 977314369 714195097 934786813 687240205 168425557 153835927 242973203 206238239 205421238 345643143 363688721 595165291 998700607 210668911 847953463 239125247 866706127 992610971 867984199 529506469 335344721 176361889 626974867 722692091 676816825 401669723 639544817 200511071 843943935 851079149 132855229 404341495 471821095 815248837 201556959 664549303 236491067 783344279 229073605 578533461 3974475 406445917 120320101 484367187 560135797 973473373 599063869 13719799 767920345 547558949 857290067 937048145 399542433 323353735 991291701 281726013 891042049 923264927 704306427 268505175 456573233 500323027 100609347 587199497 333085045 746567629 998167091 297949573 340843543 774264195 56023159 859105473 69381225 154179377 53682247 64057981 550373315 854872921 814270563 728559427 915520651 864377547 146938127 317965409 669575467 640688025 792092441 87812851 848910097 378858017 206399191 211368661 878986173 694721029 590380843 983335857 707109293 737549105 548015735 832648695 716797803 188681947 681808297 409695201 669154957 730981503 873362747 769703021 192088235 363495649 16660009 30245475 972509799 147673357 336056571 201766231 793917547 673584985 823402683 227062429 108278379 98282079 97319939 630156375 964027423 901498371 860322801 521199213 760194635 292230257 125965611 357698959 842237881 122034977 948551389 814246965 900854331 21121483 900777921 361235873 308067755 397517687 697782033 821542105 659623147 104592749 322220439 161389487 900840677 396678213 101706911 633733051 652853645 277533913 502612225 87842653 388393179 893583181 430871577 379921085 906699219 642209807 864330447 95075529 441004415 37103315 171037841 859798079 335180273 312276885 225107029 891696281 316582211 37055895 988889497 340041507 527214743 926807657 368379747 893794285 923883287 939376861 628938563 861744847 695576311 884691471 79376973 253309543 936944241 213005925 470944289 800127265 440838341 723227785 50267621 642327593 915310399 837678705 701142341 560782971 509329967 822130777 981856123 670730199 611833331 352861637 958263873 834914243 710305771 887774849 524388065 494243471 595580803 511297953 528146217 790803031 586558763 218143363 538589291 836227063 339027805 643336649 204337291 644702745 689128861 864309343 449396971 301707823 56554869 942233725 879106939 777171821 28361079 100213915 118927793 407071705 459021885 706420351 50133387 877895989 610979689 737799733 102758031 670334999 702405799 240333075 947188941 777850579 613457061 680838835 332221401 761167499 693495843 353397241 325162451 649794599 211035359 334077971 536916065 684687191 217416357 848996723 926692273 490059157 488812103 796748505 327497079 671599391 115360927 180480581 461564405 106315261 443435407 92187655 571745519 386299649 448512771 368328113 634593971 864522435 791917545 92370719 938450713 275442339 565349185 776751477 494623869 913274313 68906249 151641633 630186695 738585637 324278093 657962967 928581733 39863151 499613471 222384019 565834575 156422697 746231705 180765081 243616767 67662489 937470685 513883765 250138237 895037905 90617623 957482491 463312729 298612393 945233783 119437383 597871783 139166911 440881975 509270719 505169671 38174079 782473371 432835853 628444319 491792151 678419949 67123241 833986589 150629759 875955327 157092171 242354101 193052535 745379755 392282361 717399081 599866761 871484885 180909567 940904893 532160773 171849571 456930417 86144319 720439043 473704907 539723949 46159111 684895585 111761543 177460821 549197811 720565193 66093079 830208343 166472807 862249645 648756487 353629413 21072211 760291907 970847977 80290429 307394861 998549899 760411991 224031461 715042037 687028047 447237363 681567013 345811245 920983325 38251625 268434837 850243303 655961169 556922217 992938703 452123831 129428743 944278445 794294967 661605821 152429353 43568123 129659259 683926175 740437863 432977689 381186191 466381963 862979131 829825754 400965549 876460599 702290659 273315099 555318237 754394335 341024873 372733627 122066537 277840717 473991835 369106087 735084517 781268175 901439251 30694095 113026861 461913145 590033457 21179693 988516967 258744041 778243101 6476999 29963261 668494280 408881095 439637667 380259237 228810307 60878825 809943253 745923931 684752719 955752447 337629559 329315939 581607531 393981783 156530603 379110985 677795487 498421245 125475997 354162145 638594423 66527179 619458685 350622279 593559561 988310367 979765127 681935841 463473653 391450405 78225147 810825051 437788769 673332811 600066085 764434599 672366331 855775177 765492567 979919875 246117113 987630945 806142187 689245939 256341017 433216665 922149957 519060293 87039393 608231363 562011339 546808329 560812895 661572855 415193845 974481055 184426155 916671251 156733239 76482473 359696739 238735043 933210393 441126421 669944555 335623027 531423777 674405399 315910450 870410847 678162659 855769641 720655283 972267399 490175993 583988753 682296421 121265329 969968901 509669853 420965075 868848237 872991667 703070943 648499977 757314327 618423987 674012851 404041885 700986827 764040385 581901373 970613679 695264627 29720477 645884075 934221285 373044673 855526677 499982961 367454573 461487659 51864567 792233035 403283453 746114801 315867423 482148925 934669267 492692509 563282031 751959697 394422453 211265661 524706771 197715681 450935027 563586219 416032315 130448131 881859681 227900423 603480227 276137503 893192541 301798329 897944843 598406047 35710417 159916467 244409729 86320697 806220327 399295401 932755219 527140073 99937879 846553119 554871517 357605363 829847265 493149533 639047939 788940259 214732745 712353905 452269995 677522063 278623133 349338165 364654603 640457743 510096499 876695625 903892829 567567819 503610093 308263443 606968291 232508783 774007597 239029193 59725285 465920495 984103905 901941085 514057911 371615365 517605187 746874771 651026867 654860727 890998287 895358705 846122813 227346001 275589771 284346569 721611197 148509289 721025927 341915699 976805029 186876505 691552087 468352269 706131825 358027205 235882715 580082947 399583393 467368603 35747959 412428419 95808195 213712399 968056605 294776773 56670053 635133853 619439423 68056521 816824355 784073223 99763167 799894361 114414497 799187037 973590913 831632389 635911813 389761777 758126899 975803685 465246343 331682910 753471883 185363671 628858205 237735051 374229419 204129543 769419721 840313253 436674101 183248481 231124631 661429021 42133593 364316001 523222427 380188849 155497675 880022341 425905835 697428835 583445711 990471447 921186989 570918531 748939045 800424103 248742023 213611683 196821789 541510027 897962033 496717985 952231825 671423013 983260065 373823135 882473433 14226591 187021785 70323465 43269857 824519653 629604325 78841239 250831893 117077683 419121113 945876545 108235369 874251399 426651083 961169997 142534495 4460201 914441441 385818951 411454969 987862317 619351619 277479429 435683275 376182247 153409059 357108639 240914405 372469113 860308157 76163711 465765355 374846027 334871889 600446283 352591103 954444173 634336045 11649533 179537105 445039159 977377439 244296909 311845527 968427019 183905797 395232579 940905487 158562449 337114301 323556647 423526015 789185559 355933237 734807953 359618487 210879671 846531805 713159131 142326027 454378319 274714417 739237033 752810587 999182987 767190707 891936491 556519693 702844889 307549931 81893071 758183693 434363505 46964335 503171287 99598805 824958037 614170581 783410885 763096415 358116683 579043011 2750117 776889141 737474021 141160673 638075851 552975717 911960699 111058145 831322067 545811841 874650155 222061439 875264419 544374189 62466017 451358845 227879525 730702219 616053579 943486371 714818191 183294283 319175649 861555655 822565597 961459363 66650595 186109887 533195603 402897873 444236123 793083761 498801725 572053149 361842457 765083333 937419567 916691281 498742707 887377069 337178119 721865673 942486155 263839781 344398823 306157663 59195595 968562991 284843581 128930041 365092447 99784147 439731131 58515465 170228995 694673703 195905887 631616385 817205045 426642497 347662191 822098915 194146111 467278151 178265715 257832755 526226481 32378465 545883715 901597183 693856993 966044353 617897207 798370399 826416369 382732707 611141625 779167473 817038281 606875465 658104560 871634393 49464729 439961597 706357459 559791047 860731995 999330063 488817375 57636593 484846797 181772765 992875413 678896149 374861175 789686469 186415557 120392571 838346157 72756277 666768257 883321327 790278275 843619231 491934501 164185031 406951899 308218491 364397655 769952739 743929691 959915341 883414785 159813289 925537145 255323293 437866585 334538503 485654631 964644353 840079323 706141553 862631721 590873359 930613833 525803241 926404229 89774189 970075315 31375347 276815373 798982851 197528939 416683421 744299801 976165317 15531791 906221183 804412359 844298027 121579905 122837431 401777155 160633271 32755949 326277609 671166587 765708343 825255627 625883717 563776423 122790009 928787155 673552769 44631753 289389659 106862603 419400413 584329959 306911933 948068799 438276891 251530195 469457032 51099267 161365901 500829987 477193649 609793333 773725961 179126075 620225587 99061751 300162795 953632831 731257099 153085751 455743515 531947811 362999113 569724585 83233797 699239581 78569725 497049671 550690211 402723373 772986943 923188055 908248689 852948765 318170165 371813735 482588533 201539451 271875591 146712903 875987517 286437667 938235369 795771927 704849377 13110961 233229331 478518843 873038847 348419215 574830025 745486429 748502459 697657327 831416403 799689843 727730885 233713605 173600775 16053433 444026453 224375255 468587325 695618225 58730021 598611367 837972821 974682667 89588095 883504011 220560319 50912825 852368431 24139671 439208679 495388727 759913867 436944557 337004875 385835211 942805875 115790197 85478509 762832607 810014029 538879327 251490775 720212137 759812359 98980771 817875483 879147685 469383703 52187715 519745489 476274327 658982011 52171527 7101599 597262987 817122233 501375101 506914349 870732245 221140447 247394047 528659759 44917267 98985605 421953965 362319965 306300967 302173641 92589421 562066299 847580479 823543631 211520499 859381331 841546701 195052361 876153527 423306677 567465103 964220265 276491253 188185215 482125193 292052463 612265915 49215633 260958985 94253219 642027731 127389141 232466591 596007376 415471579 681584447 534179883 285158225 468949553 470827975 66531023 24501631 998678267 127430001 921495545 553206851 25103405 330786375 400500317 794351627 959796605 124265305 173506295 832471755 887964013 548796869 16034825 947774213 168351299 913195435 547105315 511120063 168717583 425860405 485503765 67818627 395408045 453513111 542521089 292250219 908868793 880670217 306902341 807820053 400502943 829609167 282736529 691689125 366968459 762004531 904418009 697653709 679521913 193493895 107606105 983133887 800870183 639889445 257380501 618689597 43802399 98368623 360807001 847590025 264281007 478461135 412623289 551468661 159089651 406524601 576532753 847252567 441766855 661508517 313729543 372190475 409552085 385112599 705064583 175714041 879534988 842028185 246141379 74849551 779547177 280276155 550102841 987527619 483047847 589341723 290666925 431331859 188168913 967241561 545387051 641517701 294465845 357559585 651972359 317452841 64247853 531803937 826228447 338610067 687857625 302374169 913818005 534366691 983686689 747453383 34483543 195112895 115143093 134328823 287159193 438919251 123312909 137887097 837230101 529932375 221907819 845307435 977484753 381967627 491174869 378805485 92443163 571109683 923434013 897418923 96715651 469547037 272259547 957510483 573529833 18850977 775593327 845350629 524785265 164963867 527956225 280681567 309537413 846055795 314412415 988628173 311215833 807205399 682522535 790347327 404691821 410764541 512174835 152623315 954998659 386537891 244335791 363131817 292890277 618256142 323892971 277862381 950360491 36171985 649202559 332171727 107221937 891780093 33410825 851437449 439478551 942544947 874466805 759960159 678525071 761069209 579603311 913061787 29577737 905213659 261960307 271036303 655034819 558793779 342974657 610557589 717013825 748814939 946363871 136392207 865676877 813646493 714714141 847172455 782618625 819861701 642810263 409921809 152527794 437878315 418143017 726152581 418029067 443344555 503257981 71767625 728905717 842720175 674063877 216590049 543236003 966022433 297499125 699955685 437818771 745998457 307177299 882426861 445532555 639722421 33257953 711301787 213381523 301572187 661442613 580113819 77024513 416325243 23858851 326328733 515816307 748529577 366433357 756811611 960219083 591969285 432679963 806533785 153229111 42489653 533353917 779176737 959195691 656572773 602006701 70544325 296928097 947469903 654388009 633283935 807397601 442862637 723759929 863937489 437337331 952487625 610902959 307885319 6624559 444741745 843575075 392740849 553340783 870593785 432255221 486331785 678503129 131948223 9116749 879276499 980012247 364704171 17377563 175680729 221010975 154588715 82012951 988291501 695557549 187047989 403303107 386708841 198039491 127157321 599701605 895698991 761934577 117163625 825945359 666661419 799600905 227284775 634177945 719801997 786708009 984935575 389610913 849040015 421519283 498549081 389423251 851990135 790440275 777076627 91894941 425833611 86938111 377366001 965984183 197229599 339726579 997528749 955396769 135453325 269647027 441744515 692820453 858674743 523869707 661364153 27618003 358557575 98870033 538823965 446739587 406800369 742518301 458423559 29719251 616779503 344611543 97409109 319485293 722100993 227641131 322204523 517390019 788519091 368410701 456707385 808426251 997972887 791354807 876435509 434460485 597134151 402098223 37334877 242850363 186822759 935985347 431676729 208170875 249027485 333731779 786005717 643786849 60629663 545859023 881753799 343280393 495553831 274700491 677794863 365372253 777550837 643652833 49199027 291791887 191176149 560504709 127379585 858864019 795298457 435937911 996623693 653115693 393723931 252219065 281169241 155238885 454031677 971965333 375429481 727595401 478085355 690490787 58566349 543047091 936936213 740630973 432098393 288424643 508368823 462005769 221368683 343321825 723902417 760215793 26654443 401720061 763756143 699587115 425332297 598639569 735218083 425235379 858758775 389975771 369621895 65933517 39724789 250643811 822419775 584541957 8646859 234194811 528464369 785717039 527445893 862361851 471130579 774588009 821438009 422206593 634496799 111848213 295247495 752737401 330315029 293764575 740694933 193790481 588700417 42869951 972488465 124954689 92890935 982709229 556942385 316994763 639477261 35602671 763032753 410226485 421343975 739934097 787251165 450474449 665563953 376545001 664807293 33820343 324018523 97174095 929457899 877661893 572257761 549450349 739811845 262525095 46281283 336934955 581274159 873689033 384640525 347287485 395678041 861513063 580970449 975310243 608934139 887652225 886059049 283449757 716613903 847123933 386871481 283228601 264368927 243455243 326182695 92061005 985050935 97902439 598263339 86529011 951063277 828369933 375271033 611033233 665038945 575244775 176047065 673793617 159768889 240228519 567025169 656616873 323992483 810895299 324439029 622956885 158512981 63344507 829307999 607876439 147136653 230653913 58794291 95448063 80705809 52950955 870002263 94513375 81952047 296770779 922293443 876190675 599008959 92834521 439407467 96052737 854775839 814918333 608052823 420780245 722976053 514034473 40274317 114824961 584434797 46168017 881519137 58271107 362494911 821630265 84014893 418686111 552629163 97605033 452141781 757974753 151979059 10970671 315120961 1732125 811641323 274021797 724891555 962413681 281540835 579732907 957046583 392392511 963142589 600288681 447620669 414239797 243522719 519944143 980008193 329298500 610577463 173254165 828643541 255090349 677447355 142944061 456803093 61284339 560701673 247576525 72481311 799996639 450184455 708646167 161840225 957166473 528925157 178630707 372441931 531315273 307150807 801918207 763323481 685466313 32397245 651661095 196512269 857389809 872139771 417163545 115719919 565017591 959674243 630622476 718988947 369170261 368449223 147940355 607100051 842280403 836894921 353451207 939088787 682618489 450463755 266545379 858838075 853916063 240140191 86844853 730068029 795946463 248999963 563027801 211614549 903985439 926447771 995829691 456143939 889847177 298319303 142876039 160178645 779060883 778557645 933511993 500514777 46636025 817780835 984791055 812312107 5999807 941814215 916543763 978133423 846237745 482105281 371847189 264204621 871186147 699655579 16734379 381107447 832919473 861350447 231013687 188490409 581373121 467890395 192092131 898036579 306898047 812723845 659144091 633835059 844017821 23389849 233943835 212399911 924353305 749260817 688131553 206680155 347007799 891789927 728217909 767450355 784146565 435733669 318528811 593983511 172536275 523563607 357282199 678768121 299418177 695273109 342523163 521896661 47678513 473506555 636592159 733821933 84722769 458735794 128045011 15826569 31723155 273248101 774053679 42105085 838963511 751181901 953653749 752549797 138420157 815941417 393881005 719730143 761182709 494249787 23452325 152567577 370032879 204841557 368411895 483235269 581362189 390768075 169890177 43421275 643816941 101296509 809422575 338004573 622435711 73778383 819922607 975435609 676860663 270450099 845005817 356559837 177511633 729606043 477645519 872104069 842955471 385170057 474026743 156903669 497467137 930398721 369050883 730469589 12502713 556654609 419806027 234415831 489329043 437428305 152559341 275760567 123479157 505149661 788075733 960214839 537557643 530356063 736864945 954248479 963196487 676899841 302703097 364222533 475458663 419249787 873176301 573514623 593791215 70320907 420420503 942560947 404686891 97144695 567103175 184974793 771287471 970651663 229724435 419685299 35816793 524687015 346585565 78008685 265386571 32135071 335765583 663407353 896005105 619481821 91576917 828767329 933983491 270624975 565864875 706075829 37556857 248970089 689062095 781062929 583266969 610339629 65717259 107106713 762125807 855224863 111555183 199775349 525344337 796116173 406321361 676758233 271871449 811075407 75091155 22474237 576812011 626774595 284098013 47277091 498081333 799424461 710937631 421153689 719273387 192641181 69523 803137453 625353095 652579561 134131447 909633469 813987921 232157551 889259219 731463721 442578643 164621943 573448315 384142171 60732703 910685901 982937347 949898437 596157335 465502407 545584205 557601763 724727769 338095429 410510335 239797559 540506581 990532269 23467151 481527625 36839615 77212139 858592815 702640047 960572435 692085625 109128163 309314047 620082837 926928979 277735537 39533279 727405393 790515967 413923179 610443511 913468059 949760651 372494377 424970747 9449743 257974159 484465353 447165859 241451667 455430441 911319863 277736115 871395667 123022845 664728609 681079283 748214465 383954235 14138367 675939129 599403163 81069977 848749587 675082843 413520357 690117205 660199779 593435199 983356395 395200567 987368385 466142669 920152899 316526219 540924099 853469945 392691911 968319015 941127885 101898683 284520091 464700011 711204355 546534167 650162989 593156669 425631065 471738389 611783727 59904267 40381317 787182283 207809441 7997899 694114311 493534031 629257410 459969019 849182761 996103879 687621923 725515425 146203641 22470235 568537495 280581963 972726099 568025663 354434873 587929873 583814355 509202603 110012525 503899537 374667491 384993507 135195107 730573807 24763061 398972977 887025545 883674587 425179453 718400741 106204065 917351051 396150337 73512797 782204845 475092415 385705283 656261881 204073334 61488313 392884377 523530531 971153943 598100299 824195159 127893069 907796713 620922571 233469279 354782453 655568013 828862741 464608345 633610393 552863733 592230289 727970485 845741762 398254417 954564141 889225643 879911433 541748511 243445853 885050173 100407553 477765923 283459107 679433523 981534545 538065257 688190723 155072539 364081827 144461637 383270669 347246671 303444389 226636885 60819925 789581551 333184789 563593083 819519867 714109153 466445493 104231395 143186339 892619225 410682959 878537733 517307005 482654543 735852213 646991001 83112385 858082175 668910271 463664037 660678057 135545975 11756115 184979317 161498111 148523777 293262171 411860383 674232079 685030843 571916485 114294781 335871663 194303491 787062159 343049651 286880065 746868479 583619515 436049455 259650727 533833379 433033555 312725029 483084111 70626469 312598889 229798543 199760179 564108679 227173143 568178613 59189455 324127631 273434237 351443999 468408873 980095949 178123723 364036005 367781841 515678493 210356269 858292833 854584795 687905563 619697379 132340665 66211559 698218291 901590571 36440919 256569625 290873745 682354767 153947697 351913251 810760753 604753573 162261379 443885367 915054545 427574405 680557519 393983509 925042427 793882705 116302309 107797509 113508605 678914163 121268183 883836883 775612659 324063327 189593603 869703127 683404473 74973069 401943563 746139885 753562617 743524481 214492635 185019261 834595107 932540357 494578857 924693109 880966257 36247275 731320817 77710923 79392993 542430605 83368055 376077309 959704893 653187149 201715017 16637457 819152147 974334421 244687031 668988823 854065085 987737049 218643297 557319971 700556123 56948753 457860905 402533333 942351317 762780993 568240701 568902737 480111579 952266291 782289423 616345033 253348325 102549689 836641373 866968815 811759925 456354987 218663469 755613445 936910033 180332271 3348167 261777101 852411531 332266095 466773187 214678427 199783419 44961051 903223035 835668543 203094401 912842989 303034771 555672093 313767749 222775017 533108985 229012503 477649463 777387545 361909473 256460701 724538127 544336015 402728775 485106085 800293197 918050917 783225197 874369965 150882363 955284157 611873507 415391931 143153129 879331009 674029691 257364575 641189935 547598501 382507345 147761069 519786411 40046241 211325387 855044677 292285641 918337529 469955219 433692491 33152693 911383031 152320415 663653489 949921899 28860653 685255979 483324649 722636203 695701813 404351163 680788085 640324091 453459505 302310427 189520985 932315563 750390091 667608159 897002083 253411031 446822647 329198308 711332843 214366299 450957231 227949135 716829901 34463969 107001587 454868873 880794225 900747227 905295 57536203 835183301 950313085 832218197 3755661 227482431 295028941 108049823 101748885 432225247 594918029 179475407 37007087 569272359 233325651 407986319 765154033 149149225 451252339 642647699 31412277 316544377 774268943 571028115 276152223 407595575 491042831 60349013 853485149 168913417 152061987 743651743 152189665 550546715 480931781 694561091 308268523 847044903 197531443 288239647 878083451 689781863 344501877 471286805 274669537 536850597 187722333 651138315 651810991 111647279 604943747 544179191 944884161 261376215 862184775 510139857 405476923 803522817 127376593 785301151 634440077 869724303 38053393 662443111 984159845 334805489 185251007 278189629 471844293 330767133 23698781 48760123 699389935 49793169 77107761 551708547 532356975 465971797 795932749 44124479 3154457 137676021 392549513 310177187 173756425 625673863 105096835 352053225 297337509 932371883 74133415 176563281 434203033 258651271 581469731 606041895 500623319 238145991 523784687 315343293 647194781 197247397 296182731 451686765 732795503 168782045 515712577 46004377 665179161 276157365 105077409 908438957 272931247 72073979 685960707 996228633 444899215 637696263 632384069 27769175 106233691 762832565 75799313 334762475 416164609 956936815 335008985 432852577 909602739 50492191 110815699 884296263 308797679 680100157 746019071 122852665 80785275 327132103 777870119 192189913 468342879 156761413 637247451 569581265 379257843 773856451 712273009 199350741 567611089 729127639 849795339 523639455 823733981 749502625 464521105 490821103 729584197 922635463 616170165 90511505 765686397 162405493 639283947 159133783 859946817 18570341 536449911 986009883 477191571 40962515 621307745 157664193 705564867 710101381 649612407 568045359 632178019 593895112 402296915 194000219 87364687 359893111 95044437 152741951 988908973 817170413 207139237 746210523 597636071 44480015 184958003 909722683 543253683 887264333 239489977 945282673 756196365 451674015 795270069 206098841 110950713 117206911 135739759 399255761 884074947 27423989 251160825 97141575 888053375 585899409 421155371 255214891 826847881 265090153 441022885 185994423 524757575 308946201 448764365 54564145 344316005 318769865 407318999 833590751 479947989 915111207 364819129 948694293 528501717 860751207 987505205 408790317 412470505 285689163 266862033 341717897 511099871 940489751 991533023 124494741 737443271 6071707 873519735 474935745 748817409 276791595 732221559 623086217 376337711 112137381 570973322 207725 665369151 86511475 414326815 603890169 641308005 391698303 479170159 82416831 900638491 282125889 906025339 539401819 258213671 234001337 16759561 77312107 976433047 888430953 631848361 919357085 11433917 972430691 779536823 516302241 937331509 923802941 758845007 640710195 327878883 501825811 783587419 184699923 744687605 771002509 65548173 918095629 434628319 394310105 212926811 332625395 321824861 409840813 286469637 831155105 177406579 20546373 510521237 722841589 144555885 18705773 190030553 273522397 857701087 832799085 16286315 159726921 80664229 44357407 502341035 537338421 310413285 969382113 674274241 933060001 462860809 581389975 17850015 314039705 652502471 441075379 139877369 759682863 900371483 409928999 897275987 840949119 563535177 636085877 55942133 259940007 413176797 15679647 92461549 159419093 796722605 338746423 833758997 806793529 712860369 331646291 768669453 169403663 290303665 27766415 59760957 438061719 345754361 82435603 608312277 251628063 247005853 895374477 304087757 743222005 512062679 180014643 64227559 291087989 893991469 480934851 649442473 752286979 404768619 728249219 780002661 101654789 758677159 601386051 439588403 816336371 504730171 239974999 205760753 285939521 547635659 216899231 625814347 109735287 742934341 159283583 994450351 643783963 643486173 86174183 557516885 43969 739831567 65943119 970477629 154142981 892480413 434216369 716082739 487508357 429147799 1436311 8504257 643189743 59203663 782949901 101063749 97829363 449052001 929195691 555958235 206121293 759677875 159359373 339149935 639208127 515923823 694792539 795768493 789307665 534947339 681421635 715100945 950942743 301828419 321452027 270587099 53601709 694439449 881827009 175291151 961182897 890588637 933110363 287008131 87782929 687584547 165290009 332733899 58488253 268171459 250429135 611986505 561846193 134669029 647982557 254343463 225577199 75921909 955531817 834192721 684787839 764686245 19261727 382887299 920598133 114612723 213778361 461964603 840135917 843401251 544332145 22097857 970540805 172518337 734821201 235496745 337954283 579866019 61373669 455800135 466019791 781198561 942669125 521845949 167193837 184628709 559966733 29406707 292061831 332382549 309164645 635806233 894196197 372848427 82528763 222459943 862013277 768535967 343511557 69524959 621349189 894830137 986412097 680298185 389362435 715018945 659796471 454249267 283717631 249942095 973275889 328340279 896167595 189864509 634454667 853235123 319927683 385814321 564531359 91199315 443515911 922653205 469739155 910960005 35530181 415800095 527465049 232553345 166543179 630097609 880980835 943052105 708058935 691770075 746368947 116381859 779308839 519583071 31593165 612230689 643555529 520941993 302717119 754071067 85979855 217647957 253832993 988823471 60819953 193778505 776700431 119991241 880081905 678185647 46365489 758647319 116825245 646920189 39039157 489820689 639616707 619826671 574571601 506009591 444861249 921366665 820233797 531346387 526684149 804499991 676789331 585807989 33465037 385272365 521106125 210446963 898987195 775571113 600652679 790884145 597782711 375101101 775611105 627065299 187771587 294366119 957212865 351471691 803764461 582118985 431079827 299667539 110694979 293549457 188957521 801619049 75072483 727390661 706033271 795200727 374200299 590951789 937334539 507975341 384929417 479933025 577578907 729865409 769735919 518303929 992748095 986290869 460638805 770274783 938609555 147593201 568350975 416786811 998387649 954127013 256134453 971522177 510188403 571256523 926625357 180079665 72338145 120722721 343223197 947072781 807443657 168017455 954867083 120403423 566646641 484954441 436079743 902257343 911147945 187574147 831997419 443682823 900609991 731734719 278078795 245497693 498723495 419335845 642858785 672939691 818626223 388445093 255617015 318469415 215923921 135272439 623977309 311715405 864031104 69837469 947809009 376826593 706128315 363534941 626255697 217415149 923956747 8170697 489204013 57016779 818689913 531451705 908934193 196643089 785489567 557642187 953520155 647478695 898959001 683085931 521823149 97138103 98308625 247695303 361044913 975158969 504916529 679622743 633278967 274493541 374133681 896518492 154947677 236266945 885078991 794754015 735028673 487999513 595907923 308102575 963398931 533651457 474007433 670125155 961883711 690713175 859711303 923116127 217893187 452731197 580412909 684511687 795561761 80870177 332231777 946428815 417020131 6321591 562467857 37076589 537387673 136701689 738569713 509211617 801900641 352592429 654152579 762295093 798891355 694484193 234174411 658691191 909832369 20539367 690819161 185118595 552967317 758747739 176948801 392175349 550315843 494307489 205789473 544333111 247672829 340340583 500916259 183400827 389482509 253851809 394090737 980260021 239131587 427717259 928736963 772490923 378922365 29531303 501623641 311017695 851574939 310594757 45392885 180418983 424577159 613380599 638435433 46014231 282710965 727107481 974672395 407728657 728754333 650256465 527078583 927097149 404256451 854773513 522879957 599074315 133762991 539131895 587880273 692176819 439600631 299728279 89435813 216261687 864075827 887048621 547278285 490680159 46903813 308508229 649869903 3126713 294653719 790956723 824668731 693502367 871827483 316789397 371197221 755250225 968843727 181380813 861244203 94235733 545653745 374800009 794277367 51760575 790848075 809003579 918103987 667882983 664195507 15166625 556223511 531068169 724628737 451894209 647820131 362302259 471083543 565080035 71069531 261899057 902269663 81128093 182410829 834995611 969738827 643622349 847948815 90607061 937953625 297065111 655403777 632649475 119213575 281195107 73214217 423978777 183644255 837648363 85597333 165693901 762006903 558545449 182179739 177880481 901612135 138015071 658931865 835821787 878435665 423839261 923933077 187579019 867849823 877812275 543061791 618057101 396026565 924465091 290299211 171412861 362201019 665989675 983604919 966032839 458457989 772690715 988373389 436078743 285545069 42946951 481022071 230601193 570000835 563196587 657759663 283191931 412314341 115501323 819079151 809011927 3242035 497105267 785193345 653424203 196522519 298013687 822523185 165692403 738958853 645220595 656614231 644290475 130006901 790926349 953223887 805059869 645078251 873568561 594604545 26584761 244906737 596299665 6602203 543494841 294906137 303047339 507947219 397661723 683414781 473880387 441838567 265460137 574764863 206007397 470298013 816391921 250761865 466106981 395211013 727802189 797011087 725301217 697627827 988789981 910272265 148550843 318346695 98013577 161822907 933896993 878537445 504468481 345021039 472194695 448630589 106817213 276815863 1071783 298516359 983272191 284258093 88050311 902573821 41696717 281403123 299065717 425699433 122062585 834496563 203047937 337288471 750056475 157191905 507899147 611313631 63291795 295985909 685980855 299245597 521022857 760519027 375914351 77062843 78348525 887885669 767136489 339256097 910903415 640434909 619222815 96589387 631125927 170497013 981644121 557947317 375290311 431999439 368109855 804820583 437330663 670446485 410072905 675036653 373035231 537147771 384493299 127135581 718425165 640546233 17827965 585624663 389527965 486749077 532915865 513445375 219645949 423537235 276771127 699891719 290910307 729069131 8102549 546118049 946618005 285699029 265265719 702470287 203784215 573195859 952894441 958873621 665463609 380564785 257466047 35140097 710210583 933222623 334115861 720727979 82648973 554194903 96579729 484821231 536607301 687690141 279032607 441586997 101405617 175554491 937444337 181399659 535030021 34270915 86758789 16905223 111021127 876404559 359148961 99037191 282525497 949783297 387517517 354932211 447639153 753379203 639674079 452866005 940034627 512445833 818106613 522176841 86179281 968409549 56825713 775308393 366922755 708065807 624984449 816749787 451970185 19106843 492817817 128073937 948845277 172448451 90884211 742463485 303252797 184111841 509277719 486246561 701747121 691790935 206647501 907081857 449279243 847063823 361948205 905745387 92515811 919372797 418795537 508724407 459134361 372015131 504812959 125143875 12557141 775355753 327658049 8151923 973600519 945621491 744394925 148979127 613285991 553301707 363635679 786155013 332875767 858863883 833188377 207464155 674784765 884083925 860274155 11983937 330947467 374272085 376425767 486628545 360339833 660366011 795747307 350673015 261487461 647505729 296394649 504393725 278505659 886779947 129134045 368733049 335967657 932378051 409169325 100592541 391745063 625791835 974734917 772884637 963336437 381873229 533591081 518073653 786686111 425615099 381145125 831824303 72959599 756119505 100439631 470948569 325637507 310132287 373532927 676392199 371730359 945292225 644591071 376397591 129012919 66297047 883897045 98380657 814693615 907619341 109828379 458072835 137264283 868038901 891227177 381909573 71635129 448982825 154167493 465824304 41862675 666981707 778055165 410330447 129162809 896881159 9325601 689846959 642007169 773374221 558296529 510282471 789642509 300990999 655291633 628711699 441144773 649603563 137400235 174671835 535240539 488478543 142910835 839635051 295609923 531960343 544129545 619378045 384642497 4313629 906783855 347824717 622180573 419420227 784623087 13846945 722307429 567586677 247305505 346152647 282370803 274068899 984448223 313611415 173156327 839283911 427903311 571567215 913241193 801454567 434382555 905450291 961708393 967178249 678118201 955703379 797909409 543677761 401455205 291825349 456775311 422768041 582613411 979867657 15065467 485683811 351997055 189225761 883347063 593795739 799066061 366419359 978749787 47385729 352178859 144079513 640682695 481585233 870337915 753096107 455737121 420723531 57101545 907769853 420009373 668131003 916336877 863926075 822507825 518402803 874399167 358278303 306896799 172776013 431007461 183549925 290112621 774829101 587776555 853617235 689570797 723686393 941861031 699272633 199873591 914999847 155633585 178136939 628550697 179140401 290179059 936701255 932683887 507979927 764804181 234455735 615904373 664778215 9664267 408846757 804209015 280017326 920488597 424839561 417080693 891231883 72743091 76685409 119625269 676087325 819338613 622607797 514785863 699226129 505693739 167003537 843127303 732637975 936517237 167910285 73272465 982556651 87039799 493279173 701425871 90750029 399404955 779063777 649583219 697386505 659622423 857745935 789079283 836795379 729848167 283573763 298096271 614199521 616002957 59981311 844342097 981731511 920849625 260987335 365091335 325217633 315143389 332762027 200997195 151286223 305728885 735448447 299108989 162197245 116545991 262872995 932893381 400949483 646932287 473857019 425247253 876948903 257104527 747365113 584393761 221557823 856794805 621337743 217924973 592414159 710328309 206867261 482812481 511344761 499221211 949396747 722007979 597709417 451672891 502781061 303555717 135263950 296383283 490999234 264815 828482791 1867301 575106401 103077585 589261555 672445375 176245639 271574491 657208123 89836787 522760931 161641861 815082259 968480511 436037035 668716689 841674709 384200809 630110877 58333573 886718949 928548345 36706815 585678259 415428523 204049351 83201183 823416883 146434713 653918251 983467223 678337251 275569195 536864463 159038334 941534575 283396321 722699675 215338755 823745093 886245703 282254789 122819661 716095389 838569713 194632903 204610519 374591609 509116277 247851369 113893531 457695135 663829879 128125107 225325347 568393375 65804195 260123901 843504251 499561685 848174507 560904929 139264827 894758493 166244677 539353157 345591423 875545891 443174201 528742227 367875310 74172883 987613261 553736065 258134969 911033065 946414677 307351691 292374419 718545317 984298285 918651253 837151675 129018123 146899891 115402123 13814007 609068273 228974293 68555617 192884887 702756075 591194245 205553109 487268207 797735771 688826041 371742983 358233311 915357803 307762297 380132713 894407115 424124167 742561483 479050923 289096101 387425259 868414917 640582859 509984095 480890517 603239805 688213263 556423291 800681549 883123993 154903807 182919677 935101223 922076095 29353328 781447027 87447287 899362215 467357571 963431925 215912543 353078535 856678807 854055199 769616839 110052641 839075419 229568537 694398047 123483459 405375939 81649809 438424863 922088379 709219337 230204349 743392201 19829989 275620531 682015067 5317093 906998821 41825678 816962739 138712513 773500131 285865903 9784207 759166839 303214481 816103023 235160907 413379557 204351659 416853107 713122239 493500343 805752755 361160361 32435287 206184027 373504561 502749509 334617855 507001609 95074491 158701251 187117867 371637699 272614375 313420517 177312989 774635087 430868315 658004411 221022105 537706303 508026559 867122327 918499181 785721579 25847493 247020308 900040177 673854577 981362729 560380955 841648961 969028285 766675629 720284885 708975365 122241917 39995929 481015221 728919915 531707945 379707201 396167033 254245417 437691137 203519745 872782885 406878589 690088975 782853945 199162885 782655279 331375139 969794515 247500461 188302731 513452499 597395393 929394171 416091751 58706051 88086015 691000081 621812259 36449111 829517455 512790363 304514213 548847681 305448825 531823505 551364697 925794043 281432019 947106475 429648697 580721155 435149491 48022255 185502655 206799779 837078079 888773867 528106997 762078955 918975135 89277551 119024233 160653489 580973829 531583899 593078063 706709655 685258925 982422993 942997733 474107909 369974233 59613887 653509555 546473771 889320657 384225113 385605703 860596227 815616235 167852251 308539097 542359883 469821309 973161927 664578083 767485325 461075693 816327917 492623469 471219735 872746403 893564509 609509511 701789187 977162003 290859641 91605189 963860785 189828277 39681247 262635527 979201865 561514763 598001025 252702899 109992635 322557091 346088845 996254647 435684287 847259915 442564741 236199305 625859415 446942177 94919979 334726437 343643209 274742725 649071755 150131477 279993895 613643105 702805241 259261031 62011465 347961447 427914003 603776943 284228815 345368211 963622585 777264651 298278815 68670631 579547165 242188323 250772333 154062189 891502767 68038951 172245167 375241909 585074221 58990025 40418471 102228061 731005851 189681481 350297179 769022789 513690695 781427311 986445725 290853975 459137217 763539079 341801987 454486917 565273577 295058535 228102129 903520971 651278817 532457839 776839051 796327723 747431191 155934341 408033733 869382063 981477181 871769367 803290965 142278247 826757715 690349593 723089851 93925233 972204953 177257741 354356695 316140013 586304669 472702199 4627191 225932549 221510197 899284839 159457203 498416877 143935867 511600497 25079575 494344669 231264469 296524979 723042699 623067417 575162093 975155287 809344065 546404329 159940023 271970311 316925997 391611043 136153459 140198651 361645333 733959069 339204003 137825009 901659259 155731005 321838609 827519281 183626933 947816939 289950677 27788167 768164311 720520475 230757963 234152777 398371523 867562565 393383443 137742937 792505377 470145261 426040351 599547927 101007201 701739165 715658911 935467639 316288443 585420773 681055249 401514221 795254577 952291683 457492025 241451895 265812875 487305399 377881379 151233435 825782103 635789707 513946147 331895145 917005551 123588755 214378711 414487157 181230963 502588551 43948065 678885597 655391689 945341227 29293869 386930763 61383077 428786761 449511539 685819625 23653503 250118833 803451563 449608303 518830739 639093569 342396891 827851549 924199407 323823065 832893007 285597877 195058015 843848291 187751325 49315721 228356475 257743315 974471071 800212847 171380647 188426529 167193465 95682243 170328327 201943121 79730841 437698925 919741327 803926893 994301363 793245147 508707573 426286981 843483585 467352067 344031675 219236791 104112395 343968867 459234343 526915107 688835097 192086273 146282825 517649139 476264131 835473515 848894973 56072027 496323875 900297403 634739679 695186067 947901599 318007945 791175259 331312351 846430433 353496577 989127581 284908681 561827039 769246157 934898081 834544355 546425301 736000549 592956197 743182149 314075205 462324169 354489011 308522517 390102271 926317309 662765977 324763069 645082133 733478543 557639411 548522411 199762405 899373269 322882205 786022751 243838481 603213489 422138945 823852375 170410629 551797893 254577231 703962143 264823415 557119809 707254529 584921927 53572963 831178073 28505429 713644141 757306381 620585423 555723797 336645169 596400003 182212905 806107343 853613885 160666133 252553841 466046685 68438853 154827875 155953731 393741919 15183363 10877007 383602615 382577469 60103223 351716871 404518777 539564071 900284075 553381629 374782643 365025173 451183413 330313455 740886559 59242185 983671213 921417955 597291767 697521865 548517109 211157537 785829381 984455527 143803895 402764609 77685909 255943227 356320423 859927325 423138175 390794149 699895039 250889689 990392351 163584973 211901439 140177379 693303133 481416611 630921905 105736431 806753959 945518559 472633131 178102009 64503539 708916225 895734661 147856707 585008063 771888979 792950497 465055069 190426643 420836325 413496939 107478041 30559609 260449679 445783633 248405139 49467149 934802159 901292243 90070833 452101223 142399601 634945839 252477597 35570355 655239491 603049137 773280461 727433115 232578653 548124075 360031741 879506009 142785407 610075253 21494705 283680425 154817075 347037303 914310581 728052687 561228999 471364885 924802333 58493855 152028503 967390405 555296583 588604777 991322303 665666047 586123989 548121873 539058089 697654855 60416691 993000953 634920839 96526119 156802329 441284625 30935439 574460721 795693183 278231246 854399425 550190847 971102379 842123313 986560997 716386867 213557673 107625405 794179215 13704313 404313295 284867459 881816083 304858241 124716471 630179609 472959379 182247685 486009669 817991833 450490871 604885961 837734567 706692015 105003247 394190487 507199057 566951559 417692661 84708929 75720957 109845717 383840583 305167265 177458353 526246619 247291117 242205849 844772283 534849629 779309497 365995285 393041837 396069801 139599427 910051333 647514211 839733399 766306795 447460963 464286465 891589507 17171929 736274483 502595319 822761047 338669053 665627519 460495093 728211325 501171727 486014809 524985847 522243821 475268753 943498459 747806789 546950949 457057225 213072423 269202537 959014443 795143369 739966825 889490999 815443599 812554857 995785681 66303947 529239655 14514759 432981657 458742923 493267021 128488911 2648071 750822435 172690541 422315823 67848289 332669829 717374323 376813151 515032827 258874351 725105043 653569569 485151023 82234341 407780239 302211835 408751455 268205619 485483947 898909757 895589877 813299949 460249783 594080515 545308773 66178673 547309317 365832489 148892201 22330465 248388985 97987163 360334785 118956714 64695413 875134213 248233401 732934273 975357161 906221411 477869987 977120611 825253706 412025459 866809113 755553809 265512091 545369343 984785085 74089369 491714395 494287511 837446971 478434385 222008989 863763601 702605891 87306963 520097013 893425423 510129553 434624259 108693893 817081849 78973925 617047823 265679085 100867073 23982603 487657067 67505249 500109723 985686485 128539859 904265365 169790475 591682845 876768585 685750469 869975129 506826437 269870365 309105083 69093971 506851257 52201185 375778501 756254611 889446377 424895345 730343607 96089209 392727377 955227379 660163823 835229485 917174001 623893457 502596183 96878239 827818965 683020225 800915033 858181001 864140303 374360767 207539693 369183081 406430137 249354255 895062161 742950279 200993781 831511869 248637261 506957813 80201199 629536541 440433069 181052555 51972055 485806283 139249351 317623273 958531049 628832941 355578941 460300405 879954789 448415599 713768751 858597219 245845911 431938819 302241617 454711723 338217169 5130663 891407319 522651913 520698735 462250206 225032831 707602697 383206607 767359609 123944079 952424443 897321055 670932357 29020629 630169591 152544911 184994147 166100393 825428955 151631321 332532917 313793001 636905555 983101891 392718441 792495609 127751885 743423955 15245491 883736523 235018369 663277213 972894221 149825233 341081967 313286843 10090047 805482251 46201697 586910161 999824209 26552321 852381413 532631941 688634523 576488383 339508823 86723213 332903351 597437403 642961107 933588387 164789641 753245303 50668867 920230537 528597825 674449717 594968409 752911111 686886733 251835459 471942795 878731249 98103407 136214875 929616153 743604769 220274345 848852153 495004941 662799225 506147911 698321955 141738293 94393829 962079965 501575145 955823659 579149397 703179335 480273887 787107151 869356485 121843115 110923365 335279049 820227639 185727603 143664991 250876299 419740595 7027029 694657853 575023177 529465677 791146829 675304951 928011911 644757535 178268831 400660999 613372045 936668749 659241431 557972343 15491945 251574781 765827787 194859731 769510901 354823271 997950867 128906289 430250961 152512703 686752663 413497395 276178021 101097293 269901955 700900603 56013281 490978391 377885003 655470903 962929725 379467569 40226601 266309921 362674747 487832375 43654307 268053365 441551969 758366919 147643015 652293243 604924929 927208015 294991589 228855037 558426675 849982783 406059549 229014869 107525845 581046035 766126545 989230177 807617427 580228683 183262703 358464647 763485915 758902133 434077099 425770675 654489829 592403999 983144577 508224349 950933683 544201189 101954355 56803205 498895115 901892459 227751633 711909806 286265725 843780441 531306925 819386600 832729957 430691681 640644707 584151497 830676703 603674431 678065881 748733297 305838039 924201395 968697657 786976387 919374073 822141835 101223673 998031407 382483137 97559189 464025557 587494699 762042479 447963308 535052497 941969589 480804615 282166455 392501559 165758355 110740575 846575515 111324065 612683541 929982987 322753355 775770853 128574991 62104173 513779651 468833579 364181985 848223151 692775939 162903263 693212015 913462461 468655897 505699251 54372907 232868435 988559635 45295013 986849543 218956271 592344077 230773241 315035525 909260505 325003563 215655483 244165799 512135973 99599253 179537729 66304001 197617319 764021117 92092963 677638819 250842625 327905567 193371979 732953137 594194331 818825147 399937377 75320781 810939045 336568479 781066841 643340583 387677209 638914073 526125681 492377973 812672435 246808199 2528559 210775669 416692993 884841287 257587803 272610669 185192527 586666951 739835149 958715437 218814391 811682425 746552479 426007049 118140953 677194195 880033207 836265697 125705243 308536669 64211775 819703835 73514289 455926429 630140269 188773795 126991507 221593641 752570555 222046963 862647869 227956375 871341809 340359685 458884091 455930253 331693593 837180003 45339229 780659379 856313735 660878875 265219003 713602235 416197847 640802495 369409843 878690913 328728815 762627187 937478577 475197799 853993721 8682713 379956451 931512213 811731307 694143009 250375745 754931137 355042561 413746689 610191883 944336065 573817279 704114359 348443723 317247099 900690417 577886731 906129873 583913687 613977389 601527367 622235955 418246343 768697675 539761991 103319509 624935751 350158195 15703397 377710299 397151321 54459153 814739079 257719863 974232069 211306199 182571807 408466851 872598369 152282053 230524193 350672285 807903107 634168859 824697097 416053359 636118161 699753063 822318817 408851240 594326707 33005695 961753399 153560737 934861595 126362237 972334109 392079481 803984133 732664261 388021815 859908633 582734003 601637893 650289575 34260401 333531759 366896689 502271773 495167291 326885257 824684419 882491599 275623797 659659103 362708099 252291453 756506345 951782479 16210937 680568169 209440997 858964167 206306813 441011557 574023811 642441785 675447017 720837573 539905955 833159709 999093859 879864169 119034861 799133943 274126421 20987063 516865489 418275663 772965365 705074333 298922375 430839483 911214783 1793423 325668881 88960209 377989495 325337743 848218677 598702647 341921575 529136673 740277125 590280597 704305193 309318995 215078745 841827487 572140307 528359613 795856337 895165709 624937933 482591613 107905747 504120225 829335683 194902071 16272147 228718889 763042471 990796315 934077190 93353333 411320311 411688929 842481137 121251421 335051127 96957123 38947031 861402823 112122483 273683849 205176203 787173787 443134335 185308547 769202083 163200717 779190649 642161031 10311555 573449301 277559939 846252785 702563663 276885303 122901259 777426089 474839035 130585723 175454917 98709531 33886781 636104759 821008811 392178241 39992213 936277633 486723843 775995031 6518604 847008895 437370459 486132259 89898357 912928089 170764933 237284979 721518563 608703299 64327837 162149023 497553721 828877941 860492039 734184005 357319647 791507507 35823217 709177993 999645959 203132357 975640783 351322397 101419943 412553601 198166109 342405427 300516735 146990527 432960157 982170251 555198487 890483681 753789791 534860397 741054915 878132561 382512053 401469605 958633623 188889729 995671291 51587209 63149941 562801133 456189911 411332089 709820165 244780823 374843187 871033435 2716343 324761993 961042245 844004765 621228997 225980373 684015241 103524149 311209003 36278931 172661955 567944993 434032567 467218281 104894975 632317159 693731573 24135679 537803155 382986389 888721983 898180873 449632535 556983747 67487413 536487231 137120115 856607887 607878975 110644325 667916755 342353565 302963083 122185285 274966185 348951583 311724823 23797681 271960243 180021959 713013789 336319361 841846263 14379221 734312619 987244443 540554429 866685969 160905101 707948519 397801115 194681031 228104027 938238809 249597807 129310415 40079225 623535849 159799389 352166533 933576971 829221531 864520399 395878865 355901957 164489337 989734777 977250593 874982941 378853781 247704923 254505577 326613973 315563271 666056885 471146539 309016947 18475253 190592535 587262061 211323399 339039113 598898003 528121273 234038893 314368497 388520069 874016809 925093953 956498285 137745681 997372507 249267439 830609977 13632165 656541813 906368163 343451813 161391669 960216355 422075225 665224705 178017021 789851805 601311183 979316135 746731905 873990563 408271503 881734649 451983501 397839991 348413161 698775393 633612341 530412013 829950963 120382803 390978261 91422805 598019983 873778503 353009171 56720529 693978469 561683393 602174939 845076231 898542565 806400331 383613791 171639973 210825545 255094647 301757981 821503457 400781967 343506397 366441177 733456313 990336641 192797987 572822175 751198901 409761965 901017075 591901635 638600671 209124461 602309115 657511651 175962065 646015457 763754747 9576417 332208041 967181041 163080625 981712619 487600653 107579981 376577769 821329269 832920617 461005933 997046899 506596665 60063925 430870163 578025005 464604477 153817841 368231365 488434935 381250767 673129889 83648469 179750845 282764927 514385939 700494939 575809133 482003757 408746271 297650615 239751431 865475837 274147361 845252113 715040905 179336281 209998337 770350169 377547775 324437751 299537453 172545351 784733051 742014673 37306267 908738651 600181525 451323183 941496777 716539617 337296371 497640859 216215997 879939811 810518335 235877607 406967559 239789119 887900457 648188469 305150651 995037073 79676907 626887139 822617721 237545285 814089417 243907235 136851303 376734345 672733453 302647397 999390001 911487061 911646985 246417255 983709457 747527785 267132695 284196141 962640065 890991183 916868249 923702147 504434059 667710037 217738489 641199485 132056891 76535447 476763307 689280631 958148905 139801073 475423273 498906391 956694323 750168333 268989171 335341129 113517757 671267677 359042709 408041535 710675895 117828631 771461535 248461689 345368983 975109947 809670319 690978743 153009755 606542993 763382119 864800007 447256969 343638701 765355373 283444925 661910321 326544355 490561399 370890359 315370727 925535061 524162109 729398553 958016203 583272939 785880451 792453067 149367939 722833749 606336787 730490119 805742651 529615629 893115327 214369159 665433005 31452497 764327521 778206541 264537877 894209065 10118875 279900329 711952953 809820775 507434777 992059691 152541543 588540579 838654475 602965683 122647159 96708669 1401515 600841317 9104325 586238045 827264255 81536427 167418681 656946931 453835019 629959483 503977281 342813111 611023335 878865425 927168979 705891627 258310827 462962289 75286383 999856533 816744827 922920165 441587735 645177863 463305341 341594949 877543005 425228121 661470439 261356973 991960149 920938281 516644339 464696191 896233631 160984803 64820193 944661095 666602337 787824309 896617213 72629083 712505161 405553815 309271705 325561239 976245387 943976779 431237647 10971551 157977577 771394903 637741505 983050815 693741479 71217675 551924251 343930765 184770195 129665667 10022029 249502689 342862597 613147803 59261585 771528932 38904795 311134719 79609003 328051327 174040441 486235419 250874725 911543273 18757327 357808683 62589521 235151515 784232531 76430893 897812233 779019099 907072259 268361707 331167281 496122679 580626791 252543733 49012847 631018111 827290763 858643617 976241529 724034003 813328645 292775185 4407561 366590231 932393973 583601197 963746271 89305205 245962753 664400039 575163079 125086563 574583895 814471923 781127571 364698011 660889003 924243029 693220381 423432229 548659519 307892693 585868105 203961417 926838743 282815809 715467261 844603551 871867075 327644211 802763823 940440065 387955415 18068747 338318809 609427093 317929841 567864305 342066683 348775621 139014011 84029397 511995809 725846599 524762207 755428721 309697245 388775703 547788565 527184963 133820361 280633465 848735003 344554899 134793097 337541625 199477625 917300595 438263107 977752171 650853307 324157883 644134189 611227373 470163191 777319691 394869121 699589601 673445069 738146249 712588159 732497395 2205283 230201129 789550197 388066587 893235559 98504739 944338097 67218833 250807567 951542899 391636111 288188123 469891353 387218341 207193457 505581765 357818571 648323081 430281411 477136485 109982195 893161911 713980661 934466835 183353833 650925965 419518595 56564601 113505931 632111671 27984621 366842495 458729789 128881955 204853695 111248985 92074479 41332105 320674187 346589575 551757337 187340136 947108075 293941705 262618549 686969485 974259587 277627695 319141965 715327875 927565563 374564105 748211693 199012007 639169029 716969719 348482091 168388373 496900955 274580957 883963687 152197561 58025667 621890789 887405191 873114687 873317891 162157189 506103929 83528227 749374447 267601785 513174195 764149155 152423265 766184899 961531763 854940361 962156093 811438003 613470847 262558307 940805227 326889179 848907303 704008459 655176925 235903257 915994175 99472929 333805709 163893133 257984293 515355341 778242433 641792937 633587907 18425089 753657791 280152093 372766083 135352945 157848667 806267367 660479837 462419873 944588399 935859531 925013713 143169241 104431135 928360661 155800035 28543271 443111827 649011289 237694241 797078885 280823293 521634805 486019233 804294451 138563737 914694411 10498819 106038777 505183655 903134025 251451501 438621159 715431283 741823393 507452813 284702965 122321745 143183697 593170073 4606949 678120087 642290911 262596175 517240637 958344617 838359827 211482869 344108111 32011507 373987845 883653979 352283699 414226405 756501577 350443477 482746055 443193339 888003285 188590915 782671799 752386487 432872517 616372233 783577457 117298081 572351379 641635609 783139373 490729805 373012537 340819173 529389293 199981655 869508863 664980591 409588855 916945757 517891309 230837817 382557275 934338829 307121243 868058967 650959861 235604247 428494307 498482265 974699361 141566775 90226027 120767585 852378763 197813805 286250781 283811863 973170719 222247111 263337583 519099555 792681113 545574611 591772957 832676033 963110201 808802861 699546667 740527533 182889731 643547065 363514085 1316911 744607181 441046111 852862431 843976593 57718059 315282961 672352247 242663599 568355199 912654027 104748367 790218977 767316723 698605965 726457427 364594451 856021619 763805029 671742649 255161519 382995643 555404385 342098047 472701615 601563465 493735583 649579237 985982605 23182183 14441789 258229113 963593043 582039331 351401321 970369295 127633549 22152279 255287635 610760901 894787923 393391011 468684599 785531133 104411459 778831215 518840407 740814437 932878209 202099435 166331387 879309553 361488829 488187665 608055929 185908443 501598509 764969373 121744423 806329257 682774415 962181149 174325867 869252393 743667753 761404637 567465643 993497709 275511499 495401975 178177375 608463057 919468745 516747339 129021693 217940729 615148035 235773567 374409479 890827219 110540255 862794759 767439115 600982930 14939209 2518555 523999127 649225397 200059579 455963319 544794953 109865723 967156527 529927079 848142271 240136309 29654319 676139899 208679079 131992693 426995911 952949899 919406771 324698265 851451791 476480501 686610073 383105985 132836773 55774885 450784801 559898911 956629165 143463497 519770387 764159779 513533143 348217945 756743743 627912843 999513049 85987093 361128577 911013211 926575601 829551239 137067965 410004447 72872165 343107455 64745435 22119339 150831877 129984147 282952141 265407133 608823847 938244903 182807695 950929879 512828581 805417567 128207907 251722437 701492843 882159149 142001811 358187551 635672037 822487627 257094895 311402205 799850247 785589561 89615445 154847045 511032403 708444475 220222691 367536613 544429005 623539047 262763207 520427661 688356867 614816913 5602099 826841437 670654221 727814747 334529375 798647 921110409 790682669 337217421 508382537 984806299 604031031 71904779 721041159 724321779 222552691 385610279 147355693 725570247 598122911 591491903 978153789 249510613 452195909 299511731 606938887 6189157 187908019 739424237 252258204 959624771 92840707 725147999 24624987 761105093 868392981 47868805 305999333 660694219 457695889 158197473 428668203 151189691 578968295 749018109 321656413 597001601 674146127 603898985 805442295 585100183 349851851 814447043 940240833 858839033 627036705 732488361 684800965 479919917 319007971 25636297 366342999 486064193 771241065 900372693 428909845 793864141 823128275 686461317 66479329 578015471 983618567 772864669 6515943 227913803 185993401 53088997 205387933 181625617 757003615 48428595 854565311 648028151 454672699 875710045 803278673 391274045 513456467 579181641 754090657 804668069 506810745 662369503 762736703 578596993 234862915 141104659 564712203 149202087 732494101 103625181 88709927 406954099 835287315 84904769 40073985 970120907 930854961 810916679 996262987 994450721 252895013 892211717 533831429 73410153 625441647 15244691 784198767 666505249 968847961 690657041 441585687 268283727 9298419 553237935 167992019 787853697 816696339 28790681 894383037 638606287 516100443 281625869 152682299 537096663 373042739 213192525 337590775 328161469 201172941 582481315 652201445 935586353 281394975 957776991 179381061 496857963 726008297 27411935 161191833 674422309 670091187 197717379 762694829 944595881 89708241 419509941 332964755 113380291 875858775 675508201 418901421 959582153 831674919 804008855 341514139 448135579 677841897 740639555 458660425 334921375 543466509 178950773 78292461 298750147 106928589 629626307 7407875 889112445 794967845 967130565 486441807 898666697 56651235 860673053 668390109 722063923 977154195 916468341 377349377 644885955 419365263 555701119 442199385 482542867 695393783 534027769 405433031 235884609 673606323 187213215 660676215 270659825 388173171 779309121 401421025 76259155 414359983 916435119 962217661 403453727 115840423 570376643 546337297 842028175 765081959 597206877 829247785 516198253 671830971 153810797 958245275 828689413 727798587 693403359 270096705 823102511 60036427 388588723 582788927 501045319 966384911 160255717 147782915 691041845 256148603 196191621 312409921 957622373 998546245 274018723 454946035 982990033 141407215 718097497 571192929 526853109 919811775 331700681 392375827 833919447 28265157 833985565 634893281 752240903 818298589 806398601 305125349 221912985 677563043 724104773 976087941 79192621 637089667 796489621 39305835 663391463 365306793 54890691 122500493 576405113 687987473 397285151 104050727 169791253 115547769 919088647 814634171 511846781 347726955 544188379 288224793 536749555 788590135 73316101 375892051 288826185 860237043 531720441 646048199 505046997 177712769 233069871 240450071 213964403 469635721 421818411 656979759 322281355 996788091 587635319 204910661 86705675 584264081 363775909 725313749 322313321 934311369 85444431 375228837 542224803 789391597 517697559 463858109 767034943 156315787 68781223 355088243 120878925 498388989 318527667 212809573 863624545 996858723 539021299 349507445 966472603 433027749 245503787 334597073 408284831 969931891 712293669 841320427 501285279 315299141 585287091 239265155 52742989 831019101 841590959 274540953 5819627 954849985 498225403 100271995 819591485 611457603 562413953 59890623 237510545 767276667 656617012 615414079 55555261 518983625 321184527 876809247 796432931 50205269 408056083 855867085 981459109 429673231 258693451 52407037 158703539 347098287 159630793 614758059 14155843 635350197 730890407 890672409 194254803 473636973 244579079 139126743 747352937 609948641 513219603 924128695 716463253 325737199 58789375 9517013 404197995 665884723 552709891 398968983 194859659 241105433 304510051 122471591 331886107 481183695 786114921 825157115 109650119 685354061 175969383 993650895 820229063 68579667 896462775 784145063 29298907 819800171 313993915 206605647 774748999 392743395 524185311 728053211 370495705 922037207 807881873 13504937 960939241 915519779 263453777 336877915 511341907 929504369 405131677 142694879 151422847 758234931 909027329 724368743 495476571 714742943 303685647 733798513 501899869 333164213 496898145 673175233 943213189 323400509 964799641 639702627 942517589 765682891 926388833 201956013 131321055 25568179 498942573 967238969 662633655 24766743 338023799 901472491 198648573 957495263 207792447 859147505 635274583 686938043 255287185 808426943 13206513 876428837 468618559 946812431 355662981 248311643 836307747 137813481 634344269 85258597 721323807 234111893 490956819 454231317 460305181 935652011 444708133 793292035 207491089 436944645 114243157 274953359 589209333 752065993 862401031 473296609 455803849 157597281 974319645 263215081 180851865 801501571 906864903 982815583 531424375 349132329 670476475 639496645 330806908 606382235 628671927 247890273 15348429 335905635 953966595 416036165 285487505 241534037 444424235 583944777 71744509 94015885 398589509 25910797 305629515 953279089 411049201 501942263 854070203 655529133 35454037 918523451 320925081 858692403 189354269 345167055 694452279 950416705 356138883 812680309 907926255 610386267 337013315 400771507 814278179 421604941 84033443 787724761 479879231 933274667 488928881 520441859 20686515 170815827 855980805 282965005 696065273 364898663 177846843 207447459 86853015 699812949 445088893 686304561 241405715 708988239 294246581 612016883 970997505 813348821 102235995 775119847 353921275 828189863 612670829 430932695 149005219 31963859 985436019 974180691 667781029 661323951 142509689 656393905 624766129 148448469 94921493 418809107 175897729 886244137 782504551 91710049 180210649 774436825 686472981 457572685 200028547 500865113 919494733 731095115 409295187 362975333 584402115 799966367 41908511 522809087 890864057 648051025 334137291 947112823 889486835 316055087 942166081 440326751 784278719 279077075 965559415 943199379 253219573 341592477 261556833 207002681 130535411 834560693 403158277 971505083 408248477 997620491 800825711 924157135 587958883 493038937 94468525 397796721 721795645 515407133 471094747 384631525 997662117 605805983 766109979 713289911 266649509 319748337 430269593 553466811 269621193 473076459 498518661 34498829 707085095 956470829 218823449 912664851 545155423 316694813 198953883 815062137 278639511 170594543 333151569 35453745 230795645 821157019 222779535 155971961 987914309 20921309 503507375 529017047 866412465 205883457 789701651 9903891 862102789 304720407 637132583 972317507 406637073 486521207 407127386 391040197 642886697 773886783 73882411 794281019 786830125 507037211 945552919 674850963 281957505 738942329 925700523 510750721 889576981 723080337 50237563 159477503 734348127 705287523 763405597 608377685 479227999 61064121 942362421 831590155 350477975 293935139 759906927 898434937 399443993 633378039 169175931 157664313 925031035 221376855 34440981 462491183 828449241 617341485 419589373 279487627 19006427 985115429 376937727 500973499 507900079 925201851 789993453 88392321 351851531 803918381 124407971 370474207 92010029 477485189 596558079 328603937 777588443 829876625 693636335 785193691 704558179 398476779 52509027 884863977 919891101 950240499 230534487 850088305 259599847 636728785 323621579 878047965 977361959 182291575 758346187 454361827 83622857 870754457 180121451 56210559 545894597 256031931 208319681 311341557 206061467 606846245 463534065 249198547 647208013 235895013 784865575 379823593 213875053 181910229 967849875 562468949 102476049 499285653 894285425 315679359 883997141 258216333 710949377 517020685 593780705 495363053 154479249 992194041 891627491 343974829 540681583 513365371 827347473 881159567 82255351 632487705 164011305 303028761 658662541 67454369 571908465 462348957 374016407 382494499 961307065 133812275 386663565 187800575 859271253 512006841 582189795 323992535 246387237 545810907 354079009 549581977 7734669 392644615 877230541 120148857 665294719 51203445 292412539 512265715 656364141 718685479 648125127 692861641 229881687 589738467 262445903 36679947 201056965 77703993 234447553 901431051 515759555 905670277 362687181 903910757 107845865 877560803 812256047 201850367 955479891 105409343 448825513 291600643 848435113 586913093 305302531 74790887 909645593 532484209 71920913 552693351 893902937 773200899 200826799 328803207 546876071 528287999 88502971 499235475 671583435 274343227 581248291 989367839 16493583 529405003 990638807 26003719 676689741 889817747 649929683 626557297 742659043 575922743 643240217 194037193 211650743 385625129 238294449 315899329 343138101 182855971 321789359 364471639 77277783 803272867 574597935 643773903 537133463 697289715 11363663 356911797 745085951 820501793 20667197 641284319 697769243 566697991 757359915 167624551 475591683 598332229 793574223 942568625 336573523 420237635 559718641 486011243 76717363 204166449 646679895 950837639 779655249 816264201 356676823 664258885 928918243 676934023 182688710 298180645 106550439 518705465 207785357 742617589 7313637 685250923 910844305 129015243 374325097 617169975 911033413 39010049 367769481 757399165 258924581 472134205 919862565 813467875 186678963 368288873 262267809 932907229 654993271 918801851 839661807 583185827 910899461 727334573 643971201 721147185 65185273 611530503 28585049 6899539 472497137 41529043 418350075 740035225 428731547 798915429 174242165 770207067 892779177 502749273 796740703 575926967 716739795 949459093 554517205 516143513 309404379 37176643 863442561 503791023 482839695 804167385 595970957 766862449 435965117 175406099 838365105 687430687 447201859 190017269 547093803 345972931 549007103 629054411 610624961 735595309 652426975 958128171 166015939 930257395 164139221 852727789 620176133 277516409 206495193 699679801 968218087 192729059 130679789 727378555 417614927 176049701 568786719 460928869 401505451 192330995 618915453 518268919 406145263 491187411 166643493 818680945 670644637 378493959 337780023 645837153 128448185 231575973 7147229 60339869 421032657 289745537 488930121 388307519 228176381 740992573 863899575 117326763 179767001 853658689 943880809 314661519 422942095 32264381 288090535 786883039 624555209 678868907 608445127 680403669 838439615 967334857 423430431 529185785 515031599 872183201 394863381 835136531 797436769 194396801 687986449 972875067 720207135 85522819 772778629 475125195 424439749 528675975 784330479 953754473 436055085 434176821 791887051 259296255 251918527 35122173 640646825 285691075 839289447 861215511 724276247 324490545 769257375 417714565 905649331 804403725 456882531 540451853 100901149 416359523 481680953 527070785 577444351 832838791 536893231 751207289 913820427 738445589 515300061 87610325 991710717 612722163 516032607 96555323 110932375 801669965 981463647 230903391 975629475 193887381 129860615 792647607 21927665 606077321 445085199 199790725 909679199 573002541 137523637 767353807 669241293 961605325 396818881 244959079 955620901 524206847 243078015 122863331 159867737 753058459 902571461 488623271 548977509 542377929 739979763 598938839 418756939 501687029 746666735 440474727 290464277 381592019 490024487 565243405 363953107 397677661 152306833 303298377 607047843 624024539 185433513 27026277 256822693 792854485 163676283 788331121 508122627 572244771 172745359 151150147 663521775 368299231 220787967 906839421 400429479 7182189 381930345 207697543 159414887 395217787 858310385 810464403 248041343 970038013 807556935 993411223 203743551 765041199 744926113 355919955 613787135 135057043 992924095 63009103 638419749 556014585 483204835 448516575 877476377 282835315 798831327 897893399 526916431 487436893 490744073 561698521 871172927 841755485 827798333 55109325 781290861 135484253 339497187 192718691 329845603 930672277 445868521 351645141 704967089 59584379 861991363 645262879 407032565 32584153 564236915 152804367 361831119 247207865 570061181 456294449 50974953 556444273 724285169 319648991 165798391 141410201 446879331 645810489 507343537 73946137 810945011 353324071 910632667 898224413 362860357 408041305 538619965 364032791 405277833 93317703 329551789 134338245 775892855 19982131 974831618 641899565 654087753 289320995 340783905 80277911 115868361 521636841 361320177 346247833 281140547 500496155 726059623 768659217 809197965 834707229 158574715 273750563 876704263 612227861 312076081 723148089 186092695 254748401 769641617 520078087 686480299 253685357 194234289 568046733 160557881 52463113 861841833 659368459 577486271 277615627 196904091 689046545 135872835 242672515 964846769 153298545 90422869 97838413 877196575 351238983 423871753 798719749 105655069 742214647 81354751 670525463 129342191 577882161 370124123 621777583 902362335 375312611 472022477 240096457 408145471 449960783 448342413 3208995 591955559 859579895 45781845 890998343 357315005 136413095 910230383 651455877 392048811 403312243 332495527 997312499 39584927 101703863 232660821 760931699 404206361 88424985 735043157 77523373 27756695 652112005 592021007 519218449 673015715 262364461 778093937 956598745 909952467 112530831 988090609 629810435 820677311 147174511 568543117 223308633 684930825 777961177 708920779 957680745 64967515 4211491 516075195 533531021 26421097 500692453 573184753 57258213 23504107 756173063 209210253 11507801 294241957 49737909 97259827 948287641 375505761 639030371 808958229 651386909 706915569 800483787 344786917 112168999 617930543 687000051 517674725 921223615 674583805 890231337 957204695 220978867 40524613 310721789 786854671 849405083 61889019 433041231 210720861 756776923 178992407 972735299 312863269 501859481 138617245 352376643 20333385 243396037 474579094 407204101 605732153 103787543 631577111 629811843 353061611 473377039 803316791 353954053 619675101 718528505 343640089 403547669 247974165 935852767 574337255 821732999 170735651 155163551 103414485 485691767 36490267 312185045 628998173 355990347 56587421 899089645 796603391 93372077 766496461 894809365 276587463 121225619 311325789 289712197 107488197 286975545 641013887 533292605 326563927 243078691 602775285 338812551 671260893 209715997 255924995 895006577 765522627 37328955 238290039 177166615 238883961 514958041 240161449 748089429 300706937 303390621 381644149 555221973 289390151 539442547 104301123 946180361 862347117 379112077 651403009 861216039 139993725 369606507 962115365 908190767 462967313 200743885 294194349 336138217 775566795 187424193 93695265 241583849 552553815 683706011 290753165 28835203 100164451 872131065 637234823 462094041 46031535 57346751 662773039 483973587 94599929 227956247 885105193 788857889 557831181 386745461 307775399 219891005 221777085 114061977 126973277 737154917 35057123 322691715 389907847 742552737 912707425 208328835 582763503 814866371 874809121 470786601 662621409 177096547 989187607 292207957 502896181 733664481 885873981 935418155 716575305 141440357 679558803 173707029 977713920 971609823 187603493 882685897 898031821 265784583 500501765 38626371 550367139 240649311 176885837 847083207 394009601 725875501 787467807 381488607 220610031 872899715 588862119 978487651 338799097 854159161 272155925 959828335 408882741 825939695 198035107 665057637 615852355 98328331 90919829 468567281 36090185 291405761 404805685 791850249 11169523 2600711 586714581 899136745 667505275 726195615 465317327 871575829 914262683 797905423 939540615 941071961 642647453 306524583 853314659 813236427 337649231 695233411 354996441 667363523 367985925 202910079 239874403 984703467 966462109 876104007 535248513 141463081 615103359 265377095 784922815 488088247 346891931 37108667 330735535 269806861 433747043 47529377 535458539 155992049 263698391 902474691 153548565 411224688 466752383 640400305 51999449 943468253 385379941 208433345 867571687 750072789 419632933 121747733 407634937 138192189 812035801 102481045 843891157 422389567 628477481 122183667 776718401 521050961 540357185 692050851 541070097 814639917 471499227 879636713 882336287 211185627 436480051 252754637 387936845 251530915 638591503 821907741 687407239 346660893 583518397 524314483 721361085 845290277 574319381 220886063 97753321 675920859 983136885 718472057 529015825 674688689 502816705 211596353 714659643 386473815 520509033 996070209 142125691 414772681 378018659 618989559 44287979 850425679 728815663 680519083 923785901 323492211 443972047 509608559 818508781 596116745 29070293 923902491 109902811 438604079 69578583 40934735 696824499 38750791 998077937 130862705 89699765 901311229 398444747 67279029 629147181 454002505 858482577 939097875 709742189 7847267 474293629 568204103 256669903 136670417 294480459 792250077 42419383 915927903 524555585 440032293 721860491 427544099 734165551 549067063 279039427 431123575 906474089 632960241 694196179 287754495 963737549 841379327 29693763 134474409 140146629 136945615 91121561 136378279 72595515 439417753 931407209 290226809 920926887 45384029 424365389 706767583 827219721 529283813 15436007 900804841 450016995 248830657 537647075 374041063 496614983 232162119 216710385 134887801 172733643 682273177 959369421 612804227 778876043 467495585 441020215 571909679 679367471 123539978 351905277 468688627 776683749 459236179 760959981 572317579 197656929 350633143 344339427 219171833 814659813 584238657 983274945 669146765 63370551 47559871 593024371 284475097 988262049 282602187 803137001 493332155 419573501 62481861 995298335 907437907 81379497 273071319 863843861 747487251 747443593 736481261 765693401 197986731 87872015 984684225 729950841 173498649 710646829 453282773 271981329 914366625 780519523 699951473 863907269 656878287 876272313 343363747 488353467 47957879 775282619 890486853 350871849 824524983 57134977 260891127 108224073 749890545 202065575 319939361 669112413 867534035 433518421 583614451 61063085 819921999 551625785 238141541 969790349 746523557 900216713 569427257 88545111 304828245 130580995 295900917 561013615 21299245 899726829 867040491 588362301 142350915 947382295 610678323 254540083 601442801 608679125 193765547 478092749 67451099 643735301 655643647 957591179 850677999 560262929 209891485 834879483 910606177 442842595 587710653 5476779 360026027 118380021 929604449 110626103 816788117 863093313 429380943 132997955 394112295 802280785 2207255 170757237 568735673 390267953 147252501 731846277 46351079 236803449 260826725 469094695 867096721 4852805 816964595 493274403 615077095 231665469 402399851 180531007 562146141 368554895 154543177 877161297 47092655 388000753 35756749 57531183 108408033 725392801 408986365 82505661 441292863 79379813 62596265 67127783 498447965 310291085 807450475 701386655 120187417 508005357 890269093 601553627 911012757 816210149 868801403 374348963 987483453 417860187 47049183 673241085 555729095 548820411 87190411 792282879 65512497 868139005 289093629 530255807 221023931 843853473 837126783 435059043 525738483 523098795 432896287 108919059 850822317 339100585 477161911 235332865 17526279 49679027 153065703 670546281 264345187 456807269 84554007 212752267 721112175 823491303 803614071 410494133 66515487 500765415 798915329 430015285 646419885 915707035 36170097 958653287 729502367 781091265 14404181 726076591 265013443 370410401 184698873 111237237 938101035 949832197 892882039 417043243 725695795 713581129 868679855 337852237 76161919 731081799 926878535 398083165 664140541 562919781 933181875 423363043 686093793 348713877 788026667 171286133 334997159 537877065 928276395 759837353 821181715 256292739 480795903 203025445 85544239 871444167 77521847 188041873 671389779 619888163 937769515 874199711 780064795 971618095 539058043 902885643 971436903 671197191 938951821 726389143 347310441 339236947 952994581 659695627 347293841 709188161 618768521 313732925 138019741 176226695 416745769 596888067 707438225 951134821 870148863 979372099 759275961 782430365 715601115 885694437 959420073 976879233 505663315 564116443 921688383 82324453 254271435 361949985 544575645 227864361 763503463 982877113 694160431 236075571 534424603 185446827 307477677 860332911 712415643 501792269 226422543 129020631 21965933 635783157 483594139 840249063 661357779 539233672 749647071 359087525 288591843 868164849 922304683 742371231 384062577 319814495 745028383 714721005 407475743 490706447 62048669 802382379 474271829 713180483 896063955 859234177 266270533 875291461 554833589 716406687 961512163 971781989 711056255 852988087 490036723 235257601 938498739 898612617 803901181 520427127 117372705 220467803 426748751 630238773 890510555 327943677 361277443 973093293 393875517 564022469 528250105 873302615 834174699 345400207 376890329 913636535 433998037 760949953 983886611 607931221 797692203 977004877 629420767 611088839 966201705 388617127 59656255 183533987 565066839 858826 808557049 317649295 155629823 414647107 824135583 142672947 58805684 688558109 345630345 631245121 719438615 627807725 849588439 792921207 279617799 679849425 88171631 43912849 374810033 436567155 263118341 874479711 814468235 342910717 823856143 795310511 956096849 488975399 579614671 767234143 919743241 368345903 701663819 638342479 905976059 381099229 901885781 697069929 174582717 128611965 356002434 632307871 927177773 740387045 31897145 614621935 215830125 20934517 777185435 356308309 870216427 410159891 197773981 571503841 960608601 815948589 785411317 265448867 246027191 567774391 538571555 508553139 414895429 719751987 897690225 734085687 685080977 336960421 393135343 539870295 742576497 184545693 379825267 708187719 731880959 238836783 146077087 852746815 664114081 167398137 86649051 209991043 413905665 44418853 163807577 533206363 69304853 621374045 194159631 875560989 511734551 697410009 207537853 905445921 846096783 577438551 551511275 935371975 359285575 337932319 874616045 575634815 674023763 692106237 873108695 961000117 888780047 297296457 691869579 154859751 459752225 521955039 250488241 738949527 342662259 172794151 608840889 833948751 850874682 971132173 846270941 240994207 548382197 245490187 602488603 326694949 914271845 47143965 903420987 15554433 370889879 215317193 201845199 363787613 299461087 279089695 289707567 678504557 146782683 834362803 200111739 459530089 497260909 423262627 249323931 136104469 160634305 339648409 854623039 488252475 218602831 795215295 940412639 134098603 800164559 714094541 547279037 243502659 544758855 495248387 689535199 934731491 315211267 17747491 632778775 809847925 108262809 480806529 969439483 367685101 307145443 785009389 668060399 898931779 19945733 845780425 444777753 222731131 162199917 914767611 285454695 225764767 571518159 483833073 595584917 84260287 40547365 166306721 375047715 564750585 668890039 399882633 327136087 182604653 953934349 328160431 209661507 703906117 773489407 365378979 338626493 941086645 820867239 319517305 504548199 508284917 356561003 712944823 296541867 130586185 85847029 961725391 33156021 369003771 730370107 930306851 65219201 512404317 631629945 975983109 841389517 616420041 172152627 625040175 55714851 13769632 422155059 154756843 544917203 639926351 58356881 916791813 298656499 831735879 5256105 366679253 936068709 47114497 70159901 101072951 726437073 951783169 956072921 972454547 914206377 498983121 918794259 191899351 387568161 951975937 252587081 662225273 916137021 190302767 756222267 103867255 401601477 999682043 945256951 576700759 752882247 556347921 503322321 161520681 506090781 526278175 800103527 710100609 78462055 660490213 673665691 973309821 103955469 23791649 158492571 245092807 393997503 834288029 779741913 614049417 389808885 143392303 710689301 392114812 16220657 41053615 857885263 892854493 569404603 593560831 212886741 997829235 855756577 533645577 482296381 342474891 929931451 443677121 466619232 942557181 455704557 227842337 320454757 598015525 983881949 404581417 441406391 219652075 875911803 396256229 27033355 110375101 266130303 423729765 440786525 753695633 297893737 794195911 720179951 784599013 706571141 403956011 955125329 592281793 123277277 175262653 578192213 681987503 972948047 636170157 322517271 592422347 811272055 685551413 978194941 725617327 8721857 220886425 481427121 586504065 124729947 657414179 732034857 907856371 192859197 661507365 212661665 946284855 688635175 266317561 981706653 991094543 205335203 729526017 730428649 844758719 591374079 785997991 651188377 490368021 690294871 816823903 291207691 37973609 85196679 286273185 730451425 958338967 626121529 53858035 863959305 850120455 773854943 164925145 884833717 35058855 57178031 9125099 154171491 248830957 740070313 669550017 607951063 647152343 645815957 308948221 567188767 879546093 441006855 501654603 722871947 336832569 87694163 483492955 265981115 913992279 408311963 70384103 662202001 772759905 303719879 403046067 89017659 619553021 930714247 823261833 880985389 277311837 442265173 604438587 257642785 635353139 209757039 234263203 339001631 105601473 308849117 951212451 574818159 39937995 505657969 760000295 844431273 726015647 692879299 275987487 140681127 405122069 776810803 336188805 938159247 187423369 215555561 896970077 761701835 49544165 245566933 524566961 131777553 498000531 386138799 52949907 41149531 245424779 414550265 452708381 684137713 147248715 429734137 872453489 103830109 846360025 541715905 216170427 342662771 271912901 142101033 796645931 263379791 263491621 537009105 190931451 579831895 917950357 785643551 735124849 729682231 502795835 862819143 751013075 392196321 161703113 655120191 672002421 767473299 850756979 372196553 791204017 255955153 748521717 680939627 595604713 257506919 706571673 654627189 897304711 796617577 345154093 71257859 270001407 875877429 662768899 542271728 590736843 43403373 954269439 175199467 577977195 850671615 882626179 732077917 557988971 81979933 233367167 43523203 191117405 973712967 331707243 903414107 954866907 827331901 271227968 304108207 778636425 252937741 443523465 181190159 517739533 31436557 192718931 705414865 684816157 278167767 483369269 3539735 681626483 728320335 293614923 897631433 549667279 373044899 951450427 300031641 534072573 280609351 705346615 908327163 778043087 590829047 418361075 785537843 587747615 405231285 439305901 295401033 23831247 348777425 496077867 273600523 109987531 370382301 348101307 525763091 611641603 939212725 728092981 819212993 261575539 593447807 930834679 224423997 37627163 811764645 716777189 800415607 624549127 751001053 765050991 729188649 85891913 93314083 225167499 832623825 300452859 335869371 208009401 764686263 897942081 71604273 186544123 982702573 664755009 584372313 611207139 322543435 673577777 539665231 358103943 455803505 367675467 806363001 400355971 438266309 255090639 16576899 687311871 957055611 301379337 894446431 199352743 639214475 61043789 8601419 380997813 200612017 898725361 21792461 992830693 23242105 526334297 140666285 661076861 401843251 879413233 924977921 377178187 48787703 257154089 442733095 96657063 256729763 81091707 90150337 574573679 412780003 122052205 203705021 210751239 271708197 757619077 372038991 326902369 519443105 881829463 266805745 805140463 597323607 490632061 42994795 337727409 691660817 297707163 963599045 485935919 950193503 307497303 205624919 517761141 506591639 551935081 888419515 996604187 242516955 103950469 130448599 669221181 903923989 687071603 389809109 170078339 789481713 236168441 771290667 490252057 157828843 944177643 90071187 287476409 226647361 506036003 617924373 533022623 318472189 18931845 34502139 652037009 547615725 237957623 781252825 509173983 779627435 769108081 213102475 812967773 269848215 602573031 934296375 638605675 648241627 387284833 172395335 977569005 255009123 715597285 298974323 816101459 612196073 700882311 372437939 252423573 189569263 492247905 722475341 954906925 896874940 44901271 495047117 627704101 346327137 465606737 862724359 163731977 317431733 544727233 703350553 761479153 774525273 786487843 906679653 782076793 486446773 750381239 19170199 536547017 189405689 148516041 975297191 701396111 843440925 676488619 378158029 512956159 646504675 666193081 240344463 131680475 803934673 76642385 595818683 822374505 345958713 848909025 295527265 336485491 301640755 385484761 676571617 220764499 816927903 30950069 890577375 630667751 141096483 605525495 533830469 882564757 324839731 845789735 656355655 441018441 33296389 388787929 64322405 390387579 881452443 707937703 724410463 446006059 968740027 962441013 988062533 223260637 556372213 811067435 683151465 828915359 926097829 852921915 835272295 820495369 145549031 684024609 290823461 421896503 448630951 686805917 716178637 774256849 241298833 845688957 640499413 394199045 160294433 922624911 475790585 890505609 202230167 743122095 74647613 599166107 297868537 773464769 651444205 256182785 61948439 937864365 536692381 204911883 685998731 329774693 196188969 104410765 253617335 182193125 235894711 416673255 139171519 440116269 340617395 585805309 624304021 669892683 499753935 213305409 279254515 79463501 749017865 955022757 583399767 627892815 431172517 293114795 947209483 704303989 18865455 171833687 334147357 677931239 128867965 313643575 878806887 594049239 714794665 597379427 662552713 836348801 461300759 713639031 988107499 758271527 471449461 208442523 447308733 201233425 297207477 298576253 793859577 594468243 159297047 72765011 799711581 739416329 600873243 936094427 436780401 451980753 592686479 849371739 17398407 782695769 101889161 997082275 240199351 33709587 185191267 788996359 818920673 465922679 891713219 628450663 455188907 961733639 116757395 471360809 222500489 718985297 705869321 868129337 587288755 983571427 821199519 805620241 236848677 60740953 201740573 902571693 441069227 623309399 260574605 999803793 579423445 823769733 503471427 610746577 925575419 172551317 585331163 631798783 656285757 376798019 85051451 675050809 46108545 847389265 800055693 104705575 692681339 258089863 338761287 312392439 734984865 321250235 647213349 79152479 866090035 504005571 59371051 312043933 204575035 845432709 2104741 760470393 367374473 705198825 572449065 802642239 979958451 275641057 615045775 931915461 762413341 914096232 392495871 856349291 91412715 562596227 894483429 80031767 10654225 272655415 746033651 604535861 526833219 569074587 358833705 946546367 812808199 42616005 579369159 616813103 962135967 983037403 142230619 80423055 440151073 449323269 606080699 603739245 274315361 971944311 301589505 559846877 592547841 212020329 354371985 836525437 69806697 775703581 197468953 870657909 792079819 316644577 245500301 803759219 937682459 990733315 603981863 590011053 623706141 65467105 616293231 848984291 264979033 87447515 290206765 731887447 732992029 859658075 237069433 397057243 157452931 292693203 968821933 101436867 446469483 163618751 129523823 519145199 785080445 915861665 90191273 466760901 805231657 488340481 981244817 306055731 98752679 322688373 758987683 816251821 584917753 349450899 655025315 482737717 411323877 107020289 701513629 177121359 900955901 28355687 948042469 158773003 165153689 733318521 522177303 246396669 890880473 63062255 921324057 932027715 240184739 756620173 475883030 823399045 633988523 987517467 572161155 900044273 651551847 458561135 895378203 995496511 506876697 291936351 469721827 798818985 960101575 593105617 638895399 70396409 831200579 216344749 580892797 124807033 97200675 500925415 918290365 150066181 636158411 305160311 976781073 484787959 383890527 104967521 738334431 434528055 986762963 683424173 150358753 133450801 617298909 880108913 202808079 848653535 26466557 995982019 335309489 545853629 684328317 421605065 722234703 662338257 747673453 820834475 208871873 34943659 909395107 17304221 838943009 263016797 68970945 366288087 903207891 971195019 576037681 115568797 119500421 322756951 768321055 660791097 840997163 860346227 540844935 440140027 395152385 196193297 237895975 140952129 75413129 906822385 293932167 829430891 209137299 815640411 6039547 708933347 588691761 778329371 179558295 375514139 609919423 792228743 480967741 935056529 937576675 409736831 383283349 437184961 538186631 593163112 432125455 406099771 51975651 20705843 459512293 506054543 992731759 314152531 646273557 158107477 875836655 558390727 97440359 525042227 808211827 807419413 583985517 12196819 420707663 915990859 541282175 753403107 518226971 20325121 238644157 162599457 960688831 366552917 212169487 889661775 338558055 101586413 809908517 236985911 200801669 594700021 888234871 911465387 219811033 874048037 990402631 241039491 141458531 469565373 768220571 95805605 25931889 923700095 337778245 798896121 781706393 518252989 907684571 471289203 557994675 387697229 103298753 344901643 658962921 332594059 268790045 410278853 258568099 919840607 153365981 495421099 374294677 130969143 997505213 316997583 376315327 379334153 663661116 492022345 808381793 650374483 183024803 618087487 821134859 494979611 284348161 792363483 585159055 878289135 926247981 753168459 699492361 859053031 770911177 509961423 798927069 578362785 231022399 469528997 627696571 314656835 85472443 348017431 698728851 404440697 560238137 207098491 64940961 453891707 87566967 141554985 623832685 407904009 629309439 694600579 383037633 547064935 556236320 452088307 872416945 176582499 983541747 575288301 373819545 999517267 701581143 52804329 777984031 681703449 265434101 457658731 595701039 491292951 861208127 280820733 126953723 923515963 766966889 838646321 643324673 418303487 93494135 186119073 805998597 259784031 714307121 785211119 654067987 559126243 753318437 149442245 337116289 864864149 16786605 28453079 380948199 799447055 261391337 371734749 117936685 181585263 232209345 729546139 300228735 902089307 768990949 957742043 58934097 174809087 963598797 745467247 550570589 691934997 215784891 244970031 643613865 76633303 552145847 702552321 539033987 673455631 587989903 481984207 151194491 273334793 632168667 624864649 837816689 807771549 189095423 163812137 677102985 767242279 210649889 44581043 185946157 472446095 111230769 35038001 619389203 475009091 229502695 639629493 660003381 984132665 223208901 860132185 278427355 555354095 822663953 544816703 397829263 244412525 787660507 377770129 22877221 452869949 485250303 741768323 783873721 291557753 768107033 270210637 874481329 639382719 375376533 267754803 72734903 707534389 216784289 791671423 917356225 262933383 420775989 365189763 516204299 458308591 432276497 834670489 431317785 714402599 347506367 340225315 934027959 848112249 350075023 490111115 951279353 831330739 848513431 178690629 518149435 476916775 66004153 131363531 394277 111519673 671573149 112039325 693854365 318063051 949953717 992880711 745058011 801646669 401531447 179426651 196358493 346141877 517983011 787870067 587914211 434248449 331821379 900254257 957837435 629526711 135158565 880654655 483574907 816885735 243054883 769791313 98120059 987854885 444280925 644373279 120966757 241427857 378764219 467688047 922918497 329115089 493983469 849265415 355985891 740761875 185693037 27161529 47734699 7109387 138658681 947875171 602969017 5097467 406774553 373725671 364184157 744213927 338482975 655502123 243301671 264176733 883500067 390330405 364355065 38978037 537529733 836301773 708456945 360171723 158734957 575768617 715211391 633611975 480119499 242219327 516593239 548311639 368352855 210969123 929859189 15129971 535830419 985266671 565403933 75291285 183669445 419721413 607343321 974778821 487152383 88481487 842855811 356925843 193093913 100827969 589124913 802040339 835495603 682416469 857271115 185930213 630471987 267972939 93304699 372284719 699690701 543198063 580851895 213754527 938841975 276521235 671822907 197006953 208160755 325107601 814873739 689548623 427241671 664032587 907982965 22859669 81088323 896288429 243977737 176880649 47657090 423778599 43668391 841782531 419124323 228709939 423775985 152067425 714557071 958155349 426136019 975882119 5097331 296531993 443416965 719897701 350223691 900943117 372582271 980281969 232911637 912468685 864939145 507612331 975543195 868173307 65556395 394949013 936603245 842352449 700372795 311923265 757981921 286853714 113218007 520757059 914405657 851224811 400207203 499869115 409065213 763763657 137115657 696659535 52018495 760295865 455402303 544058413 812957779 970964109 331596479 111102987 79701373 582600735 200597393 623457573 898173381 218898771 820227325 74319429 623715577 300301071 318267291 258084025 487632563 988966729 346635335 372789077 410415955 868204539 827298081 739168119 255700737 186727972 864826011 952198665 667705517 721676499 955429477 151074933 156173073 499625495 566386811 202148275 740936107 45493261 770301477 822215489 3085251 996775379 151530221 958502439 363506539 260978839 338566567 867982321 384196731 454124681 131244913 262542261 488476563 198320611 916903597 659740435 344653595 675970539 955995145 581510961 65632321 683241959 137201527 677349821 929412099 633015851 433411893 259462125 165627419 539582737 795541191 260450687 126483989 83844602 840365561 578528697 537737793 714804309 956846049 159893097 773802167 919095439 532474329 856621287 203461205 924621605 233989253 129693457 390870983 986832791 640021203 362701387 202625659 819901809 209650421 208727687 703207849 41196357 198079339 601280311 290407761 94709167 600625141 263043163 968358205 363720269 779710627 659036539 998398973 346365133 437690565 360022179 447249383 834433503 547459581 841264489 192520221 881345087 70539561 811275759 238470025 3907501 702165881 810804693 364416983 638506485 174132577 587168079 782738563 390466537 192215965 986850833 314567115 422933091 273405999 411405913 12364217 129836359 335657319 125835245 123845403 398255741 932560087 588055837 662608523 563310327 955848285 327168957 466242921 128375729 367224601 546187307 916808415 951610027 66018941 590895185 132908249 879693297 425655097 519917209 418026257 756265109 875485259 131219197 318877705 585532339 345319415 155359735 543351817 164969833 697286857 625962385 369704991 448787429 623367829 551748183 429226789 193936471 260307095 294366815 657199803 138267643 176799447 501655627 344967241 204960017 437452893 198431293 849981439 370292711 739179261 973990115 487465429 585954251 405048311 896426615 970897037 673823769 780834251 316554165 24628397 847876915 28599623 496970467 977328007 790796165 373414529 152904913 914365491 156164223 840367059 967811539 969885841 601202077 385700577 337600201 800899655 442025825 377606041 292799511 946628041 715179091 370403119 315468463 526027085 791145991 3379997 306738947 994049493 841923609 370055723 910337557 17843239 585641767 838590819 344223849 900382677 941767135 909243159 648388365 723307573 355371505 130514409 563865751 202079081 430015257 18664375 709434409 471032667 564047385 806131891 756711013 975604921 239167929 814881357 305080443 282257913 289257933 239606849 898625823 945231969 981543985 554256791 883274133 197500661 557561795 771316633 933982877 455178117 813534577 680681179 949702537 267718059 468490027 256059963 313061677 442612169 327160045 648786907 548821737 400896515 338399161 445083687 719096225 491334475 958151831 905795287 267624647 384620635 97964955 958019043 166255949 270817457 373926625 871820945 631627957 282894743 879023495 859365485 556454913 900459291 370374843 834474571 773722309 297923351 918220973 813758281 928190993 243361323 479084441 842847689 134436745 987486911 946924225 822607481 676878927 642369027 352291693 82554189 716648467 647208689 505853427 298198655 241975819 275292999 473093289 634030487 879585269 723010189 656037109 471817821 751059735 111830805 410616383 103568873 390620481 976923383 278404345 694933397 827135431 927153427 42740127 831691781 2707081 457451535 710237617 783104039 865558765 150707039 837596349 772101167 23428319 969295419 846298449 123975321 841361369 916940959 49185291 617155881 408621013 897817177 418472585 445975017 261540445 915405299 852943993 289337393 154536319 355431371 88566413 329159069 461138637 619049727 851124093 584652045 209606763 448943221 887344907 355354547 231242235 394776033 186287877 424305663 943119277 518419129 979654713 543998127 553832247 37686589 272438149 551462343 143941847 501560695 343300295 969041811 836544085 32474679 9414637 103547815 152973819 195488787 510573545 904725473 156810149 464761967 537923507 731215715 109730733 100829295 747633485 711911835 692771321 239005703 761272517 974609723 23412987 710385387 714307881 839360321 647885477 127765921 914647959 143798769 546089849 515984491 938224173 47618009 77165947 340855903 971177753 330015945 767596345 415379025 21437325 822314721 824336587 32837603 955621569 494741381 220073167 295894653 561523449 504531037 761815913 856488529 565604477 79490659 49346889 243496275 572401315 125763793 451200677 355503175 233075905 23984169 865204283 273045941 447804221 369179963 69711443 541164267 601318526 253494297 892471225 463125763 389655545 276443935 590377667 281791453 186550567 72392689 968088657 217356065 661295755 596377215 627258569 237978431 506195631 429364217 353433369 107791471 797809443 491139035 886513589 3253683 104749957 258802413 14106015 748714449 603367027 373557305 59396443 507650139 841012381 755048467 114037751 690878633 29367215 416567065 605693451 112034011 775103335 562830125 835643061 203088087 655026823 495984763 832526489 685826385 593909719 852379769 239380711 598189247 263457069 525254883 941212245 953673827 147478113 259224767 92806691 955298627 630226003 511542101 915290387 695037233 852111345 259465019 771458166 730536899 357520173 539540815 859147557 874735965 546866687 582366131 606631033 723365923 383749995 639348437 131905371 181386505 287725179 178981479 963497271 575899333 960773439 811051625 643401991 471226583 755621333 973830171 410448967 633259657 549249885 978602765 603946493 338728939 232920321 510053391 746721207 574674131 615331059 243813953 922956941 672472035 18576751 614772743 820688925 293218181 156478391 196558859 608950155 430609637 664703253 245400131 597716615 340858623 843746777 980920553 211814473 644149649 439252577 494416261 629876363 167195683 932798477 22582241 522677399 951137545 62254663 938169617 61588025 375165015 116999043 47908977 627764423 667128047 721946681 837431975 881881633 281463673 708604397 69470365 888637357 30492005 983183911 687686281 160744793 990785517 408756605 980853479 291307675 226563855 282045575 850517371 469886321 436436115 345221863 738014801 265759073 203090699 513231431 435005629 592380537 663928015 451105113 744681565 380098129 153361151 89964763 638962195 473251591 33059459 736057995 511554827 668853823 655374091 812702771 435720637 751332907 58281487 832089257 234288865 612256381 941510609 900494533 37131389 860963189 378200151 540762217 123427039 185777371 610305651 807836031 562332055 723279611 208791739 949246201 373515397 605122477 153942675 701156309 507745995 242502477 487105313 923346961 635050967 654151107 321918035 449218487 596738141 589046141 115144677 76440029 447994199 478223983 62738007 650518427 456411917 635480859 960820719 882964755 334809095 180920199 693193663 543277679 276973085 742313533 836222621 428280035 101251433 283130711 163606059 158081959 228982097 468719987 840037331 217392895 258889087 203838645 255719361 433119541 980351721 518437839 942166513 408368025 866290379 223508211 848518433 726498697 795652009 64262371 338962907 802014565 334088269 714591201 54085999 592329111 257266385 85828799 238989555 637870995 164256651 394421203 756440137 910371025 633395235 607350265 493244697 887472085 759628419 466695577 749231573 224773929 830558691 919038369 753505968 918763615 723220923 500742791 291253425 629093137 130326225 798067017 962415261 466319329 232978481 955527789 888976899 441732473 179195951 202670851 505430589 51824013 103066473 665785247 267359595 190459349 123013057 336860001 986510709 287795477 395724645 699451631 484870411 693297175 972599751 49860981 464127653 114731181 601330343 759531435 452762501 893372081 780986117 802164945 872013491 338374917 100234799 306009003 480840189 104589459 944323259 169556359 119037179 404855869 539647363 54547261 649895441 811634481 320459947 226344489 555765093 205772605 469116577 901942579 143428583 300696189 223503641 759320521 107870287 493396227 701838863 163148001 534462495 917608681 506680517 438529529 211584669 774932817 925563595 249399831 134375385 755240805 404262131 165389515 637463983 495883097 714538073 524291369 299258045 930816869 455803235 456475345 566081385 97921743 662431419 574895337 558473958 602687707 978250329 449799965 331181101 993970145 693939315 377819815 721250555 740504121 313649299 961107777 342763739 406009157 617909379 453230645 279459869 962230897 438866775 955854159 901221079 422752813 284313197 499662823 838712299 5385971 325609063 821858777 220059649 946728007 26727475 625330831 474507403 121305523 62281731 337452531 753944767 739376073 904518741 58274173 272771741 959468835 64834285 207260971 814317551 842618723 718080473 673093763 703255875 966461491 540888681 448183189 904603379 918129223 198261821 294406645 671505951 780132441 317924919 482109379 969735599 954820649 390114693 614867621 680272723 364238211 38379675 576436423 682250885 301531961 385601075 188679651 756279171 579263013 890558037 723020853 69021269 196489257 178890057 577324929 517208013 91012911 94234791 786773531 282780803 313880619 815538249 511942101 319790039 130492439 452675925 560168205 535612657 234012403 67099445 63139755 728637889 262382795 525594271 599170077 697293823 389636785 978426509 657683545 928793645 380394431 630216007 124917983 33930385 168622103 936189271 681025969 764838973 698723301 338563729 65849185 622919177 188960855 751714577 974732291 586682773 489691309 417810493 827099191 109463111 999920421 435023809 359224867 168433747 264497675 168359055 851589747 421479855 906345649 737619941 338143585 340865309 975979633 659045959 895625641 584123171 256582573 87910529 338565009 792787217 494443217 267604647 976734183 861779459 423190861 597916439 168273155 11794389 344289949 607571315 219954115 412524083 658133313 844367785 922582155 164919177 335452101 635732203 881232971 546631187 168751035 15471289 693178745 575459023 330772157 393084883 204055315 896751239 497147245 459075399 210294177 707972299 512740983 33944939 140576303 146722033 312179595 833652953 356357459 396042011 598951011 579869557 993873965 637089073 20807621 165062509 24989539 600839653 393779831 430843445 333705763 497313707 610844749 198527881 936354081 614607305 120522529 223505003 123116447 603245377 489825237 606993963 404792929 234900455 946827093 587026779 553775287 803039571 915453841 479675095 355563381 687440869 913204355 544672453 523489785 416100293 294306097 716993423 802625835 178373093 146009761 288150251 540322427 852268793 426615015 727722709 547353307 748683397 846079005 802537617 198527435 481128911 690276197 47622571 933535315 618159337 429720555 406659831 652233727 754769835 536255455 938503059 882840037 564046005 437114749 859654111 853926309 706613359 812538885 924767373 415770725 490062343 527232195 723449741 425081811 475933307 371924489 539380511 900355877 780022661 597675057 709336259 396327959 499544241 926124703 411393607 164669941 776197199 551636665 84665535 307555975 572481655 721983221 157653385 18459431 31420423 504773069 350764359 499190195 834704811 166194369 671218919 653834127 878514384 214855007 673381533 703329963 499679921 147285045 672268003 2993279 624909643 506792927 423476609 753917701 729212009 386992127 527980671 837495751 233943707 171279425 174994229 989827793 274914359 424302933 232170301 902177209 104105567 713752055 898257789 208306847 971884029 16533479 800659743 202622761 750466749 766671089 502819481 416060293 335845403 620964329 309697701 712535401 907063893 968718245 961580875 844313363 878476149 32744457 884627157 366498889 998191177 433672961 515047127 153679705 354788203 867921789 634130221 479720477 784803389 727051385 104063229 9855213 431285219 844681205 760708017 569943989 723035215 488327677 255397377 399710943 956331833 259962277 246760165 444720739 856987939 678312963 701074595 619107009 634416725 663977275 418337735 894992379 759575517 759992185 189385253 172108453 791326357 53599213 947727835 486384335 184263709 160633811 69732427 49519899 491767261 163435885 767775009 604156847 461437445 739212547 341213525 592394041 46452877 195224041 662180383 862385647 248353847 200257913 626946565 73680527 975611273 576410135 445762517 679606111 848410581 997948971 488300447 541433135 87228467 224655655 639626179 523131987 61162115 208513671 965280741 194434475 484110443 748928715 588712431 938295195 583881311 169937535 996464405 841455893 296472725 40706359 25741527 120889483 277150223 504382089 896070645 607795967 966727571 325860121 983832959 763987187 135057587 869889939 621127111 416214393 269142213 509801385 22113641 282437927 741917163 90101521 375094859 490794265 345756175 881671827 224818327 819268087 436023775 418976501 51602371 779439855 431935441 758520331 919230347 808028343 887045931 846554545 232821491 541066893 60121841 661034181 152088903 144256825 185829619 32804405 737190683 134785029 416042699 999780849 292814155 91693003 431610075 331504629 726955517 28521961 257774407 916867907 174965149 710763845 252281601 199518435 181861341 52875083 517254339 370431211 346126523 30679285 516869643 634513265 532560251 955916733 229081635 87545243 522553257 30519981 46756633 367641231 797013019 861735761 449708743 172942981 449642475 842574017 901480397 206846387 889229693 267212953 299019411 768592219 808956287 844939779 904951369 607128267 14064611 588103849 606101993 221016145 628750569 684326339 309369136 48434761 850197521 311578895 31428009 650961431 179158315 143102419 405515171 138732835 223246663 364730334 942387511 378051039 951462341 70156423 751643973 929188551 458300745 14392747 231953011 57099101 591490237 213416111 376169525 844736297 106903127 311476101 314359747 548458689 532058769 48298913 418499353 276777147 931376435 445836031 921389573 232349373 351156295 96689961 856674065 962537583 133743905 627752491 637023387 221576323 260365661 535483293 8210369 559155637 755550177 56973725 348719977 512550855 903859159 268708815 850820423 53068929 839597493 60576355 910699217 810084023 678423095 375872271 753889351 596004165 770769249 201070609 964629427 480179211 451457407 72254255 94637541 858609905 560450087 767739065 386590067 651605743 942522161 684617347 845155265 788804347 218454469 612842733 775490547 526364441 418543439 347264477 324063741 692737361 961022593 299280321 697612179 361607351 881421403 911621773 572553531 387395175 205637917 754729155 317937975 904910465 509970261 73775207 336784541 156852527 654121177 876785159 423034945 642496419 522882499 467431355 704207813 9028889 703078263 291042849 689437329 851413971 642512291 589038941 346554583 865186841 157795131 547501087 737115787 522346817 512415609 667417757 142905457 596708513 922472677 985937813 316048657 303190175 1944647 990031182 228976057 609976739 162652087 838473879 396027267 870843169 333856143 132297667 451776591 371828369 195745653 232711603 762895813 294082677 159263571 740471501 961583189 277807451 684738655 313504253 596658743 274672849 481516053 83054013 144549485 671425653 809193273 185905929 681083325 650594023 910410455 360802919 445551033 238377169 443874627 951935717 473196473 549876197 681551129 931286811 594353117 611565535 408994367 543705639 138981899 504843649 14230753 214768813 69468407 51151253 911882865 629095389 275783959 811589099 716864173 422303341 362420653 48766049 554734745 154294173 349045695 616202711 575608705 929182255 847005471 224446263 127654907 368238965 68231011 204844659 382915295 765113923 611407087 524212103 310365271 612395515 468699623 749877621 575996105 796350333 856103231 285140807 684681199 356736573 655561133 302459149 203723713 951178031 218243761 473757925 919020935 529678801 838934933 365852143 827958473 916370217 671160937 718285141 295622751 301371077 312018179 347746123 372167523 498472893 672120837 647902217 338417209 263892399 283686361 313563859 550796175 467923391 76895147 177822961 713116505 17307549 200191095 861815993 535178707 816353407 673781243 919294081 243946623 515905573 509505473 327106991 135736109 936736721 57494551 369267115 984488175 997324117 828944663 112892137 779671841 46061575 389513121 205582817 892352617 508996547 995043933 796767767 864823219 117053937 634167483 869975317 919868209 836899967 119889909 328026475 630650209 400284897 32539657 840050615 342524421 513278233 828964543 170254745 629588269 149989035 190105769 733733562 165700653 325015463 578937887 440231889 56887965 588499873 234674753 13638035 526944101 746625721 314285559 111391685 160211377 642526867 532374769 303537713 979161075 314256223 982114983 707556263 684609259 944447189 812891483 676452101 519348377 543300911 31521555 576291883 99580747 505843767 902499489 196421891 278004375 434723896 355368603 13416577 25119317 664380171 243577957 813516701 284266415 191301903 314544421 878965851 333550093 151435303 15312585 727568581 506151459 288651969 682529549 915357675 229768945 141560023 588058225 986847979 522118327 891917029 356072251 905493989 718987269 179731185 90800253 57586947 348690093 668697483 744583949 131586425 20664523 550991559 538878605 910996607 157095875 720628549 120880743 804251225 34882885 35414825 90179271 287316305 26042433 965602085 377690537 802156729 340981747 866393963 872169931 50006505 328894691 752397499 963070391 517059911 333024731 404389213 236307645 995274557 675006191 429584925 813955059 686598969 504261243 62909267 578458427 220376251 279937061 778232795 848860733 504984129 124880345 917335581 718125419 776322135 572297417 944691975 406924025 909904013 460435571 811243639 219683307 100957825 632317851 359985459 314804489 296976595 702048589 646132729 89845217 330186797 574509023 572524145 623955405 396679747 355980777 534703919 946587373 619315917 534014805 772013395 819408169 2970767 724609609 917681537 593499953 209541203 786535487 28025067 563663229 41681899 973339887 271981635 989698895 230848817 614812511 23761611 831059887 16827143 238630109 747096903 307020395 141154903 548841979 160869125 484167451 412749077 693779861 879853275 582264867 876425017 298109391 570030123 853221801 316723145 63459095 871490007 636898461 674861513 76553505 885303119 715712439 618253137 929455079 110030729 406215289 832781433 984465073 70256643 188942377 384425571 322167049 891511235 958729431 968421435 182941635 671496793 135748703 282712623 959287291 690055897 410713951 924762751 322021399 204263139 967107645 991717481 105017537 804726171 665955373 423856953 54871535 242213043 470700069 494114625 371744733 375870813 863291877 332961497 248897039 670459227 828797175 897930601 417674833 386079217 317047723 217436245 486560695 568539373 406340631 75420179 876173727 638818215 961586973 298906907 29064875 369515003 100437351 270914289 440187847 410657617 945631841 615739679 810346795 378575767 733965127 888030263 396555087 318108739 813233687 855570131 321763321 116940629 864168091 411099797 907141941 159834703 617019233 566552361 538289753 778051395 53884611 818286399 285541117 448213445 970333665 710953361 8705547 917174773 568346531 79384035 919978667 616607097 265537331 976959487 762809681 312833149 532791197 888435383 641935549 425987771 364327821 693590245 207929071 893109357 328281489 426707563 699726903 421004637 853709949 606156085 173880869 33671129 433581283 539909171 646025371 641043891 957242921 184198751 769170615 282704719 579085173 690132925 859267561 81415311 915837623 284833879 946728165 782564835 816539559 81470783 289691303 261734721 138902215 404831631 26945907 192582439 754393181 507805545 263183829 518729117 610274683 198161145 568779169 460628783 757797113 406078831 565799667 851387891 646816375 301302277 831184689 829661321 228948827 300788479 810297861 930012439 335975385 808114345 444615269 528391241 909981671 127802447 200877967 684896857 817722439 602444627 130269699 746193411 819400063 15582737 974624399 229909901 278013663 147039477 509468487 179955653 502701443 525287795 675353225 854272771 19253063 306955013 408276983 648083491 827709399 421027371 704064383 31847823 139271583 291060081 902127699 474560561 112474843 762444393 460474353 954049153 530745483 501061805 314881823 122330493 877759859 629079775 61565157 479337901 844388137 835938731 286652315 554729501 712474881 141979329 110405595 805693795 179052317 607326173 1848201 928639647 103541605 787023807 206832339 806876791 187266187 202084659 822542637 503370263 43728131 479144971 891929169 990295097 242735635 745588257 510240583 482529305 523762365 52922967 871349081 629554301 870830293 729894297 803567897 133821107 164586995 213986263 570579817 163833235 984382583 221307661 912771687 869469819 890317449 88414779 730742917 571155023 415914779 559048813 626601843 343180415 931441377 200597429 230932271 789623299 910809439 268879917 611075835 672703061 343594971 627416823 543720039 857190015 362099303 882053951 839181383 525463563 260039387 525326645 806216627 729009173 389014487 230871317 354092307 300729911 450024387 535060511 128094995 216295833 677212111 747640735 733093285 866492393 235469043 933587431 901170951 965693531 581728495 602014547 254718653 929646257 370047311 605124417 300445330 435914287 644675165 875306783 219766687 104777381 822879799 183189341 125389627 234394983 469704633 331729525 694154763 73801811 752119695 253510125 345224957 372182739 649218343 67383627 45598275 247322321 588658617 288573219 507788381 823543237 760326981 799134735 264918795 362129327 984319893 232515507 447502429 161863185 556689209 119399861 830816163 295279869 800300167 571061451 481817215 444094985 558133409 244528559 138148815 393263953 945691761 280665121 174915267 365711997 628593571 519889903 112638927 625043387 49225651 686491111 993079215 120519361 835529439 767919845 688609383 415155661 179696433 734860491 943099457 136144549 674005879 882945413 665102549 236359063 689474635 415447555 929425407 378100347 59180815 364037953 691952353 995218863 46754535 54873921 469195495 538386199 240553925 292491275 157045447 646836517 310952289 165771443 879550845 452408779 657886269 307133523 168309069 242602379 414263457 520508175 591781571 39636071 281120155 311252237 9320883 325992689 899894789 118936453 2833467 997286719 622028159 551170475 925017021 722397677 292917105 996517319 595277287 220119843 971083787 729374751 992969643 881135503 908247877 309858823 975502409 932142439 636866529 274951387 240096321 313069929 264447077 963934969 692904545 937465819 737944611 105507023 111323839 47003021 108792371 668139469 202042805 278627027 978634869 913838959 221647079 622034573 399524495 379929653 65333315 308042527 445738229 544965293 897358589 75654521 773148125 486269029 159818895 316490771 441023049 926345465 597557697 769585127 505803519 488280333 803587485 892460415 600449937 372787017 773816437 119911399 925086037 245155167 199078635 920390071 196180591 765907723 684590301 867771915 243939523 354175757 132250237 942943627 665381637 373833265 556206907 255396709 51398569 821423691 906442963 714893903 119386101 472163633 27011149 587108743 469194989 51922377 255518963 208929747 616550497 326329593 33641817 419571331 754285547 456082105 667354205 808105067 273295341 720473343 928049697 40416491 783920779 304603341 491710225 334222057 161473207 4278065 436474085 919191505 671504170 110982201 696492949 786685085 25799525 95939585 591888487 422757063 41127087 329542061 801305319 578810201 277898519 842083941 665985001 969242079 270518903 852992602 467224203 150026609 642898799 396644299 140055343 959466411 788331623 674437109 216594051 157932981 161277583 188557863 941444731 926820669 208127201 285194927 417092433 890999673 500122907 925162987 390214797 531062823 529406149 878124345 870954487 862044303 126418993 751927815 534046375 674339965 994000759 840983749 112598007 341114183 560209783 345002991 513612427 63283405 657876697 194663687 299394385 982835315 958283531 916524437 573537917 657279019 601767243 298146863 872904331 940210535 20638611 594609515 607323455 626247209 521884081 169166575 984128163 244774389 482960431 789196387 790746639 918496985 161961835 931678329 89047839 410033773 695076483 623605229 772478133 270745805 476385373 758078081 635707901 998050721 382038701 656119293 119793517 603326743 33322217 273423671 711630273 72606951 606856017 578587397 22938365 997550923 455642095 792956237 650787181 459913739 476319123 441707511 309740709 626924407 805673683 790981109 810940547 212749667 147309843 632176707 351025193 271042607 929189751 896202467 287363333 966668225 729264115 536630237 903285193 812398725 862801467 704004679 767725939 416339061 701671125 997401399 314286151 950277645 13217795 861680851 573448403 504261459 73501403 918378819 197772007 292737749 33568817 360025017 816916131 610165931 352325031 360274801 848603499 516993905 376383653 596093101 196553449 537312593 518112093 168846263 710059025 341338869 644592067 936579039 598923299 50419861 83652251 595886211 413435294 941326063 711102573 645746689 674359637 359517257 174137991 59492551 615550807 199988595 304084995 873688647 978304001 220639427 826227393 79892473 331145977 208649049 980308585 455797345 557417001 534624463 604287851 129038343 170439367 233904355 284317695 272909953 227960911 129646021 898942759 759865701 900786563 690621043 68785065 33240921 581292403 449961331 534066967 647100677 499216497 829928915 352946889 873975837 296586523 518055467 8189151 254969945 125067603 158011287 219004223 721080955 651913029 310879937 16647837 527829841 84869735 88204499 126407535 253193387 700194423 235464325 295148791 258464865 221706869 347659029 434357307 178300761 702918575 742521163 59818253 842846843 701790393 574561395 494361859 395464635 279634033 715120995 419500673 292125457 618427641 506854779 154399659 401721215 210239679 210314657 204988789 696022035 775979893 534648643 790380693 427810013 795200795 830504789 911509131 597444597 49893617 240188249 326514849 810832513 694402183 174325331 130211559 158834089 334698669 841292243 127073075 119392161 607500931 790024941 663840807 811143329 964450413 729200959 284413997 226893805 917096213 806264307 743978609 353674957 254758513 491848371 7130607 320996759 914001083 689900215 344076901 289958051 874910075 504159167 197785437 924044627 585228411 603914509 492825893 824918801 109295311 939438195 218437079 171013711 82644947 870175047 505875027 956400521 553962541 751109477 301666113 63964737 681723591 446829109 131716113 422462465 602746327 555074467 236176381 882024283 640921561 325693225 95043843 494308583 994648209 839317187 336337643 344489035 251707915 89052151 154443847 301311279 947745179 652184277 567342959 661777479 883532511 910282992 943828355 646266443 679749817 318597225 676215147 50733823 884731479 743298791 292704471 847952429 656728107 341650069 882773823 358490277 821848819 927637291 316319973 202478405 603307699 911082217 461390799 509085165 865380281 655053715 188030159 144538759 594794389 743151479 471171707 336940551 185245735 663910507 975659575 656458597 895402641 34022607 214200105 35314853 737629761 984149641 47685951 72424401 291509739 71327239 73947701 188575739 303834761 457991487 803159691 926975547 633228387 316136623 552721031 236118711 137447425 625936989 652414779 878546329 890003259 950470361 156534141 867346447 272382507 612838967 342909167 995971927 502816311 851974935 678856955 61204915 430239497 874753949 766358477 213875565 826212247 728798329 484851041 604090839 844645661 143092194 265298551 790833739 34788895 142198421 938364307 831877931 336023401 192681177 780098059 235812065 246961935 223101307 296487155 305324559 940630381 88358611 686737965 462877347 369303593 144897469 361208673 472414379 409771309 870923937 165935361 441196931 415502769 946571373 27081025 561895101 113576749 897760151 478472997 123193841 616113767 416864541 212726133 651657157 869217899 409627013 567321535 182090979 717302669 611241439 512686941 572860665 119148139 230764223 490957935 221208519 666379495 989868869 791460573 571492875 857848623 717663765 856295255 854931089 305258165 667037793 823894103 778096937 657353529 624952539 858943257 400447921 812603323 354960067 252869291 475753225 544632713 199027425 10074841 511243293 10761017 546946688 411124539 15025883 302265765 421293691 969598005 3047235 896869107 614165547 886687213 994906707 630935949 684184699 85202259 58267927 586546983 613157075 747891487 707675551 946135489 362659375 123607251 992451081 129513117 948086797 549701557 861361013 482057541 344435055 346478551 599730959 197324433 943646695 635049743 186968839 892580763 469694601 108463617 799889303 252865737 430758645 384717073 999276035 366460614 252400207 986094963 289086869 688401799 422967369 676406813 521440927 54994245 413962261 294789839 320924027 839181193 431892853 92595987 248322443 70467613 414799789 810423097 340096057 65943575 244445323 451477335 764643833 280719567 546606439 573790799 701978949 912198893 915030045 131637451 908167581 572096861 261562901 183488567 463395469 732011601 730405693 791195599 423418533 551136327 690637579 469697937 27780739 513098499 125131133 680377671 479728073 994311315 128757787 546113919 847255581 101178951 233312495 501612179 120808501 770568639 893897109 912586659 679165641 487657949 549891111 785926550 106645405 753863119 225858123 88078367 895180923 285591049 828262963 780483253 198430261 657749317 665471377 545924503 523395493 851690891 979156647 516733645 670557357 358326563 737883449 671472427 620050745 28693925 394921365 869723459 570724921 118190315 114658195 472446587 552793255 914632731 32998289 443721209 471225991 885345439 850829683 975472045 530880995 927680813 8439209 501405521 240268749 727259329 676698665 900525409 894608223 964217757 114486129 630540841 236874429 93767761 272599433 669023929 559078413 512616111 603210491 222546921 797729925 86152405 562079715 752525145 233936735 77193763 600923867 354999407 541285595 164005962 560081417 978794335 537568069 560938045 347528223 510781471 976648687 247283511 168641361 446023025 763640883 109063101 980430939 851215323 61829235 344431771 734396295 614992045 207806235 201474021 921412515 437967619 978081179 813737977 872579331 439957689 767593837 607129209 207132805 49291643 220150037 322512723 750493329 718190005 899283741 485805497 155526679 406979491 321271575 265685803 187179912 928656453 543790749 524404841 493641703 69371999 688772179 782506625 91345335 437631879 999362271 123059657 942928393 706145553 995644919 342036187 103392627 694553887 968936789 871001498 286344977 209757081 657291705 662558775 92626827 563675953 464377327 605848099 321227277 13889629 246745545 103068443 78658385 415538781 481228577 36838433 315232915 902411833 945522395 853892229 370014873 493125059 98747869 774666969 939044017 255839891 126550557 211335673 225651123 694700809 18274709 209375755 721629437 739661 707172677 969064313 851330931 864854609 981144633 369754617 11325061 618235593 395431043 918532999 748247337 161753657 939930685 724227431 171322079 505064935 757543051 534240549 22771881 690120165 80780947 175053717 750575129 315716619 275853963 588200405 781379141 559305465 827945133 401106503 838612169 431475479 114827833 1375639 718842573 904003989 387413117 826931131 5534717 335541611 383887815 485436657 426013587 477451865 441351795 162463417 39776075 905365483 672793571 834598625 878993003 191269995 419483011 914628733 256158403 963302391 820085699 123185387 626968999 666514283 266374943 425336013 903490805 312747379 141639447 419517713 985649687 993236349 904307511 539376619 825963255 949429441 134435345 112991701 867156237 26988863 122313791 398965911 229390937 513583297 893938021 246799417 560567901 618225111 647503147 150174227 652873515 894372567 634806339 15535039 842349657 255081187 195359591 435262499 378451971 361157349 531887197 605005417 601662417 601432201 225531627 419130631 382876657 744890187 578502117 963754679 37623319 572504425 694225445 161165697 227988101 718521069 132809615 361809327 26057471 654642341 866593289 740273365 235183573 910041387 777486475 95069903 10169563 602381793 714325001 618667203 66860145 696626667 989666955 514793501 359126651 619217723 752726551 38163855 342068587 317455243 137041857 56566295 652997939 566521175 897958563 656160761 272112723 569402605 54809825 851713985 374287059 759772505 604533411 933633859 426047295 739489653 154085659 62854301 657660335 126225121 417527173 73153841 619072191 164814085 364473889 745221803 341885079 454885393 243019579 804475907 362686949 999415293 25867815 461410929 627006175 414043531 516407355 491763835 542817859 88634177 892013530 647874287 197472343 553323121 167713139 235155421 523958761 506853939 973861491 783965605 146842451 121789031 856459863 926997995 750816109 695685299 967565729 5138585 249883299 912168843 46507737 435904739 374224351 896174885 776120211 484351049 326867355 504460419 989032809 907312011 977609425 324594283 216293119 743597019 978647051 106930287 757491965 160530725 925979221 421399525 882366229 701118571 703310919 995986673 191169283 373167473 574274301 97486711 977466247 928561249 468491551 314514987 341615983 483912369 582023131 222980483 328717961 611102237 715403239 845433023 701932721 392215465 685263489 436324073 605763275 432785569 560505967 109988303 32776127 565717913 984118017 564984075 489445759 843011437 129584395 471706879 609247239 239401027 810437101 522881487 538182743 278439559 311670411 122536557 273164669 547071979 198633047 772428691 542775687 782345837 73693251 492812478 145006227 347920721 18093521 693864763 314238399 290553381 665462277 260537621 145925689 210509241 119023213 825364519 453147185 130383661 830878241 473605393 296832995 665502947 49658045 72778299 244275345 780404617 941549417 618980053 429974403 815941905 856369107 709461465 644655885 929363899 3365681 394522885 701580171 565754119 486324033 863672289 69344859 583835845 514233675 32192191 744635627 537232901 954760473 919882167 193612205 695011367 1783815 252779433 570170649 730661327 309920749 384209725 536435377 544677863 572428855 956444643 708435459 615277733 857188561 750551251 654158237 545825413 321322287 873818637 83971613 679777097 330801491 889267549 692889377 104628481 334736577 864957261 960528471 664588031 993199495 929867323 758838895 234854111 588776765 380125509 996354085 810168199 342583295 24165713 69062971 741039137 259578229 660355603 424349050 611143461 458719181 998747393 361128885 775079243 488932541 479192667 84837573 784447639 997176451 67543083 887808143 699176795 61125351 90937665 49171707 427556133 77365 396626995 841073915 542158291 968302147 974680677 632450955 436833931 999612785 725533435 495709869 470852281 994784165 849639913 804707947 529980177 283804491 870689509 515428309 62393485 840621149 659553391 981724169 387919219 448292183 186793167 368016677 171634255 272952893 615674137 586891095 940082423 777913763 871799841 228608977 288870277 331398555 944014217 236625867 782462301 185616579 13252281 815568775 111533613 12780867 138601955 70298963 537786601 653846472 362807547 611620989 792131787 130553997 763876037 28981347 548221531 649529929 655706057 66587493 273311329 805606213 864939861 995070957 23964405 992265809 766310019 175886189 867163761 837238723 113152819 30921569 651819643 338668663 78390029 230331467 108124413 447493843 546062465 685236915 769930029 369252297 520955335 221625477 49333895 509941197 805870561 352830551 256825807 529258971 140950421 5277643 244469777 617164413 223830133 614337849 475059617 154638529 700651993 741702739 232092443 830822203 955490785 268220625 915908197 2401545 204227701 9197431 518716843 991296211 869677123 372402445 337650783 4500425 61561801 309477737 756448319 776362141 784207425 721677409 57193551 995989647 94182583 122767067 604388827 488325223 995609339 677202879 258965369 340285809 701532323 701049089 632776193 957352067 282411027 256236185 682791837 875678973 863619439 597016459 305582771 787473861 892436395 1999583 690054397 547882057 85285757 850432171 428000371 280540541 716545637 872333063 245460061 928949475 941290925 773284627 832090179 551500159 331319141 206276095 337035005 629388001 84849507 604915703 85039525 897559581 473751625 56141113 982153887 953534161 340896897 287377671 791108761 659215399 118847799 235204779 710994311 495609801 957602151 877106804 802630565 75366127 82388175 80256707 169295991 193110871 570239225 455430389 177492423 591838793 75033650 624157813 514369709 933306769 392013463 808735671 763947651 632711301 745310981 784069427 435679215 118575367 900644389 103568493 568098269 456444535 471954279 697147629 838817407 641302217 728995845 749162313 710467155 761179505 402742781 215529497 551220509 400809069 678204695 271637757 553018601 822470467 747694565 972227493 185381643 890129923 559473855 185390781 754842911 130844737 681813189 101524741 92242443 892946971 430691551 699734585 345571067 461666619 548035773 644660777 704092257 182142923 651558871 416608165 376439549 807750531 34915951 52774789 765487311 838166179 529668747 876028847 912709669 796551405 508970749 140595725 579800725 687913651 389509211 311547789 296137721 130294731 593904137 665737519 59126133 146339473 349678893 671217903 999770743 775964909 463370677 953366237 220115889 667146061 483817823 679060489 754955811 97064359 133887653 887827853 449720845 264985721 186950611 33292683 104668159 414827977 903984633 807607853 709195211 289839653 808358893 271042727 551439245 718362535 731429713 990975025 75999403 150449383 870998415 307748111 790865615 607355409 659708115 695934345 191403247 82227151 849437465 901141749 553930821 335678041 485381921 217670315 964684121 862264943 43239791 918479117 469204725 826520661 993877849 958119045 794972973 440339161 324961779 862305415 900544095 42539601 969156895 238435979 554076203 427694495 239084165 643458325 991840387 645620005 882696855 655839919 432545431 520070611 973201801 232574699 240738789 710211101 786928735 926833507 505471281 71253255 885310945 74779321 464098183 545341201 550879645 14030231 862076221 356667723 251698925 910337969 252408555 569489487 160757233 507826879 434517115 442922805 184385169 468624261 365519379 449190057 804475773 507606221 15722797 405905877 446770479 704408681 635087745 205073267 212461795 646758451 300065815 330969277 379241895 351456013 531214903 693277309 662202695 843968993 487557241 687714815 712128349 315358371 597352887 636603419 94775367 67448139 274902037 243907117 849893937 489021149 635564545 942609181 853246985 61200995 682136879 873913945 728438407 385848815 525107609 260967639 664721381 672839067 701219463 708151317 848705345 726056585 189073795 653204763 922098901 591326691 276781409 304107379 542040511 814008285 419447613 792322617 398495907 514102959 198010237 573395205 504667109 921572253 301261515 243608323 915432121 660426225 188939549 466333661 725123093 432280573 890210479 43529421 733544377 413273115 344959237 664013199 62298415 787976109 83234795 675423079 688067271 764392479 968728693 807790121 995581591 7795679 595518465 636016933 3393409 904654701 768297777 678310463 142516271 230702663 179932913 166593753 666576397 738850809 109642105 299872995 844669527 604849941 186679105 818293202 221793035 327193653 802274831 253928359 264006131 922534139 457915887 909319653 971298205 555796241 232771127 651741341 648434275 374699819 312226945 707303269 79125349 397416451 330542001 922245719 353422219 472703321 501009653 52734751 183126663 727681785 731815103 651223529 726693325 153681845 453922767 153054313 722395553 813711463 537555493 965600993 957518345 755373808 356124689 119246613 892951513 372834109 426286373 909875539 253684133 618188351 323575613 569945459 570397389 911265521 77351293 716406225 472996477 565667155 777169235 405119063 541808291 341449585 76530547 878212463 195469561 759576157 274353369 110841617 58611707 557099313 700982729 717792699 307594743 34927119 190691535 367609715 996716535 333767969 140150718 726371529 573585113 77724571 956592309 766562771 589223483 156010167 965693719 898894637 314077571 142447285 961671823 664613629 463303909 166192097 217290261 352117749 501144663 839341965 813363937 191069255 982730907 138323731 287037305 687330485 116301367 977397973 84219049 599077763 181432957 21434687 464946821 995196801 16392835 678882241 739736939 905542401 682431019 626254293 377353981 677704423 635879711 978486785 487317289 977574805 410299339 255789259 459136289 109459963 960201323 783967175 689713763 585774223 659329535 561336463 855476661 899893329 230400843 879867333 830866975 307138179 246859749 609531413 446965753 471672823 88190753 92568367 268767709 475042691 373664033 836621517 852580271 740644739 896677327 337070003 982702493 633058973 790970839 128087211 46556443 925910019 80065973 285041031 232765411 878521449 275945127 802228771 839585021 276053259 861376949 213991773 716895155 648613557 565973681 673464353 486969495 278155439 469914933 235908709 514573451 447537619 391724443 308707357 781554605 135956349 632575505 468567631 324116079 126119063 899137415 313031175 225102977 894891147 317065393 54404435 504387553 371169361 667038995 725387343 200873425 901487463 981661683 909496349 222126049 475314389 508108643 677610473 953199333 949322791 567708987 402231779 239810549 969065077 200524827 75663429 900043641 734175067 687424618 21078101 220128285 368718847 626342235 79429465 375313875 214938131 142907363 369605541 567355097 943330507 5123523 284960659 573410995 375518181 263833223 40820357 829324589 210833575 54014585 439365607 781095773 636244191 191933879 150044201 737001629 839367141 470563615 597734343 337594769 789060503 755509591 663189569 531958567 363165017 30216147 30400803 948689297 285931293 381408713 363283713 195715407 237544533 233692473 428964465 279501345 907480833 207482861 245290263 455413271 63580329 207833717 383197343 246862467 660262233 487462183 95251897 833869057 481310887 356706085 799536929 784461941 577203381 120058713 334953111 281068556 700457253 349945199 82310119 178609725 218057765 544336099 757882851 592417729 829388143 350408179 851518823 394448029 737566527 347773097 62964817 102958363 498868059 982173651 393670287 517209811 360335891 678965261 37244177 112027041 423153979 418888883 213668051 201151655 70771507 954573551 877557205 119272785 664873951 202845361 799893539 336886869 676761007 239549363 477384401 341926063 434623643 607710323 97911029 902936227 304605469 463644985 724822195 951847612 332955967 960714007 961932343 180672211 764414349 156975845 974398641 651992829 246877213 963165763 47222621 904008355 207102865 63463065 577761915 802749297 564503563 979769367 44694617 996339801 481193019 896706741 959904837 715657883 357706837 866531125 364147099 262467255 202617115 585418781 242207935 506082170 436875475 962705087 58940951 920868605 107167815 509723699 398871323 103022999 280445393 198633561 157582655 784241901 310167119 461771479 604766475 195732717 671911463 431545889 427269 744725707 632045637 614712428 429891265 446853121 507015969 878244541 34055643 309343063 523324859 753771991 344765169 720718295 441494679 575448397 510907569 146348499 52132035 358801013 710116555 917755885 746210005 991555955 168024315 294984195 412611055 487601195 46936579 764725831 146731187 615157073 191426219 980011049 607503953 38052187 181480134 904345445 76568447 156900745 370385459 885365507 29964667 904710373 299635149 145646669 410331403 319238973 362155139 131157463 368220031 642282541 742885957 950492287 313352107 190108177 113007375 298527847 223740143 728641299 336621539 478525947 817550383 790827043 307939785 391980787 711652061 703797243 350249173 907482439 190348267 802020889 57934627 679668797 599215835 32586183 520662481 73622369 45061297 738767123 280688653 320208775 403151099 590208983 58118665 693963213 685589199 109140659 644160507 595115669 684772815 197855247 638820139 585972365 341610781 794215195 484902623 537589161 929347689 767309521 475861357 141256227 512607465 419920623 787081515 997011331 647181403 893074685 486124415 414684049 167298565 231185229 131935185 494837093 149826999 268916727 183504531 566073945 174706373 806722011 875640897 851519761 444528911 409752481 795404381 785332861 219902971 909403833 516205679 95385291 356855669 500763227 935166731 258659453 184767223 667219591 356722381 141341013 581594747 914020617 378062163 71367517 225715595 782909037 403628107 270089709 39448117 152481035 72193127 117432993 617875467 635180039 270432351 153931867 206463281 22493765 591155701 880308807 124685129 477312889 685126903 438738651 26596483 338537241 833571379 599202003 972314261 193253221 227676295 591139891 893937085 72258663 661360081 457286471 167688131 450883823 49794559 861377955 166670577 472113557 603679235 338297125 639649571 160918967 344999637 612955375 354097331 438707327 142430839 882257007 893489543 738561503 777643767 568802903 264589841 865367949 639096675 868263845 264079429 881083401 65814233 455292063 605618847 304016285 52689273 348688845 984691497 309380951 355831149 799914245 394259057 674013713 943983079 744357989 461715593 635007339 805983779 553744721 814797333 905861325 820297314 263041907 80812343 283989097 532037359 751006143 109037727 459476019 583229725 807410037 10026115 632016623 455132227 797284117 29597603 868002085 147788487 985172335 605034049 798709283 761403153 140442261 898818351 609985283 974233235 17550051 664445121 20561829 474776777 869712895 30768599 385552817 950735925 9055699 968070359 406111127 263227745 735450517 715969711 735086479 674921949 623346369 67329491 54956699 100455751 361320473 223471941 458447745 991505471 689806509 580845961 615659475 976804719 155585743 784040367 66703081 133214857 467525917 574531145 986992355 333838665 806505337 579699835 556238761 425352305 774654479 416902375 689458153 232812235 765191255 396999357 403701281 412088871 457276937 21560501 211758987 991516771 276463147 634494984 400377651 486932063 271459849 497557377 298436841 536497925 135638583 665599597 373307461 64098375 153944979 688776099 354363813 711594529 362134591 834220671 781053747 653751189 634566825 720345065 702456289 813359021 646005893 327468365 124559461 493997177 525536717 69360037 217979455 335410711 513386951 462290029 948545209 842815911 964609025 502993579 770304995 853095507 961171275 407029741 592020883 8645709 769177285 921023307 988225131 930736595 512032979 5549155 70489813 835597857 788100639 172598361 537789949 626123911 922492063 401321183 478614239 416160085 877272205 952327463 906001209 819202275 857879409 402392817 503790741 63148695 68774677 916923269 322533697 791100889 752190605 623278767 547858263 663046941 990437685 695445445 666086839 139408091 518809011 771935911 321348873 398373015 461294833 613802683 885108925 998804955 661288229 601486319 458016781 598815031 666741451 340138425 352466161 854806345 286255527 348504599 754084163 816693681 703323589 89766031 759140227 374090265 692917881 115861295 426296335 790272309 800019297 224489359 619424263 220714941 639668063 892045261 9175123 733726581 852485537 518323597 679845027 610966053 476541081 483849473 640163439 112599203 9523461 420645339 270388729 630711239 832178409 838673499 29813575 463168883 853069971 821108296 659122475 765505425 479991187 898296305 182923325 789360405 210103753 461459243 701766619 635960055 202959959 153086547 935801649 83574587 922640555 270168913 76503085 1767913 660814201 447331475 816997511 640095767 165327291 746400271 314611391 645182685 599323065 44983361 553281823 856497245 83913723 579387189 790560439 466354369 596472921 638172019 615325789 106812733 622158573 108214037 380816821 12693257 736828189 484638905 823254051 435233897 881771155 229297797 7986649 917143463 632671301 188622629 98528465 28552723 4337007 495143121 810028491 590168331 999098517 411654729 714429259 188108015 859576451 352447439 135740583 737082923 661523277 806100535 196979443 323513901 520734031 718381009 825200145 206978677 127097903 757039487 750647721 470783873 188374487 269134759 77548589 755151323 336945023 311798071 554184145 330994969 980912799 793554597 675449753 93609683 613568509 914093807 303492685 709733803 695656613 53119645 961469307 603355723 682432235 35555001 382344829 688755815 555349869 495057885 677550963 802841015 683547661 164568359 939123781 699309823 177437945 383724349 660736931 516023561 312380835 92814155 754746887 721694119 426979275 108524555 432416941 813341875 823038065 505073847 452865187 740630799 498341091 961837081 916499893 579539365 16203191 362202493 771257725 366826089 871541191 603134395 812536409 894360403 599408953 984672815 756705397 6475111 268989559 940821953 844659903 874843055 890948405 889053663 61767151 175416893 449524083 522703231 313309063 859718443 878082163 976656415 290983629 167092123 346671551 982470853 762308563 825113783 890945071 255016193 101600879 308795059 213833437 638269415 696865093 804151753 47764015 880699159 304050873 689123129 285453009 104041399 260571647 42100303 987087541 745041267 223726605 582965083 562636313 935624581 606907043 728955579 667837567 75873191 905276747 949224399 801129911 474811171 297564757 685273603 696180949 13501893 306127831 31799239 517110577 268824805 628791475 297500564 749499251 999767137 131874195 771640561 192005767 653904797 634160099 208159589 327145631 601918601 343989983 760036227 711534649 86198427 639082117 415994853 942661913 764662225 104506527 314062381 237562701 651107761 262751163 909716999 567504933 50094667 14616115 230506017 390416705 682866995 760361767 988418363 11576195 208337033 463059839 212628755 52070425 288247795 177941229 682213749 927086967 720277917 13563109 514561843 110701143 715557185 186412459 317721383 921870017 426815259 392879429 577782067 774939901 446827761 901883015 53429057 913112227 88202513 8706053 364477509 285321101 823935315 393270558 934605113 283821793 248210963 240582913 321570333 148499465 607188281 719431065 66502909 941990843 62593843 263981729 473573611 204644595 242747383 347530389 527821057 265995763 608507397 660972483 461444961 999143755 127191391 247954741 434261047 780310221 712188567 906048457 291610803 42984599 295423425 603091741 114919951 587063817 651525501 62188183 653963919 258753749 299939825 146879595 177123453 104596971 166173643 98084495 632022315 204422793 572975935 816033733 285631475 425093427 785940239 872408723 344364857 449648821 990111103 585243211 453260643 351922469 776297309 115587075 4357607 110726363 455642369 924999581 72545343 251028351 839513417 386203843 678387947 686596349 31251609 125252065 216121463 355770505 162837985 610720563 978686581 110783389 283670423 262201785 255048831 621275391 632541369 981966903 746783543 535230397 901311951 73404483 324180297 573122087 367714789 819067185 643103845 579608797 44691345 237434658 302966853 860994499 633456115 326402563 112714159 207658755 708674993 981267069 62315881 170342929 995659256 103431949 794594631 861708973 195616639 86500081 552150307 954766807 98144133 643345201 544960991 991405791 906892495 41958303 382644327 567382615 981398701 609994197 553851051 191896347 547993587 238716973 207786661 907088209 467037183 988595413 810204507 439784803 408167355 593221821 216208339 360533767 395227793 722793113 981572129 821975609 178192249 20329453 892433503 920025661 199844337 687966719 373397935 672625823 89019649 611372257 844896061 53316147 33909301 21662315 570068793 315375639 972910243 899558205 641484255 860829869 996710891 844264383 405486703 228788385 81550131 941280033 677728309 919423467 978011177 375023195 316362115 293448899 778631171 601132845 21591731 499746991 825794687 92178211 560640809 321252731 328232675 50811015 69650507 560554043 769766653 357145463 510567567 235237453 293616677 30053073 946570351 522816597 900090425 318440763 701982061 730474299 272117405 648721961 502165777 385070905 902933313 154330321 413409263 745207495 158037405 530897715 279731361 369446317 427532715 195733273 621882569 842119667 530039541 396207891 783259155 106020081 984389511 570151799 492364591 886150209 326245111 153420135 769707737 650927817 702336869 953342413 6344401 974139827 912472183 485805141 408556261 225719157 308383835 970088059 36219363 310014153 732699847 231715965 224066727 625700279 347432441 579500133 242082067 188113033 145861559 220204801 943547667 722235091 61232721 410451181 636777367 712988273 904400795 641839493 656673691 977507977 161469427 574136307 416471839 605945479 599943491 506086951 304600113 251227421 150791669 152036315 910400479 428404553 56766465 335953805 452572485 347455823 705964519 262856581 80988805 116212667 700353963 529509077 525676491 250194529 163805659 477686357 334975047 55217503 895009933 758899621 68550965 47567383 893796961 105775149 356903127 413252663 354371453 612662813 36640117 79617201 639509135 227200877 97399907 273743043 936001997 861872351 916029179 833752305 441712117 713065209 126276513 624732169 292149581 753866509 594199229 280751131 351488165 405964339 720863169 816591239 301533265 677943371 76106281 676156401 241596209 546840315 325096565 945364803 892286377 563708599 442137905 288181937 966044331 228620725 985289201 126064059 529495209 281681655 53212235 227408163 928383653 133046595 777853157 116411891 161230625 935991851 820450405 875189891 135187249 937868549 639274115 528961388 283713893 194902517 259376883 244833431 715661537 705038047 37849213 160494635 967715911 909620343 280758759 481130911 890462917 229133619 451618567 887506095 723738901 376586835 731148723 662364767 994627699 286985441 470354639 625663995 310527399 837146283 54160199 66419223 290654203 858653005 877492493 503455119 436760139 882211107 526803991 802313353 985612783 235194455 838038381 103744881 574061523 668944345 608309781 318956537 329027937 920350819 286242853 614934047 904724883 238564723 811460019 876209959 742003171 82452051 948487141 634864799 181743963 969174289 68913123 413501783 323763081 621025159 923450335 592674415 113592191 956521045 216664085 519716425 293206241 900534243 428850117 667667347 273742545 903653217 396288061 237503039 739644159 808679881 904946635 618395277 380225697 483023065 129782475 516302845 952884085 264341017 40151201 229297247 657783489 190599643 297681589 908123843 304916053 128709687 798350201 122839689 93002117 480817165 370569577 848456277 738228785 802595333 454364679 668258577 93673919 466491279 105888987 936488179 422949403 241754083 819584635 300140663 864453823 440722177 433898877 146412383 349508517 495661749 799229319 353634747 828064855 307508619 575272001 430597341 544317153 350068187 222800476 276050017 591251163 750652105 679131799 978501421 345008227 373147449 880071857 63786091 913037085 444583135 807998067 547801235 194307385 275730225 202850993 734561373 68162157 460812401 221566535 919493071 962719479 493443235 231395605 647196469 951784093 769062045 922947333 567725603 276634543 805189365 751937289 120955509 453886979 19031305 555391517 896847187 9657333 592056323 4610115 33796643 397034347 30296021 505914755 577504671 65725655 631190069 848938227 459008191 664783915 91592611 957046697 484907465 199094249 129725545 175693771 558838601 663422485 279541653 445754240 747343637 194681661 235860993 860219389 887450951 951320441 290587981 406194299 732185411 752478567 51504865 621248829 886405815 36971819 721714415 87525515 279876759 929898869 271227755 298115003 180257821 509631611 384785689 553094179 852234193 460969723 844975233 770911785 766119035 94788925 344119025 241900597 86309939 925858829 464448899 816227771 566194515 905252801 127808535 661319219 457537921 949631289 921685589 189295648 338263719 944195803 103124141 787845645 481034235 400020371 747215703 956166029 798541049 456293851 886152021 345240119 467196517 834519727 831304557 195567281 245886795 401102485 759159601 212366243 905873407 834307227 103032825 88035007 871764765 564705625 833297381 724279747 351530635 231823341 736623837 94107499 750569589 48069371 588107151 507843207 743866957 943942067 944710777 581720805 922089425 186857163 900601045 201992803 266502661 286777219 56022447 736267233 636207157 673039517 450565335 450873929 719483127 509400939 22420965 307495821 665322789 517314755 217725751 183446955 823656675 387253249 749734649 530174879 679284895 602472971 718544919 210703481 881011211 334121555 952877389 572624968 331354917 606186957 709988377 382516007 23134515 936733687 432803269 327623225 875797437 82876887 131897441 161066663 676739995 676354811 654233027 696704677 975008743 960362619 332867213 802901611 273565445 502548469 928753961 391118653 2694051 971590285 507923651 679957091 789284789 802870259 107754583 944674867 994000247 802929503 361884579 515162373 491566189 430992523 516512817 308187193 355956833 176478401 582910543 700565311 913957483 414469069 304146455 251319427 979299815 761815301 826468457 652216963 416769397 700901449 571617773 481499329 938922503 386806015 559230483 383936711 463103949 531464469 932207125 49142565 208544069 756216833 304350193 954708089 782291507 824116671 625288047 862725219 180950179 340012507 549922081 963676301 814344169 97863261 807692639 306836907 729158561 856997087 858166601 117511797 206310577 438776191 502350791 948546735 356379205 813832161 590253193 526478883 209745105 5463607 781177607 78180257 741980943 122824755 845092227 330619911 579345157 966332437 114134531 388288821 297962239 721037221 740810585 798125333 251885203 464865071 445488157 683639963 428751771 174947467 132898221 412947135 233782587 139490325 375408949 850695045 539102945 629152693 640967331 968620279 111103807 603237335 977457070 136058405 628751189 485610613 899831001 86284333 700724579 962648587 6487659 624952111 999728121 715418783 777837429 167844693 530950377 638310081 433337549 779942867 828873807 32083077 36737047 569803745 55037329 971402379 782077111 403418051 348349017 805949687 416841441 770705347 80175517 142316155 979707017 962715955 21812377 502534985 115819125 296634733 299960783 119481379 140393255 402709715 223193615 918542667 523144693 806815695 497620843 285308819 841364467 70551509 48511041 498746193 142745859 498749533 390249523 562834273 155909325 407058923 598071085 50589739 259115459 235824905 192034405 567334557 530280473 325572935 191679319 871563565 743725267 25386051 124928711 176590041 576785081 391387293 362794945 412162087 19526489 257101057 73131675 104851495 44950541 238085405 777232877 822992749 882521845 318454449 558077345 777245977 337393657 79587451 624447965 161506767 485980617 348257093 580645915 995937985 659325151 491796197 494099987 551104161 841606263 624142643 468133581 191324337 176819103 509776657 548918161 146762677 246193187 227451753 412513015 930335483 871050141 120967215 956050905 278621531 295182443 9030493 37590619 721618993 210919609 95452659 884649195 871340133 23320437 989862653 441120573 238907237 262870871 991013515 73509197 967155239 655385057 50469051 778347101 380695593 491631705 893692077 729651709 505921649 671452881 63380365 578737919 418127503 429955871 875658121 530580607 218060695 719111655 28969697 171791587 679524649 349008781 291810515 524236501 279007339 468379973 477054635 863261771 733360905 649552901 219246779 928345985 581430845 461846413 506535261 128525819 666974145 489417063 284017139 661810053 880592095 567396835 716790759 681162547 505929571 342066455 354026413 793250403 977636517 769016805 870055357 708454839 389755009 388959991 833906075 775859227 721080927 145635256 637375697 417728967 663090223 908704103 968417265 534054195 906589539 171511295 264894357 917825573 808083451 801911115 647960415 332223657 93644157 200717273 485411579 210136597 975698937 881188867 287558425 364534275 375789315 647735529 574883955 816072023 69769403 145272179 882137293 67501375 362642119 163550035 77107697 927207981 323802451 53038077 572011697 460057825 299417625 640712117 490009575 360608091 885957971 975126147 564089717 816207851 482743499 210657589 661851463 146204707 669767375 788228197 892798029 684903903 274554161 655100273 178184577 722333251 303573589 670852997 26797287 41237693 380194333 971776143 858059401 611495425 752937209 671164489 45610361 911421195 741961951 902678319 753382609 577432607 433924685 165064079 25582259 932061641 446634827 68302963 72075083 822274013 212542053 186418873 83909065 169017975 928033713 359927295 868502375 870777085 616824271 896111531 86805611 119747865 61111013 695420913 933882139 263596483 12682143 288417991 750185163 246408243 245735991 412446959 294384853 275094767 775317865 486979823 454357403 737672899 944998267 384002585 267078535 94305731 560782971 203982211 202519053 353886285 85611777 166120719 997477031 590285315 182713769 29704295 463997397 647702227 349300125 371673079 166394915 128461807 21633991 298658811 254229795 437689557 354454687 336962419 445894767 305810507 512724259 603527971 13808299 685460825 988380635 847253665 459380349 225458263 729151443 440128321 217343899 244978655 918310305 246665509 520811455 511167957 48499301 670070839 579103657 857178215 360742597 776363299 915006501 832938761 909229551 686965349 736735493 800784245 126124695 298656059 164489251 238801075 906649087 660948141 804929121 549247501 347159787 403343503 786112171 113131031 348447403 539511925 432943345 65486765 313922577 919586497 240759087 753177331 61308033 783176603 280267365 97649753 291020509 440669683 830644127 474503567 493693591 769515137 990026479 824393875 297129121 497727175 246973039 179799209 462402683 239075339 577061699 498747227 208407341 85666911 234346641 484644227 506472003 622970267 983693967 249607223 892861139 81497695 773762423 293391327 302887037 648004371 257935497 813454119 413223527 185104615 704610577 949227521 948893759 817748691 810685283 49474731 722584889 273728151 479743445 151601833 919789335 548734911 664587723 637460937 238566173 939309205 924389041 684978459 821719323 836990775 598896887 724498431 342454885 484145283 883318551 303970583 627318491 411293983 270493335 772543312 880923105 788532351 94694141 522877153 823134055 67610585 143093469 879370817 493113059 668036909 816155857 942815031 861969493 429067333 256596605 175694289 289402177 664105905 484334471 601319777 222908853 63734215 485727911 301578627 342418759 336662953 228584593 739074843 586288151 771824193 110814477 173843799 899035595 91002171 822087137 86577835 173314705 434091539 943687137 547489747 583416863 158398727 805173735 920447699 42024115 266525217 447169495 938326005 549285395 230939695 286045079 652644049 137991309 356910541 318516253 809626947 671967225 404371031 598714467 145063021 595011765 770135799 714403435 187544507 326726311 163209629 898220093 449516003 536411195 79390723 919570157 589672929 18141033 767031463 968804245 138091513 543474865 552006609 691828825 89483959 910491669 821273747 687152481 411763185 925401126 446944709 359690719 796730815 671878909 18971911 658451725 663500169 777937715 67886017 12353841 632190203 896474353 429530659 582376081 873888007 991331556 328415269 644941441 252062957 2817861 677675657 611574877 556454701 648581327 608819669 186547331 600262293 510348233 714583387 767478625 76390203 571656451 543503411 717531239 950822777 63286993 378306621 323171601 204108531 274491411 988856095 171158495 451704727 229167405 936898893 697502047 617999513 381679889 507190013 910731039 550395765 638722609 434078001 47338683 265133805 74176397 912707247 949396183 81851409 617054637 118548233 292640283 361432883 802924445 349255061 598782521 104126703 430832117 456246903 267365101 887965993 986249169 271635859 356176631 865814545 862134233 438675869 958070565 501340439 869019451 117792011 109500229 260890105 333992109 895691549 37849395 229817273 593816941 945453789 274869203 44147111 172953667 676544537 627326477 238531669 872112249 717791341 117176275 512989345 628374761 821858357 85435169 199368877 211407601 826208155 489075959 387917540 64169335 412243855 955391587 256652033 571726823 886755531 744745843 28628729 326560571 797135565 921037891 5463059 243493101 638426847 16488439 287801819 530609159 576235279 212635063 80525095 912678933 43075895 373088181 491425039 744516143 620707831 852633133 458269181 132522481 106694071 894695521 811587735 593318019 984095143 967842201 995585751 240884627 610394305 997794857 216855285 867207255 941891779 19461229 444338297 591840399 665488181 873309635 235136299 472419709 719299689 786636185 149703203 654311155 937566839 675138145 352297147 998829125 184031295 146036883 694626711 70151507 142435433 226306481 232343975 891840385 216784997 653604681 941596953 210672321 302622571 96403433 198237295 934411909 754851709 517294637 38295403 357152463 824157793 129907641 310140441 710475043 99383465 932236853 771511757 584815503 393594539 289347667 540419107 174684075 307402123 473819855 749057537 120336275 97521709 851265387 371030161 455906545 644156485 239948271 985094729 900414959 120730441 879526193 432233957 603296837 754410875 940195847 955536745 496485937 142630625 733773911 179894049 885081465 548825163 549028873 203632289 429572717 929676373 198222351 382703559 228044001 83182683 408933733 895901621 1192245 340149127 370109453 368400345 257744207 239493579 920380943 104798949 178051997 303209693 508816001 407783895 131383827 555132733 841264761 95454965 295116083 248890165 775866909 616048327 324053249 401916883 699401621 701232419 720482827 643440625 322352149 712669223 49902697 347898671 914710741 58350391 627125942 825290997 528879639 156700669 647141663 408125813 390731817 335968109 560574539 964748963 501585497 497389255 560745075 189212483 292070917 764421259 682825301 894703069 47715723 212589449 141541433 998496703 952085851 683406803 56386281 926787587 479564001 59894213 122394305 732836489 891624347 717175557 345289371 724752633 689126923 523614589 583450335 316557763 995018425 899182691 7760505 335671071 932825403 713909043 930289635 899145743 967515431 348911791 584568345 239492441 161881379 412126183 787329953 455663247 107411415 989459757 633732489 548939529 705938167 235359007 745523817 925523175 822578747 456356255 452557663 216007185 601304679 966212825 635616527 737105205 25307715 778708549 373896361 596092113 369637285 423050651 949329635 712251423 597694563 3346401 317213947 713869867 129261411 459874915 165865401 695025349 758996877 826313141 932129385 802755461 493358805 989092021 460067809 137301705 376909107 534045061 231026049 433712317 23630763 903754387 326888495 535805517 324963141 213143955 969190745 864074293 489342487 268869247 129413621 588291571 100963383 953200797 979373951 659347153 337958603 750521723 165352195 732048607 772860667 193495017 930462729 456113651 352776955 966414087 525589419 513666735 409384195 217312569 112161671 952147325 875419223 750669609 612078273 955470729 329070657 972171469 243817737 511265743 528534289 17926751 178607509 877389837 688111397 971962727 987962917 5973965 93196253 665602991 976852475 203748701 376667811 321066059 420656873 269127895 90925033 187840151 903147589 835936027 12548653 871632697 766527467 521596625 835741419 809674011 653422403 24032105 738213811 817078899 457784379 531879965 368491797 214543805 813640775 327833323 785430953 664043197 969358185 20503451 565173525 635057023 193114917 609836223 548462851 654416727 631734155 385721519 804733473 381012451 113251375 868321419 743796525 667416069 835893041 42192699 319013865 876559083 658820149 250671215 838184991 729309447 275482987 965902239 433461409 243991831 40595595 231567117 436253767 603082527 25712079 704744639 77696247 38756717 438323969 496621959 127892121 552515985 726457453 249745917 556060193 984259435 788302825 200305535 671688327 869565469 131412439 63190841 730758607 471956245 416334871 261348121 203886595 829249799 215638301 399736535 539849269 8833263 403344605 734494963 576845181 12876559 674313685 122499511 607690241 605823991 556419595 810866227 833147883 431489399 52713487 647979325 225401961 456553391 850238453 965501561 359890619 771192835 598943837 163864907 103653663 75226141 632875883 833582567 329691615 934392563 695976399 419537985 910219857 22239681 699293633 799979295 76077005 567919883 775250939 228181763 973528757 626811805 400514759 414183747 212522355 595422603 492186865 666296563 471047035 611568945 485087953 920251381 833927237 636374069 975494467 842646513 716044373 487890051 607630511 636536153 432760885 360632653 292139523 910902369 744977783 951777297 17824181 830678541 252681139 472347027 321029315 685159717 494214031 84545759 511733683 65104183 52103605 468543049 962140565 720617373 358615509 298542191 368817405 96207991 617571241 253926706 203769611 320136621 674654197 345917123 63039075 41622511 762829187 897407633 544358967 132259255 275530277 946821213 389758777 2061377 973049267 41442599 634481323 622959771 286158611 863293503 459400015 193799313 356568367 64159797 162104953 515201469 400665079 143381993 510220537 517069949 416060261 457161599 980163635 106782973 484007037 665150305 737773833 574266411 836676169 270344003 504692971 35649727 526114011 829515045 943295183 1735739 111246923 161409097 726344243 176324069 495463873 241470009 798273053 555418575 897583201 169530829 876475421 472499151 419440225 504914465 521063751 462186633 155501049 929832341 38528827 86064225 300413037 51982043 794710813 935396491 828365575 768709603 513573535 549227517 287391769 373096171 942448883 606097015 155407357 268892021 676051419 751895427 114107925 771194705 618731163 734568817 344340427 364686227 620898049 71385687 192362899 940608915 875955301 281821463 303333863 977171449 188684963 161733211 121451591 159289265 237052195 969949071 211656255 663758061 288777171 988414959 617956961 652523563 74654761 679092089 425498951 472097585 336997923 246700535 559024787 280478215 865871689 855889399 380805615 504656387 145824679 58866131 556141071 244162755 161402067 912041643 219273643 38378793 99744493 182220135 516299913 737440867 586545561 512391609 931208303 677400293 170163977 257063701 367813678 121845609 979728113 976938431 853563047 510116855 678167949 387137471 311435705 800981207 809241255 561862115 857341771 201700257 53659787 716007109 534627411 784697903 319728401 659855299 197376457 59642791 318421143 927413257 79788979 668116851 587042049 693876613 476147735 163440201 739568831 671688689 668718089 967840549 706172359 988107209 360262307 594758217 389984407 575670107 816502791 263802437 879567671 803839411 859755103 245156075 169760819 689702313 859905759 739277913 494980001 596358881 763641025 87081967 612163617 882431679 341363269 420243295 824588761 705537399 629156791 804317081 105591669 759475967 400418921 474820059 30144815 49579033 433273781 247241897 104193987 388596555 898489341 724598479 330409847 5748710 517131181 693805155 959514905 919954179 470164021 16013757 417548033 104765569 950396687 798547077 768431115 894793739 207086271 919005351 839814305 649149455 372219855 840543063 811811757 33427651 668948433 348143631 632479143 713496877 245289569 452456341 2729357 605625359 48752395 849376503 265922023 198908671 313127345 948921989 833061823 911830865 974428369 953885919 740591537 302791463 992807223 348734441 438270679 398306411 621566371 381721549 349118937 647226825 744167649 248926207 514805731 162158525 892923587 331193919 646609327 465406853 473769251 557142927 844787321 96621097 141805797 151664441 821022983 593673597 683813615 640542677 329161895 771201813 635816759 137396285 703059505 477979475 993123255 187536535 982907139 90434655 897257839 881345357 667709441 515939625 347520875 504702997 190610075 41514601 413504445 815439595 76951497 513026977 535544961 969785107 666069253 480279063 280926421 885356569 647427415 965534173 838446567 196171473 569662031 607474891 488585191 707413081 418798851 452845953 319825167 797588755 560454415 15485543 858754725 478813099 988916123 745317549 894497775 715459609 320446037 889054539 397813569 401058453 907523697 869364227 478876405 780395173 136358833 100361819 503583341 404513301 138116953 127345827 498015509 715886075 616320313 599458039 52021085 901324719 527526053 280526901 397517761 602998235 951417211 152486659 81713601 595513189 477615397 398463701 394170601 404352647 31792013 570852577 631776203 6556603 286231595 325252391 239144195 333873859 661028095 627134321 304873519 45043628 790741899 971641423 524096765 17386959 342249953 848213015 845504541 790251203 24780695 487294957 828562505 394466671 822258889 58178741 383948103 70318845 500457759 136947233 521616605 526538723 580582087 288039851 812516831 795155165 37528437 902483345 518854439 345102829 404752235 31475165 924665497 324836707 770742383 398114141 310599197 444825297 219897547 872296109 524517541 604952083 252434521 10452264 304714539 430826063 926942583 125281787 128503733 306999025 887996425 697901331 41295945 309634731 923432065 925582891 278821883 219019387 886751953 874546625 183150055 183981221 293599609 275802653 476561963 924860341 388341889 772020817 879036149 174174591 162360949 560915253 974476661 41884193 288453485 950328937 35153639 611989757 336122373 725931349 854570379 934123457 186890853 787748393 95749549 770591071 640029499 366148829 518669473 75538197 669398205 600587315 830053309 412633961 152338345 170694321 244330341 208979747 77759045 333145513 213918725 899428953 262278497 510389811 945411341 333925225 658121553 187601455 968770553 660941303 9585907 987576643 825816395 682226157 530396337 161283043 682316683 558277249 705429877 169383493 135913549 798587181 378601913 336150379 418298669 436211897 362738295 432463899 993747145 406900781 227914297 334515687 884697551 449511393 991647243 544379429 89444335 323222639 413153413 497154809 45341413 719688637 856739523 469111879 596798323 801463797 691384685 664253123 511566433 117529229 331993521 736033507 236071299 305700160 12546629 617909223 535076531 392925973 671265383 763064537 109360341 342209365 729600733 250408327 632440529 983953557 711753975 202748813 533092505 681660337 974585737 291930439 305109545 255867599 486794739 404966623 299198083 342819419 581932315 924352837 480115375 732692487 370780269 827556147 358981313 811214801 993733857 472424999 534234837 176636157 440330743 255353707 904208393 397168921 795027634 55771405 543432587 970780405 252932771 972586215 662575499 414861233 729521887 508717465 989329477 181466031 930603267 672923531 787004155 932486557 626028087 141631981 652575989 472636269 326443049 479844281 700672137 322392927 345118223 703233709 104747021 392275699 503299495 623626833 947614951 657737721 208517689 754804471 93233279 310774657 72557455 774055607 151371079 352014059 134345477 184181873 71964603 11599067 831034997 787811533 234285403 124488251 962687813 399549755 524379061 204170561 106310503 13354739 153587031 241683561 908419149 8339959 807815903 800555893 165342713 610120205 764772331 410174069 202402799 537750471 811682345 706113211 348531261 213390715 512314955 30702563 453057659 877252685 648554249 580080339 826162885 806946081 60451877 453459127 833725123 457509291 350522733 884748289 604126883 506641761 324482479 823679343 233707547 896402565 487448009 935627525 299805547 573157661 655054745 547263247 549827669 593012217 416448269 135682849 545219371 978368949 334264087 565784345 770112449 256314285 880102063 507959321 285273719 736013067 706659799 98801037 919420723 889842113 772033181 878381101 862212705 555200901 401696271 697813745 743490555 706586839 24815947 196072479 200203389 306731521 651924079 983582275 580463597 912005649 319252905 230629171 254766809 171758561 735667755 504981257 827282777 492353809 439182637 691908905 915336713 104896777 913010931 719319361 616952081 239319035 634344901 619243077 993854753 457566683 400229625 294304111 274610283 732970861 847910823 824428871 784156591 744366393 330079983 681787543 82279731 840066701 766332543 283254641 296613319 335891075 921805319 326856759 117836225 534616827 945235715 941468807 408410621 823680413 833607669 532581969 314572513 375167705 501056871 113480905 84257119 971143911 253186281 457227115 443285995 804206281 249528345 849326843 355008385 903104327 204669845 636725893 928279723 635157997 558908429 190526557 238236791 175972889 377147693 17121055 932509049 395300841 20808371 565074609 284333775 45909829 352916321 572558655 340428579 248568539 73410559 135512635 955037599 270234409 856784483 70531939 414196475 319320937 621155941 942384059 339341941 675972263 251003109 93641871 998473941 214595251 670877905 963418741 302748519 637110053 683804699 307173447 535022337 285392987 817227451 471593513 79864067 957429377 382816693 499619977 196687955 708052099 707058707 571056921 813006943 373143325 458269669 761493975 458329115 737001421 656395081 302214665 515903241 63402973 472467295 672106807 444752429 366066013 989485905 460424249 500659479 874653731 172153681 108814889 186967771 827060945 699052955 412565355 442653463 177127889 278381425 237228719 599622389 687035983 17437725 311820259 737154591 226735431 53752303 616218953 750413773 350186103 466033989 619778659 901973951 319415657 979163519 863511291 214842167 703464043 544038919 996313129 337405447 581622167 399749457 13112649 933459333 671858637 380773333 445602043 69103501 538862005 694734103 130513969 992133511 458526399 127176351 456933659 185835359 535807013 165985027 622774327 915608719 336043493 9160923 505011017 455624467 411107783 917686217 534933597 217763953 889958493 114909047 617377991 485958841 160003583 644059287 166191651 258004863 631776717 393113063 898230617 206279905 9834159 871161125 474508687 773980809 272771669 445312027 680970047 582283937 536992823 220224927 937464097 820909281 662232727 162075785 610064699 480606089 834336123 17950907 276889049 674832987 310292405 524625439 868085393 303321515 249135581 678733735 549066045 708489545 28088145 386659409 427252481 214079383 282370877 951374875 53550411 435255419 691529615 449519887 193134287 185439843 158637567 35462211 878730887 358055237 253486349 533791951 265047739 776946079 785772803 64706773 946362355 416783223 125145841 484874367 567652359 832748893 935284653 907841281 790165777 402304357 912776923 969958803 934384759 535336493 744753119 555948665 698757603 5641183 325137133 187818493 825995339 363037989 925483001 86690671 720987883 196662841 310948809 537960493 444259909 717114837 995423967 773089431 256803625 15734851 416764561 128062743 417029545 502237263 490020851 201153313 56191011 760783441 566239463 812186157 47735353 415884069 190486293 149894335 875632087 788098867 709397743 962270049 385428019 603138921 645209257 827430309 289618633 186305597 817409351 767293221 370029149 348419245 959288721 981735555 599558653 531547967 908572949 295396969 242782713 764884227 430054189 159158923 697707249 256579213 279409145 382712481 334805191 946962683 169069921 189968751 373202857 129588983 140292629 817748415 776734473 6252459 726199951 683524963 66345637 130734545 475813899 874454581 108934019 567698595 674236311 465958167 493159659 212636395 942096639 647217907 777919861 417436661 276697565 968550845 956230651 485862553 641462415 631658349 734874273 645463091 817897281 429873927 502651349 732640171 461377249 367231893 187654475 377321071 485031463 123493161 131918079 578936181 867697301 728338909 205766195 460826683 259642225 271566547 956413559 913596361 209513165 850776373 13339293 961365929 644941951 375553847 400715201 347738871 821499691 911456017 92578377 275528013 150647605 576157705 945236191 686394321 997908433 899744611 373267833 970015285 230141941 553796983 633344083 869600171 176562017 504070301 999580401 581961717 680214943 590418999 165913375 286538839 437113599 71394737 598717425 421859487 872139159 183797627 946174661 625042469 6881865 706491919 998235197 316977349 559573439 835660529 689708869 669721063 936300901 397568939 868243477 565779321 92090487 788095183 885359397 113209585 141453043 748901623 948782139 972473933 919290019 861033925 261167459 527443221 598446613 471779043 145755123 517863763 358361507 515968261 149464453 834140323 244719725 104552165 24060157 531725599 424467291 490963011 961578889 150968941 135624735 42201835 3269019 248252607 677847085 722591663 457720307 754140615 17445321 683096937 667005073 736669127 891801851 66258427 631209413 607540867 929166993 229850447 617015073 970707017 634388773 553040473 146563201 896104689 250224661 257104915 83011849 267400919 763804813 657827965 642897449 671533029 648654459 971244963 385772687 914356357 939328409 587142807 467704637 685307567 209531491 885003891 355765365 423467233 187311399 873043289 98779331 390570273 989549297 828949365 958780411 465921535 211549337 383738357 739246649 245951889 997800899 959199769 985582307 925233779 856649173 138158623 96081315 484910283 714473725 676794451 947366257 197570891 847888695 88798215 296503173 28408359 14076227 261436565 802949733 212261403 953739175 959350367 477181149 893399409 999023541 129006545 612521729 760909047 201365123 875435099 114223407 424249089 739391477 701810039 947498249 796371053 600333231 941219243 937409661 940570531 346689061 339327869 34702525 829279121 883803531 41960065 801267527 490816175 581428967 935479889 245736161 624208887 558165245 115650959 877093523 443332081 648291677 261744871 716602037 676001709 784566113 304580617 566170593 746161601 76163881 581344431 817786363 195014473 263144095 945560991 702066993 244754155 816553071 418900895 85129463 371011545 730961685 934039683 153243911 263316679 738718671 853234213 416396393 456805619 13182373 21062503 149835367 949893411 975596139 405376821 246842261 292505765 808759733 814523263 520255695 382690897 307355621 990125631 967301179 398401413 223719203 988201595 272964675 721713445 893490271 257507129 969719453 766822049 873915473 355546765 928078661 516817647 650855035 794249361 657388415 857040783 95963171 493702759 915778775 101300099 807047515 308904763 537913377 845233757 390887419 408688445 132542585 60735283 19591843 126999721 263731269 128518561 222399931 838975167 250197553 424767183 667757683 589821643 178404911 866424937 255183299 425040671 434470525 243733929 695775597 727872021 287733407 115266123 794814199 809446673 258011747 624195477 602767027 395543417 325373145 728628567 783366839 497891266 624050017 662847205 558360551 879734377 92681885 631900701 310622951 28502251 238272891 820545129 837397803 756583639 302825519 85137331 702706665 497617595 125050675 641105267 662041889 861069107 415609421 137252775 569835677 120099297 979709323 64029143 509124333 949257329 468015679 530000911 844880999 931791763 181881861 338597351 186176559 572737027 611966401 62815611 782586665 851778433 144151713 326852723 55443719 115923929 961141529 878814459 4130627 762818527 544208357 921855181 986837531 639823977 905826057 830120485 496976793 271709019 69725393 92993737 943670411 496581281 345746641 406554889 269271437 517856043 900057829 744242873 183155195 620494837 852254771 901712953 674525951 638110463 766976549 907424621 154494601 964173909 799400305 913273541 235732051 531887883 590115091 332145209 383830747 521574455 334010703 32661571 129793129 404734973 666502833 927653613 446417935 893741705 746738959 466313411 265435301 533404939 494749313 233657309 358002123 195727039 52705391 667134167 906373865 543822309 75024517 701054937 53729327 949318347 109950903 799551377 788498325 814593215 151013695 337435189 498150365 959771421 992359843 742489217 605225357 181187657 407060911 502201537 106880503 107379371 622033785 97829309 944999475 882711477 812181851 888003535 505312801 733081827 629946105 397426133 281480039 442251957 774346817 284963893 634906745 12892599 301002855 532688347 155322765 498029949 198536423 532270913 117270437 397124509 873951363 684497761 843119495 515576507 129695819 763457733 223433413 133852035 693410961 29649017 552988341 510520741 755640817 55238933 458295163 275826909 184093777 410852789 657511163 165686765 127454683 745006849 108533737 699768733 544279557 667177510 285808315 723370945 952438411 136993757 934440113 246260789 768874095 951088993 631804629 601093079 682122497 11945337 981637365 998102933 809974995 169505141 116707501 657676126 951267523 133641769 156204633 780363569 659654899 346230005 386360867 595430413 501757903 319867581 869664507 733401851 745020687 477350643 976335259 522938385 446358699 135599241 139507585 166506341 978292713 429039873 608580087 320871451 866421845 900415839 493538571 463855455 862424261 675830577 354949783 586175843 36928593 407789967 336090427 413828191 348532579 235461141 635680607 685592469 346144417 398077419 173830707 783883347 619901957 360010943 903403185 789013223 500634055 485010887 604465815 94521261 791403887 576183489 6643053 64176137 533731013 292556531 764315525 592290147 943817441 374835245 16229623 214738477 588334365 732671427 210366115 958022371 592659999 881934741 617906993 191291655 392618193 594249481 664115729 304396833 826705767 555514891 703049339 480640709 548382305 710318613 941581425 327387023 177525632 35409187 223385017 347657759 721997523 43370171 914460901 841216543 159288747 502407915 90487883 961351233 765521317 981572939 160681231 155216193 936750503 774279159 2170901 662319327 449997019 767186071 676183313 996772585 473394614 543492441 554961273 349305901 579077367 495766515 478945167 847589769 225664159 716854947 997585753 412507867 950739707 827756337 533630887 285987345 200779679 662925801 604706069 72436765 232057961 478018721 252460287 934334455 690225787 725969849 643768463 113215907 27666243 834903319 845804983 521413929 336385395 539757863 342348333 71311261 12834313 69108707 861220977 924626971 874879819 220875205 298284237 893916355 286498241 447560919 464410191 816311743 655423299 928769447 496848337 864303681 788589545 703981641 760068339 497324933 82978589 305828699 495626527 434799565 279019655 302220037 342473345 591950177 940243739 383435765 625918739 389542807 396950553 762471009 593155479 468342213 604251137 803628809 61781141 439314513 69637539 783674415 776222043 559014307 408206609 620501157 989359875 459366191 623430822 983993535 121541485 542332013 13195275 799093085 717712961 135657951 562835751 45656293 658924015 820730387 85720369 625931845 252093103 855983255 877037989 368355313 320639875 72497929 742899527 257426667 981980979 868350985 9036065 294113719 227631437 344208449 464086925 856496485 235037993 431634787 777404705 240670857 383299307 52704043 693637061 589713473 388431993 713625691 798909347 742493493 892950659 291057085 139440691 825998997 579153281 944239393 855287597 548983571 344093363 328058981 520929687 777790959 415213347 839336553 999265981 792276465 551791777 336275991 347641651 501828707 798984389 1203041 142263255 939147297 636356077 919069251 102989003 40082053 993973829 335785919 410254461 805416055 429360313 607537375 482375329 967433059 474433029 112629683 762325809 241391171 740744105 555228761 68804979 882966675 199813865 611205105 534970613 735914841 128743387 43548069 836580999 649848357 974863955 649612201 435895113 984192011 689104117 348403765 929502111 452101801 640153637 170783883 787189811 960427303 739420437 377938425 588647163 116889909 800789183 236398799 773605939 488886789 446858977 967876965 566816605 762461527 94527749 808487201 157142601 8402547 130154873 577495915 851029001 629194533 218655319 524333239 151657465 693881027 63333503 857009021 51581119 368143663 322728089 550309185 68986181 161290185 982361109 906812813 75099585 161268357 153469997 239651569 431521455 276412119 9123039 887056395 178181587 894945981 816236531 204359291 59420985 734378429 290150395 590109163 47218229 447097829 51831631 74332431 213896293 666589391 28879119 17342623 73486507 262755475 956352547 160704095 939338805 940259549 567713339 555611672 9949045 634233303 615946447 959608477 372960553 718727481 328219169 91325129 316003671 845135171 56245815 455491197 623860295 312297911 104277987 57631139 206327183 414677735 46769085 365062447 95097101 743499433 929252643 284064281 744432099 602259801 487003969 151106149 667449727 548819167 865265157 175100445 691218581 183351209 688700199 346498641 631732257 258522541 481622823 383089183 674900069 106747241 231463503 633810855 835308017 491286243 186371503 744606995 849263253 851455145 680838685 121968023 63465075 48549587 554939709 28302443 224926953 8018431 1391219 190376403 992991143 280062547 677021683 127709209 445908897 57963131 673266097 588137615 234453523 815437999 234860147 430330509 620592001 614962095 639618235 93019257 769859255 451004351 199046111 718258877 83767241 929682861 840334067 619461319 510071059 598116815 549485017 914470935 216662587 433521927 647458361 271855915 249415469 790537143 686838917 269831821 329753371 505792207 92425969 511665107 173363075 330976963 542840961 680637589 601470761 70860437 328816637 278753141 997183769 890552523 590499571 174397725 163239 919703663 543783101 550583617 355212657 831483931 34073979 296399257 816664153 630152941 935714581 920924393 935607437 531079051 842892859 271537147 774871425 819737889 822966631 87174817 373109999 579763817 995726807 881471669 407408093 945288349 623663251 796057369 370592153 267117191 434629485 668262583 480186547 594976627 778851325 776162691 815751691 642637881 651754145 70492021 909274565 242935349 297873797 20844947 220908107 159035471 588280215 20984033 20163411 848075253 135047055 997270903 233301207 803946525 317251311 588031853 29664287 570087493 766746877 640776165 478451891 606476661 309427147 223968265 768702827 345767735 63509295 888075789 472825187 917649573 33235917 374358059 969442043 537507165 570179081 998347171 537855205 399365765 163034391 434651073 927670033 646246857 998800365 563700951 804398013 144516195 190527563 81536317 632262765 614402573 792448443 735217755 472530157 600942609 13577869 23611797 55352401 723994173 182632663 25571681 87384565 47952867 691370875 940413495 214232191 525108455 120888611 680485275 825110235 486989995 633768763 80784663 534709563 59364639 600043775 396478269 820782109 416414649 128157293 77157543 621893447 795972215 838815055 8915190 623963841 997749983 208633395 206070745 67357665 288442113 470771571 937202685 329256517 949205105 226630191 883114525 178044623 857373007 73277775 191898109 100885165 366540097 115239557 18867559 960615507 386052213 206689093 797744941 317730939 697747615 54904275 262364201 957050157 225768961 231363127 195500605 688197297 459889759 354645311 258748757 58220191 119484935 16942981 159897697 332359889 811674833 730177127 622294107 800860269 996505369 224017169 638710599 896901853 266375879 51273585 265173295 716627159 367112267 19202881 464233765 574105431 187120023 420937469 163637315 769591967 550443819 645209331 45133483 900256575 934297869 800679471 472585865 61878025 923736013 718441865 470758669 52865051 840704383 600368293 981931377 836526551 424621763 175796457 317330425 801692649 918537151 498708611 739801327 264052039 793016609 600725359 911332261 726312749 61322013 873995373 748076917 284016159 487998581 260289027 817988803 591858921 390058349 570706307 276564469 381846433 948556499 807095299 265316481 895826079 668447487 367941991 262344161 859664267 807014607 704931667 349260437 71416401 550624935 203113019 273964329 954142245 319616887 670291027 611485487 355155585 763817909 590774945 756535873 708379691 677656673 271175145 108595457 626878513 999810557 996735419 312780315 594090723 825498523 719304561 127706431 171868897 930413007 758666027 379009577 704078863 762189241 615591123 957059993 457582231 798467582 525113109 706766427 556130797 206414799 775194221 761160769 958202321 662362079 150940697 17790757 612726597 347202923 3132705 9712105 65770387 46658365 202207065 699533177 448357715 529114787 695489109 91432389 45285215 190934641 570978423 766050505 370251229 612050437 196893671 981665669 395749687 465680457 357331861 461336837 516795171 914127015 150487097 30273371 405856157 675250711 486799701 60073633 52330985 242420247 41998383 35194361 783917971 93526959 225645273 527626383 168409455 125772907 209049899 819677843 660221083 218103137 377658821 153192513 521875833 43485235 775523087 888992473 332808885 456532993 759029817 123976103 109441607 540456575 453722683 557222141 485140583 282650849 299930839 875359543 694839963 634854117 200491923 894893491 815482543 413729233 354306241 410893279 595601337 863245171 886387831 163430955 118896913 409679651 585463705 199890193 805542241 469572287 944755403 643980311 757787025 78128555 275309441 67604163 721820117 249839065 903738097 239160745 753783469 841315515 247968539 763219811 761522137 372104273 677334473 686883733 568597863 148272163 227630475 806527461 407775405 563684413 454386359 293593865 905156933 848107573 424233585 412989371 95988757 81029165 206564253 198675899 175415367 269745093 817902573 112246999 335608401 416640305 53674203 545926109 455791343 182834725 3618981 460873129 378581539 72370911 815339349 324673053 964362301 706297125 71475129 613810981 832572111 257959239 611340908 219943857 547252661 844804889 46579405 520531133 426806805 484932345 590512643 540123209 489761627 657981137 347125759 827910243 526891065 877158667 153929851 461734425 686182829 562587041 319701493 750817415 36038139 117506829 349134005 925250001 128376239 543334233 780477901 771955229 399018653 70035729 885837845 561378979 89594083 338076747 158489389 538269847 25699299 58663337 445601405 741266497 709324107 324465997 3952181 736798695 702509581 632631269 701897805 338273501 304437607 237789611 357524871 149802111 637430239 457699163 331069545 579195179 901523005 60411709 703947333 672934735 655978649 213176347 255512115 906098267 923351883 135796303 219318803 865966539 422041597 457848503 489427339 353516063 96567959 640198073 967936271 314578405 80340559 399484481 594036437 926777003 538534047 233567943 86679007 685166093 62361679 252582987 74318579 948723375 339586663 112950097 886120355 416427319 397957951 853233383 556696901 371852125 680324465 882163619 471299069 940828887 416749795 220702375 699447727 81391511 653986239 534586005 422354191 461069017 927771003 184035997 499636371 131700737 542559699 812552053 287698811 655225269 693434315 88113755 844688593 26631899 4999855 632360981 463075427 634838617 412793107 724908531 262849485 544006695 794180051 362763977 988009835 745995323 458314517 255766519 143992679 746087831 166956869 991136865 32189107 555732809 162037269 121955705 198786563 570354015 887157123 580483633 793074907 145288181 59248341 375434251 543397507 565636655 299530131 730013705 103947529 35678005 276303507 854341055 15943239 219563321 612469491 349584445 288684765 434736247 910030101 894594855 621357875 571304495 147183527 244194719 126530169 105223599 816771229 714317653 598527913 789980997 308166705 957937535 363388033 817282383 782563305 100442075 272357513 185008427 780128659 91650479 146631699 418502727 669713471 25624267 102394679 801715475 748760399 625899651 640980693 374645771 479368033 922112694 341073813 170053809 794212197 844362445 369364711 649132685 722792335 824954545 821309443 995210805 227198555 213626333 124139243 747231807 632125835 689961547 554432868 273239121 5348655 562833797 489114627 67550739 355411609 54164377 545151259 996553783 155486053 144599577 28996561 116518265 583734905 488596777 225235721 503031707 191931136 566917227 321916535 667860069 405807471 776691727 677634449 475134125 309243009 45462987 914327193 714439497 421741627 671820253 457644949 722889247 411889897 900087309 275061589 466186007 585638431 463192229 231930485 675815203 763515323 288409473 24888913 716938047 520410847 169273083 107404819 656481133 298438903 337414393 101387693 509448629 147142331 590948333 218809045 171972397 336068387 17018313 693152267 196858603 630949493 594360591 278835097 770876693 577995071 838711235 695657101 913702355 954728785 25594995 594229697 643228759 558014155 339754295 716839637 556525533 981163279 795843757 584708915 934384295 421829579 118127353 314198279 866301695 929642995 652817611 506949195 146431029 520697537 955701849 227243969 323399591 574340797 120682593 94772721 837878195 442895025 873162027 765570089 145139911 999719087 752851843 516532099 520127573 376796441 984112575 201619423 223222741 824170381 947238591 555393765 688207307 632176635 924029673 796068613 90994367 570709911 49196843 478378615 389502535 121370589 949915129 167752765 367970297 863452561 583279189 806794527 647016059 28472255 893714115 743967915 889962101 893808827 424815185 576012345 678726043 25349409 605149591 620122093 840020901 696201431 161968563 243880365 499470677 566043145 62948169 3526185 736255865 56289321 665021321 84537305 773200353 468585717 279040297 639048701 160937573 374242161 595911017 114028447 470312427 818374379 689328907 760738447 674753883 375692787 607885153 980981349 798119593 205964649 810046785 763519871 498129357 766263663 886257158 967274505 209564105 408199283 345589915 893805807 687899051 765172775 372538473 982422765 265514883 575161995 187309675 704790403 774199657 611338975 168050205 624310261 62368899 832503473 323106949 216415833 927531513 971466967 939531569 762390147 930116607 313076331 77460793 995205911 666043597 778048979 287491643 377682553 12826023 306268089 968969563 919228891 444480469 583068177 105566281 480566326 142356909 346161947 346489405 706045701 13100935 133786201 389057777 609261729 792341699 62481813 443237295 720826503 791603921 676926951 820756035 549243159 742814237 871873707 827598339 978691889 541373733 661838465 874516687 231733629 106419051 143335003 628794893 193652075 73373305 944904809 650752427 834471989 438735073 49136425 299249439 216121305 560658747 718335071 78335079 306239519 470054701 747098647 791004425 761487769 11736671 168310693 2225427 351274655 275780997 653326503 723374621 161133649 439711575 307663871 128203845 373460375 932265369 161701593 707518255 687803937 897480213 541851565 719707405 614708583 472235931 101044019 970936209 923225515 327885577 787311985 283606779 62390515 867839039 281106099 702769939 801034769 26411303 463508623 270708773 116216221 486131381 654530271 410875913 437964021 868061153 198300359 782207771 900948805 617814191 475172789 799800131 177587835 302450473 871005 220857071 73763919 76055649 951573945 663713299 263852865 481411439 501384721 970236209 565185435 155894393 316821997 803873871 529528429 814825383 84604709 650133495 860161165 913330221 441802707 919046723 518039455 2309443 682871645 185062865 350176519 427972397 594281837 871321797 126994681 443593781 613713145 832906705 571376489 801018285 978519357 777442087 259387165 422904559 977434299 327588745 468842137 114366557 352351299 633246009 258356013 917736545 827540455 859064075 715350515 512703087 810454533 499568463 688576203 800708095 555615807 39206631 353068383 525559189 926527105 642656313 77484571 561691579 26745345 835614771 552412473 846995971 681749563 705293643 606662589 514194949 410559987 369743487 363649641 588909671 716584503 67947093 921254609 65429459 465501527 584060893 432326221 461833207 430384627 498989483 210423037 921535635 203848173 765201631 90694857 743811173 774039923 428394015 381156449 2334777 507428343 243952791 693799487 447808991 438765367 422961919 833383329 418558773 511871545 371749527 423479695 843469083 666900549 226178083 743597019 629713533 567670771 45612785 64966173 876580169 304893469 168477657 121274035 967359359 386797287 948185143 210762697 505617949 122144447 490887411 319882317 869497903 816140633 497286523 680558839 541436357 257592497 746139333 455668553 966547197 102049801 620968015 902667913 73083127 711040753 861695263 299767497 779447007 264992315 181117637 793211871 682866917 155955971 801059925 283253359 152300355 750218671 72992623 680602845 608077629 436068073 250278201 237379165 775516701 32463015 555259231 872145893 664397365 861949221 28183835 775858997 477069791 17331175 662296102 255968215 510519421 317609145 929056717 991415323 584846713 936369839 401847257 790985239 465253191 641675559 87358371 585030317 224833633 477813955 802788615 245506695 189046855 912906351 566826863 891552017 626329733 876232291 335688389 500598151 1901483 687273750 498047617 798702567 901621335 774483537 129074849 485690875 176185385 547708445 135931051 47590993 100709581 784285649 235082415 625913155 368848627 903701255 591479873 438633457 677673301 384616099 10663809 320877891 713541047 755563475 373055509 542264043 479022563 674531083 51808297 596310621 474149547 123785477 927818103 681472989 224931049 156216263 309774907 917868915 825983615 813642143 128404537 222032877 722894169 583376415 350437829 466781669 267573351 894910243 763851441 343429307 78512803 59814351 250185563 762105237 891195409 334338963 644540843 125935719 827513019 473633565 870087183 875534569 483984819 389882735 180641917 467273623 23154707 95189195 888526197 944398527 371610111 2843581 304499449 472728941 241416093 524525081 134832539 775834233 876066339 904849403 109823855 80437639 819868363 569387721 337765653 616009213 479783381 822731823 310454963 14589961 1828237 923767583 824466679 354616231 964030277 470579927 650194965 616496534 461370967 211220955 961032911 796192863 876611364 135387383 558402409 499535185 834178587 413553215 136680113 614754690 836605607 317684241 362175231 569771225 181346377 7757327 340842801 297767671 764260735 228247079 107753899 188325969 331160277 662195083 638985053 821404955 435876317 157836731 525070525 401476187 281152561 144527223 146004681 425140437 398798453 897633229 644753417 703909913 543071055 665056019 679135625 146820481 13898357 229793251 228486111 20649261 239155105 681900577 112935979 147430151 430812051 688662523 60564755 824771003 366286615 927726821 408807877 736927685 225036799 617206427 939926261 674169955 50234405 62802975 299460069 539355805 674767469 480844481 852346201 456284743 66742205 641799955 587821729 584385269 819109899 705498609 504628881 842176777 427041105 563587457 149272199 494139051 425834127 961989677 202706795 281409227 150192337 724769707 512342189 206353441 250776617 262120951 671025983 605487151 138921649 333110869 868404385 703283771 393467277 384192081 849010651 136251991 256899555 207478975 622968441 768121947 986134505 955356347 391876497 53680359 356309977 651238571 963946179 830930019 588623091 222296891 239073077 226766335 530868869 887958109 355531925 31298227 731586269 938825295 276223513 699116097 920668759 442041493 744951165 263608879 440528469 712527613 993449485 29034191 669723203 147452567 185163665 756892215 155946641 433106115 591078243 791447371 688299451 663520803 214908257 463749807 410941761 501468581 137371375 550435799 93286063 473384829 450903549 982401017 5135511 490013221 810705411 233492245 506240915 406392165 687164667 900363509 109453639 170419525 193058415 326507561 13963609 941422365 49991787 257246471 991521921 370687111 338708613 363223219 232798067 371966567 119400669 462085649 441635831 354248173 349314329 625930963 59112915 996189063 252239719 249643635 443743195 370915319 775942525 664602415 786399465 290174271 645624217 489572625 160051937 210183083 654179713 293918953 432107945 742204111 53583235 31298893 423538233 689293447 900832633 733862303 499943813 462388217 822079419 88062727 412852117 798666383 353271349 320127349 383495791 630755071 425544529 754977955 432224551 80379973 547109639 946210575 177226455 489649829 854654423 228346113 187522979 465220779 259328963 129316747 117183923 340323885 334959967 867960197 873750585 282218307 141849787 147784335 50814577 690640725 918017145 170076689 406658715 592994319 233071807 414895675 531262211 538678373 123021371 733425925 586747133 960730513 772153635 46253873 779414495 449521689 267343413 135659847 439532045 648542411 508480951 612635795 374893043 122589111 753112185 260172851 83714305 804166973 493914831 328076805 497668787 500902143 141399449 759962033 832407435 265662699 94127419 258931109 212722705 618847797 11791527 15580701 890571737 257057369 846527567 655158297 684287101 895517721 957422389 875836511 427540641 595353733 276235739 72694913 910802157 117137903 90179925 875700181 413475091 358141171 419002419 566256255 184148175 442645879 729746839 355994211 889827553 11388325 50175527 948026933 673606679 293678835 389978385 588505707 542006847 596500765 15785227 410548293 956231989 142640933 405428051 353955533 252475869 362533979 32389809 527687633 590865183 299698003 737889903 94543597 434070765 152197349 329238889 351637117 898082627 699430201 860439287 110828715 129410337 281789115 369154053 905488489 728225173 682198813 756271613 548623467 904255149 667603549 857227737 837883957 515718277 947814335 247382803 794518287 57280065 360715471 738920117 83333383 611122953 350313059 230349387 781343223 886683919 456578451 184534253 12750975 839128719 405567177 635886135 85516551 75171019 61449899 600650067 216400577 539925259 424556851 683764715 521909409 68944803 840299161 725398839 416389739 272360175 857294949 143979253 58460069 332379213 733046367 732792427 249337505 545660715 570624415 549656425 940286839 650832379 930859903 637084995 94543623 832018229 344505509 112110553 786168313 703692891 548028411 291508369 164626877 554836731 875310007 479897431 287168395 956606371 276418131 461802405 416024933 328508655 728819095 689815925 732978449 705995395 29003149 619932753 41956129 537396231 698724233 560164933 88608235 867440685 859479335 727534825 772610707 835042225 216410445 571355227 147722237 207594581 809147685 423929407 956054493 272050659 618171173 652353221 516802985 642208043 965766665 709617571 794706339 901432585 50664917 628495127 797120465 602441057 901953237 519899367 928667395 17312283 537226909 224604003 223032789 586456105 422530315 599211103 177055139 312967815 845140801 470213691 350780823 324831031 722824365 879793373 410474403 487128131 927768065 87520947 558870909 426393787 351252541 736120753 517646757 267475389 493036449 636216409 13222500 141772647 782616763 469335727 379965643 412876775 517725025 376993089 550001585 887794799 98223531 684804135 628978871 954630199 246646019 193716735 447765831 542352257 562058513 540108013 811355533 641050267 397982921 495304097 848241027 997099731 192007019 145415761 742013419 824941447 786047353 64431547 520194893 526950167 987932605 337030183 305438455 408120813 170079823 368140385 514494467 291849083 304582025 629711551 764270161 938282813 786854161 564159521 365649289 824306613 118143697 139197165 286188571 527132011 530241023 69063183 889608255 792478709 739281431 851486209 756327159 136781547 233715676 333573567 127320331 794634989 553301083 906794447 814668809 853903529 434705387 990075711 859866441 218196433 210729763 850506407 827334895 125532189 68074475 43530021 14476513 5844561 33972333 881780573 530617807 287146293 151855137 560410751 348075057 244744351 200666815 290481985 586349383 73932389 879383373 218331875 65432091 591326573 192594199 891939367 33251453 725491359 153834673 971805791 797376005 17054703 730525433 925586527 830147857 259523413 858814481 374003593 361512397 842783701 676061287 120305853 355716389 267980919 348102063 599616367 531722709 421493585 153099235 645056147 803701085 290043003 329473097 536967591 310838529 355313941 49057903 80530865 133942487 412762189 694453031 932098623 763522739 328575061 884621709 96403049 391616825 849112933 438449669 787283917 315593421 375286465 290113341 121771407 443131553 260009395 16134441 647771999 222757807 828471947 600026629 113890931 332707253 310587303 222293843 89788043 210859069 482676839 915644643 526722281 403960213 800414261 445589447 786635103 831822295 221863813 169787739 867217731 736965603 713854671 608380997 928633457 435510369 785605527 401487215 272615505 912560833 111501156 509621519 99938513 788294717 791461071 764353441 78795109 817049811 701191789 118075113 917308431 181662795 7906271 887386867 118126165 683187511 16437461 675346197 748995137 860008431 497923067 604644583 684075373 789269907 672353295 536260945 515443703 872487179 32008915 32249215 856702339 244716039 259566097 42030563 777269313 765355519 389824155 962725691 404356073 159026485 266089289 30150029 490010805 825210287 501432833 740510497 548113519 194363967 491233965 886597517 791148899 180205949 355342395 309870255 818096999 277294279 984470953 737024939 498374365 918008137 348912377 680414697 42065319 382381809 1664053 670805027 678218291 679078775 878444655 120964947 952725115 454162779 545171649 473770427 14707451 31132391 618579789 264233963 779518905 620311851 607560765 243752883 101822789 739220221 345551555 449381173 383102387 307621377 819760157 57822671 354160035 157179291 169127561 96808241 835749689 571151871 918095441 361108559 311882535 615669025 171155147 488685157 484367263 961624519 493924175 856584695 594173793 390145653 649403455 780586961 719578805 792535675 190803973 290319367 895565927 334342899 838442005 803624693 437936335 571904957 20244967 947372609 773419209 695981187 192840703 985019863 363129533 970856369 873263335 129671401 59345817 264776579 781195313 23059189 263224787 129208055 559249783 580792511 66206825 984394453 747071835 146597203 533893601 411722415 676553351 432017157 275156299 526457821 163514031 722810995 194236219 239573631 940642699 571673471 385501905 206176381 373125599 818316375 162287793 396882055 358598261 650267247 717016589 121545495 256439071 254066049 747471767 721646443 679090613 329955987 100880529 785803403 64626975 553394419 720268223 932160585 980815937 838111025 728243311 467906621 101724433 775520813 90406775 204247749 497693575 505474571 176051257 160361997 321797799 568836405 740843927 449231619 112993659 274042721 546434817 55663199 98764309 227178633 44934509 568088995 951199375 481803765 180309593 102631445 696815115 899298607 323258059 146673095 569949107 561774857 550449747 420592271 493938619 594370725 507981829 987606289 852488795 965479009 199800705 637993905 625427159 964693231 283411947 257743779 836632185 118249535 950164725 97317853 340872595 542454927 302234577 368945695 809617535 756905827 964377665 348725747 247115423 327714439 107425673 128275881 189281631 332969231 270599031 775764311 729765677 535784023 985417059 425995231 420636297 710921989 540755753 301004267 24008433 291472389 778161713 68532455 201285617 465625993 540915305 464515087 213487131 363503119 761306951 4062561 372872201 330753373 933625547 160463527 57005917 391111547 971956855 195050095 902920641 709819327 434793565 395265811 871517161 62250951 726231057 162103731 81258639 989338231 593837491 17831223 782438771 825303799 942422761 728884561 31446113 261069249 474532319 28460917 212690987 255615375 809892943 18991591 144998827 270663779 502807667 385039023 204145859 568717963 204370453 163337371 502685533 568106397 173234563 47409221 438628461 806139763 680243343 283370765 70554349 757714739 694564765 11993113 523274973 706661959 19633295 926011229 400217161 615570789 632710613 472545937 609231427 359539081 455036261 483936817 889520613 660798197 863850429 610483339 121506129 160252985 216596197 61327531 38433457 265583399 331988329 888928617 723537209 699785181 123130719 884189289 700277283 334797245 722159463 303236369 346039215 694012531 246676903 149175695 65629225 317951733 616448715 267209697 983163107 765318271 906270989 998543553 190653239 635913621 130422057 108762299 606714759 773494531 974653797 282837791 26923071 169743071 700268687 802326787 67510479 277295489 478230271 762439755 289574577 693658259 298075025 817833115 339401835 306085371 520051375 340635239 597544067 231231731 373739843 277266917 154380941 997601523 28029381 492717589 449913891 567870657 739812147 539640257 599968231 8904043 28191765 870634103 439519875 773931841 403412855 257766801 122296235 9849059 875007471 173613873 853339929 656623669 118854301 389537595 653172621 316086113 191930407 357325409 455470035 105975771 287655353 108560669 517193149 360244579 192189965 570951853 375023399 521501435 97945183 513838617 763110639 446750189 799461237 690411317 665800705 744524497 939131549 818237845 59673169 212499073 811190959 685241755 157568473 894379811 886185225 428804975 528115609 34674465 116271759 269863425 224807583 171595313 663330481 44900873 940728057 860035151 742535783 121225993 417594051 858095295 121965355 224597063 268708127 910505229 771635719 624623575 148433209 424240653 659088519 842665867 402835777 572276957 981488065 652617737 173613937 182390239 797652309 715527095 978963215 653545407 798592105 416292293 152931681 935519349 265277099 645114667 313502395 352112697 605055823 201065899 401849719 541523601 223900183 253078731 648488183 866159433 379769927 85114589 265439911 3723639 748798383 362868215 693324023 373796979 859266467 623998205 95266915 48951527 968198145 986910867 332825195 807692731 747586611 542303277 318272667 351492387 424430115 319008513 114215815 23501727 242921801 598241551 231673797 932757743 463380901 668123680 912026361 143884579 237396153 756831431 857511119 362619787 236763287 413988183 95224823 408186311 485218517 703622901 214240557 374510779 591262607 459966597 624767025 571302289 466122861 561519033 625553103 478040255 324175773 483339787 336258521 139629313 938064597 852393913 190604331 835671641 133291091 82051277 605180835 538305815 647543773 533457943 670077487 450265293 533291969 772518957 101265599 237853527 600700887 848458865 874871375 275942875 878763645 740848139 424541919 26040773 685368727 187121899 381921403 898939847 929654167 182968011 687604277 46377695 254745199 279137833 337345321 372900177 670240417 642847053 930904437 910104489 800096815 728433481 670627655 79451067 433611179 7452917 635684815 605862309 14283051 362001905 670179401 608226505 703717195 736318373 140903669 80979669 132502579 233869889 516359713 949643963 544034961 49768895 75126555 116671929 581453467 841945819 236915519 788507733 30217999 455728675 224657137 834491735 174359603 449890531 497693335 184479959 562055895 367161395 91712425 291872559 525091663 530557943 467984283 578473987 638746747 182262741 741659381 350646081 75490495 7478331 553832509 629156893 495573259 78666599 397438727 493097489 325118935 131949139 505902831 626345445 671368733 808541643 565736595 756150945 32000615 294041439 232534177 815001757 967240641 700651109 504968393 187651187 190830275 284863233 337605319 586257417 330230409 97774871 165548893 240056201 42594747 626836827 985324883 916837481 774338439 515132483 436263037 105015909 252939427 984637199 43169463 152780417 627147853 452619977 845637855 45651465 533956939 648700735 67155939 397083025 867861229 235102733 860303283 18333175 990801415 119901583 360844363 900015965 635339257 651432943 122750637 28861487 876632489 554983455 861164513 722551331 500236931 610129107 148827131 510598453 195186049 738943887 835428631 403385515 330316317 156906907 855726675 243881997 501850977 526489861 371581661 844533809 75796697 776412583 612884711 473397301 183417245 694147105 764781223 614873723 7347529 235445979 306690917 3696561 912751365 830943495 250550887 813609419 530502271 330752409 982236163 132974851 868512493 481270869 398832271 566504671 356483085 771557057 67276145 429113645 822330663 120531247 219039249 88450303 411411463 848594871 468368097 540724657 538067971 419769145 900575325 100976103 543180027 772121693 95133703 830648463 813655123 408784019 87049063 87269341 496564221 660808467 572922129 403878477 438942059 976736223 733403553 930526625 176685215 718792381 639574197 381867497 544123677 643678271 997978107 123151479 28128499 301376187 344174629 767467239 285579705 82963285 663696875 419574815 965569419 329745649 741788943 552037195 478019089 890783555 837226847 355194077 109039994 364795329 772692905 808762771 443705723 822819501 802901195 187884401 571317841 827546125 648302243 562113219 988029379 108380337 308158239 482382109 97978913 591190325 965892913 241280605 517901631 422993141 397413329 672835493 303952765 58147611 397089537 624134753 615393473 287715225 94864079 927489865 229867383 916690981 438559817 931030357 725130649 769587519 373534861 139195083 293223331 496481073 156020153 363627577 243762587 743797001 755548667 553722223 275105807 929618337 832456837 924382349 398886167 942666393 679671439 449161461 556941647 681063771 749028957 336061525 34558177 909910035 99846711 155805601 594273911 166293693 866726771 6630933 382604361 885389847 301909863 751112755 723867925 756704425 388092537 481057483 512267043 294182341 93675793 570296813 661486397 211557507 561262753 663136251 594102207 816988867 707177125 664407187 379243907 357275181 526306207 29499815 137972977 518291761 455005721 387384935 101943029 24876041 593580963 288864847 206906889 805669297 600926171 628146727 491241769 103399159 35495265 963321081 632685275 779787111 252617951 760379161 60440621 217888345 960913927 723068197 501816247 256185841 112403605 64441597 241854271 401040917 708009803 303344339 60389233 406472565 702250739 161365015 641762677 562678921 730265949 152864391 850320729 517830801 491501671 671612199 369169499 341280407 188495087 592721221 551201603 22426731 408051173 889871217 962554205 10061221 130191157 598380171 833436031 700017315 617918685 547842229 158281481 900102545 373563359 686895709 423622369 599102299 128899909 468340021 759567477 296550589 94171935 509486397 32892091 322616119 268401035 111257013 556560175 745839119 549965225 788603435 62257883 377144661 441397411 364592501 769948493 333720803 519634091 585242797 431413657 764708699 625321981 569929785 89425757 130605857 418878427 952964803 564654531 228312423 637274511 78327359 116236405 864437543 950561643 211405037 462143659 395688991 98899911 502862415 274219045 357140441 431442441 453774383 865205797 527140515 679258009 529626533 351049853 743932567 949171435 553032717 644831875 605972117 765018231 923729415 40848915 2148677 361110977 130603653 380785301 617586201 368147027 752129463 14729719 874606661 386307261 515206171 137864621 552303053 450196893 822247285 664158137 342024823 793485971 539509713 164817311 937035476 770539849 621866627 824668015 688232766 400342131 307629865 753192125 604727509 948559561 754140837 547359145 474827903 785454095 100858403 398953431 329477613 849621005 506922523 745482103 770281111 353127833 388951365 94079553 337331391 779623819 460743591 457823343 414556281 552383941 203509133 909931467 386590829 350573617 22047885 15349409 182625629 774490563 922463361 72640711 341146777 598731635 677549709 306303645 941909837 332776261 495908383 438005769 413400423 494049601 18650603 926657913 948222623 6949501 704024811 633310435 68332405 110913553 219784551 145652421 205235763 812431903 482470887 622035749 284155369 154461393 536017987 157889683 233283437 224946011 670655125 971816739 540697187 178238709 389832259 742748021 428731439 253980643 316794615 878976429 546737925 34351215 977992615 888708219 903539931 854809577 471282063 176112151 209115249 492976047 368757553 623326523 11092561 50009633 651004253 876159537 50640841 762535339 704008741 423215045 234145779 793475515 617275367 215187023 488377007 574670801 463617605 655996075 935319463 187648107 323077419 270116161 276606791 727059 1350607 242696959 768612299 842932319 575517100 668291163 829783601 927217383 535925641 622537811 760957249 597144141 25871473 707339629 111507597 913775419 375367861 39872697 187662189 985597285 682266357 331719883 843091457 36241539 714933011 874260163 813035569 394709337 698766653 893645125 651485357 398336177 597839589 36787075 967379439 594011229 228869576 359025711 522033973 557842999 256798959 856797323 183518087 736095521 441504671 591957337 63481527 521515525 226938481 232990189 671237725 394095831 409554495 305907991 183555799 596806543 432507181 742400059 450983505 496923953 444104617 212001339 41748921 172849863 921494887 815972487 135091655 173823075 786632291 409041939 538625021 647378463 107302879 54187619 981732769 802093341 185915243 565880951 765068485 776865927 608038361 255387617 310147391 286385809 153491013 257978805 972414387 493081973 514570004 995626387 769258629 271361139 799249651 515933855 330219241 600690903 555380181 125364875 921455573 9710321 231671799 817589897 397139209 847425823 171696349 700017755 307383311 257721537 659092563 622780741 942575415 912247619 797629805 504280853 874761879 507312405 116436873 565183779 482083091 636977329 475759433 79420747 867078479 428042651 718286745 888383221 514554045 880230237 635583665 70369295 890183319 529778313 377438473 300867087 322838235 33479097 684334183 360375027 352586067 106304143 743079639 844321859 841320589 779032245 289490351 784715275 709160163 814343391 454750345 28276705 687453045 275947975 397139529 849395173 536233261 23596845 850945053 804372923 466642871 704020701 305713785 122469781 264898701 235020713 725063191 880344357 360131569 416899691 297515261 978212525 965051883 696930053 385056633 150417905 91977033 667428705 20143901 986964799 481554597 995502707 627908549 668328559 93204319 854305077 211505301 774607839 256904349 892101031 397435133 374175091 556084819 743314389 409741741 837298587 945290809 84219601 705531297 688886861 94717133 299278773 204725537 82421767 57601623 734685859 596514999 404084945 511525865 365603783 674232375 696766261 323693145 529036881 902510013 720249167 876906827 491573627 822106799 796203449 184444965 346171273 581572281 903150745 858813717 884658885 437015757 691435169 675136025 535057537 26410537 60410885 827427307 495062039 28546897 624765825 985430295 120057323 93580561 565735263 588773101 28657763 62189949 244507245 589084291 394949877 551653107 109027583 935367101 836889883 800144661 748874739 183475263 57034069 622218193 225293745 40010877 638212143 255154777 68948265 166905517 885603131 73693229 226663629 224954319 664683539 701653517 451048861 774515373 546971481 579723527 688690207 836960981 419739577 405413745 686361955 72852385 133571811 311624164 275435007 657714995 595561105 952723527 744047375 333182319 39152009 679734469 63000891 474126599 23287441 775777491 530235823 751267957 128641405 579098669 805782309 173121783 536232999 246266837 517101273 399464853 850792305 494535451 99349393 258196515 116785223 272859281 362073243 310808117 345557145 678917395 419056335 383053869 713075297 870604487 357245323 485072435 836694181 386345495 919537075 876508471 295468139 855214777 237871287 351953905 23799239 503396009 709069197 208576995 642629843 446043947 459365301 511481941 370141361 437144523 496370225 76002133 194711693 58130781 616653459 609158843 384689815 245180669 967267313 291039019 263524619 194546961 212233191 474810123 459960105 302073413 460780957 5557643 314520637 152158347 453514431 21666723 249236633 529862689 640713863 762814229 309194391 313995917 600884913 405563751 70722459 902942103 460449411 639935723 803056907 485810261 378367437 192948663 412552029 628471845 926719971 931830447 930976011 165186473 719152291 752273015 242237845 134451663 86228343 80111235 909645449 868704971 556704841 192332297 654879349 181703447 352256145 801200393 11769845 794502267 603231823 871095629 198828715 658796287 20807429 708911973 144647235 536002555 620111045 855829415 554734445 856406281 953417509 616227639 830729957 458222861 98854465 631667449 184168043 496071479 631312321 826273953 429384651 16832501 100693971 507483555 325506521 303458313 505059371 679795779 307053931 482513781 810258187 95785097 786881125 320997509 448505911 583893317 678436019 305264845 616819711 368823053 695182661 695428137 641822263 514468675 739406615 585442239 689884479 302409999 572605993 675066105 568392443 103021153 53533321 418879117 580841437 812187891 130456901 97081207 483694551 872983363 767717753 304478715 100980073 947409817 304810311 917253797 360414363 343009543 934252251 586476363 898252793 980349541 270543717 866139141 196028315 657387859 974331425 827546685 352753181 569761593 664523089 48869273 678061479 827288135 704910652 165051667 879424231 158388343 890383161 607247843 486484499 330733189 551761055 516830863 715698153 659605759 755880403 346257381 753886895 54701873 856344381 552911349 194865459 394722867 998235215 223714079 731807183 415154153 128315525 247086341 319540059 195321337 644519007 378356629 611998275 841819857 433573993 705170435 206989681 792705711 906757175 43982795 922797407 646423181 740783967 148919727 745242887 101564726 488626311 671207103 80602867 660016701 329805909 266693453 641877551 462323957 266751617 729208309 312656723 238106499 143973567 282639005 765097851 86889931 121941463 380385135 382280015 280451713 265325199 883174369 254590973 841205275 15032509 759373231 620195387 42314713 349533751 760139229 408099143 143248069 262551521 756231605 279118311 488248493 932059303 392107473 704944491 556998957 824569467 523293959 305186471 276197537 949975379 988038527 396332795 189734195 744610359 590780837 697051467 773722069 145733165 151495467 95976201 308362043 527227723 249621519 542302503 320114921 680126887 613497749 891589927 356237863 199883367 552999241 372363789 929238275 660239025 707953665 943147367 937507159 422625469 747824341 865283149 748927427 759534785 68520495 556991579 346838191 717025791 769059511 506189497 426063181 450877381 414531681 839380245 161617041 66055777 272464237 348779173 104999999 905580079 221864283 87268135 100552669 301387411 384315385 547510243 697732029 232558837 945614429 545686691 324989431 472208327 26622945 741838019 884474731 389986693 200403755 684386843 537855681 937749425 680961317 878705175 870783337 601758163 571746309 90409635 631066779 633149569 598827589 949271347 195967065 822047313 981580205 821964745 632551529 537940713 482904135 74928617 364973917 76904433 553580391 714933153 404234123 86339099 939359913 203103881 11232279 725194787 547829491 563927229 433849831 721582539 320289647 920197093 97514665 741971675 433443475 435128367 992408025 917408807 559625499 484613457 419993015 403112075 130008843 493764491 102258761 696845799 645019823 476659359 27104863 39253541 727436701 62416095 399907477 417975863 601757101 562024479 195326535 995964697 619924999 876221119 462401695 170156237 334720023 877437093 76928911 793198939 823676047 799276093 657519309 102015961 349073007 363145601 123091673 231449949 769011703 452797165 254215165 852455949 536019893 305554053 732201799 254776849 152413567 252196573 528730513 112697499 629983087 612072967 933251197 19167975 218696425 403404961 581383023 505132343 808334747 897042643 967237273 725828051 13653113 523413835 678120437 612087313 380452029 359408193 644533313 253190983 119858927 957787759 10837509 703895003 989025239 145926173 289381523 666113077 542854029 537561115 536545539 465801161 699769963 969699519 529064245 480280591 468261911 753103589 969263313 827770761 752821883 819413235 521647687 790412485 316053709 734192603 713724369 851160915 738280585 89763345 325533803 761240267 590120051 476394641 365189347 564201939 296668055 260137957 330076357 162942739 765591113 392344347 140217193 725242941 832270117 374602439 116633843 372577037 719329809 217070599 455094601 311425093 534171449 239014275 982440731 39577775 350615567 485776491 179458273 720776731 905867345 584419697 986486747 667272295 77663491 302222293 525036307 8700019 770961777 980002911 261743193 52061481 100130351 170252379 233312069 559384699 460879899 500368031 646970933 89523815 470865239 875088011 67225941 709825513 922795601 747542789 518552977 871903761 54539453 603554171 321581989 626324717 887868565 990237409 675330321 35822235 725123359 323351737 963510555 65098811 245044201 543517703 450881491 5921527 511770053 425536091 778116371 818201859 379333583 62822089 300339581 542511767 533116011 930836719 928467829 843035383 200537671 42413047 500479533 250445163 849549143 814398859 242679455 344312905 45409239 532617443 962784905 796471783 757481289 360955325 215478133 849812907 192855933 756512097 18848689 161803516 729789317 259890587 133945175 791922257 778400957 513178051 314808647 384917023 750983627 671190965 220897321 375094251 28797849 592038105 547992943 618402623 774925405 901029147 892824141 12265131 770298003 870618613 521126599 888963277 183193599 699831139 677806243 299796805 361663661 970086123 312313973 482548669 993011187 365617821 946147471 633583849 661286249 776374285 897918487 100594561 665718263 826189657 91298291 757354313 497415369 944385579 134658003 96555019 710918225 383039660 690730287 63153815 340349261 157375639 160877129 202569163 855056835 641800233 982727463 318345095 401220091 370471205 410750619 664698293 637472139 923296733 965821245 126267721 164748881 811667495 172724331 275253563 807136113 51988063 246839633 917519759 373620821 201226861 494845405 359766607 482542001 977660607 246445511 945050251 803593349 964949835 370413455 14667105 579275025 480683151 852333951 245717745 434797029 346331793 286240423 68072293 60131027 161690593 668571101 795006449 800658423 353982611 202167493 775329229 769279669 279665989 940968643 693501757 258484925 656305185 249334795 976011915 684972797 316052433 831871635 768121609 932127415 655396495 578954011 218432529 265816173 624543509 49825837 137495043 730872555 140490157 769233175 746538319 189934149 517514019 993770227 625815395 498717399 214183885 855552929 953080761 507772999 697735821 878851275 902397141 737342081 690813381 212912349 99113793 184471223 570996837 303527443 671455373 717348455 874461923 8592235 729513047 289651285 389557309 503365549 43283263 563374477 947867897 121429099 844895215 858576997 505989669 975368445 446961179 698273141 146067035 871197059 181301629 658615973 983458995 202027493 514021077 455786016 202453977 257082579 589622509 837100381 872467191 194017479 131406235 45406227 824122055 488053503 838125239 918621513 183746691 790021251 715335971 322671693 453618933 270011173 701057481 2209199 509713769 247945341 926390941 29176911 653099191 922975465 379879321 445675089 241939515 285397653 459563453 110425119 797390557 590996079 420118035 806766959 287258123 553454383 469125809 248788539 606536379 182099031 502137263 627362763 169181803 745001773 577497647 816009129 763252259 830644163 872037213 113536679 618199405 569064431 25303399 277066215 612277093 713984085 331472525 177221575 778285987 709827417 826209805 555004153 812255059 371989550 170890547 115233133 43523617 891184589 27242064 905291105 945815873 578239475 769693633 402543193 518017141 700340779 803839205 298045985 781983999 662281413 248178983 532130253 37690035 876096983 734368507 891267257 778368225 772839493 554871513 915426187 638690157 712333491 994522693 130697007 185524665 708115603 659413705 770012631 540532661 457402143 518608119 137431043 340057303 25106517 444086633 178530163 541998365 952539135 608176065 133154357 603127311 937478315 536521643 526513565 379928145 438561971 138321367 620464969 283014065 176438583 264836863 902369309 71052309 436199201 402796263 552308033 149916815 17398301 875329369 224004399 643735371 307504037 652210983 672626337 85609981 886985211 743489835 841903513 831006951 990085927 140709191 54028391 267383757 691173879 516625767 545307803 642072829 832722181 329925755 32655893 835585103 76898737 113792381 549222905 755410463 421211425 686562929 969204657 921771607 60489035 787664736 754673139 864111969 197739489 392429407 581913531 150712117 374759271 199038341 156753741 601600081 41553955 369603061 945725235 61742267 878953767 844509915 549716805 51878147 756161353 167282023 857357215 141830975 324901421 10958547 661303203 737008651 975518521 790635877 549907197 874927501 620496539 282829667 31249571 793056887 864698449 835339809 969225681 924372218 150560021 53352697 961114891 122991067 324209011 478070349 291055901 308896603 615182523 764970631 912733213 563487819 511861763 126300443 157871715 47495933 976431407 953536387 620059545 473844309 423620579 360787519 434567589 832088757 914694803 249344475 36531137 481797901 840507765 987380713 183440229 74942419 257240457 216745987 730399063 391301639 160951705 793264331 528610469 985831467 823326515 569605357 643169695 104548177 372664753 976668697 285406949 74460687 895032117 157377547 115833947 150563201 439950755 474078083 409937451 544212557 287290797 657429837 202928587 856079269 447896525 610645307 624261365 876884029 443738945 257807655 572871857 880016723 788735249 795273715 906089031 894066605 231839505 749323915 913963599 36703385 45147349 619262175 525908387 234745583 799390399 798677227 719714409 738057227 676804855 899753903 900123405 275337431 696447597 262907959 303253313 466482365 771160537 193465493 34721025 509532341 263259325 149615331 975968661 977127999 888585313 476281413 167051911 897416285 515891411 47443937 238006443 817931425 123573739 376146925 459106079 978843169 855316045 482407075 98662469 345635961 845750879 72709955 902764745 670947535 160018257 477684505 198674083 882907861 638289947 895120503 88915467 54249919 111198847 480239033 190747271 875406667 879398403 558667325 569056739 961453247 322492665 187073905 684911925 529312745 984925559 420937157 774053847 846689825 153592929 475413938 463849581 328826181 998757979 912422081 128644581 141843641 223255257 932944501 888285297 173761647 102302480 715603811 372969617 832355289 992828675 697622053 556088325 307795191 289180793 664022111 783416541 282814289 552928259 32662455 746196073 88136947 743297015 329120483 835509321 717609845 202542457 444212893 79245665 585191155 358321517 495685287 719721691 454996757 801672071 908555465 438170925 520357383 632479035 941662679 823030547 833429891 568134351 299884203 476095119 259936197 982569541 491198761 469245425 348865171 367681139 945592631 982311627 813835325 72622573 67336651 153559803 780974231 44898325 648922079 237512609 340668417 116224019 135868277 197709359 45116511 181447639 268939413 858903381 468918817 717439259 594963027 96096273 202989887 752564829 484242889 313140391 743840819 717965797 697890587 120764323 254675207 28674757 110537327 250579161 21026887 942038997 404772093 417307239 936775179 309291189 771433977 388653487 323646703 437504205 407590315 441542239 575378715 681180749 460435033 756209513 582371645 46101295 248143191 548854795 589452681 490738223 932388865 44691659 772514497 585051099 385081525 960146545 754882347 744528255 325219809 169339669 376342929 571167795 170911477 736423185 326093389 99939803 507365229 979451401 784512573 537615901 164485577 136398827 431875527 842439527 177809559 919259115 31883223 917950455 366299493 929087363 303083749 908848839 431055823 66867067 530753009 905708707 929535097 848975579 910280063 31318299 158950411 735750139 811160221 821689221 328282167 962269557 429173729 386785797 695839417 966845231 127107181 964795007 653370961 661677395 700433635 900483495 281167821 688682327 320069747 649057267 9448187 960392439 504182227 726509219 299783095 231200055 771884097 968013505 250098917 776163171 769668227 810006045 395586413 681482255 498486249 264441933 799939393 770672665 939680583 564685235 780656733 840250275 28576253 919465079 612463553 740088601 313376495 516545931 662534267 257422385 193110415 227605411 433446041 128217833 307800783 37368387 436613687 387872897 797531185 307092659 978843769 481971335 335239865 496951553 778103431 769943502 104342517 270272775 981514899 474449783 910975227 63463781 80782041 845723617 312186221 636020355 466888859 553702331 706655341 808364435 354681633 237935865 162997163 962156425 505903807 414327765 17120349 475694633 621102033 734018005 934808129 41987833 287176629 806112455 505641629 208907339 661550553 712671677 707410241 738486327 179724975 614777363 490553217 98140573 161136301 195953773 626982717 372619045 244016475 635286969 535457755 780851775 394700353 131751467 698046791 697873443 815700975 98785343 105540347 814111955 137008897 165031863 237684979 553643541 266087707 331084963 661421235 986087547 239989733 693739605 218232399 977699419 43965969 274161259 966018391 368474329 142248539 296551365 18995183 11112155 421280389 884940181 761605049 307537423 834298455 208206923 338985189 272866289 666783399 178983077 488330025 49729729 994856011 883198631 499890371 13688965 345210665 710959773 157971323 787166221 699007273 399741467 97901981 602109429 163603261 475885311 249123071 908603289 193676897 284763755 92376065 427663395 402210455 767826891 528829063 2317189 914020327 404274135 996138755 925447541 780625255 408734087 628235625 773808243 206933037 420279073 70756405 991011017 901140575 352992563 550000497 819913093 421564965 412530061 250594219 732923265 792140465 320125007 394184949 37875807 200386369 825499355 20796915 514793859 711053329 153953503 722612423 59302175 711682929 192132943 436420129 960472877 268938415 259035495 16239671 306090091 827857705 464279977 915435465 590671713 185088317 108273893 395126553 309008225 359544665 388946221 380391161 77507459 312840943 722046173 438853053 719084455 207968119 781709721 876406341 343925 881881973 186293585 621294327 685264221 568766321 448870197 741075137 896274841 204466945 235557569 334407703 735740709 720101307 603645117 682029563 952914639 634724933 163336755 669379825 215654947 182359879 184195959 203501065 938010233 302434421 407213351 703491541 180571637 759404935 228559653 464369528 757841021 931614529 476400541 398671255 490255553 647584363 814572037 512495967 690811705 477092059 860495385 768828809 144283429 145319527 483636957 741606223 688555921 208888821 488560031 509306233 353082439 397215853 181322991 844246871 339600613 357714883 80842157 704248255 73506247 388492271 144897531 119131149 347063577 289175029 147264583 386125609 787499463 107278045 814194755 362094207 191100045 1875645 421211631 935353609 317815019 449424811 280280203 883539011 578948135 80256717 672536485 877867827 150460497 57529675 84973587 50298215 443130691 959177049 111671023 919743479 944246175 268140335 927869087 260556929 736599497 979301905 648098765 171186217 766751475 202719049 341299311 986333857 544370711 776122663 368178879 517009179 590001395 803660297 426477125 460077399 13496593 990251855 459967179 97437853 116090047 853064291 828753251 456992441 490492951 917674935 653011823 594797313 421741049 554052041 951832975 390266709 90556685 411890709 263613615 493893403 173242053 568069675 371982085 84870721 351915093 937681563 467662605 790834749 472952769 569097725 175442059 525778701 88525519 801896951 933717387 563903031 350033427 618278449 722704737 500067785 25362911 857231711 605906859 847543131 950217049 661236281 616556875 285912331 743293287 383808131 762759021 803626621 50771385 618185223 880650377 637542883 819031495 271235991 538313559 250233583 512269779 699061259 629315549 556062177 742295523 755306313 714948199 811466369 479747785 442661689 988875915 494090011 183231773 212468943 478969891 903421319 905164349 569409283 73951827 599495713 176273237 510621657 107181705 194633425 850918483 230188891 550940537 801421829 717839087 347058331 992827933 916675507 85737385 972845233 100029 975618137 147330763 128105411 165373409 685903869 981683045 380041723 786168161 594274605 370416205 981663879 654041943 60700161 28661031 9129639 835189545 311969047 990671191 97633432 558234241 582917781 446383377 226214567 822273621 627994407 87994955 536782887 996655585 162118917 348749253 938983537 608147881 96882415 473647625 673804775 275854454 669689641 86789221 658335475 390065763 322368129 71722995 412642057 584682441 707211085 842721427 875653537 791785035 968801903 246979055 490269503 826511317 344408137 279360115 784734317 622749085 161171401 699064411 915050685 476965153 135192425 205071013 368000455 155147553 9421861 482039321 219842097 668587179 674425989 191605321 366880933 246723091 370576787 131443853 48408275 340222967 743249385 45456133 348792437 367459385 796818597 235766169 616388687 839321351 839533677 975089401 92007211 762501075 952624749 593344415 650084057 293402717 768623967 370643657 534330167 642158501 515396221 796786047 348202789 18391801 636215953 845107091 148556175 500381935 157573863 411276957 710400101 46505057 799266903 696349437 552027553 421730675 80470588 668430041 937769543 450918547 680490881 470917925 174635361 747932533 251061649 14651543 309371649 857192469 927024483 253968561 611828031 630546869 732395125 537216185 432766275 812653029 80022477 368903873 498134065 667519351 730957051 32157855 735151167 219938695 799478035 747986679 214987685 894069883 95792053 897185837 860751783 146709757 378449415 599724917 581138831 57579779 68332469 373261253 869416367 128938697 67516409 339598045 216012385 171183571 307297933 874839623 207222023 691269613 472794299 344530003 750874891 627670059 506137679 918589207 859015905 127158967 448025249 566081911 163857667 832246735 379105679 305887255 26373361 867078341 128450685 888481897 894824503 851792639 576925531 845970855 199164263 932215035 572524447 560813519 275918617 267224701 739825479 260868779 736138485 39662995 167764441 563253961 742744735 816093581 105533285 923867267 512072397 449360907 755195775 449154809 170637879 850591215 980665415 380272917 775238819 589848679 409299299 702375043 393385429 431480807 386957567 978287805 224633509 468998441 551996629 242037253 399484395 380306485 524984609 902898787 132622219 67517267 308346793 3000997 999965547 381528091 127582907 524154725 345234049 762111079 289490991 367591427 395350981 677746013 72899681 958969255 203560253 814572647 525327673 552846401 694324463 618181691 203990820 954880393 17340909 391011795 339226653 229263873 14763861 554675575 207259803 617627119 56056649 961596337 213513383 989044837 207313903 571664469 399017681 871404601 232466045 439229823 167248173 264288015 956016173 892438677 233292891 563171917 690403135 64540995 337954945 510189091 222633983 201643643 725196877 514189961 680532927 120225659 19464179 65680959 724149721 424714951 474855989 442213839 82960559 423638315 430546775 559907465 529338541 893025467 561881639 260249475 518611779 523131349 275471101 584603809 589889003 754769947 543147191 387326343 703330089 170999675 658595769 344657065 756803463 698945831 97103603 316523069 509027479 465833631 535872731 770161987 927068149 86902435 31895665 457762437 3769407 64532033 509394487 340615057 67495969 451250639 765106495 587978177 332258639 329757671 977028637 436299575 392141699 179981933 311542769 941233111 253344125 957155727 147150689 968299091 706354185 413104321 652978075 649555749 163768057 126748607 501675859 424190347 733122087 657219979 901769675 564598927 52988535 32589685 206051783 554884607 492017359 884679183 212368535 824437621 763036453 156551221 96376591 507580241 409938291 608910349 254552717 787669435 805086393 408801793 896834555 403111843 198692355 854429127 160578243 296869313 373398371 868386651 271738333 169385367 676051701 925853697 832029383 81581677 697380311 985607493 438910601 329533521 468918069 723948539 474611375 630790427 862946629 709016895 996545103 60989295 369064507 913700727 45359369 44676531 917673823 660820815 164848131 447044887 736583159 215220921 557410539 511927443 317037143 944710131 397099255 254468073 845023449 492487299 346452965 551506591 24010975 81002033 360474875 189921543 621476821 854021651 136431623 107814711 645916715 507083143 750754913 137999891 418633309 207657775 667313127 306062911 765919723 718581241 382334973 630103343 573326945 263570969 491055251 208073753 85380689 296099849 496483105 562820351 849875031 860306321 78522273 632990629 951440913 687548601 762938781 359573153 748137261 226611417 717849889 246842951 299124827 474695563 272744387 43427771 177401941 771162547 353025955 71389153 73745121 321812097 657869415 99385965 732096965 507408485 632308285 191943891 406378453 309160987 49482971 989950297 683044331 882828203 286894207 185162241 255020523 184485215 110738159 687660449 941880765 309270219 454138491 537356493 830615635 994239435 886400759 393016039 568855719 899798405 36846273 627307287 591097535 977534819 388511171 646603085 249448097 887343133 776202343 333262147 684219745 907028651 501280421 181933943 253660699 247770961 135537917 608774193 499682541 564797089 626441587 610862725 231131141 400686697 514066069 508302661 572311187 484082887 477175417 173957655 648491987 672374563 314153409 406130273 680561669 434073891 290850445 443371603 966583669 593024449 456760209 639472615 354995063 57889333 301088001 779438553 818320225 713888005 170042267 609432247 933570455 922783999 753568165 307145677 258048645 256631859 780963311 484545075 396473243 667245313 751065805 754203597 546470485 777963789 984210719 828007489 993461045 813404737 733664585 817448445 821953219 334755793 625900093 53747007 295697043 125608764 300330093 219429121 457937473 393879365 250065115 441066511 22815851 609002745 401259529 398185977 557571007 6353579 342102283 739203605 969204205 46161143 655390833 452466823 256620721 253799875 159203167 141862195 985940685 935421241 987108983 599048397 381309705 18261199 59080937 209928651 730652473 408379457 710632297 308803949 267161399 21352595 972301113 450127037 605489127 636494097 857214239 566555531 197430833 712245327 257711717 639969133 788278279 71044905 561570279 88376005 558004069 144496581 767039229 153975227 564942669 129709199 438769299 97147713 542497991 978022713 123698707 301955595 90639847 869287873 430586999 894433693 791175881 84878187 324533051 735145791 372149899 695019971 734998883 734488831 367845979 380518815 172098691 839720119 493881961 677919769 540057003 583492871 866298609 656923029 820943999 839964247 845648181 691481281 249905185 484965849 654208637 423976335 624923201 988547713 828943135 243808319 655167509 559426579 364858737 944320081 308669787 873814037 175566041 560302995 422690137 292090073 649748157 762232091 421314015 826877559 48037781 52942403 316820033 328584143 323179991 9567665 950612575 874184585 726925061 142579791 781497759 916974357 531415725 750164563 5247981 310831531 619119453 482934327 2423491 700220237 939446707 635278787 804792859 483128257 108111181 276082433 333571967 467132825 695738841 468516165 324586747 62681899 876638729 601585195 728496679 735549851 747122325 250538137 394292513 562282959 157364031 855230393 911843212 663094133 312921045 214641153 989369755 857349641 763112741 807332909 581162241 953486795 783558155 453614145 44451325 653893825 609639019 312069257 503633495 11534267 638135853 455815835 363404889 800908117 166363717 305908303 686675423 585381611 554960299 513978061 867700035 997922217 81627745 136188289 902791787 997633403 336973941 628063005 421874633 975146525 137736949 264067745 600012111 395854349 597293823 351948365 43554687 762155413 230331569 149154991 590981725 823326659 868458041 423764893 152375415 278482289 267034313 279776561 165743077 241440833 391228313 19174095 577190725 598207383 497379051 189142053 576636091 543480229 121445133 801273383 445699831 230364261 343354701 58264079 54277167 438117013 294599945 664894053 156120865 103770813 294131361 495493617 15959573 21221423 748857983 861122763 85609943 772305411 350393877 96892749 93977789 155310617 610418399 906631453 589119399 419191321 81055583 527584805 861775611 918793843 525995039 858205083 68685221 411107681 71589039 440331515 433529375 46044639 187897005 391965449 588509541 316864187 561286327 371266769 459227645 246893441 797772155 500889255 430214389 691341193 31497387 828382503 603493093 648920311 485090815 146802743 872249579 660287409 924223547 820613635 179600299 981781095 404409895 929610237 409199701 538810769 490223513 708016611 200242591 143187055 589335657 515753657 821502665 834405389 65625975 567012299 281167509 530437173 773142449 640739247 754528853 832622725 587299081 400066365 582680799 194101081 740584311 788354205 476081039 582647517 659795967 312713275 651504971 480400381 735756713 86024139 76798341 309518709 845010059 233443655 217212209 663865029 84916413 955225591 734673357 907760947 543897439 495180643 50089567 262151375 469089185 443256419 497072757 924344179 847402415 37097489 683021095 582800320 939983303 293797585 815505939 130179101 817559851 910914897 686730333 243798457 246593317 573227909 534453173 666837391 12387845 445853609 975791955 465455965 368067113 641652543 170058993 439212717 884064497 1289239 203882969 447859661 537923015 388035395 697283543 260919511 663932191 44236831 422296129 955352747 381579121 439181137 7917303 29917681 193528385 472912323 74898271 622019099 453519639 55861677 72157543 401996381 71165065 485968773 882608261 378372283 341693231 252876053 214423733 755111675 763751595 204315751 395341699 240503729 215402663 35320529 364391671 36078895 961065429 570178027 512861867 342483611 343131891 781388957 828252861 623039195 810465725 907158547 987818193 680452511 502646275 260827327 968199449 387261023 208063637 242958689 208511815 923414877 382021709 670063097 784019867 159111327 640275723 337091285 114650589 686869751 334666431 733292425 588098649 958613757 235916885 247117299 104679655 132883983 976319181 684361527 495332835 774200153 390905893 28940991 871064885 816400585 856307303 721345343 999360843 556822039 885360809 245913527 996239897 658225091 632570883 690883687 697742369 265130007 839207063 188678623 236556137 306496035 882783887 342542833 688418939 485169853 138990367 225325753 751724401 705592201 876710271 208510875 717282025 234357739 297476595 870473287 415658759 384679959 788740805 781333933 517837949 308026371 657830213 900880137 678868349 215212655 914281169 206980835 369456841 940448741 70183369 292453381 629914787 21281203 261721239 236822147 683083741 945473779 931649711 302350521 606814413 858405253 873660809 267721293 369413711 377153299 993867689 87741227 258611403 685088777 263834009 798620293 428745519 904382627 401873643 112975321 404451825 899292127 663646521 727003115 713335311 36688517 731491109 960542151 66727439 422855207 676186969 323987907 620264705 505765917 599265161 878021239 357893497 207051399 520721261 46321611 476386967 564745037 877588425 950020075 555703551 156856095 562471271 639838283 665052131 436600439 521439257 484257957 468581365 722798227 609636281 403444223 395992695 676696187 312288041 690936743 281804333 151416833 594667347 827719213 126430821 24666813 918819883 283721329 1632247 966427407 638497705 288640663 852701247 93299485 779212497 417995529 873950245 465524699 627584173 152999805 868610839 743227903 217204559 334744557 429029387 757963019 252672209 525549473 499575935 554368069 376609877 950647843 561225081 765089727 537061637 988778055 616442505 234755919 970958613 117333801 910490307 960794009 802047677 154396463 685064135 376829697 364868929 300212483 69890235 649198779 583932907 752770715 503230795 785656253 781985549 758688819 434640561 818118089 494235905 678710095 357809831 698765923 28857641 465327547 130728567 208250849 786114801 636728459 143907309 499909207 758364871 851797787 516826721 180842153 854502187 18620433 400956847 356091771 826519451 984395353 774998337 115048511 652002723 333233701 676413185 445240367 130242005 760076277 101980775 789970761 781095627 224432009 694541681 66514263 765249575 341960431 106923941 199405799 624282003 31903101 760129811 446107219 406272963 300834507 119639887 367872701 415549809 236668355 692080761 99400969 765930077 563770765 773531191 603563241 226706515 513626781 991213237 919391701 644257317 135059891 345558957 197314575 18449581 739015375 873752409 616565663 919107533 156641345 574143875 120745811 536567151 84296601 593425529 799225797 613026439 488713399 547589647 388868181 673456655 904980671 992171171 743335979 602299911 675954459 928131101 487554871 394153595 548980865 458354411 890487601 682555517 987394029 223462659 332348059 573447463 127759779 666312419 80341947 763593371 688289325 164754067 726597539 776112387 949385571 150831263 635904809 770136979 352199521 217021725 371443185 844461445 605892489 991849645 723540833 475546393 770866567 468180853 65136041 707853467 648160849 830458401 559213249 106393949 784714019 166482154 219174761 66591417 650565761 949222031 357073963 226355473 276672825 907935571 681041495 956901073 4775259 614677509 71595779 50091881 604294471 175816445 348276243 175678035 488081055 267068183 753705771 947395093 209053519 142591165 658653375 785937717 614255759 681090777 535073029 278698823 769416151 144320483 893090557 487962085 485369325 894483161 106198897 842522033 96969183 858196035 28365807 109865815 75118077 415433517 379763153 649929863 5030119 37896237 12120889 162243835 50539649 379996259 238363659 663305591 841139957 571420277 638305529 518517447 971587513 829369233 258709629 859918009 376800903 366273131 787086805 976569129 646176871 246223941 89360395 900501241 695533729 956202467 119661805 665455893 701333965 359573653 922178581 79118701 512645319 200918317 961335267 371591163 935589295 390860559 951146623 220492741 924156151 787638557 481025241 713106897 626302031 190938313 444073385 897334835 957489587 925555461 802029681 147459845 285290091 710527825 184921721 341634921 685687809 575952053 602684367 631487627 764431177 259662013 717351499 348904091 788475745 239936639 734178449 180889555 529970859 919668123 757344519 224854905 481956821 858108215 313503965 954292947 92794065 430648577 9335563 641121845 133190109 459931183 629011283 711401465 231401597 962310781 59578171 18703235 475407485 964376373 470189845 112306745 674273523 963690021 538642167 14928017 625641273 872035489 742803397 270817541 309514739 834902665 451829795 806169365 661740047 745922369 761078661 887295055 866862527 834619577 719127841 852687681 359445379 858417255 961121529 130714759 391235867 697387595 981912785 746208707 29388951 380572137 618642751 858427553 902135623 286772559 587246231 184583121 364444875 174022163 600126973 33392655 169985543 815691349 82713685 174576923 782929445 140492731 391340371 47508673 50150299 93699187 196796011 470987731 132543269 99656243 58045923 330221869 298808005 944860473 497021373 85550765 78217931 615858507 867314895 146671681 353239241 346884279 66650541 367711449 240606877 885710677 743173561 54580081 520467303 393326979 598238747 507566089 756957849 931798823 952885443 275732653 1697507 412635309 324392811 112790641 452848963 57149965 886422161 382318699 727059965 591628231 24935037 918966975 182933917 960938461 854754883 318644121 15912951 780091617 124977845 938326057 881116969 486021865 988015993 823734187 317734549 22028945 721205749 314538079 962305513 129079297 309442649 416045203 246804503 255258599 805702303 196368789 559272031 372895865 483480450 417992897 985834817 647460469 869995411 863806075 240673163 907063329 120264731 810615081 765282131 13911629 773230643 222418499 853425907 808691021 385440703 85427007 764635151 237957121 95422565 865523871 496465045 254628045 825613633 871736559 904414137 165331107 268871815 762339267 473051893 517805045 417087291 642395825 553713937 784569795 397161339 963073629 459741973 152358037 801186519 952318323 853647705 922735479 55706789 220002723 780470905 806831361 875304713 697745577 578557525 244592207 20313063 774782279 610788125 463442953 616917491 443890245 667390021 499678557 196087203 259591543 264919945 806043905 641678903 966575289 47266285 904297523 841313977 264511209 508533949 744064443 530609913 847089909 650911373 103312611 76697229 911955661 938069051 128590469 480850902 807263853 538295785 197391871 787511039 629587159 942249475 666774583 769855223 866227475 241949246 118258840 46405747 533059895 186694299 738988063 876964599 20034905 293077079 159053891 854464971 499091613 616245505 155394575 18054397 20923439 907770733 768170255 52522599 924821569 442245305 732857947 375255721 894121739 631661895 631277455 704679467 594913743 79073733 871695315 972023839 443618267 513835047 239036629 897995641 580412285 428073127 933972939 663930365 555283217 164442315 507840629 293973297 168692219 863385697 186414613 175247721 452351907 296074363 451363965 378282167 64836219 857789045 573375745 424519681 967197951 493896947 815818113 272436205 389913777 259804387 785241441 218929643 777958169 750640761 748112531 98526003 242461899 578729009 572801673 833920455 900584547 445176783 545384260 790841709 647593345 95710045 130389067 408485047 909966285 401769523 691901865 530147323 354520063 41794029 275935991 693319261 132846285 764391275 51937361 399205571 494586873 292643807 82567008 895474395 385591121 98482105 154013777 38186529 856189347 986199991 299482329 723421909 62009293 617219549 1306423 996200701 907400621 999597175 215510321 793496425 755113777 372823833 419808023 170387125 937603915 174330785 982159549 939695677 155832051 315987761 176840323 807102253 496269867 772154167 742613071 688106865 283368193 292028005 217510543 710586565 537214083 727465401 666610487 424113063 538048463 473157495 317972681 332486753 100024069 977706029 742891337 627240961 917552719 985362859 609420613 490740577 190937311 742691857 116184789 571023395 929539569 549324483 538261 87114667 354435015 918144361 446154415 376119339 87551145 462709501 695911373 765059997 102176749 74403513 395857446 207643327 442752233 3246878 239153787 448146969 622137859 46608639 156506385 923348733 478230435 200326251 156861109 319567491 664678205 251489727 27488701 775947915 937492553 315739295 841789193 314984125 638725449 384430843 568568063 320796041 748726987 188288003 483248267 378213673 211392605 509669171 511928871 266200217 856939421 378838355 418000591 796747943 68173611 240004461 219460361 54293215 25764785 790301141 400777699 471245977 302655201 665169193 599682037 362862585 172790903 618665291 644047965 504403173 994710837 726823015 862303167 688750605 68576741 610826227 485352267 45022697 131565655 259316139 974841783 536191417 723265129 210300053 676092993 725916809 145924347 297245177 907960241 455941155 398890231 704258669 790706515 575812645 370506831 531183311 503465981 222345963 150401791 577473857 471355663 438027937 959806985 302262321 718122351 81779763 238970487 397652817 277670539 431065181 88437337 457530529 954588505 699134111 739163085 518392161 812372309 684661311 806394355 86749985 994637195 410430285 712439797 415989425 27875715 577215907 678169093 299876145 162153047 632056291 515947105 820696837 143696293 26047601 219036229 493673687 34353297 267907711 706424065 86516893 813410507 96452871 778216165 963676305 570980233 845668807 899087433 604100155 789887627 139354185 382686867 623255397 373671699 71293659 539982635 609414435 35178227 514754455 197365381 759195345 647897985 883975005 138447641 65679637 975132825 977528533 612866667 114686169 273272739 183915889 459909637 219509331 69306509 141970533 611772535 53698559 78820043 986817461 168421983 468351393 506451551 696700201 289587549 352299845 913475789 763969359 320632603 155231807 206429733 79457407 664920653 964710445 976830971 946026973 568480171 684760049 396226159 760968783 662332665 420238519 107074341 114729349 178848255 967502583 23124045 397298935 505353619 405875049 269096351 986470119 226679437 282946067 600559957 85997915 570392271 888188227 42140473 664124197 939700803 237306505 355253142 834826973 698920413 201882565 993238085 288506849 931738773 236719640 894015909 24357725 325589615 351631603 554705815 34596671 588085109 252021511 652252303 197934399 214269111 845559119 163637377 923787229 539425619 320642579 132556779 961532259 307280233 557911515 621206227 906243809 607947043 109396607 326200265 817520429 672272309 919095321 676744929 670103531 715916887 108277775 774257339 97463423 492908365 660725771 758616955 550254877 36148449 142499587 438765523 529997243 416179813 941066803 146057205 516204825 823080753 404112927 121193633 717017537 789089707 137873297 358153759 540354305 601900605 441463457 34014523 663463923 149439573 488967083 885791821 200547961 385870707 578238033 149603889 998814263 266887189 9150079 341517135 519619999 281378501 835669869 209234581 629407467 890789657 294052499 46274681 340244249 907735721 438013111 493267449 507023089 131686423 357758181 603971995 155231749 370295309 934805361 652636783 169370543 199306815 581573369 634691337 496651785 849926757 130257247 175174281 60615937 413144387 537829073 511848339 34115911 579667875 785235649 328251737 686501711 946035031 489109231 421202573 396997213 608118841 538251355 959717489 132831607 483128619 110588499 592692167 141522543 557926166 671380333 75696611 711427805 203702257 332811907 747612565 117631265 53957041 563419065 485077057 454252385 891814747 194262909 261761737 529658001 560081401 779790211 490040477 314428775 816809885 745120711 821260979 89801573 931087457 661699979 148144777 830655953 998635879 543514719 90100005 224574653 170211289 136879893 546596887 993597441 107886059 233131721 344746611 478011963 59596758 848510433 905207768 595282391 679143645 700069127 502716781 18491905 393049673 331922481 301844705 794612149 711215723 470746523 837857639 31085747 423824801 766477001 327391425 109295743 991527243 836718471 523928627 900514671 976987861 470635753 235609483 938233375 189021359 421540429 936482337 585451483 316857683 396488789 335102929 101868767 518016581 231088623 122752515 37145621 226684687 778112333 353936549 354113207 220449859 559048429 442203949 991692995 101159035 513073299 948887449 780600835 279091545 689205325 40510833 916626693 338423945 458567531 684065473 815995429 70441145 184468877 461229855 522490495 532350633 354950037 927154859 734595325 101416983 664212657 963305737 922570063 513754319 595533653 224234091 132695789 81519523 921887291 412734597 865619481 54969709 514125163 41617811 283395803 277173263 993153837 527405407 77443585 776633205 121739545 429652533 610860581 156256397 364257545 836976109 444697767 323612759 368001571 368255205 878553263 60064465 346979793 873469697 379264557 57246215 574252233 297911985 959745753 281618699 473900037 772452331 879660853 301053687 24378317 345529133 664854407 540087789 349834411 648961151 908007649 753384985 72059507 898947181 144798747 134366891 581748545 540841229 101585107 254261469 731137659 291331327 52891765 567101171 23828429 980273257 471881519 811559735 411539497 23303671 447865081 679249659 788638925 767118307 238463123 579563929 379928145 695333609 437119111 379751797 728008005 377537359 176426021 511966453 479887353 216481251 354080387 687341967 828541111 960563965 675971461 131595965 11294497 485574521 790919375 946678015 36847397 192168897 245691605 662609633 307073525 60236991 445317069 235129333 771899153 683423467 755397815 840011733 709295417 150903107 335391837 33809699 544440699 32080463 97976909 893169291 128122413 982795033 298410979 89709501 880615913 952969788 463678779 790466675 572627091 338102485 562732607 8393587 102285401 567840649 869818783 681610627 964305583 584138117 127495125 669462135 356134737 267370371 855225887 241775657 585066817 526916287 775651207 84693883 886361551 987088383 349070811 718884697 461152653 556833937 441038517 39691699 246429015 856806221 844563573 388751491 866952019 73426321 232314179 754409167 90073067 140266561 304132623 527016349 847011029 378014925 916672913 159264001 905313293 598796845 685566283 10892565 942327511 68885467 453962373 818783483 452159167 601845983 250268493 16030175 479273625 324520137 448267645 729824241 123156353 979795631 60741555 585340269 247847389 456322605 370913371 385162643 870860377 896549483 985103523 874273199 672061671 165799703 668102019 343323155 630046663 785143141 662180029 308899097 557368441 602864407 681564631 864497701 968771787 499123057 100816675 462522013 467063249 945885251 346937527 754894585 886520553 452689633 397614455 192336813 930596021 701688105 15755783 156226625 416113187 50321541 163970011 880136763 791618919 471123679 605712425 635684911 860778235 722383791 466846963 271617207 312311975 195524853 456624127 521328501 868161651 114470451 571661277 590113813 587076535 880951675 865668841 764695879 573705229 796775011 393248319 664580039 869550171 575426823 893045449 533765461 703277515 93877519 178628665 53504447 892001491 654186153 169560067 836497363 305019949 939425163 774644333 345300589 550325729 158021105 489559417 588966255 642327609 36408231 308455933 859467461 899906761 522386165 322981517 779905375 283690861 305485237 228508299 490636345 126014795 615841349 363456287 882687315 158776781 298650249 504365625 988204731 160745387 339375347 544474515 783259007 67480541 540144501 591360939 116312251 189827753 49854607 492052681 865925779 19335835 692176457 815981057 994659117 66334087 540273967 587715111 797523905 782798731 494414681 436880603 294230915 484402697 914832739 219118473 99331259 910864045 146396021 526190175 702022063 827577967 482263613 642186583 688404403 759334023 275858417 290537772 470414371 270732667 883695951 854687343 766902109 690121241 142290589 552558185 336648143 388474993 459214507 665535027 656637673 722144995 291897805 273519025 143899687 472429843 957577953 548656777 532828169 912932075 303887441 748347179 883218205 751819167 596270855 273250255 875792113 239062703 149599101 391960949 676742945 329866459 545340077 574982887 594212945 130805043 462906145 460755893 420029735 421552649 839176677 22103863 479938907 25038841 118121873 376865163 512828067 85724393 135256897 1481883 135419841 18621699 529554333 996917017 107814785 12444605 20617171 279800699 557594551 930833619 997176985 467034881 70754873 575423817 650840365 135102645 84626413 264106091 281826389 355265127 674191801 833939149 634448737 78322093 224051093 972769099 598476069 656214249 122972535 188848651 614855937 894188099 764646497 650764665 489395675 429257901 234970463 576827207 637504799 635173594 753667717 33533811 171910085 279138899 629608425 421163841 338252621 681173079 778444977 918907453 341974203 382189819 380006917 941836093 275077533 33943065 658531863 783034715 708941579 384489037 900999459 250183931 180619937 566110209 524698217 930718923 316819847 596787813 466369847 817610429 137945451 997891697 936773595 422168849 404971907 917071335 721387699 424645959 360990605 819651149 818504989 632373039 993097937 616030199 33226375 285780953 723319577 651136759 457043809 306754213 92313025 824596019 373177383 681462327 613337251 685791313 125842011 325335929 14591269 755151041 430064005 705994401 321964345 211073723 663626811 785482793 381666897 656120897 871515411 159188441 11237487 905984793 339461555 430088635 500946199 60706261 330410947 127938339 336934487 199847116 837707253 134053293 163537351 232708383 182011653 353618495 175065987 543274935 279112885 396356611 764273459 386154561 251022541 95400303 61928709 577135673 48047651 736464703 409858735 942654943 934093197 490754423 4193393 192918841 135120625 35231331 645653005 756022551 819760695 287154073 955762133 32247829 270081105 822882033 243053469 805196687 731533883 487092115 566303173 129389233 523933175 888457451 201646131 896911719 504193933 55461803 813634387 36625261 351957523 662532819 386997535 883402049 496450719 932278435 490977811 987488045 549054807 173255081 730188341 347537983 190431843 196054971 84703251 815535443 309911285 164670707 965517253 601458693 692773449 976647349 348333543 688361407 942490785 576287919 815639201 273446065 554417735 876404181 179844771 551377109 880647819 543467361 870813727 131511529 840490699 830174171 442433493 240401781 981379941 648505355 872344587 794128331 712484039 809292809 780226449 657155843 204219491 912503343 212183741 750285053 909369265 131044899 124569707 135752033 827690293 834884559 640727809 100409503 691479415 981807209 930858865 456303857 862098445 702178669 532613167 816027475 667812493 458338719 641827895 133303443 879674269 978517003 839343123 268355645 524071909 435585797 752008401 588881835 215682841 897030441 627198725 53001979 564391153 729388637 351878093 691522585 848535087 705741517 488047571 962514355 398607265 303885803 838297665 831388225 772513047 984503669 778741711 774748931 210800233 252862063 149110203 845011717 795638397 491717157 11095757 602821137 304601147 349488941 792061009 201521093 359390103 75216991 843441949 620990589 613508745 900615653 109728401 627582053 687065107 187939365 488046483 675134057 526691139 157088985 116900753 720919365 126146601 516886521 676323199 307734649 278320861 78987981 443355871 704613707 586009733 51214045 405843637 681053131 139804233 652674305 795031185 338101717 425609821 154849363 747534215 687937541 843358969 988810551 383075125 870728389 63033697 412669531 949811397 636646213 924643037 431386035 725617633 260225663 241032131 478235003 383691713 738888241 105602667 454660405 378429477 272255461 508386357 72046769 803086927 214359529 344639633 164986625 875791377 229023831 975981547 374810497 804209345 526639631 924775617 282952407 691689019 762245561 963792533 126282735 676536295 807748807 472910577 776514811 1323953 251636845 127337063 468623993 64079123 687982255 190825359 796396075 773771273 274089301 313687567 26828321 738210329 581057773 861062543 76615599 402677075 855632849 149025475 628255853 914268491 871389983 390703715 262168387 463416863 768411587 614741555 73034077 61957497 435592043 34412029 766029101 860496771 610903951 454047377 757494643 797528053 584041585 345956045 354507823 589093135 325451287 501645969 560636847 885735061 795246931 737136071 448399753 904194773 174862012 164040547 734294421 906770853 786580915 410143837 987717885 51602789 30987617 12599993 108117289 117498875 200026037 176513153 401234125 250936277 605398631 107711687 475501289 926620393 916279287 110336163 508066237 637794741 830544559 792320059 607681497 145209919 435528607 57497015 655778063 39882007 333949855 926543947 729870715 785965137 787478605 284585775 44860033 779623051 757151507 335160487 694001617 188767727 599969827 152088317 185742939 194660135 800089459 308868483 362266971 84994669 768568259 703875987 490127705 501337211 51179421 122151311 708038431 301973915 542363727 32602593 175642305 930018457 514256115 843705853 981777563 226492877 858569067 653106523 666365011 910105619 21271387 582126719 198473173 321350099 411195701 43613171 686651475 858798587 823298355 200916295 467711819 203537153 118578771 31814168 472700801 940160483 43845981 734650121 769716225 995555623 899619301 936108739 572908833 625155037 373162815 289083637 960018809 859483801 935309195 659191647 54320883 686452347 74386101 518449855 933591989 758273575 539115885 81988577 883593017 731043533 614288423 65069717 828393271 612089125 725076007 774366905 902997173 110555753 416917619 889017133 619488001 300869987 169033949 188091613 68337835 296007007 933966589 977865143 126538387 465260341 22776115 793969595 584098013 51661377 884769189 123246567 543224307 745994091 387075911 402543431 736825739 627278881 961836751 801662955 571987359 162242393 133596607 803678193 46665079 544429201 981175133 897489529 554961565 232325329 542666171 450319535 231644133 492987813 433945265 469879491 822174827 902707235 895563997 5793519 806468757 963460075 59319467 493971575 482191117 122236961 232798535 162013861 805647305 947482743 536689069 303886795 240803077 119051295 405852573 943856707 464745541 976309979 974315163 836087663 252137301 78873583 649288957 919469753 502001993 895910697 82582743 949767829 423863167 820495329 518044941 240976763 698886297 111002099 131953219 403789553 245019523 220512455 313141227 154728061 579373683 345594955 132771647 267817137 207800295 987354613 436057149 326435883 167928735 63678915 72450735 732591755 440107945 708047165 94133539 521816445 619946331 954349165 143731701 454608817 519912525 35680495 74765377 754332129 550999913 509285597 367503089 756518353 961695703 588736989 630806453 872345931 83703307 144200225 140724741 408258337 969978053 59699547 138595875 442097197 361982981 423084493 415436823 43192401 308172827 639799611 556316335 28703609 339797143 85680627 91853445 76205205 180799835 846025165 668217593 790612639 964649349 876312871 878040883 94911899 869550213 814182885 871280419 425555347 542195471 623569015 16298113 178393497 13621791 904013523 254870991 144191687 392903161 721373047 186329939 816366401 810523433 980528235 888391199 350649133 738931075 986721849 664054539 251086785 242013987 498975485 11473333 703131189 17778031 419428177 327360393 874496207 408567313 221011291 506904245 606824405 592770047 526718925 226327345 24791707 248396917 52233435 871472061 822205563 412773879 281538369 529147107 244842455 452409683 406536521 243902451 539225881 370397337 391581121 626462211 387925429 733630505 773342973 566146807 647251749 617253285 909978587 998211187 743781353 381733625 826002115 605358827 823260813 559321437 240001699 466732181 727119011 141956169 287020019 837155953 855398341 592503429 732873133 706209609 481789079 726492953 100182105 188987563 305336767 925015133 984391431 4892147 400671987 346037481 546810445 692408125 729135085 771233447 449450823 905608819 874449773 960856511 587744923 83479109 714922047 596802983 5590907 527152429 373860405 175121433 600634523 900190825 482882345 620755485 698158905 866158851 292196351 127083259 210569243 946534601 871352733 970911563 684719759 474647893 877704185 829384169 560495469 440145671 396731149 920899829 486892563 953559559 664571353 89159393 138197861 66509637 131089257 154760541 583549651 229661049 681829839 194636903 930882387 575452709 252122917 75464001 294074469 273602705 488237199 487963515 561625867 887724235 965730611 338108391 351192279 939763885 450157383 267387299 25620191 157246677 310126853 496359697 973139135 751009711 978413485 553377503 905349023 259410537 719338637 32925951 185920299 43890171 660355571 821036463 872956061 481839655 46911547 362956403 387232177 354642035 232961223 187659031 442408365 710797105 97266947 665253041 128393825 279530615 964085087 806391963 435389217 960185129 283309143 504449913 957893579 176510443 598371691 799431225 934266313 598686769 907840551 71046925 675387141 266216241 873550621 199411829 371964151 230456557 473488615 547735601 124712349 606829867 662437673 382707793 584538751 7911035 390934921 95741989 89002921 372179769 809625791 701994319 525372595 473969793 903228287 736064685 985312697 643396413 6512529 153377647 948268643 363371807 358863547 208380425 671435487 932246939 443148241 206322487 805675745 151006455 652295085 703793917 800235179 956234549 362405939 78249893 963672577 334567211 149573961 76623559 80247603 660302189 680085479 676313663 244164629 982157661 722845441 494664495 969485063 906697251 594257567 395724547 181138925 644862383 18238151 332303473 157841719 888439739 760001677 853763189 47951069 270353605 573081867 493997907 116222297 595096341 499012709 408612247 14932149 909909439 761141955 290942740 77717373 401716631 494938967 413844459 162108873 556666429 868145501 23524219 330582069 307227933 276107541 215590771 48430825 160541285 298613451 85634757 70313107 75490319 37690323 193575089 471032681 77191383 244274563 610893239 737544745 880623435 344551487 457500837 146051353 220970679 590904435 716966289 722056967 48993331 435535759 340844245 883035725 955616163 902459663 843490325 402143683 36767405 968686453 131820863 28770773 712448961 242512713 649855367 984430957 716555543 514538015 972697703 89429253 683487151 681431953 556159655 233897367 143409747 50586691 720579921 803065773 597330067 438570205 793736375 899074643 308403143 369432337 759321979 994720289 507882509 264772251 270607227 914917427 555992911 243629627 318934249 116131633 99435071 960774335 148390197 649950793 22757715 705607669 926557211 89763889 337865675 114737593 61214883 106876967 813414577 462016239 314641431 82873585 103682517 247598719 683456789 800980447 508277965 975588955 107906653 348065221 257084923 551021183 373935151 544849411 607486855 57912299 617730797 901204861 458338403 848947117 100216399 202402725 822486339 676134867 833220685 848128365 386096557 66949241 528019501 78270039 949982435 569621187 377806715 767912295 793033977 506870745 191581451 134705707 729375177 710434797 374233594 448637371 87499247 835800379 702284461 606918579 161228245 155453189 152132047 722062651 875414187 774446739 175970645 565724161 364543849 434227769 201786745 559347515 755238865 862501971 446668227 277686439 858341225 976440383 203380731 260181387 722787973 467702635 993382713 1146807 23494967 262677065 976761047 286621311 87079013 530657105 134466937 922814915 62723253 767316997 96652813 937449705 165930903 143207923 538853063 163416541 857956419 671605673 990902307 71451673 745422523 104359875 650300389 763168665 9486533 877877221 697293335 885279203 904554739 593718711 231134225 516562693 873457053 165652971 887946095 595801239 925539809 787134781 372821265 706693301 495241387 725882223 937403945 686693639 627190183 937097801 620935463 651677627 176590929 979442337 138372297 637570695 32512233 674525005 679351571 687737257 396357493 719106611 150089809 85860585 821568711 422027067 975456791 951253651 731405173 486234967 223487555 396966013 195405025 376158595 975458807 900156679 607745077 332862401 218475681 442282007 668380509 349414427 305284339 991534617 557746709 646344097 342941163 960401671 208604379 368782703 467617741 398771547 491997689 666587561 369897767 157714719 869016189 709705847 846048201 409972961 48517443 927701261 369401811 774523060 299571687 198644899 460811945 138463033 588148690 862451067 629096437 390720661 653088055 714733539 152385707 461261687 216394253 885356329 480310795 871800341 547582227 747467435 127735445 906166575 79061201 23223497 547808537 901489927 430374041 796309997 749095849 49284207 483698563 875366793 617692833 740477883 675751791 296554265 115708837 798072779 191832069 920748831 196232869 225582853 577352117 261011491 901067985 6911063 55817401 372506555 156851111 859616821 824898061 612314493 943644649 191709089 495409279 130141199 205836967 208141087 409002907 309278745 272139315 411172287 124322491 280420687 203937067 801052693 970586621 103178601 144223601 909516095 42970445 781089579 626933041 816690661 444871001 162061661 34464225 367435063 99857561 203563477 574847295 708123111 121405007 66333801 970174539 374735669 894770049 282294783 441354835 142695401 333724671 119389567 322954219 168845135 683761509 726645469 255377393 150278205 954326031 475282449 514914951 386934803 644528681 689240607 852865051 674439095 744987297 499652623 822667871 423979159 993560621 582323191 655056723 321322407 894423635 798741999 114997303 844652137 812909655 2033431 582476955 218163169 569841225 342639261 802812751 650489759 811619845 584501939 446794099 248662711 576563751 290190737 38261099 671589575 880548633 501227643 642907617 758795511 575721995 644709563 88765131 105083639 405295095 766205089 555155555 264847865 991569051 926690443 505005105 585372605 775092609 702533593 145058815 499504523 105024759 976010741 145951457 93668143 952612631 456900435 988650035 13771263 561229505 20550251 533585563 318127581 493448351 198530241 675245827 453105193 23231005 549024733 419309473 484692183 530411637 226980949 839610097 771266395 231298985 490192577 109996727 927899571 907442049 649830081 116293887 728684389 472013451 993982981 553527581 661366401 175318817 782515001 381490351 170823835 280329825 702318875 98411671 571812305 247659319 693725549 945104387 863609293 554199377 908313081 892077413 709329081 29956135 224582033 138828666 210562125 248034811 134183693 890908745 144123081 849911507 31175763 974976029 817616367 532376449 787240269 913026183 675302417 282344605 372820201 397175143 842176773 59729799 966906917 835196895 122609959 487378789 320695555 511130973 473563231 886703659 663030669 366996117 286252827 144464783 348654805 529028225 724538705 890715153 181332469 581395817 399470975 508350459 153294093 91701205 832512427 949980253 74175053 130745245 711540835 890360847 255877345 942620379 329074625 503897774 100431881 468375285 832162397 989557671 614044675 25759125 181545059 10817321 439828249 781858225 948255869 985503019 781718689 571325573 606924515 19715181 576197619 516374677 188814421 901198713 480612721 779255979 37597463 524637085 829228421 141581025 805449207 735198707 382077347 327579021 311267147 839963741 215677763 953600087 11530741 482488959 691740393 263445801 635886679 149851339 585952031 414897979 254242145 845280123 100156791 183009797 641301383 654115725 207549323 554309709 156563403 986867145 965183485 704869663 711640243 295557059 561043831 603376847 824823625 137851599 37660589 762618363 686000681 954140941 400840791 433436293 642586731 297838185 668767289 486228123 575481019 732757907 827955741 610772399 662247491 2807551 189685717 963181953 137421757 499262449 951941945 944033553 212885091 932547951 525107503 859262381 147366143 306150219 105240225 5237227 746260189 896492829 423042943 556373157 231927509 135573829 793847235 107812863 188451395 326922243 12654193 946972777 210640399 292106237 645638803 141666193 330974631 200444983 685369915 67927417 570748929 584553497 966796675 379587427 374887579 731600105 183422861 169854681 931393149 215185593 139674499 341675699 598901553 501193057 12995993 909109259 274253267 330018175 718161415 808001351 937516027 224502143 260514321 31649041 544590037 499751053 233257217 314099553 923453451 779670949 44985129 224418925 359339223 369770119 353147619 965570495 252852469 871261881 994871697 47699745 581780905 203185803 706967197 301382057 879739079 250108951 96696443 845754543 120575391 527850559 17425829 77950683 179644437 735593895 376697755 903283481 946246027 702944705 962065385 479776155 328122865 290183623 241204513 234300127 960762045 573009335 589429725 591667369 590694381 652675419 709332415 3705607 558606599 203646785 802067569 731374921 468120603 410860997 218359463 136879375 227361469 545305603 93627675 229746491 40712461 19519205 176370573 236292859 131284145 40458779 800681417 453040323 270571479 774527261 204976289 640987981 53022259 838597677 754033389 638562465 601563143 155960147 104752277 183516935 203125527 599437149 233429373 395502615 661113265 886605541 746526875 671031723 391766445 483013451 749445865 131484905 422588775 726423479 354442343 857426235 793044679 178766361 849044257 711075671 396483133 955077161 36229161 110426679 758009787 63692905 639405209 142472227 280232385 760307487 870499987 183807397 644680277 142481245 890001473 339179665 254942727 279771131 244172503 737581315 341114091 547288215 188140943 556192865 193512865 663857821 519280809 450859095 494997583 827065915 507494513 481749975 84335011 761800041 229991481 579870751 243650513 994782439 653140827 761381811 557594523 830656319 813768761 327726431 921855813 961695169 682856767 797630775 395348893 186341763 869284317 875397529 835223291 607194217 323207053 308352039 89799229 814573079 321055445 731830479 481867207 66410753 73109051 204136131 465965705 248991581 283337043 788382083 618630905 78829611 474705847 738619855 411204631 857848373 30364681 861130933 361831525 402216713 653401843 599791243 167619317 459663363 83619881 261134827 464110171 659108671 361283941 680385721 466023863 207934119 847315815 157762339 100541871 322112747 325759739 553979549 121781617 360145541 344507379 114963683 752694707 774461619 13768235 618697975 774516145 662935679 859825281 178943017 68187189 44504503 153001953 37387019 283026061 296506357 364825151 844459129 560169357 611858841 100645781 314960537 447125651 709642955 858901731 403508181 494594185 22484091 896377141 248007139 508377817 377386337 679152287 300089023 40587387 295549183 78082359 674290605 542870765 79068829 588902945 678480953 209876791 481190473 362494089 589409591 62974181 317103069 414746271 775497157 596973837 739234295 432772765 46199877 787934033 344156931 455769033 914578787 730842321 62646831 822883177 836185877 205402433 485380723 367653841 852682137 565253589 524379537 643358043 678426735 204336203 946696463 625716585 468184933 691028969 537136447 391358823 889724815 745499261 115502647 698591685 543075403 942675295 168650459 233787135 183214139 874639981 702697937 546108565 508920397 275724555 424110727 736460307 568409269 4527403 380438585 4575755 202800621 141066815 821513447 467804953 200689597 626662983 553206871 932987611 922699821 530299083 818215705 897536767 62570645 586907607 28071817 389021749 869474447 615529729 123665603 452946745 183495425 527971435 115927473 627889099 622854421 894676919 36597765 880889271 705275201 84010259 725970739 623171023 557845055 234780217 470765953 5275887 184476183 326258533 758907633 652308213 117102867 569833565 628870745 786810831 540422855 879950705 391276109 450943597 570269967 809226869 308090415 426196939 473042705 129419207 332203303 930138601 800151095 83318609 8642853 535926995 13870905 658360701 970697699 886237083 794919695 540564037 529114591 597695325 958773759 36998179 919035233 967643703 993896597 72767777 431403901 230637655 258787493 634236875 183651079 785670893 768774221 738794039 733301663 832996661 693740783 916705543 360642225 864874863 940981815 610103901 279423083 398508009 412413725 643420903 682365127 340235761 858774745 650559199 701946497 938973411 6451697 67802881 956395047 469278499 199502131 435202965 904240389 918075159 42912943 6596453 552943667 447386167 205993669 375033547 891469205 81285623 350528793 582452901 358484689 35832031 479456149 627820377 777943127 104651125 141210989 395523027 847433311 686601549 351668257 180685451 882317289 468391939 836220017 132659841 543693247 236351541 138547565 771653689 140896625 144141969 745342823 910078145 746406487 997295815 253225723 790870191 579857039 645137043 687877647 335556389 25815555 625001143 731990221 794124997 147167077 231608827 460640427 56882367 507291435 194642483 242845029 359854537 406137493 651636539 241439743 936271137 58685101 23945713 831449541 178682765 848061251 657704771 142109515 492515933 998915565 100031777 645019501 215475813 257819405 976394631 380373073 872528645 121139915 177185655 316203107 214336289 512452121 489274361 441283413 444497963 893140907 814067489 709682981 296483605 782463751 847512842 911759127 715751265 575474543 991910101 596912823 708438545 455959801 103550893 366760667 909444281 844978553 225494467 530936477 461957225 19957649 964954963 228085857 48120517 825977769 587639711 658066133 892469999 725086961 572588015 839649259 706195095 945605217 548723353 33066467 658086643 776615867 336806899 661797949 856401857 807612039 673803619 202972873 183947847 253170963 959766609 440789143 219642965 343727991 188014895 674928903 218589503 531000471 940782713 475366077 425437413 392994585 907711921 801551011 422746797 699571821 383957599 162806511 667793027 18459594 55389975 423469595 326765025 662350645 450210933 252778991 942890689 291313777 436357143 606734965 621882541 19761169 327497643 165926657 118888371 951625325 408006115 252803375 828442469 361711779 480993655 406797285 949572583 267462047 800675881 405410381 151417563 410123021 52596167 260571359 211636849 547983977 581576479 622868561 39635039 285665267 686674703 650451117 575096547 819078065 666562933 716439613 417866693 382908533 41284159 385213591 206399823 819756757 738561119 928969619 141309789 423327283 225975501 978414681 24393289 396738489 330536331 983979605 678126073 517163347 971048103 410339899 421920479 7977149 673657647 161978629 74444527 364285557 110691393 808444153 168003749 901302469 252225019 210767523 758967307 17109179 567275147 324521945 877371823 165206323 499920675 51919029 972760995 411028937 144738042 931291291 248551563 673191399 724258391 132028217 817664137 710627261 581318015 322354563 943017549 746928453 101732297 701844147 48781325 32950077 432372363 486000465 899214473 580726829 269492267 930890789 529716227 200758631 493502737 542088519 278771021 36544003 336197295 623406865 294720699 361898465 528777857 571611945 181621037 410609321 541400329 546528633 521675529 440117963 82671825 889786167 657499453 125913729 271286121 841846239 446908989 883463369 92309103 848448053 829417739 794634347 843348099 951062341 505567787 277567737 158736463 84143459 605021355 328473035 946456965 454766891 945805091 436154623 471674337 187645571 238888625 259567233 267636773 701624215 119696377 487170815 407910683 777909721 870622251 813146865 325793939 251297543 859166719 309022617 363623531 988458533 487150767 827430909 172906369 668168319 394488067 592196077 702566085 201234603 640723019 5585157 184577059 193333121 791775069 505232801 740324761 467955499 8262037 793179629 215031337 949963791 161293275 255218903 49551069 392332263 351095707 72506133 979611077 885389995 17399247 744341037 396778751 505431971 232401907 214579043 524455851 754825815 835480333 171588295 263102195 114878879 96388779 44705333 230519561 319973525 645868005 603409993 883638825 868395421 856738393 211583341 233051541 628823397 786996523 2319059 200017559 138556385 784930317 598931311 479870337 170129229 705631793 911445765 370718379 485909291 469583191 925817117 517078395 7575883 769786567 791387652 629044057 634470591 623605837 183191511 567559353 477123299 629321023 306776435 115824147 550613597 245186429 709544835 389808363 279819801 181461101 308861299 163857611 831286857 615248893 137449597 999181891 455391083 295056291 177292963 618130417 923288899 640231773 86211501 163007861 670882781 504802993 217080873 356039801 690723981 248413613 549742705 395804081 653100271 950997481 172810147 155720661 598418409 254361987 229144747 44934825 636653223 122143775 842989879 598237685 761187227 447931887 356849343 329057423 390888325 864701605 861055877 695246159 898309221 849060481 51809167 465672215 323603593 608938827 849183151 689001681 817901447 178244943 340396157 408465007 42833207 718026853 821987673 567465967 266931906 72646889 617389929 546775887 893022611 314972355 908765857 807666329 236741211 359621217 668776119 70765283 169231899 175723959 281977899 759275845 679965459 493908295 699536199 309422049 934514643 997507351 95163163 459433185 103346733 463374769 111572607 295755129 381033021 546725167 504775441 271104737 358623591 809500207 920630843 50082653 301391195 631486167 739145263 442757431 151452937 383818707 602737379 290478015 463480749 523604315 666871063 68473939 174464975 42421295 994256213 36484435 118795321 491947153 155333355 935441705 280735999 325743957 545564403 431669065 363616895 52660427 134151503 323445547 732786265 653584853 821458851 329806675 171541631 774117593 124594785 934771275 563097633 650183877 875595715 117180325 117657789 502443535 375712967 366487291 696531735 32904629 76824117 547573999 892830267 650528829 734312353 851620394 699811967 648338615 773706847 475522659 840174203 920727479 984264337 338292047 292592665 136335453 851783197 979620787 107477887 714289999 846775225 995194969 762252839 39338425 713233879 691277587 704360393 614025811 341840315 394470843 107712365 999859293 341513323 949374771 591155803 265198747 616032697 118355557 288854827 196447323 701674813 772184389 154050231 714900597 849484119 348640203 241512227 71051845 960508461 66932475 588115165 78414003 28759219 770998239 333029785 651776301 734153633 211733129 766934353 456004265 617233011 106729747 719348045 915912869 176381557 754567327 1201431 291701799 746992055 129219159 116476291 725326527 311565841 121433711 868394413 969396609 496914977 633962273 572585979 555257357 647933011 558588333 263195927 514570121 745571283 521070431 108012791 3513761 250052509 641542791 507864535 819708303 59741553 890261379 229923131 336389389 617694933 789632947 910222063 150605669 799210521 764624515 591199239 121891939 879630167 907945059 84268513 659777375 353003377 815612877 976268063 940805687 561777931 440179781 903994029 587986511 155372441 184554325 342582467 636592023 96083023 459285903 37861337 346521477 852495665 450785165 708490165 851515927 301176327 903474929 388895331 622159571 205280095 755571045 26264377 883285449 847200149 541921181 455017935 821670029 985289157 202632275 865408271 635281727 601459417 677455175 88207905 140809093 242555009 907540037 529149817 781144971 266179639 582745631 554769879 938112779 258296375 274531247 410276155 262005825 837144207 897198295 230687220 979499763 300093451 699350401 766019991 485750127 17332037 558951073 806878717 991743373 902605725 455998769 167376459 511412649 116990011 527545137 651995631 544305067 534961935 668638381 979419549 457307649 390492113 808923319 517341265 842193569 570178307 212658793 301840463 558822411 681307883 142352869 923912739 84465729 196225179 103604055 962498465 396779477 976506091 749106671 62970597 607395035 693930361 406874855 566303573 72106995 608323505 641079939 325779099 678693699 89228225 586641677 229796783 99007353 151679393 399896022 618046409 752099529 176451089 451638843 306947439 501915125 530107291 438410397 720200045 310810433 7000975 927811939 283940823 952586619 492225795 158272003 552367371 109965051 498084827 699771383 266854571 745386655 158352315 412578751 764163237 657792715 718369047 738016743 595298859 85251183 681889829 552069633 798953659 332739073 679080421 980180903 50757403 288446591 821494049 104337787 968414803 406807665 778231143 313688105 467202235 349165283 503564307 238328161 605364973 700261483 384832321 549303517 136166093 471541801 341360347 752067427 451987593 258078403 236556177 153029049 622276501 901399399 658480605 192031667 465901995 529283273 330518269 908191019 606142931 719338027 159510011 354593539 803184983 172315729 825758885 603012135 467355337 540847243 308768405 323937927 3257099 523114413 522966571 205611037 396204091 668450581 284231567 775005167 506174667 102486443 485748657 543744771 363927659 732830431 293945163 74902893 773738777 875855779 601313241 55440711 626856983 91667319 596035241 419939763 996457204 130352483 245077959 387711965 62548103 441358579 106575629 237985269 312393701 255082813 402627865 971436599 26911095 98019297 657130583 277428707 869217257 707758085 611482613 928366149 443154221 946788695 728106219 291867055 161153 533088013 387982587 737830011 755199081 822594275 215034795 4779021 727361969 371977765 37998413 249297355 812574831 261681307 523355639 757196843 322793469 917219743 272752269 24271783 888830207 501889807 473501621 122492863 533142627 243112527 289572061 551153153 915885147 613747023 218113345 997620987 569744231 313273223 399515361 916752201 904926535 552641265 904825219 617074317 966465035 281208087 953651127 447079027 601356549 262767621 823927769 213681579 324962769 861681489 162430213 735934193 446826835 556483355 451650597 944572933 301846201 363347209 861193451 408230067 917842551 650604361 953639117 607254991 320215881 882727825 335118347 627743791 459812659 549698079 630784685 55812023 20574335 27073209 933953415 70680147 657889477 200968111 989473069 774657779 347550689 817701589 629892353 755035795 69569269 420991625 923197995 349023539 105433965 868094133 110357147 53028065 984357375 32286147 575601675 645445291 865135015 235287467 631695609 127723949 903358633 109663469 818642349 241365513 819349905 760973709 196860219 734280683 359047731 562226713 968403063 673978499 722491053 174673575 883284225 595920141 645683809 301668823 86207045 885641163 782757117 117942223 958800497 894908165 507877747 834638653 269758847 102115343 589918979 344784983 161001005 703583811 209271341 834807771 468407555 851813893 803011519 397060623 279564115 72916925 8285135 568204739 304155187 658790109 94586551 339661643 88573319 400556257 475295259 628921223 542735093 767829577 614787561 419195611 333837549 966327201 169601877 5837881 256191911 740782717 404386265 787402259 827374627 738972787 773674045 242635115 415029547 285860391 123357579 548383427 721956943 493965381 240422933 38687023 125739239 154780287 896272509 912029503 733457681 327405707 482141857 70828565 582087863 644217649 588633267 433970777 201014923 918074679 855253539 748821299 4642051 396093555 451348141 604143455 934395743 105909947 272001881 162625049 44311721 46979315 866222961 420861481 121880241 353755143 770225545 368467161 294052109 659496937 106803839 568508165 941298207 334404751 136129141 123311621 919328271 140968193 338853847 202203845 495226319 286882373 956822109 414439087 251551253 201716337 214989823 165433533 582549089 537969051 151908355 56771689 573772283 634919145 479681525 807558845 175312631 702139265 6296233 451243845 146277673 698488219 337154365 438782233 187853107 7135597 17383443 171855319 596816765 101588025 354236377 683415203 961448759 433421645 999127683 641639213 587187545 115947255 592213067 662689963 357339557 24015251 271127737 916768987 185536419 633375877 557199765 361707779 144698273 413918005 489003511 723670771 289375671 151456789 678694713 10758655 714626249 362896801 266362879 290784263 334630269 739372379 197508919 938385009 645665603 47021771 860220693 742024489 552251731 142691463 491535893 251319209 566402991 990357797 659741691 392630251 351498781 879894091 37768401 31175033 357401391 698076065 37071855 930472031 544551741 155060185 819105009 835765301 113046885 386300847 740858041 916008729 890369683 59209445 571411059 768559279 816943219 505783107 19782293 569790247 333456515 555456925 731478491 742358583 404850941 74426063 829316681 531092509 194286573 813862585 764885035 703274143 53974051 746837829 472943893 580682765 421059125 59050853 620805349 403693629 23128453 75591189 103351997 84491657 429779773 385713495 798729739 62531549 787078985 428609843 748510593 415762853 52052837 917378239 402354205 398672085 75777039 249682705 393578021 105193455 390306193 985065551 730987553 19171063 727829753 614918817 320141799 318649467 551187235 551472953 916294037 749668499 82524587 818571603 478464655 76868573 548793851 948948273 260158591 511651453 803439171 398074139 205890649 659191587 539862141 436877927 213884765 93897221 394905959 163895403 246767115 870307809 753990025 482131341 394190131 84973823 303123511 549781045 719661799 544189483 5282435 553312215 57339267 77906363 576986195 26732523 501148845 97106063 931589453 261929715 83441743 77361421 307911137 601939837 601229215 58914849 86069833 497171735 315258393 838393413 711029635 228249439 886954623 376092277 199857239 743582453 312581089 740505399 333720151 969413251 365331601 901083033 42173147 783884219 919425325 996596275 461720065 232782425 774064535 963323427 392833973 714149151 688799739 336791053 611595429 493649111 919635919 666361633 832430921 451234129 474926289 618501653 609184995 356296299 693813761 210471465 55625849 223393029 463084205 848277535 570051547 144524809 491620201 626985289 679725733 205367657 71004947 315602043 727422771 224330529 866685901 379511063 386884529 61780531 191524869 440612349 100418317 376606633 504286573 718702753 882814463 122064787 160983045 284356599 322496007 639100943 539369229 353315709 815165551 871539261 762164757 892763193 101732677 483611975 819271149 814734777 52041829 337795425 29230005 859227413 355361899 991675075 959457233 486534123 900290497 889536177 866066667 479722335 432593817 214409331 301810937 779035937 567629031 857976415 179230261 957992553 635421551 957660875 418596391 509917937 481735865 983325981 157507225 810215937 91350291 917790909 12191903 930084201 649514647 5199391 527732629 482951295 31097895 601163707 76108833 642445087 409335399 831513877 397996845 919441073 313969865 203080119 755205359 419541795 982746245 532417585 143421411 508964843 805078941 135283489 749520845 342929157 700878297 497055271 348791481 524677629 767335879 694458093 712578043 51920603 149356481 58541607 743117105 109476665 411101925 873621645 526855485 284136757 504066591 412991971 508650317 848702579 803056925 123030515 548776915 194737443 353342297 588097421 474301837 715421949 724814095 902830991 562738815 388857403 194032715 111825881 107441399 542463655 78188509 212239957 709479557 512625805 952128605 953153015 352745737 240771523 796426539 886810551 949680037 517509803 875075949 850047897 577104327 145780007 780862743 241793959 969248291 321619877 253134303 458036977 79848883 839142943 524950599 320457877 952147135 568401169 229192341 640316083 719003087 954588289 926707161 654985077 543658683 288039679 143936239 340884495 731104669 688606367 227254131 84123065 465208795 819457537 677207247 593992375 106038559 115566409 261946165 403891539 925199967 954531113 449702555 571417311 975259863 65894867 877065153 89656499 344916747 91785223 467598129 671328565 802449863 932721165 512676921 806512847 825011999 404611761 123336693 889792239 337202031 303853643 329524289 106653973 476635741 786814391 417808071 888741311 940561363 473305437 74247159 305354105 784517897 333493803 692573195 481169875 581495 860549783 284087297 919529579 622610403 81798559 662464673 505595361 842051417 402000329 85620607 175124191 116713517 963600933 591885807 411996441 411377405 807328583 576413715 863618121 596527019 730774095 428003795 746403631 966391397 925519841 633545695 42742421 423961757 61201711 708283567 830660689 42682899 87754987 805803397 526411835 439357895 6687319 346893671 507673397 866860807 165199927 341711911 86748201 546097769 716045785 332563805 87406859 912583367 171400723 908667241 103211989 203611207 233918535 813326961 834265479 999958867 422214999 381045097 688393515 138027935 110650035 958338825 783779543 92422443 876531537 926840525 380081827 364062009 914215598 861324801 901044145 823802707 538153939 343458485 942007597 975351377 425614413 810457281 289969989 835255629 88083761 282626243 411616313 101110957 954631199 435360039 548906823 783060765 177998909 7060249 188016059 787933839 850841399 194973077 868994535 836634945 991341637 193566811 964593189 159409845 166169895 901631217 11555286 406016187 571565345 365844391 296427623 103801959 266718209 579396249 140119625 826907409 90324767 551769251 546748917 16293729 555027543 908791919 726329071 824760387 494019345 319754607 297800385 380868585 7101755 529755351 890921981 805676753 367962187 963696299 572688189 91897535 628118081 28051123 180012067 295162817 647265951 588829565 890317915 318922535 695955831 844359525 84877461 304042129 673293405 86155655 374889867 33745121 134466929 535746253 824525569 887448389 398257241 28636903 101187265 547702321 324035393 908010319 472769437 953362527 361922531 289335873 218053743 863153623 697374841 81615819 718183193 651119329 970272973 751572665 896800135 297289493 368746285 957602725 955534505 440649293 753433963 940514799 175195513 808371119 49029099 803281599 791502843 46888101 939906703 574134277 934814777 144212453 246555591 807410041 569890629 857849963 416045449 89593245 690944569 429445241 273727571 944365751 80827191 664935071 305754157 695187417 903488107 818197679 833916323 421255131 820475141 32832711 658087115 478476891 868010047 88162375 52452421 867603141 952190009 208402657 367150647 779421511 36954539 536873349 14880589 211951065 151159159 359703409 799403457 822741307 195941149 100820265 374323791 64232439 649628927 935820153 689230141 278175069 208717191 180849271 37255513 12546181 733096489 140505723 399534843 126696781 736357471 375538477 887539455 58475359 590636201 487494777 312199631 360306989 853397907 395114899 992738389 363885805 882116783 731765237 101903113 168307615 82211223 353700965 665092841 766025229 727482093 437180913 124375677 247018437 883677533 20981481 686491345 387500067 383675031 358184941 310021755 420313411 676228695 52984543 628052635 177539343 653901661 345207279 700594647 468608055 955252341 366976651 483077469 803977013 767183217 619718261 607477729 310261575 120291371 628414637 137123493 17672567 762617221 461567107 964497005 823776659 21329003 187209865 228174471 125709109 407094477 418408859 116617163 447311549 527321767 331831263 317434263 810805843 952027897 640017855 444840143 821210343 863346895 251305713 658256611 674199859 972622395 559645041 956490443 307567283 879522647 111661187 336474113 628504245 160889671 156441011 897768847 375721797 684055345 107539413 628744449 843509821 645735243 612274695 929062253 263995451 713193423 738867883 392042611 965622699 244367357 143138925 152749369 532653499 369181473 823153987 64218989 839336803 798364557 349743979 857577027 619617381 338695069 384300645 592208253 497860679 101967535 411885055 271472223 211154267 695199281 105899341 492120249 770564025 965796499 303366061 310732255 720177215 464432719 994594243 469615025 847460249 400253163 749193335 423949715 553952563 998355949 907447299 8949109 578656841 240650217 708593887 111912653 524987611 380974969 524395219 154939291 22483119 289242177 692844519 995891041 9280041 496338407 816855923 783526449 690078249 891974433 889135377 229094305 632403783 994520233 41566631 143405517 31699097 410738241 961388127 545290333 757355473 489413041 21500847 609267071 27197541 506472397 214829137 585377001 266931349 794413935 365132365 344412889 374361705 179094139 929847789 217125141 52654261 250356951 86056645 483678699 767556621 683219321 150912689 377066803 670635475 75827547 900674263 510325579 723670831 668456575 294109859 988304919 293824017 269317869 690934983 950327305 248270899 691937721 757183553 271984915 303428115 179066877 895227733 59840439 579400699 948949469 339198607 693429751 860880633 585129855 911612867 743763557 492258279 624513051 89645839 599820055 102093925 665593061 329470933 132900521 80188889 639824933 36496321 756931395 556049015 261913121 412765131 267980179 405385271 419338285 802890539 365467599 612346327 106281893 800384103 496327861 544869343 544551143 343822413 967584907 835231649 938841185 554539245 251300897 402283573 958020995 604634279 689465803 126282617 930263497 31277343 971450473 857679129 736964019 154588223 131121247 409401731 162441167 217464123 60956317 122186991 726395307 799525267 163035035 408796765 604589795 792279049 265344595 498156183 333466139 764360103 552202575 441329965 85522427 243027653 802101659 757558647 890446389 728171517 293338575 519418771 763903109 439154997 692847367 575817069 997700011 528231063 966357483 783160241 138432629 897512345 445297577 7208155 271290033 961924087 628362999 964027433 321119291 599253173 30699283 952729765 397616119 180205855 601652419 107917855 255312589 860770761 309404503 606935085 895970991 85245839 493552035 51681585 629653401 628534935 182354695 725466963 566733963 638093645 868417641 190671237 621860499 106055011 752809269 122262141 421977535 53966039 274267237 242323899 815566891 546582253 839004019 748877959 37041403 100399923 639989097 847941365 594606423 879306873 732559315 109235929 743810417 637664223 889124297 887622869 449931141 849907143 176322279 920268625 918263509 35778783 711037525 202197373 870210729 614691097 726710209 236943953 782679381 34786997 654275169 386041231 342560053 415498035 757775347 569552063 715631015 3204707 399809471 325851183 435170329 920701269 567644561 519902201 200057085 274533225 905286847 196222203 127313609 830426435 619145001 886430689 786381573 332453325 71883827 132897817 188902711 15002941 20668879 788431579 782753781 73769999 68443503 437208105 276407253 205454853 553586453 969942985 492584061 468720943 681847365 817336909 512931221 257850079 728836365 642819085 426137039 545219761 112718597 170470951 625768935 549735819 839465033 855676807 716423071 44647575 139195011 468361179 914475711 134238797 484831709 654505627 62482973 604699493 811795983 811395591 232111247 512557027 659780439 444096041 527948283 787310105 634909563 766259153 128638537 785101717 883257547 308368277 950013035 151303221 471464731 717880535 70312797 307476255 755612875 981054657 675676449 174945215 167954881 1815359 53987263 697678537 934219371 354710029 741368909 328701239 902116541 376934313 101141985 850746703 157121337 954043485 314011297 983756701 372336611 176424759 824920245 562862583 897293129 172942099 26364751 358074487 816214915 709024653 438374315 441870465 501038893 862436879 786724875 248815043 828499569 417554121 288400569 83853617 242835449 872460725 696354053 851418629 938522621 980348305 440922701 520749767 608952635 976218341 952768239 893882943 613802491 525244677 908808537 513720453 229566215 516683013 594854141 346670067 661805243 139603141 450344787 377031727 983467505 963568113 55649503 414707491 690155281 970767095 315509289 988150789 166289671 295510545 518580423 135181905 997077069 26903101 302382159 962277067 823702495 41750083 435514727 900387967 92667459 387830709 48342711 840520641 996426887 336458731 712608243 277883181 358884163 717634307 368510163 149628073 295195539 84226280 826085403 979555425 739438625 579560523 698443923 365701063 543473175 769725345 19681297 766170265 492374061 54241325 58744939 422012891 88944545 822042357 410833031 237533401 766624059 91218377 193997133 821018153 957875271 569617477 611900592 411089059 508662683 304804037 931901611 639072881 394876055 909824373 777672255 290724857 216520225 654530371 672001653 976604405 167383463 889151719 933355875 15829341 770652191 42683361 502443807 514924153 594365701 58933115 333404879 798397905 854148451 446030275 476008347 864977469 528823495 889602197 511686071 128892119 578622021 667576973 871692123 21886467 878793083 692679701 451525578 670418031 863177619 373664863 440382031 469523983 510456887 259041375 137237821 558149919 282917023 590847961 525054189 614738211 235560587 80538709 713478337 760137189 628168509 762562593 746751011 951211645 127769735 319570265 697257861 537531975 807782335 753739481 286238565 142591971 310706881 472003403 766319423 676676163 955078389 397438495 142297763 164906903 412511817 635521677 915165729 602500701 456452145 855051415 584220753 922958937 297321647 231857669 875816153 148991895 219306311 322126181 346397537 322818411 148896265 134686992 250441885 10937201 722107017 285617191 568668997 348903567 14216935 614464403 943547165 870851057 533782727 926456067 280377839 670386185 238122073 611249649 642456717 529566615 589543765 242560153 561335759 890357915 637372917 79078151 96458139 527925091 209476099 902614539 836326361 415625093 418310091 480532541 808679293 879735003 918916387 287015165 189864831 371216521 662042219 124557169 527411171 366043645 238956425 556364685 836021427 942399465 303350507 332079367 874332929 834036557 93893255 464581729 290843109 16630377 228954843 502418913 484299141 720411085 308597229 979597463 333627915 190673739 726836813 962971487 556430501 406458623 824538639 126552021 766753427 828183119 449210835 85749603 326033939 974514917 228836797 245119547 276685167 93510583 473313917 693084755 10994173 531583487 755105355 218354283 378752789 369527877 425898465 989040397 377286425 717106003 415497097 504060807 496684659 416379197 117555215 936060149 603431063 445318241 576365003 724025651 105612541 777477727 541634969 249248747 111660585 648557865 752123361 797881741 23562917 322360815 139687313 116717139 840411651 210006063 960037663 388993339 568026075 517068973 484121993 185040141 563535059 171565685 265385301 330683741 658719637 338777053 47689618 962910591 467501519 926002557 451775703 452154773 539723073 550097727 578912833 197638023 734826665 454064457 669541493 624288773 28606675 690864405 226208933 609010055 98846607 88520795 594537859 872286543 558887889 376284195 256971345 721058915 57464631 447621557 869808593 366480021 331008495 763611561 485112151 472724861 790566097 363706585 259676595 6069115 643061213 990479209 553169993 911667381 42706449 894793159 245653499 833487903 178941561 365696423 868823609 696517745 795498279 877871365 250592249 517105447 412887603 893254947 166833337 701011341 221498563 651693457 254503295 380789171 989627393 387933473 851202011 3513201 303830557 483638511 730261217 103206245 308516177 702988641 273584689 853437435 802248416 215548193 151015663 270691935 37805591 784465445 649258701 271637389 903802693 886935209 15609085 908149061 584510661 374226481 930602305 369798413 42644473 341515401 151522013 541120309 197838411 639941317 479211423 87199193 301554223 650594371 944824031 443179989 909924383 879847845 592917113 425622995 118967195 303443927 542312405 965038405 887988271 807710481 5807329 91130719 334142061 466742219 829310227 176688165 925848813 15903691 251120745 433332063 892329815 671152925 783513195 835053469 672122703 534236439 503785253 401959733 977129355 813152083 567628845 847868745 742150851 29106357 532497315 622616257 763231931 524666475 914770219 181208397 110019389 154433767 538319607 342160999 276568347 806431977 450758329 745032269 278419247 823486065 182556851 742198023 694528347 56314319 817944745 406013287 305149835 817175701 40929001 720594949 789286575 553306783 903933259 20326465 582025665 362374929 129702445 119107 664373447 74967385 603520371 340615931 99078087 44616235 886290829 649408801 212676563 765362307 978280049 586503223 619844105 554041509 961663132 75085443 425273483 160587037 221911577 584418583 501171071 415073727 148943727 598575819 163050523 402453671 332814523 876790589 568616857 631251771 62501015 47001049 189658169 923991845 326250795 554507469 33046087 93904733 54940963 210842641 280303893 229762331 796292281 382092901 555765245 23518437 213485735 100847699 619434849 921725319 444430135 973058859 989880748 720260885 664606007 685165061 790555217 357441005 796347643 602066623 144106183 46863793 766290273 834317059 8409491 698467407 122985681 910914883 915946303 436720889 134521915 885287861 802147677 16256301 751437329 556265817 703305095 260114865 53757779 722627833 214019681 715630477 113352329 499332131 850272913 335759129 286732477 781478963 20463053 490013935 998335115 786603845 134132175 455830259 318762765 777029955 249239383 186340691 118657771 660067037 499989809 113241475 15374161 289033357 141870383 986270013 83458809 566171537 963948331 661547401 691736351 650054899 420712969 685137329 66142345 811270785 677328559 174558281 4419717 90118101 376925971 331200045 298412523 368288079 189996847 690070401 338597913 363481367 606416387 807775413 644882419 992748573 276562075 617635705 445884137 922564379 5533961 261091275 110818289 298423693 107960167 537397487 314450059 722281153 110911705 942271087 446580153 87532739 313298565 673371429 606624525 763747693 961942179 810365479 308793245 919260509 86267239 671351773 47185157 366343423 296139799 121414387 511124077 632764289 478723071 627946331 750553473 946594779 63608685 937374035 90155899 356187087 265413821 997020255 641334295 672098019 538521937 337225293 806953627 924833129 43629717 860897837 430978263 265537331 242790137 881847135 236716063 829957105 124705529 12382341 118226513 233439613 622062101 204999309 286138583 746965385 493422041 235527083 576419739 740840785 223168727 27700825 631659541 776531157 711566251 632596061 174242373 736409051 703904755 331893701 704318381 228388595 672922973 463124451 755875423 87423609 65408153 170547795 683034609 644129161 461996641 441933305 641818239 697598733 642352763 381553155 460685745 327718583 503021229 422751973 829271477 597825533 371643339 501799259 989679167 268428063 618207919 556782441 814458257 962078757 148975933 807124825 611657585 197877731 145987933 781443779 537237545 489544941 149254657 251767683 414931347 144353957 952982563 94394555 851423757 68059699 536037833 108594135 187238779 82731401 406104825 142709645 723455055 372031067 928297671 454288089 739305595 389260589 407884879 364163583 124758143 436466247 949363119 957342091 474977891 889160375 404768021 485531475 10597043 370998103 153140145 984375663 84053895 835911111 39085759 314836807 38866299 999106413 967564927 996891783 113084599 967264381 581632317 237104161 465917929 315295471 208044621 614085973 533402439 342628737 936402181 360821923 722252175 83792571 659248585 8307417 884791559 769084399 141949701 793963021 910229119 264546357 201100841 402550937 97757771 832223083 270969009 209776673 851035465 682943805 976800031 287490195 791308259 213774361 719369211 408382755 737169155 164381751 181146329 385627981 552001315 456469143 467106645 196175315 312375101 542848515 992877069 800204741 142693851 639068683 115267503 647917941 238167049 122966023 355283435 668127615 759358559 539688981 867346557 823140295 235005945 989234209 100458533 181113469 261721471 655018711 291466673 382895889 534103583 546995891 730346735 346223937 109590671 458091763 191153083 849414671 273647629 85991585 642868985 705473739 453046111 578887053 991491473 639624711 864160725 330681165 751954293 702014113 119173699 691980867 857704609 434856635 865524233 23736983 712218647 276912321 525111819 553628475 795970271 176485995 91153851 209173733 218653453 778680753 451311627 65003797 785696445 274278873 458458237 56662291 848136461 763551343 379417621 688256755 842726699 925742663 195275873 208929417 796873543 567691391 203378297 715190391 440155037 85396347 848767993 722212133 847678831 728025571 830710281 83106243 746031621 407390641 564333655 731948361 24868277 156610333 184277529 418727289 761201365 526197679 618156301 127031259 53415627 347420975 715694203 734148797 637574909 117530293 976810029 563069595 330543075 149946779 545359743 4371757 804468723 200077445 451444297 218027589 360702127 844245603 991659511 630729455 395785125 959846243 701105269 176602211 474120035 398653959 471784759 134777507 159452295 53353489 507220031 857257845 438906031 368882059 193804561 60195179 48970633 163213773 300541883 868233949 281847751 722141299 504951765 524909801 851792927 598097503 912115579 304395387 328032345 895641277 283504213 736815425 477387837 249676803 185772689 734169779 513213083 83542765 673740261 678353681 443483215 476136319 14888593 831394917 55258429 95729669 573861975 903499647 845926733 208916499 24820617 375244533 264457075 492388743 682297339 111038505 175578279 958945667 72656397 983973445 778735339 265106805 498449829 496153397 607209037 635725839 997812527 350488757 689361883 933280335 682464933 223285059 722257587 729349755 929792643 417604905 268861171 13235995 842409167 897879413 869189321 211667461 274221079 715542275 850527079 671266647 541706867 317606255 291664901 562074741 38948991 740069411 198231269 572559113 473838691 90216783 915303509 697495559 87766735 81354477 796300707 140907695 292873717 887016379 292910125 649746305 153814165 794723393 973030483 427434829 982872821 654898131 555538047 566234661 59703269 200083845 948068899 858327141 839346107 347692855 819279547 201655219 671634771 655088789 255610569 737995769 88281875 236796941 558280407 593239149 736811501 173712857 633985141 850673291 577442901 361482999 955804993 788621077 763190599 70088239 583180249 752618779 861384525 950783763 472362219 823574767 108767093 651141883 242469417 509597487 677360723 814883845 962406219 228746173 857832709 735078429 378194197 143968965 497561653 512220145 670238287 681387967 590263053 657036281 573361359 816297571 756833861 316802423 844213357 499790775 556237595 248863601 191660041 273404679 420238423 48026553 881125009 885625575 232552773 178956261 585910263 335254069 918626491 400640089 268667443 71934227 690354201 375862585 910890569 840236015 971982405 992013689 546021697 866593405 148813997 145231311 636642097 942633143 595061317 890556859 562514993 490977763 121365647 851425415 918763361 647363983 704417423 409854017 592514033 910537355 929699285 733863621 16772621 283867639 194446709 537006255 951913971 484712503 701144845 915657321 618453221 846051317 682156487 571884837 801264173 611018535 52436301 638897111 93089307 573027847 61009111 905590339 473255693 924726813 945498659 119794161 79616099 792730419 120440953 32992047 490741639 243243101 381655973 801608217 981237485 373892855 965589247 332453259 621867277 312266151 299934307 666153007 976505195 454232919 46723897 909111157 337499023 462374461 210641261 485126805 936417807 531428565 121613433 16390545 235138435 196972771 944608345 698285105 44666253 190960243 226669715 242593027 238952407 856397529 26414903 436952160 211985171 56078259 173258201 906898793 183706111 59425763 46842007 941471495 482764375 93262999 17694491 304215273 679058923 361685569 816135055 772713097 713786763 388656031 433504683 835620387 664065041 767709877 408213935 739637701 316194141 76938705 671578973 184665145 860762975 132091523 404966663 459429917 997997315 485147307 868977283 127404751 322449737 258550635 831591981 299243893 977306669 592190513 517658605 40370179 410629567 824525233 265970737 869833775 992040207 235148517 738175727 544792187 87358263 21787157 721836197 574502701 511431769 521619915 203096409 899398485 937075359 903888857 242739611 474908111 176848189 401614943 674529151 759428663 597476715 307729601 977412515 42010615 786859885 72857769 446731313 456106305 364406157 876992269 264694739 379065867 525348635 248848169 582862531 387450133 614518133 359012737 493491643 276725993 445985531 639070945 268225285 917261013 350648343 876676957 779310957 152680437 640728125 54893393 253057867 426692133 40499941 757323875 818265979 105473295 331615379 612818045 48347749 385020195 705708497 949510871 245055223 277056155 843191857 4539625 54362535 529354357 123905869 103150969 761527155 804391289 445680583 200919443 420397281 929171771 969178697 330053515 717291263 437172495 631233671 773572095 798247015 932025623 869258809 768228561 252865073 802141499 60413987 730509359 406725897 170354731 420861711 216604545 143310873 28316255 687360719 703973541 401386523 154535705 992654653 903563389 4509769 646444383 584864571 975065187 521080685 532339971 779737011 158237927 462544595 515274653 635255449 99406057 647014739 304953229 83368933 170344589 443645001 458300155 830374043 515477053 261891229 939901653 373572549 73342893 37197757 463683545 990691701 375864029 217606303 254064513 652199877 605041935 429514433 900471065 535734231 338002381 305914155 483460273 624301269 483079663 384609639 536641057 547213555 128637585 585810065 674195463 171989097 157948947 359616577 708426959 898429563 56308007 468862883 863715749 933515379 878023613 181560419 326157189 462037155 344008211 674142133 921288239 509222245 416241067 859384155 180530985 844915739 753349205 607403161 852491971 672842801 802423589 583589693 891671833 918658581 952383347 345816221 405632263 766023239 180347879 274380955 931202359 921018949 97523053 901281945 740554011 910078875 605987895 368808071 58980839 988003035 609278147 723698651 650968993 61873823 823812821 152685203 177303563 135617161 995192955 950292535 194513851 429107267 786000133 854100177 141807365 698391169 222127123 478980605 132699403 67389437 197055623 551229397 173912757 938710647 779935119 10013695 201362867 731722683 174949279 482177709 100194175 164579483 125820785 860609425 226581079 858997745 186854669 1476333 31452227 722858911 237642427 343996549 647151125 403770767 632011283 721518759 669299301 272067765 688635631 131616043 385757330 231861771 137293941 479808109 700277703 964588433 658518031 688499287 528926193 211905363 357999219 227091795 101869257 751330915 633166493 797415769 376174289 116797915 413935823 638699751 778053199 854790109 44964249 557396995 39165525 209711763 493006541 583676733 765398459 412315441 405587593 581780650 754155039 325896433 705941549 40129769 204063469 296714771 57687403 261624349 481413203 366577379 770797875 433136889 83956809 892377267 455198915 264075185 440638351 99287261 356587679 988776193 477713071 630417859 393970579 793781555 59297529 915480017 903884213 808599317 148458373 578659959 630353245 572687609 803034673 292495663 463094323 811540931 814290087 998949503 995778595 228441045 869779801 490758380 73898081 977340958 195255421 670000141 330138215 663451927 442644243 844298617 954522363 225252797 740563429 398817235 593627435 843899539 695356033 221021639 76099911 307350699 927368259 68598021 579281391 990790299 205269319 776366407 899374855 876551551 182315383 662642513 306231481 562573309 42666371 135698415 536932985 56025927 974824421 807104751 547273735 762958865 360793563 692788781 322724451 697227161 999858287 596407435 636167389 790139045 560954223 379994357 355793927 750153346 944925301 355801947 914513597 26235403 739608033 299779511 937608485 497480859 546056155 277316877 961857961 476027159 903990611 453928041 691056639 916165359 383200515 678205913 531687971 457614617 149470823 136591737 253395289 532184341 552713421 98847339 838299949 351502309 756715073 687029211 298966643 688229147 872935069 971831801 871060041 604801485 83963519 348050687 944868113 791328662 425433171 704038451 948992887 527676321 128485191 299936475 236919667 959418263 596505683 94117707 448294205 311942323 495360825 636933085 315095131 789604529 375436671 866392053 830460569 755601623 996937079 669405944 860245773 363753203 526345017 515615071 45225231 56946269 690040227 105208225 384780617 958079219 280426849 81806655 538421921 578992153 167240159 682788293 993583441 761809857 495043673 563336647 405733841 985263965 415185103 271225819 683412457 162328813 305859847 854709669 71491489 146012153 209590161 143161041 234852945 247785613 646808265 582473231 989876115 17937473 368401355 560562203 993490509 944409393 941062017 605197493 872096681 710609669 543693725 776423337 665790493 848153065 777982357 14353865 312585827 632006551 521700777 493457905 271119491 414590027 786366435 972661759 93075143 502469579 462911249 6748129 110635715 101509735 168615373 794689671 322554963 919156211 594250615 471555821 557608605 110409423 129008951 350208275 872198925 798118111 811860223 804314373 906470485 312827027 902066819 368574935 110502771 845515747 333113927 231104671 818276523 910421833 384873619 382984577 538072201 659245775 816684661 515291817 589599969 235766017 649432263 84249415 691648977 577578487 530916137 533599383 531254459 906228813 849291521 769252057 428953421 661835819 29177477 148295771 372333689 752979519 506951079 863729771 738874237 70412477 39522091 522886757 822317279 551245927 291713431 787019949 854184295 314837379 929150525 155588521 668012843 970305243 999637045 156686033 915516553 136307913 76197213 202216345 773953829 877447211 457520993 289818761 630266601 717916007 135963311 672525351 994597641 390636393 502766975 334218761 430340357 617821865 570080977 626845637 187961759 555565607 589330287 688894463 259989473 29253223 236122857 770617187 889462307 163569783 71838870 298365857 46298367 715547375 54554263 491088501 359600731 909679339 472832725 427755681 288189537 181461267 638258173 25119981 397331591 923676309 415890059 135620397 415132809 443493415 448937917 910273341 408586091 196482823 506915485 829106171 732953209 296967675 68266747 2499157 84395079 922344019 567958637 580012603 69739441 522725091 25459541 363935657 902164189 357462795 537553373 296437665 847982135 56279471 377146097 9431851 576123249 369542209 727792973 105350235 803510409 635472819 146821743 305475917 914523843 781461895 471958943 307111199 441881517 480943297 72463089 499236607 864395287 102296815 852031545 172585759 391116065 900593961 496675353 816096695 374926125 797457163 859236089 340995593 456308969 658572733 991676937 334913377 806941767 407621869 328377921 678200851 993626503 624263121 53580643 159651957 94767657 881372121 495663863 857904109 336029693 386027829 597558603 216079843 580755475 5581515 725620345 871379657 992437707 62556221 807919967 964797723 647070665 127205739 987445929 645641819 490364151 746511291 378425285 32695313 87695755 708339993 216693739 715333329 174025217 966082815 109057309 891613495 776938011 754982249 502896417 892376801 387410409 16120283 276286089 643353981 567470781 123625065 400286125 911458237 598686771 97348261 347158443 67468377 991385393 777489069 318172527 159304467 15044323 802563113 413847719 402271161 721383867 559961927 463749835 658981145 308505719 265591229 7948315 521977361 546345755 520603081 748613793 992931967 80486387 102378803 88665389 727886929 581290643 934144071 514360917 333860473 376753367 733604059 36253563 66377199 203872743 411297103 892591049 392817333 162330409 746089865 494294827 309583577 931496791 567699957 652910941 954388841 600341865 929907853 939133149 538994051 58142117 660436427 476538869 828199751 743969431 914613689 247309749 130074847 775352853 912406757 855021299 557901181 80586809 756730721 363487569 605709917 408812135 858672081 137696311 843737025 867745869 743233623 597905877 582050801 165882591 467298723 623677989 12596291 788683095 489352683 572387813 928295437 214788669 654136815 586872733 834545589 370125403 648790001 770308257 724081571 288978371 999524035 943020037 169492299 79742679 993392313 490161065 784425509 977413941 172406451 505395513 134611635 840911053 880348951 15653155 356629379 180340947 725612755 960284577 311802915 609761475 243011675 494327729 479802417 969613153 707170993 615543835 270604877 78240697 115790937 362632305 428888353 269507103 524220515 757772299 883308127 474408239 67035489 594651399 706029507 745959631 743992951 576780625 656830991 992239403 242362439 982082967 287171597 371727285 424719873 986762321 432454541 795931691 217613405 318638273 427608173 612733329 866149013 99421677 13269901 802259763 122007921 273441191 14891991 492218791 990812737 900858757 839700797 255616967 793676763 588259819 580005307 323432887 621419419 568666365 668844115 142282213 719646825 606430127 899400719 43541507 483446705 46429367 326426367 5070351 286424685 450742677 145862977 166672719 911222297 627868563 807156725 613546315 797127611 677932223 304968773 776283867 159761121 769453813 167963235 108737305 225751203 158545617 899798669 118627433 381984927 195615933 721863679 409260923 663377401 124306923 741028873 967990333 649048675 535232335 261731579 609620721 364348687 486355629 639801645 250168601 758850493 6995853 592399877 121085055 884343733 540671549 694524139 269934139 926026435 713803481 84061779 143420841 549230653 26018877 537336501 27717481 410930691 170453779 166023573 607762541 72345467 797804235 264289405 851646181 200216211 621426333 504782333 757659471 727777985 149107851 40670899 555128175 836567555 691155037 186160191 363089233 396869087 898915489 238964811 837174857 761485411 336295857 312306571 228898803 838262055 907021485 841445559 653285175 504896073 916548219 65714579 767052091 201000303 838455503 346956263 268411001 448236229 249678113 143356041 491553705 792714755 87114669 425481809 500441297 865687913 438599809 897855265 776048701 801468089 487945319 825173219 515912067 511946821 731166716 673602699 431356541 309011427 160284321 968592657 620102223 581703151 853191033 137782905 288408679 144277585 995801209 237253837 412610937 999806839 60816215 755918621 146790527 741022551 781361812 426416263 106951615 344526447 620347513 230868267 47173575 123310789 151805459 77872435 192100457 77563111 134621247 727040979 702055872 8912109 382124477 273877059 473582901 221435253 612574347 286926535 875628655 945197733 560805959 30574505 196766309 380828457 75359683 99910715 132871251 489578809 961447359 586287061 364720827 973491605 537191109 58474205 344651885 67127937 120950307 242777533 737296251 183971019 240742133 78863843 413238339 426347209 615850263 690859727 769269351 686870877 724959795 530956031 321460179 560520937 634735801 686691069 798590909 895178331 823263459 18179679 712080289 507558957 5373359 878453437 394548291 675787611 330545637 406001849 438566063 55787629 691455257 293917949 345042235 600185453 966090399 113547069 104374401 952714229 386891417 714615601 916170341 836351011 412652271 18558877 315476755 998471581 913542225 157899083 392998403 200299919 467638583 156504589 708964077 314033331 924134115 825172413 228313305 563353154 5999195 656886077 620501263 449979145 722583921 762561911 237266983 409296465 553843645 282564703 761995003 590636275 79162271 658933229 500342703 901079115 458050879 105190693 745131185 133762881 714492811 53403409 369489333 666421058 254184769 182452163 180646071 896348999 551512539 903922517 267855609 89231051 304995493 32330985 7343627 456009429 147293103 907803561 910291647 237526261 825552081 685727689 324581425 865255999 702096553 549876099 116179655 350674003 976534435 588098071 630158635 277362263 421905131 88922321 729407315 511951863 716251005 310094849 54890363 637993069 669373721 327992325 896611623 251502963 971518789 859739709 387698723 126453843 57609297 335492117 742700419 744846555 550736985 799252989 719262885 355590237 177261113 215163503 249800747 820212925 963937947 674643183 135307521 158447453 595117809 770387719 869159775 602007085 523170415 120851785 461766589 675484323 536998683 122304591 268994529 704720573 799745719 792942523 137599959 997705217 447455193 797917497 888521461 464171135 234354389 18825591 10867925 73128907 940611277 943635765 242007643 603995653 330647721 966929457 953971893 285063891 180128281 284628023 264022613 914303587 183989911 828771865 581708795 537913449 26653793 533990577 130251175 737543975 982070655 939034081 396539305 490414177 696928451 82099605 288250259 219670629 337537733 906186939 827599169 663577355 939748581 389627987 860137431 373479599 708512843 509691995 420338371 647682873 602500839 323773663 282374329 409098007 198303857 788950769 264616117 962101825 722658155 137452971 148462331 311870257 698490395 579045167 652676119 917052399 995441043 240627625 910605789 900574987 136476843 452024393 446819945 765254297 547712769 8264265 591517985 622842169 764225537 823124973 955396015 939153681 46169048 622226815 728795403 492071631 689455745 774864465 341316717 134126759 386565305 676093885 561442907 558991195 802392331 573177895 189115297 313506607 25180871 440785397 903371859 774934257 870857989 773563549 616618703 221997305 147161507 901704601 396428471 144669221 437386315 774802793 876584441 656276697 745526639 963948697 968951751 66262533 533396293 885688507 641570719 372812831 247262925 206541673 980297799 111295527 150504145 15200069 399755975 734964895 55526111 372247291 505540983 445415577 264980051 927341115 6471921 821500073 526530377 695517887 288990489 574046191 573571499 130139469 335209501 783160593 677307945 441031339 613399409 864170301 533617981 433767085 293483727 622541609 25963045 81084205 67335487 398356497 369135082 865751309 965322251 697646271 435474525 159468345 537693127 133825153 433947925 705325985 700083535 557306923 134600307 980888639 942160073 139631899 782459039 692782617 865769119 540856891 919843465 406757941 990155911 230328053 520774379 693151399 504401021 55402561 564951873 61769609 967835077 326322077 93747417 184621565 337917931 196289041 298193343 918235951 334340547 375695657 526531021 640499023 758752361 96902651 584224161 46384793 868829251 462934055 879863719 47879757 301393405 108993747 236486413 166215607 481704329 694766509 155825867 75391785 968774949 484436971 994172579 581237501 778851925 635492683 295893531 937013911 218668775 843381523 775050629 297158493 904694251 174028049 371921657 310681031 660871873 474860701 329010005 976376393 673992203 30097813 167091525 971832427 207453367 599581533 643976245 461163443 514309369 951405541 230616417 119435445 80212811 267400357 489867977 920084491 20148595 670976919 141960755 726266711 380927359 889663045 936386607 124595269 245835457 225686715 178945817 213332357 185872085 199069327 86594573 2864083 220783775 174063073 792521717 154474223 93474637 315241559 606888067 328464039 506931539 834671135 979613485 75358665 197751661 57769199 439038002 994365233 694173087 958415109 700047775 136711361 159965747 651677735 889827903 132139621 21114051 866033317 766730925 472533773 925134629 116836435 324294217 67302837 888670849 22695823 941470267 398829661 507208769 384361539 295346805 924488979 231444763 149031129 272918187 196763365 128153611 739516745 560833377 74690799 516517717 64125971 189461215 527884629 14970757 30944570 279980083 418667069 424090737 661085519 524238903 181978333 616051249 920018021 573037195 718063215 659037741 13640479 816945301 765408053 678587921 288684447 218780811 564657527 748612817 942085779 557103711 583944329 293651879 87741493 570569429 894304197 825266969 72301377 296840307 390324111 786415091 714327549 863084683 614897231 818658891 695938873 365548597 611508599 800907387 8110409 575251791 144697987 136268839 591166733 809309573 479388659 371549501 929617641 675555653 228154965 440469233 976490447 496567495 243964215 72653503 613952049 289069323 125932085 592423273 516568337 207507675 855357427 712419839 391594227 461966278 948539671 461394131 735771877 555596071 639599449 781888641 396531581 85066521 916622447 552880877 459812317 488199049 975498523 369209927 75368615 784742691 97914921 855915519 992770315 405775459 756964205 868956627 136317373 618214535 142172349 202474693 873134081 397936793 933405951 964523557 104641687 767873129 507384601 121475205 954459343 292780941 322646275 600538819 670978947 206343271 563013811 8751361 593653771 631480097 646416683 713779115 944886099 256327335 342848375 712974969 330098887 681506229 65991595 970972515 945526107 81441737 180809181 355366831 494473361 139545643 593507635 140387561 528319851 214971119 745527509 574962663 605058941 873356777 255145205 362780609 952062935 947618235 125597135 447012065 980467741 547667661 687581859 785568749 349484401 854131279 149231807 234909407 850462595 973885753 389457009 222040559 354835849 427504461 75961879 82179237 934654785 252887571 91111695 595594953 418186225 964178905 784736455 862856051 118438761 217685177 348976559 88480765 390510333 934936465 717456451 203926795 157671565 603551501 764256261 19249549 633510271 734867099 575238781 791496625 138210751 187477875 594871361 398169593 74153159 49227671 33535463 240157223 488913041 797339341 957223189 703147079 7933607 835788711 813110131 584415149 865029399 570333821 854934963 594504693 564726131 328656493 105059473 904331781 37824991 328468579 125693391 473378055 716551165 701065229 818549557 964899697 126859261 605004515 491242393 650281983 252375957 332085029 332243409 199663285 521100547 348061917 467790275 933978079 512259087 944726235 895039319 158229777 821410563 909726133 361045887 895939625 262545339 617625293 777437495 460742729 387331217 160962381 985653377 489414367 824994155 49610017 151335781 381976733 245300923 277413381 780695801 612594817 101870707 69940855 87895123 165364945 955057941 605235393 21825945 819090453 433026213 271307763 229159667 154704933 53665201 276450531 604100499 760424217 240658513 523045171 257962677 441238107 256936227 881780299 33698459 138619283 582435915 717100123 62227855 760836533 664669817 425996125 961894625 809600001 118558691 442725903 86086127 796908791 198912839 480874745 239006487 79158631 649055981 368802671 279774919 443538787 73316769 383867525 737332337 87396167 105779641 445848093 595643789 476506297 154918421 543414749 435768991 621637027 914198299 516474427 216287791 1696059 428601273 194319721 481730515 81119997 837173347 665388139 985789729 818431403 136006683 957574663 452272319 667117653 675861861 553363919 114375509 31789389 221267279 96162075 734899351 271389489 933366385 898119689 153246269 546388451 816238057 891050117 487071497 684379023 844277339 110303037 778083785 633225645 536177399 910526633 319055947 515957749 662369395 552490507 772107885 87575405 323691535 855638121 451713295 294894433 783792269 650754453 565187867 148087909 232842559 17862437 545968771 994360151 630268667 731440509 50386245 970835033 833106717 801585345 890165341 20619225 642992781 281789925 623834843 94438795 332509367 886580639 935418063 336106857 83134613 717932399 289475153 549675705 530776995 892778655 417361031 480783625 997443303 266730813 675146905 940887337 191463919 702532389 110222011 977960505 763444179 169407731 972738853 172791453 658232881 398182161 931507995 454669055 731503661 957152945 482490853 620341589 193667959 904737991 289944537 413423579 753408839 700243225 604918607 312800787 675117399 729646889 504293287 662213581 235776753 103503181 442467409 412932635 216323041 254340505 403485625 943683673 31060861 273085167 773913181 791784237 223340965 334406647 347350975 356023169 909910975 122913313 218405225 144770443 126373817 323191973 768989165 270441415 669106441 703149445 271014371 451308537 524977581 990368905 156252913 134668333 469426475 891468863 683594431 79458231 242209681 763936001 501437953 18337333 981871223 106079727 254534511 75017865 391646203 40444911 547599565 861198305 565159361 201101493 892849125 335784623 21774331 864155577 641209223 499401649 904059995 298752311 9722001 795226347 584167713 277946685 558197475 536242347 480877077 854528149 558741607 284372097 719236995 649695709 166972945 271184973 346496835 570005619 674628313 482366769 177471409 950005117 116832451 547814043 972680373 817690863 75922905 776014655 106278077 219949695 358999851 372316185 781017533 438342319 493860311 780234091 343292471 814857157 31258621 341233093 93185585 681869009 87153607 264618743 813897781 28209839 441463913 11853091 667311709 27827963 912641819 955729831 939286855 803772705 546755617 908603443 19800855 326659405 467878853 872412603 206494847 178848635 351334233 829731707 697077169 98337385 332553271 557618679 485460335 368961697 317472961 720735227 849707003 612456305 517763425 930655643 706524199 369190901 114635659 127402291 359479369 700022793 767832759 234812009 928052029 546700119 263891817 382219561 316353899 576298063 992886827 223382181 86478273 474302251 824754317 411367003 872568501 117253353 472766509 285335823 868172613 743474771 519486891 503538125 871914487 538483959 649522611 287541993 33703387 510121007 543899123 727035137 449290117 718187035 48762923 198781431 671287829 490756771 785037593 359941113 204635697 495649911 818371977 299570811 11745817 898731023 578186571 384695095 428659017 734075565 532441149 626054451 588327485 281644887 909831999 495874493 259839653 590307807 899559741 106961253 813948367 870969309 965442597 233907979 48276115 192473521 365318135 147674323 340311117 104652163 415340465 655783207 864878565 821654593 418654303 371695547 388038857 292566185 174834193 544800399 115147247 985037877 444276965 990904037 302759125 709549105 10447867 623425095 159888001 637912749 12487807 729136525 723182211 106088321 333767329 445929427 258480111 192898379 579952795 237793657 504321125 754470007 852097969 723198257 902204683 922696241 376140589 298901739 833293197 48796533 813345121 4310757 758083365 160653827 459253927 426496163 115497869 619685729 408869985 631893999 15536143 84953567 81248249 962036707 368096887 32382873 690905571 228669909 387135517 487163755 656949399 770026605 569936605 693461503 144044443 883827351 362608161 588125383 124389491 339984517 740989907 52919543 51362231 902876341 968248683 113891989 658747903 736042221 938360551 550877539 609681645 936439605 264245709 784187383 235330093 886304483 590876205 19996837 68333679 128705429 845022619 552978575 203154029 158825517 523231799 174468253 223734763 306205145 50548647 420653183 667963059 58351885 773260311 936203695 619451799 605041795 318528833 967604331 697729905 659835971 895842655 926231739 521089571 434954389 548996667 759211889 699890585 503178001 446081059 157590821 894466755 412440465 197229803 396334391 610696859 437783867 357223153 718113487 997611301 983226745 814293533 75989981 185673835 896137473 974363869 714028057 689399167 523316943 851435815 650772485 688670587 85862181 227441531 121880039 576623233 626856083 324823003 398295761 736146109 227882219 161584345 977779099 157781343 511632971 22345865 242364387 842986913 318995477 269159819 384005909 899475913 391165429 543824389 486533471 992683037 188504801 556272803 663455929 152429553 714063893 107625375 686389219 674492063 108536853 13122997 862318439 439856265 604111277 451172651 358998677 30105113 241076979 357702863 909843077 263539395 162520639 726112505 213801237 212556289 79457081 495063175 621953007 19720787 239068621 715614173 738256261 481510469 365083951 107259883 28739085 456350057 679479513 953106215 509558919 601963353 240553873 174173327 702225341 77904057 753048677 146131115 390212925 901431855 809291685 567940743 574901859 516598129 520846321 6501561 882018123 463528505 59731757 204518497 112898527 296936775 903604611 941304357 196752593 884062567 248698983 467861299 227616405 222420587 335271321 878004799 353907823 442713645 871414811 528278155 230768999 275112847 424808247 580906715 378376011 345378685 527032197 326453887 890050485 769026023 100026847 669492811 417042181 339467465 280991339 39628189 36226403 709521699 531284371 842981725 824317375 224692737 862689549 319403771 559830739 84621173 602644693 22957417 419941405 860229017 269280303 502938663 601627365 906627473 745608359 325460029 387658045 8440963 438032657 180199223 430695165 762207397 498088587 295108651 716479683 148213809 923478903 208986297 955000059 718573159 793882753 110449671 583503571 888979 381950369 99131331 342012227 244145417 825208079 278692131 750291469 908749855 879831633 408696291 960579255 63103289 727386419 958052175 606758291 11256259 427105483 907179311 219254969 435808301 955009649 561786077 886029063 547879667 613051599 853675063 892234025 5129621 448927437 806771361 236569227 175498143 71032991 590857739 226330729 90522019 450451141 291332589 800339139 320328251 736949503 841899585 263847263 782541067 909359963 25493649 949788365 954385337 831024431 397811433 264353641 138213629 588249621 601762015 379569231 731745675 178928371 573280403 264334953 205636907 235825395 166106027 308843369 837212579 652163211 317323349 434795205 956178375 408373367 913918535 432728253 44944496 601907385 909727167 35301211 887563141 148980129 641529475 272428909 881916649 59332801 980738785 628806541 505226644 792198133 815963825 357042971 304633981 344272995 853378641 669050175 440081321 46487415 578677671 996626923 407040287 435262435 73607967 268938451 605894643 771873957 330088625 926405243 585766207 197193729 371744989 25132843 3796775 141750403 604981669 643200497 26925011 677669375 758566813 90554791 962192501 162167955 762089685 288837613 709164617 857855905 648791535 378717227 86620047 510805207 280157457 902487697 784172179 296100647 596998377 563149591 593352359 813918671 406184877 812351615 80110375 600889685 725111323 356923726 880405617 862717569 231343225 8849625 574118643 777292139 811932055 420647477 232683549 255707242 105066441 199189313 638723435 8667947 122609647 467749801 228373855 888877971 334507117 870858715 302055041 297723609 371535925 274811919 439051877 100857975 613978041 213123397 136033445 432289589 256643067 207408201 216553445 297173019 128019837 417417893 956068557 737829761 61908305 714563511 359142159 624159233 27899917 472408475 937048679 68231553 158032077 317050429 158697365 174121515 223945273 745308745 567860071 204313461 469953407 958723643 776865707 988898075 164626261 288719185 430925373 377946145 327203577 52070037 702650369 691111379 548693811 911698903 655906783 848089797 799787853 488199341 341458889 416080851 812118561 218026361 450503099 921818915 749701901 28932197 190722741 637806881 613645047 864603229 217598405 45376383 502827851 585306653 263483129 515574331 320377603 444452131 158235245 185371289 454782361 785096887 6484805 232842791 156515351 312115949 753952937 476750261 676017161 209260953 829777611 797779555 876834951 364456285 925535207 712607891 425167661 644095649 218982207 860754163 819070757 887139477 283146779 651578741 556033559 215097393 344136911 826581593 927430975 677401911 509460919 689525023 338560603 626326831 604474417 752680855 538134701 61977191 538492843 465096913 720496647 276647161 391284887 835129903 70866365 524583875 153525101 193614927 762748335 5779825 609404847 967221793 111521089 169515889 489983211 694390233 837396069 178819323 611277231 179952115 370025613 695683089 956955799 666698289 920015291 460235897 378820935 965250723 969018739 99844293 835146599 839447707 541511619 368959821 62309801 539308981 991968835 640198959 497344201 691538135 516521231 536547670 663297673 469818669 216479185 979944307 532947121 745577257 654196403 270393083 60816919 120714121 460915053 832856111 807333777 741735505 940567101 482562329 86010117 387322829 565619433 163942025 476054619 407860113 315905985 753499413 618125957 902255995 547430553 168160287 914458751 926882477 95023057 132563153 545619019 279222419 897553743 557132055 763839475 535879141 410876289 598283949 951249031 543196571 277964891 649563665 85373731 600417787 640820831 149429645 418258923 573208465 601461137 214410289 488540423 637361715 170007679 236760275 993383851 815878139 414011201 652524821 347034895 690367053 33038453 38905439 189151093 791338199 287010367 514726625 138457899 642712717 833576271 876153493 269887359 320054953 931997147 536405049 445037519 977138611 527321249 563648597 238806651 150972533 440275945 819054141 166281709 732138241 246004863 631319813 138834839 308467641 969436857 742893711 383178485 991775291 800800631 217176193 722329737 277843575 97923871 837820241 582735067 590954913 82320029 876192049 801091969 122329397 134027883 884418853 875630609 168898551 562312069 196656627 442404657 377516275 910217841 324311341 126305673 5182589 366407229 318243883 127214285 640764209 40662401 336275211 286063797 945470197 637643611 918314937 344178181 731100661 464191087 658296035 30152069 621100451 842110445 220214017 553345803 967130045 495806603 640642901 541404781 960603463 482149767 810527461 364451473 383897997 966750633 542613891 631444575 70074661 618054205 743214789 237149131 433918185 556968473 104024847 25187533 70762237 911086237 369893509 302907497 487022543 754668207 263383067 219030439 717741841 106388925 590743687 267671709 649605315 924097213 866686793 799255393 989316133 555908909 371830187 278731545 332400837 479052819 271043515 985981165 823653241 757141245 239258965 47877905 736314203 497406723 54936853 308510141 7831247 478928835 440196965 928743989 298056325 442422369 877027703 888726467 638936683 759537293 294039615 953162935 70706883 590717821 34856835 846404463 262501647 822455537 335502533 547115339 632614681 472564267 889202267 348622773 164465657 376250109 981142105 166432543 821922059 824069309 811787169 380500999 405903599 188155207 575915227 643543019 345914007 608219651 542806391 846283349 606037555 195530975 970736813 466815451 657994817 758862671 658143871 468737811 929331845 40972117 905510581 367695267 564921611 73284725 60749789 910000949 688003879 144569023 179885649 549542007 783790199 979417543 785447729 665302567 130579933 949593517 744621923 954452487 376932997 249968149 12863643 524489185 389411559 175826223 28090961 539576967 433080251 303912627 882821825 939772625 248160007 377260251 110501369 193845925 738824471 301091185 668149443 2119149 743804289 296384705 228194237 151248279 686109727 88911521 899771461 825097889 452736533 944244595 633675649 202317069 932952785 926023961 960437093 147945189 182039303 666159105 131587495 635464507 664752049 237258277 651130569 176934697 710651159 324139521 803253009 352467151 747445697 427114395 434639759 577463901 91519879 693558659 541259039 66178815 145657475 9996749 555711325 22448117 614353435 648853785 272124341 996420477 466474489 556040075 829631571 560483809 594856211 793848789 86415155 375628407 824602277 607049769 794318099 52716695 629317425 938520903 499218557 993964707 543628167 782119287 179555007 229848837 107763129 251641733 65823477 585989937 564313125 563972553 677667067 111214751 737243245 312486687 78976123 992128467 762569853 44071407 308266469 130027351 586703755 244405031 170294131 980491965 250428691 803874109 994365987 488577951 208308697 390904111 263271615 339591839 895251179 946950019 990180053 112830055 412052121 954148681 209590207 312513195 82291075 393946389 357029789 554221859 230985611 841395719 797527639 74346643 383653087 776037571 148411037 169840581 754019057 239032443 993861351 443418251 431472511 422341089 35812471 368087740 833587087 692969527 466909779 21294401 302176873 811307583 378542157 939461889 984162469 147005261 679899133 36454893 936299805 687220785 218215875 727770111 680567797 876693583 301388231 318045243 831067547 767372425 344883449 660507563 828745155 552185935 983241745 190995553 182189673 633037975 848818319 130381431 833068239 756557023 249871805 170271503 900795525 1303597 809991595 128339 68471389 942687249 913578033 46361975 337458547 164915103 862141421 339742643 951820333 248953463 317925707 970759499 250179893 378632637 232058743 179778441 247305857 99210531 920746349 208502463 748857421 106492891 241583341 842084679 556800541 561449383 992917885 634190979 651219389 880998347 752426861 814610909 243107905 37437461 705625305 590343625 467592967 92675549 893606045 362330305 944377521 854925055 238190435 51250757 271392299 921414371 898589341 438651873 591276461 881594231 148158335 338329639 170127279 525834801 532108815 872110001 687877111 815448849 850862095 699099169 681132177 489436057 865337877 488570145 474040019 131355099 79252085 626115941 815418967 239283563 311427665 259105189 2624513 201625705 136834705 633618343 436838655 437226619 903386341 799031089 802645443 6648781 957688007 57756949 737344781 439341593
LLLRRLRLRLLLRLLRRLRLRLRLLLLLLRRLLLRLLRLLRRLLLRRLLLLRRLLLRLRLLLLRLLRRRRLLLLLLRRRRRLRLRRLRRRLRLRRRLLRRRLRLLLRRLLLRRRLLLLRRRRLLLLLLRRRLRRRRLRRLLLLRLRRLRRLLLLLLRRLLLLRLRRRLRLLRRRRRLLLLLRRRRRLLRRLLRRLRRLLRRRLLRRLRRRLLLLRRRLLRRRLRLLRRLLLRLLRRRRRLRRLRLLRLRLRRLRLLLLLLRLRRLLRRLRLRLRLLLRRLLLRRRRRRLLRRLRLRRLRRRRLLRRRRLRRLLLLRRRLLLLRLRRLRRLRRLLLRLRLLLLRRRLLRRLRRLLRLRLLRRLRLRRLLLRRLRRLRLLRLLRLRRRRRRRRLRRLRLLRLRLLLLLRLRRRRLRLRLRRRRRLRRLRLLRRLRRRLLLLRRLRLRLLRRRLRLLLLLRLRLRLRLLRLRRLRRLLRLLLRLLRLLLRLRLLRLRLRLLRRRRLLRRLRRLLLLRLRRLLLLLRLRRRLRRRLRLLLRRRRRLRRRRRLLRRLRLRRRLRRLRLRRLLLRRLRRRLLLRRRLRLLRLRRLLRLRLRLLRRRLRRLRLRLLLRLRLLLRLLRRRRLLLLLLLRRRLRLRRLRRLRLRRLRRRRLRLRLLRRLRRLLRLRRLLLRRRRLRRLLLLRRRLLLLLLLRLLRLRRLRLRLRLLLLLLLLRRLLLRLLRLLLLRRLRRLLRLLLLRRLLRRRLLLRRLRRLLRLLRLLLLRRLLRRRLRRLLRLLLLRLLLLLLRLLRLLLLRRLLLRRRLLRRRLLLLLLLRRLRRLRRLRLLRRLRRRRRLLRLRRLLLRRLLLLLLRLLRLLRLRRLLLRRRRLLLRRLRLLLLRRRRLRRRRRLRRLLLLLRRRRLLLRRRRRLRRRLRRLLLLLLRLLRLRRRRRRLRLLLRRLRRRLRRLRRRLRLRLRRLLLLRLLLRRRRLRLLLRLRLRRRRRLRLRRRRLRRLLLRLLRRRRLRLLRRLRRLLRRRLRRLRRRLLRLLLRLLRLLRRRRRRRRLLLRLLLRLLRRRRLRRLLLLRLRLLRRLLRLRLLRRLLLRRRRRLLRRLLLLRRRLLRRRLLRRRRLLLLRLRLRRLRLLRLRRLRLRRLRLRRLLRLLLRRLRRLLRLRRLRLRLRLRRRLLRRLRRLRRLLRRRRRRRLLRLLLLLLLRLRLRLRRLLRRLLRLRRRLLLLLLRLRRLRLLRRLLLLLLLRRRLLRLRRLRRLRLRRLRRRLLLLRLLLLLLRRRRLLLRLRRLRRLLRRLRLLRRRRRLRLLLLRLRLLRLRRLRLRRRRRLRLRRRLLRRLRRLRLLRLLRRLRLRRLRRRLRRRLLRRLLLLRLLRLRLRLLLRLRRRLLRLLRRRRRRRRLRRLRRLRRRRLRRRLRRRLRLLLLLLRLLRRRLRRLLLRLRLRLRRRLRLLRRRRLRRLRLRRLRRLRLLLRRRLLRRLRLRLLRRRLLLLRRRRRRRLRRRLLLRRLRLLRRRRLLLLRLLRRRLLLRLRRRRLLLLLLRLRLLLLLRLLRRLRRLLLLRRRRRLLLRLLLLRRLRRRRLLRRRLLRLRRLLLLLRRRLLLRRRRRLRLLRRLRRRLRLLRLLRRLRLRLLRRLLLLRRRLLLRRRRLRLRLLLRLRRLLLRLRLLRRLLRRRLRRLRLRRRLRLLRRRLRRRLRRLLLRLRLRRLRRRRRRLRLRLLLLRRLRLLLRLRRLLLRLLLLRLLLRLRRLRLLLRRLLRRLRRLRRLRLRLRLLRRRLRRRRRLRLLLLLRLRLRLRRRRLLRLLRRLRLRLRRLRRLRRLLRLRLRRLRLRLRLRLLRRRLRLLRRLRRLRRLRLRLRRLLRRLRRLRRRRRLRRRRLRRLRRRRRRRRRRRRRRLRLLLRLRRLLRRRLRRRRLLLLLLLLRLRLLRRLLRRRRLRRLRRLRLLRRLRRLLLRLRLLRLRLLLRLLRLLLLLLRRRRLRLLRRLLRRLLLRLLLLLRLLRRLLRLRLRRLRLRRRRRLRLRRLRRRLLLRRRRLLLRRLRLLRRRRLRRRRRLRLLLLLRLLRLLLLLRLLRRLRRRRLLRRRRLRRRRRLLLLRLLRLRRRRLLLLLRLLRRRLLLRLRLLRLLRRLRLRRLLLRRLLLRRLLRRLRRRLRRLLRRRLRRRLLRLLLRRRRLLRLLRRRRLLRRLRRLRLLLRRLRRRRLLRLRRLLRLRLRRRRRLLRRLRLRLRRRRLLRRLRLLRLLRLLRLLLRLLLLRLLLLLLLLRLRRLRRLLLLLLLRRLRLRLLRRLRLLLRLLRLRRLRRLRRRRLLLRRLLLLRRRRRLRLLRRLLLRLRRRRRRRRRRRRRRRLRRLRRLLRLLLLRRRRRRRRRRLRLLRRRRRRLRLRRLRRLRRLLRLRRRLRLLLLRLRLRLLLLLLLRRLLLRRRRLLLLLRLRLRRLRLLRLLRRRLLLRRLRRLLLLRLRRLRRRRLLRRRRLLLLLLRRLRRLRLRRLRRRLLLRRLLLLLLLLRLLRRLLLRRLRRLRRLRLRLRLLRLLLRRRLRLRRLLLRRRLLRRRRLRLRLRLLRLLRRRLRLLLLRRRRLRRRLRRLLRLRLLRLLLRLRRRLRLRLLRRRLRRLRRLRLLLRRLLLLRLRRRRRRRLRLLRRRLRRLRRRRLRRRRRLLRRLRRRRLLLRLLLLLRRRLLLLRRRLLRRRLLLLLLRRLRLLLRRRLLLLRLRLLRRRLLRLRLLLLRRRLLLRRRLLLRLLRRLLLLLLRRRRLRRLLLLRRLLLRRRRLRRRRLLRRLRRRLRLRRLRRRRRRLRLLLLRLRLRLLLRRLRRRLLLLRLRRRLLLLLRRLLLLRLLRLLLRLRRRLRLLRRLLRRRRLRRRLLLRLLRLLRRRRRRLLLLLLRRRRRLRRLLRLLRLLLRRLLLLRLRRLRLLRLRRRRLLLLLLLLRRRLLLLRLRLRLLLLRLLLRRLRRLRLRRRRLRLLLLRLLLLLRRRLLRRRLLLRRLLLLRLLRLLRLLLRLRRRLRLLRRRRRRLLLRLRRLRRLLLLLLRRLLRRRLRRRLLRRRRRLRLRRRLRLLRRRRRRRLRLRLRRLLRLLLLLRLLLLLLLLRLRLLLRLLRLRRRLLRRLRLLRLLLRLRLLLLLLRRLLRLRRRRRRLRRRLLLRRRRRRRLLLLRLLLLRLRLRRLRLRRLLRRRRRRLLRRLRRLLRLRRLLLRLLRLLRLRLRRRRLLRLLRRLRRRRLRLRLRLRRLLLLLRRRLLRLRLLRRLRLRLLLRRLLLLLLLRLLRLRRRRLLRLRLLRLLRLRLRLLLLLLRLRLRLLRLRRRRLLRLRLRRRLLRLRLRRLLRLLRRRLRLLLLLRLLRLLRRRLRRLRLLRLLRLLLLRLLRLLRRLLLRLLRRLRRLRRRRLLLRRLRRRRRRLLRLRRRLRLRRRRRLRRLLLRLRRLLRRLLLRLRRRLRLRRRLLLRRLLRLRLRLRRRLRRRLRRRRRRRRRRLRLRLRLLLLLRLRLLRRLLRLLLRRRLRLLLRLRRRRLRRLRRLLRRRLRLRLRRLRRLRRLRLRRLLLLRRLRRRLRLLRLRRLRLRLLLLRRRLRLLRLRLRRLRRRRRLRRRRRLLLLRLRRRLRLLRLRRLRRLRRRLRRRRLLLLLRRLLLRLLRLRRLLLLLRRRRRLRLRLLRRLLRRRRRRLLRRLLLRLLRLRLLLRRRRRRLRRLRLRLRRLRLRRRLRRLLRLRRLLLRLRLRLRRRLRRRLLRRLLLRRRRRRRLLRRRRRRRRLLLRLRLRRLLLRLRRRRLLRLLRLRLRLLRRLRRLLRLRLRRRLLRLRRRLLLLLLRRRLRRRRLLRRLLLLLRLLLRLLRRLLLLLRRRLRRRRLLLLRRLRLRLLLRRRLLLLRLLLRRLRRLRLLLRRLLLLLLLLLRRRLRLRLLLLRRLLRLLLLLRRLRRRLLRLLLLRRLRLLLRRLLRRLLRRRLLRRRLRLLRLRLRRLLRRRRLLLRRLLRLRRRLRRRRRRLLRRRLRLLLLRLRRRRLLRRRLRLRRRRLRLRLLLRLLLLRRRRRLLLRLLLLLRRLLRRLLRRLRLRRRRLLRLRRLLLLRLRLLRLLRRLRLRLRRRRRLRLRRLRRRRLLRLLLRLLRLLRLRRRRLRRRLLRRRRRRRRLLLRLRRRLRRRLLLRRRLRLLRRLRLLRRLRRLRLLRLLLRRLRRLRLRLRRRRLRRRLRLLLLLLLLLRLLRRLRRRRLRRLLRLLRLLRLRRLRLLRLRRRRLRLRRRLRLLRLRLLRLRRRLLRLRLLRLLRLRRLRLRRRRRLRLRLRRLRRLRLLLLRLLLLRLLLLLLRLLLRRLLLRRLRLRRLRRLLRLLLLRRLLRRLRRRRLLRRRLLLLRRRRRRLLLLRLRLRRLRLLRRLLLLLLLLRLLRRLRLLLLRLLRRLLLRLRRRLRLLRRLRLLLRRLRRLRRLRLRRRLRLLRRRRLRLLLLLRRRLLRRLLRRRLLRRRRRLRRRRRRLLLLLRRRLLLLLRRLLLLRLRLRRLRRLLLLRRRRRLRLRRRRLRLLLLLLRRLRLLLRRRRLRLRRLRRLRRLRRRRRRLLRLLRLLLLLLLLLLRLLRRRRLLLRRLRLRLRLRRRLRRRRRLLLLLLLRRLRLLRRLLLLRLRLRLLRLLRLRRLRLRRRLRRRRLRRLRLRLRLLLRRLLRRLRRLRRRLLLLLRRLRLLLLRLLRLRRLLLLRRRLLLRRLRRRRLLRLLLRRRRRRLRRRRRLLRRLLRLRRRRLRRRLLRRRRRLLRRRRRRLLLRLRRRLLRLLRRLLRRRLRLLRLLLLRRRLLRLRLLRRLRLRLRRLLLLRRRRRLRRRLRLRLRLLRLRRRRRLLRLRRLLLRRLRLRLRRLLRRLRLLRRRRLRRLLLRRLLRLRRRLLLLLRRRLLLRLRRRLRLRLRLLRRLRRLRRRRRLRLLLRLLRLRLRLLRRRLLLLLRRLRRLRLLLRRLLLLLRLRRLLRLRLRRRLLLRRRRLRRLRRLRRLRLLLLLRLRRLRRLLRRRLRLRRLRRRRLRLLRLLRRLLLRRRLLRRLRLRLRLRRRRLRLLLLLLRLLRRRRRRRRLRRRLLLLLLRRRRLLLRRLRLRRRRLRRRRRRLRLRRRRLLRLLLRRRRRRLLRLRRRLLLRLRLLLLRRRRLLLRLLRRRLRRRLLLRRLRLRLRRLRLLLRLLLRRLRLRLRRLRLLRLLRLLLRRRRLLLRRLRRRRLRLLLRRLRRRLLLRRLRRLLRLRRLRLLLLLLRRLRLLLLRRRRRLLRLLRRLRLRLLRRLLLRRRLLLRLRLLLLRLLRRLLLRRRLLRRLRLRLRRLLLLLRRRLLLLLLLLRLLRRRLLLLRLLRLRLRRRRRLLLLRRLRLRRRLLRLLRRRRLLLRRRRLLLLRLLRLRRRLRLRLLRLRRRLLRRLLLLRLLRLRLRLLLLRLLLRLLRLLRLLLLRLRRRLLLRLRLRLRRRRRRRLLLLLRRLLRRRLRLLLRLLLRLLRRLLRLRRRRLRLLLLRLRLLRLLRRRLLRLRLRLRRRLLLRRLLLLLLRLLRRLLLRLLRLRRRLLRLLLRRLLRRRRRLRLRRRLLLRRRLRLRLRLRRRLLLLRLLRLLRRLLLLLLRRLLRLLLLLLRLRRLLRLLRLLRRRRLLRLRRLRLLLRRLRRLLRRRLRLLRLRLRRLRRLRLRRRLLRRRLLRLRRLRLRLRRRRLRLLRRRLRLLRRLRRLRLRRRLRLRRLRRLLLLRLRRRRLLRRRLLRRRLLRRRLLLLLLRRLLRLRLLRRLRRLRLLLLLLRLLLLRRRRRLRRLLRRLLRLLLRRRRRRRRRRLRRLLLLLLLRLRRRRRRRLLLRLRLLLRRRRLLLLRRRRLRRRRRRRLLLRLRRRLRRRRLLLLRLLRRLLLRRLLLRRLRRRRRLLRLLLRLLLRLLRRRLLLLLLLLRLRRLLLRRLLLLLLRRRRLLLRRLLLLRLRRLRRRRRRLLLRLLLLRRLLLRRRLRLLLLLRRLLRRRLLLLLRLLRRLRRLLLLRRRLRLRLRLLLRRRLLRRRRLLRRRRRRRRLLLLRLRRRLRRRLLRRLLRLRRRLLLRRRRLLRRRLLLLLLLLRRRRRLLRRLLLRLRLRRLRLLLLRRRLRRLLLLLLRLRLLLRRLLRRRRRRLLLLLRLRLLLLLRRRLRRLLRRRLLRLLRRRRLLRLRRRLRLRRRRLRLRRRLLLLLRLRLRRLLLLLRRLLRLRLRRRLRLLRLLLLRRLLRRLRLRLLLRRLRRLRRRRRRLLLRLRLLLRRLRRLRLLLRRLRRLRLRRRLLRRLRRRLRRLRLRLLRRRRLLLRRRRLLLRLLLRRLRLRRLLLLLRLLLLLRRLLLLLLRLRLLLLLLLRLLLRLLRLLLRRRRLLRRRLLLLLLRRLRRRLLLRLRLLLLRRRLLRLRLRLRRRRRRRRRLRRRRRRRLLLRRRRLLRRLRRRRRLLLLRRLRLRRRRRLRRLRRRRLRLLLRLRLRLRLRRRLLLRRLLLRLRRRRLRLRLRRLLLRRLRLRLLRLLRRRRLRRLLLLRLLLRLRRRRRRRRRLRLRLRRLLRLLRLRLLLLRRRLLRLLRLRRRLLLLLLLRRRRLLRLRRRRLLLRRRRLLRLRRLRLRLLRLRLLLLLRRRLRRLRRLLRLRLRLRRRLLRLLRRLRLRRRLLLLLLLLRRRLRRRRLRRRLLRLLRLLRRLRLLLLLLLLRRRLLRLLLLRLRRRRLLLRLLLRRLLLLLLRRLRRRRLRRRRRRRRRLLLRRRLLLLRLLRLLRLLLLRLRRRLLLLRLRRRRLLLRLRRRLRLLRLLRRRLRLLRLLLRLRRLRLLRLRLLLRLLRLLRLRLRRLLLLRLLRLLRLLRRRRRLRLLRRRRRLRRLRLLRLLRRLRLRLLRLLRLRLRRLRLLLLRLRLLRRLRRLRLLLRLLLLLRRRLRRRRRLLLRLRLRRRRLRLLLLRRLRLLRRRLRRLRLLLLRLLRLRLLLRLRLLLRRRLRRRRLRRRRLRRRRLRLLRRLRRLLRRLLLRRLRLLLLRLRLRRRRLRRRLRRRRLLLRLLRRLLLLLLRRRLLLRLRLRRRRLRRRRLRLLRRRRRRRRRLLRLLRLLLRRRLLLLRLRRRLLRLLLRLRLLRLLRRLLLLLRRRRLRRRLLLRRRLRRRRLRRRRLLLLRLLRLRRRRLLLRRLRLLLLRRRLRRRRRLRLRLRLRRLRRLRRRRRRRLRLRLLLRLRLRRLLLRRLLLRRLLLRLRRRRRLRRRLLRLRLLRLLLLLRRRLRRLRRLRLRRLRRLLRRRLRLRRRRRRRRRLRLRLRRRRRLRRLLRRRRRRLLRLRRLRRLRLRRLLRRRLLRRRRLLRLLLRRRLRLLLLRLRRRLLRRLLLRLRRRRRRRLRLRLLRLLRLLRRRRRRLLRRLRRLRRLLRLRLRLRLRRRRLRLLLRRRRLLLRRRRRRRLRLRLRLLLLLRRRRLRLLRLRRLRLRRLLLLLLRRLLLRRLLRLLLRLRRRRRLRRLLRLLRLLRRRLLLRLLRRLLLRRLLRLRLRRLLLRLLLRLLLLLRRRLRLRLLRRRRLRRRRRLRLRRRLLRLLRRLRLLRRLRRLRLRRRRRLLRLRRLLRRRRRRRRLLRRLRRRLRLRLRLLLLLLLLLLRLRLRLLLRRLLRRRLRRLRRRRLRRRLLRLLLRRRLLRRLRRRRRRRLLLRRRLRLLLLLLRLLRRRLRRRRLLLLRRRRRRLRLLLLLLLRRRRRRLRLRLRRLLRRRLLRLLRRRLRRRRLLLLRRRRRLRLLLRLRRLRLRRRLRLLLRRRRLLRLRLLRLRLLLLLRRRLLRRLRLRLLRLLLRLLLRRRRRLRRRLRRLLLRRRRRRRLLLLLRLLLRRLRLLRRLRRRRRRRRLRRRLRRLLRRRRRLRLRLRRLLRLRLLRRRLRRRRRRLLRLLLLRLRRLRLRRRRRRRLLRLRLLRRRRRRRRRLLLLRLLRLRRRRLRRLLRLRRRLLRLRLLLRLLLRLLLLLRLLRLLLRLRRLRLLRRRRRLLRRLRLLLRLLRLLRRRLLLLLLLRRLRLRRRLRLRRRRRRRLRRLLLLLLRRRLRRRRLLRLLLRRRRLRLLRLLRRLLRRLLLLRRRLRRRLLLRLLLRLLLRLRRLRRLRLRRRLRRRLRLRLLRRLRRRRLRLLLLRLRRLLRLRLLLRLRRRRRLLRRRLRLLLLLLLRLLLLLLLLRRLLLRLRRRRRRLRLLRRRRLLRLRRRRRLRLRRRLRLLLLRLRLLLLRRRRLLLLRRRLRRRLLLRRRRLRLLLRRLRRLLLRLLLLRLRLLRLLLRLLRLLRLLLLRLLLLLRRLLLRRRRLLLRLLRRLLLLRLRLRLLLRLRRLRLRLRRRLRRRLRRRRRRRLLRRLRLRRRLLLLRRRLLLLLRRRRRRRLRRRRLLLLLRRLRLRRLLLLLRRRLLLLRRRRLLRLRRLRRRRRRLRRRRLRLLLRLRRRLRLRLLLRLLRRLRRLLRLRRRRRLRRRLRLLRRLRRRRLRLLRRLRRLRLRRLRLRRLRRLLLLLRRLRLLRRLRRRLRRLLRRLLLLRLRRRLLRRLRRRRLRRRRLLRRRRLRRRLLRRLLLLLLRLLLLRRLRLLLLRLRLLRLLRRLLRLRRRLLRLRRLLRLLLRRRRLLRLLRLLLRLLLLLRRRRRRLLLRRLRLLRRLLLLRLRLRRRRRRLRLLRRRRLRRLRLLLLRLRLLLLRLRRRLRLLRRRLLLRLRLRLRLRRRLLRLRLLRRLLLLLLLLLRLLRRLRRLRLRLRLLRRRLLRRRLRLLLLLLLRRRLLLLLRRRRLRLLLRLLLRRRRRRRRLLRLLRRLLLRRRLRRLLLRRLLRLRLRRRLRLLRRLLLLRLLRLRRRRLRLLRRRRRLLRLRLLLRRRLLRRRLLLRRLRLLLRLLLLLRLLRLLRRRLRLLLRRRLRRLLLRRLLRRLRRRRLLLLLRRLLRLRLLLRRLLLLLRLRRLLLLRRRLLLRLLRLRLLRRRRRLRLRRLLLLLRLRRLLLLLLLRRRLRRRRLLRLRRRRLRLLRRLRLLRLLRLRLLRRLRRLLLRLLLLLRLLRRRRLRLRLRLLRLRRRRRLLLLLLLRRLRRLRLRRLLLRRLRLRRLLLRRLLLLRRLLLLLLRLLRLRRLRRRRLLRRLLLLLRRRLLLLLRRLLRRLRRRRRLLLRLRRLLLRLRRLLRRLRLLLRLLRLLLLLLLLLRLRLRLLLLLRRRRLRRLLLLRLLRRRRRRLRLLRLRRRRLRLRLLLLLRLLRRRLLRLLRLRLLRLRLRLLRRLLLRRLRRRRRRRLLRLRRLLLRLRLRLLRRRRLLRRRRLRRLRRLRLLRLLLRRLLRRRLLLLRRRRRLRLRLLRRLRRLLLRLLRRRLLRLLRRLLRRLRRRLLRRRRLRLLRLRLRRLLLRRLRRLRLRRLLLLRLLLLLLRRLLRRLRLLRLLLLLRLLRRLLRRLRRRLRLLRRRRRRLLLRRRRRRLLRLRLRRLRRRLRLLRLRRRRLLLLLRLRLLRLRRLLRLLRLLRRRLRRRRRLRRRRLLRLRRRLRLLRLLLLLLRRRRLRRLLRRLRLLRRRRRRRRLRLLRRLRLRRRLLLRLRRRLLRRLRRRRRRRRLRLRLRRLRLRRLLLRLRRRLLRRRLRRRLLRRLLLLRLRRRRLRLLLLLRRRLLRLLRLLLRLRRLRRLRRLLRLRLRLRLLRRLRRRRLLLRLLRRRLRRLLRRLRLRRRRRLLRLRRLRRRRRRRRRLLRLLLLRRLLLLRLLLLRLLRRLLLRRRLRRRRLLRRRLRLRRLRLLRRRRLLLRRLLRRRLLRRLLRRRLLLRLLRRRRLLLLRLLRLLRRLRRLLRLLRRRLRRLLLLRLLRRRLLRRRLLLLLLLLLLLRRRLLRLRRRRLRLLRRRRRLLRLLRRRRLLRLRLLLRLLLLLRRLLLRRRRLRLRLRLRLRRLRLRRRLLRRLLRRLLRRLRLRLLLRLLLRRLRLRLRRRRLRLRLLLLRRRRRLRRLLLLRRRRRRLLLRLRLRLLRLLLLLLLLRLRLLRLLLRRLRRLLRRRRRRLRRLRLLLRRLLRRLRRRLLRLLRLRLRLLRRRLLRLLRRLRLRLLRLRRRRRRLRLRRRRLLLRLLLRRLRLRLRRLRRLRRLRRRRRRLRRLRRRLRRLRLLRRLLLRRRLRLRLLRRRRRRRRLRLLRRLLRLRLRLRLRLRLRRLRLLLLRLLLRRLRRLLRRRRLRRLRLLRLLRRLRRLRLRLLRLRLLLLRRLLRLLLLLLRRLRRRLLRLRLRRLRLRLRRLLRLLRRLLRLRRRRLRLRRRRLLRRRLLRRRLLRRLRRLLLRLLRLLRLRRLRRLRRLRLLLLLRLRRRRRLLLLLLRLRLRRLLRRRRRRLLRRRLLLRLRRRLRRLLLLLLRLLRRRLLLRLRLRRLRLRRRLRLLRLRRRRLRRRRLRRRRRLRRLLLRLLRLRLLLLLLRRLRLLRLLRLRRLRRRLRRLLLLLRRLLLRRRLRLRRLLRLRLRRLLRLRLRLRRRRRRLLLRRLLLLRRLLRRLRLRLRRLLLRLLRRLLLLRLRRLRRLLLLLLLLRLRLRLRLLLRLRLRLLRLLRLRRRLRLRLRLRLLRLLLRRLRLRRRRRLRRRLRRRRLRRRRRRRLLRRRRLRRLLRLLLLRLRRRRRRRLRRLRRLRRRRLLLLRLRLLLRRLRLLLRLLLLRLRLRLRLLLLLLLLRLRRRRRRRRRLLRLLRRRRLLLRLLRLRLRLLRLRRRLLLLLLRRRRLLLLLRRLLLRLLRLRRRRLRRRLRRRRLLLLRLLLLLLLLRLLRRRLLRRRRRLRRLRLRLRLLRLLLRLRRRLRRLLLLRRLLRRRLLRLRLRLLRLLRRRLRLLLRRLLRLRRRLRLLLRLRLRRLLLRLRRLLLRRRRLLRRRRLRRLLLLLRRRLLLRLRRRRLRRLRLLLLRLRRLRRRRRRLLRLLLLRRRLRRRLLRLLLLRRRRLLLLLLLLRRRRRRLLLLRRLRLLLRRRLLLRLRRLRRRRLLRLRLLLRRLRRRLRRLLLLLRRRRRLLLLLRRRRLRLLLLLRRLRLLRRRLRLRLRLRLLLLRRRRRRLRRRRLLLRLRLLRLRRLLLLRRLRRRLLLLRLLRRLLLLLLLLLRLRLLRLRLRLRRLLRLLLRLRRLRLRRLRLLRRLLLLLRRLRLRLLLLLLLLRRRLRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLLLRLRRRRLLRRRLRRRLLRRRLLLRLLRLRRLRRRRLRRRLLRLLLLLRRRRLRRLRRRLLRLLLRLLRLLRLLLLLRRRLRLRRLRRRLLLLRLRRLRRRLLLRRRRRRRRLRLRRRRLRRRRLLLRRRLRLRLRRRRRRLRRRRRRRLRLLRRLRRLLRLLRLRLRLLRLLLRRRRRLLLRRRRRLLLLLRRLRLLLRRRRLRRLRRLRRRRLRLRRRRRRRRRLRLRRRLLRRRRLRLLRRRLLLLRRRRRLRRRRRRLLRLLRLLLRLLRLLLLLLRLLRRRRLLRRLLRRRLRLRLRRRRRRLRLRRRLLLLRLRRLLRRRRLLRRRLLLRLLLLLRLRLLRLRRLRLLRLLRLRLRLLLLLLLLRLRLLRLRRRRLLLLRRRRRLLRLLLRLLLRLLRRLLLRRLLLRLRLLLRRLLLLRRRLLLLRLLLRRRLLLLLRLLLLLLRRLRRRLRRRLRLRRLRRRRRRRLRLRRRLLLRLRRRLRRLLLRRLLRLRRLLLRRRLRLRRRRLLRLLLLLRLRLLLRRLLLRLLLRRRRRRRLRLRLLLRLRLLLLRRLLLRLLRLLLLRRLRLLLRLLRRRLLLLRRLLLRLLRLRLRRLLRLRLRRLRLRLLLRRLRRRLRLLRLLRRRLRLLLLRLRLRLRRLRLRRRRRRRLLRRLRRLLLRRLRRRRLRLRLRLLLLRRRRLRRRRLLLLLLLLLLRLLLRRRLLRLLRRLRRLRLRRRRRLLRRRRRRLRLRLLLLLLRLRLLLRLLLRRLRRLRLRLRLLRLRRRLRRRLLLRRLLLRLRLRRRRRLRRRLLLRLRLRRRRRLRRLRRRRRLLRLLLLLRLRRLRLRLRLRRLRLRLRLRLRLRRRRRRLLRLLRRLRRLRRRRRLLLLRLRRRLLRRRRLRRLLLLLRLLRRLLLRLRLLLRRRLRRRRLLLLLRLRLRRLLRRRRLRRLLLLRRRRRRRLRLLLRLLLLRRLLLLRLRRRRLRRRLRLLLLRLLLRLLRLLLRLLRLRRRRLLRRRLLRRLLRLRRLRRRLRRLRRRLRRRLRRLRLLRLRRRRLRRRRRRRRRRLLRLRLLRLLLRLLRRRLRLRRRRLRLRRLRLRRLRRLLRLRLLLRLRLRRRLRRRRRLRLLLLRLRLRLRRLLRLRRLLLRRLRRRLRLRLLLLRLRRRRLRRRLRLRRLLLLRLRRRLLRLLRLRRLRRRLLLLRRLRRRLRRLLLLRLRLRLRLLRRRRRRLLLRLRLLRLLLRLRLLRLRLRRRLRLRRRRLRRLRLLRLLLRLLLRLLLRLRLRLRLLLRRRLLLLLRLLRRRRRRRLRLRRLRLRLRRLLRLLRLRLLRRRRLLLRLRLLRRLLLRLLRLLRRRRLLLRLRLRRRLLRLLLRLLLLRLLLLLLRLLLRLLLLRRLLLLRLLLLLRLLLLLRLLLRLRRRRLLRRLLLLLLRLLRRLLLRRLRLRRLLLLRRRLLRLLLRRLLRRLRLLLLRLLRLLLLRLRRRRRRLRRLRLLLRLLRRLLRLRLRRRLRLLRRRRLRLLLLLLRRLLRRLRLLRRLRRRRLLRRLLRRLRLLRRRLLRRLLLRLRRLRLRRRRLLRLLLRRRLLRLRRRLLLRLLRLLLLRLRLLLRLRRRLRLLLLLRLRRRRLLRRLLLRLLRLLLLLLLRLLRLLLRLRRLLRRLRRRLRLRRRRLRRRLLLLLLRLRRLRRLLRLRLLRLLLRLLRLLRLRLLRRRRRRLRRRLLRLRLRLRLLRLRRLRRLRLLLRRRLRLLRRLLLLLRRLLLLRRLLRLRRRLLRLRLRRRRLLRLRRLRRRRRLRRLLLLLRLLRLRRRRRLRRRLRLRRLLLLRRLRRRRLRLLRLRLLRRLRRLLRLRLRRLRLRLRLRLLLLLRLRRRRRRRRRRLLRRRRLRRLRRLLLLLRRRLRLRRLLRLLRRLLLLLRRLRLRLRRLRLRLLLLRRRRLRLLLLLRLLLLRLRLLLRLRLLLLRRLRLRLRLRRRLLRLRRRRRRRRLLLLRLRLLRLRLRLLRRRLRLLLRRLRRLLLLLRRLRRLLLLLRLLRLLLRRRLLLLRRRRRLLRRRLLLRLLRLLRLRLLRRLLRRRLRLRLLRRRRLLRLLLRRRLLRRRRLRRRLLLRRRLRLRLLLLLLLRLRLLLLRRRLLRLRRRLLRLRLLLRRLLLLRLRRLRRRLRLRRRLRRLLRRRLLLLLRRRRLLRLLRRLRLLLLRLRRRLLRLRRLLRLLLLLLLRRLRRLRRRRLLRRRRLLRLRRRRLLLLRRLLRRLRRRLRLLLLLLRRLRRRRRRRRLLRLLRRLLLRRLRRRRLRRLLLLRRRLRLRLLRRRLLRLLLRRRLRRRRLRRRLRLRLLRRLLRRRRLRRRLRLLLRRLLRRRLLRLLLLRLLRLLLLRLLRLRLRRLLLLLLRRRLRRRRLLLLRLRRLRLLRRRRLLLLRRRLLRRLLLRLLLRLRRLLRLRRLRLLRLLLLRRRLLRLLLRLRRRLLRLLLLLLRLLLRLRLLLLRRLRLLLRLLRLLLLRLLRRLLLRLRLRLRRRRRLRLLLLLRRLRRRLLRRLRRRRLRLLRRRLRLRRRRLRLLLLRLRLLRLLRRRRLLRLLLLRRRLLLLRLRLRRRLRRRRLLRRLRRLRRRLLRLLLRRRLRRLRRLRLRLLLLLRRRLRRRRRLRRLLLRLRRLLRLRRRRRLLLLRLLRRLRLLLRLRRLLRLLLLLRRRRLLRRRRLLRLLRRLRRLLRRLLRLRRRLLRLLLLLRLLRRLLLRRLRLRLLLLRRLRRRLLLLRRRLLRLLRRLLRLRLRLRLRLRLLRRLLLLRLRLRLLRLLRLLRRRLLRLRRRLLLLRLLLRLRLLRRLRRLRRLLLLLLLLLLRRRRRLRRLLRRLLRRLRRRRRRRLLRLLRRLLLLLRRRLRRRRRRLRLLRLRLLLRRLLLLRLLLRRLLRRLRRRLLLRRRLRLRRRRRRLLRLRRRRLLRRLRRRLLLRRRRLRRRLRLRLLRRLRRRLLLLLLLRRLRRLLLRRLLLLLLRRRLLRLRLRLLLRLLRLRRRLRRLLLLLLRRRRLRLRRRLRLRLLLRLRLRRRLRLLRRLLRLLRLLLLRLRRLLLRRLLLLLLRLLRRRRRRRRRRRRRRLLLLRRRRRLRRLLLRLLLRLRRRLLLLRRLLLRRRLLLRLLRRLRRLLLLRRLLLRLRLRRRLLRRLRRRRRRLRLLLLLRRLLRRLLLRRRRLRLLLLLRLRRLLRLLRRLRRRLRRRLLRRLLRRRLLLLRLLLLLRRRRLRLRRLRLRLRRLRLRLLLRLLLRLLRLLLRRLLRLRLLLRLRLLLRRLRLRLLLRRLRRLRRRRRRLLLLRRLLLLRRRRLRLRRRLRRRLLRLRRRLRLLLRRRLRLRLLLLLRRRLLLLRRRLLLRLLLLRLLLRRLLRLLRLRLLLRRLLLLLLRRLLLLLLLLRLRLRRLRRLLLLRRLLLRLLLLLLRRRLRRLLLRLLRLLLLRRRRRRLRLLLRLRRRRRRRLRRRRLRLRLLRRRRLRRRRRLRRRRLLLRLRRRRRRLRLRLRLRLRLRRLRRLRLRRLRRLRRLRRRLLRLLLRRRLRLLRRRRLLLRRRLRLLRLRRRRRLRLLLLLRLRLRLRRRRRRRRRRRLRLRLLLLRLRLRLRLRRRRLLRLRRLLRRLLLLLLLRLRRLRRLLLRLLRLLRLLLRRLLRRLLRRRRLRLLLRLLLRLRRLRLLRRLRLRLRRRLLRLRRRLRRRRRLLLLRLLLRLRLRRRRLLRRLLRLRRLLRRRRRLLLLLLRRRRRLRLLRLRLLRRLLLLLLLLLLLLLLLLRRRRRRRLLLLLRLRRLLRRRRRLLRRRRLRLLRLLLLRLRRRLRLRRLRLRRLLLRLRLRRLLLRLRRLRRRLRRLLLRLRRLRLLRLLLRLRRRRLRLLRLRRLRLLRRLRLLRLLLLRRRLRLLRRRRRLRRLLLRLLLRRLRLRRLLRRLLRLRLLRLLRLRLRLLRRRRLLRLLLLLLLLLLRLRRLLLRLLLRRRRLRRRRRRLLLRRLRLRRRLLRRLRRLLRRLLRRRLRLRLLRRLLRRRRRRLLLRRRLRRLRLLLLLRRRRLLRRLRLRRLLLLLLRLRLRLRRLRLRLRRRRLLLLLLRRLLLRLRRRRLLLRLRLRRRRLLRRRRRRLLRLRRRLRRLLRLLRLLLRRRRLLLRLRRRLRRRLLRLRLLRRRRRLLLRLLRRLRRRRLLRRRRLRLRRLRRRLRRLLLLLRLRRRRRLLLLRRLLRRRLRLRRRRRLRLLRRLRRLRLLRLRRRRLLRLRLRLRLRLLLLLLRRLLLRRLLLRRRRRRRLLLRRLRLRLLLLLRLRLLRLLLLLRRRLRRLRLLLRRRLLLRLLRRRRLRLRLRLRRRRRLRLLLRLRLLRLLRLLLRRRLRLRRRRRLRLLRRRLLLRLRLRLRLRLRLLLRRLRLRRRLLRLLRRRRRRRLRLRLLLRLLLRRLLRLRLLRRLRLLRRLRRLRRRLRLRRRRRLRLLRRRLLLLRRRRRLRLLLRLRLLRLRRRRRLRLLRLRRLLRRRLLLRLLLRLLLLRLLRLLRLLRRRRRRRRLLRLRRLRRLRLLLRLLRLLRRRLLLLLRLRRLRLLLLLRLLLLLRRRLRLRLRRRRRLRRLRRRRRLRRRLRLRRRLLLLRRLRRLRRRRRLLLLRRLLRRRRRRLLRRLLRLLLRLLRLRLRLLRLLLRLRLLLRLRRLLRLLLRRRLRLLRRRRLRRRLLRRLRLRLLLLLLLRRRRRLLLRRRRRRRRLLLLRLLRRRLRRLRLRLRRLRLRRLRLLLLLLLLRRRRRLRLRRLRRLRRLLRRLLRRRLRLLLLLRLLRLRRLRLLRRLRRLRLRLRLRLLLLLLRLLRRRLLRRLRLRLLRLRLRRRLLLLLLLLLLRLRLRRRLRLRRRLRRLLLRRRLRRRRLLLRRLLLRLLRLLRLLRRRRLRLLLRRRLRRLRRRRRRLRLRRRLLLLLRLLRRLLRLRRRRLRLLLLRLLRRRRRRRLRRRLRLRLRLLRLRLLRRRLLLRLRRLRLRRRRLLRLLRLRRRLLRLRLLRRRLLRLLRLLRRRRLLRRLRRLRLRRRRRRLLRRLRLRLRRLRRLRLRRRRLLLRLLLRLRRLLRLRRRLLRLLLRRLLLRRRRRLRRRLLLRLLLRRRRLRLLRRLRRRLRRRLLRRRRLRRRLLLRLLLRLLLRRRRLLLRRLRRRLRLRLRLRRRRRRRLLLLRLRRRRRRRRRRLRLLRLLRRLLRLLLRRLLLLLRLLLLLLRLLLRLRLLLLRLRLRLRRRRLLRLRRLLRLLRRRLRRRRRRLRRLRLRRRRRRRRLLRLLRLRLRRLRRLRLRRRLLLLRLLRLRRLLLRLLRRRLRLLLLLLLLLRRLRLRLLRLRLLLLRRLRRRRRLRRLLRRLLLLLRLRRRLLLLRRRLRRRLRRRLRLRRRRRRRLRRLRRRRLRRRLRRLRLRLLLRLRRRRRRRLLLRRLLLLLRRLRLLLLRLRLRRLRRLLLRRRLRRLRRLRRRRRRLRRLLLLLLLRLRRRLRLRLLLRLLLRLLRLRRLRRRLRRLRRRRRRRLRRRRRRLLLRRLLRRRLRRRLLRRLRRLLLLLRRLRLLRLLRRRLRRLLRRRLLLRLRRRLLLRRRRRLLRLRLRLRRRRLLRRRLRRLLLLLLRRLLLRRLRLLLRRRRLRRLLRRLLLLRRLRRRLLRLLRRLRRRRRLLRLLRRLLRLLLLRRRRRLRLLRRRLRRLRRLRLLRRLRLLLRRRLRLLLLLRLLLLRLLLLRLRLLLLRLRRLLLRLRRRLLLRLRLRRLLLRRLRLRLLRRRLLLRRLLLLRLRRRLRRLRRLLLRLLRRLLRRLRLLRRRLLLRLRLLLLLRRLLRRLLLRLLRRRRRLRRLLLLLRRRLLLLRLLRLLLLRLRRRLRRLRRLRLLRRLLRLLLLRRRRRRLRRLRRRRLLLRLRLLLRRLRLRRRLLLLLRRRLLRLLLLLRRLRLLRRRRLLLLLLRRRRLLRRRLLLRRRRRLLRLLLLLRLRLRLLLLRLRLRLRLRRLLRLRRRLLLRRLRLRRLRLRRRLLRRRRLRRLRLRLLLLLRLLRRRRRLLRRRRLRRRRRRLRLRLRLLLLLRLLLLLRLRRRLLLLLLLRRLLRLRRRRLRLRLLLLRRRRRLRLLLRLRRRRRRRLRRRLLRRLRLLRLLLRLLRLRRRLRLRLLRLLRLRRLRLRRLLRLLRRLLRRRLLLLLRRLLRRLRRRRRRLLRRRRLLLRLLLLLRRLLLLLRLLRLLRLLLLLLRLRLRRLLRLRLRRLLRLLLLLLLRRRRLLRRLLLLRRRRLLLLLLLLLLLLLRRLLRRLRLRLLRLRRLRLRRLLLLRLLLRLLRRLLLLRRLLLRLRLRRLRRRLLRRLRRLLLLRRLLLLRLRRLRLLRRLLRRRLRRRRLRLRLLRRRLLLRLLLLRRRLLRRLRRLLLRLRRRLLRLRLLRRRRRRLLRLLRRRLRRLRRRLRLLLRLLLRRLRRLLRRLRLLLRLLLLRRLLRLRRLLRRRLRLLLRLRLRLLLRRRRRRLLRLLLLRLRRRLRLLRLRRRRLLLLRRLLLLLLRRLRRRLRRLRRLRRLRLLLRRRRRLLLRLRLRLLRLRRRRLRRRRRRRLLLRLLLRRRLRRRRRLRLLRLRRLRLRLLLRLRLRLRRRLRRRRRLRLLRLRRRRLRLRRRLLRLLRRLLLRLRRRRRLLLLLLLLLRRRRLRLRLLLRRRLRRLRRLLLRLRLRRLLRLLLLLLRLLLRLRRLLRRRLRRRLLRRRLRRLRRRRLRRRRLLRLRLRRLRRRLRLRRRLLLRLLLRLLLLLRLRLLRRRLRLLRRRRLRLRLLLLLRRRLRRLRLLRRLRRLRRLLLRRRLLRLRLLRRRLRRRLLRLRLLLRRLLRLLLRRRRRLRLLRRRLRRLRLLRRLRRRLRRRLLLLLLLRLLLLLRRLRRLRRRLRRRRLLRRRLRRRLRRRRLRRLRLLLRLLLLLRRLLRRRRLLRLLRRLRLRRLRLRRRLLRLLRLRLLLRLRLRLLRRRLLRRLRLRRLRRRLRLRLLLLRRRLRLRLLLRLRRRLRRLLRRLLLRLRLLLRRLLLLRLLLRRLLRLRRRLLLLRRLRRLRRRRLLLRLRLLLLLRLRLRRRRLLLRLLRRLLLRLRRLLRLLLLRLLRRRRRRRLRRRLLLLRLLLRRLLLRLLRLRRRRRLRRRRRRLRLRRLRLRRRLLLRRLLLRRRLLLLLLRLLLRLLRLRLRRRLLLLRLRLRLRLRLRRRRLLRLRLLRRRLRRRLLRRLLLRLRLLRRLRLLRRLRRRRLRRRLLRLRLLLRLLLRRLRLLRRLRLLLRLRRRRLRLRRRLRRRLLLLRRRRLLLRLLRRRLLRRRLRRRRLRRLLRRLLRRLLLLLRLRRRLRLRRLRLLLLRLRRLRRRLLLRLLRLLLRLRLRRLLRRLLRRRRRLRRRLRLRLLLLLLLRLRLLRLRLRLRLRLLRLLRRLRLLRLRRRRRLRRRLRRLLLLRLRLLRLLRLLLLLLRLRLLRLLRLRLLRRLRRRLLLLLRLRRLRLLRRRRRRRRLLLLRRRRLLRRRLRLLRLRRRLLLRRLRLLRRLRRRLRLRLLRRLLRRLRRRLLLLRRRLRLRLRLLRRLLLRLLLRLLLLLRRRRRRRLRLRRRLRLRRRRRLLRLLLLRLRLRRRLRRRRRRRRRLLLRRLLRLLLLRRLRLRLLRRRLRRLLRRRLLRLRLLRRLRRRRLLLLRRRLRLLRLRLLLLLLLLRLRLLLRRRLLLLLLRLRRLRRRRRRRLRRLRRRRLLRRLRRLRLRRLLLRRRLLRLLLRRRLLLRLLRLLLRRLLRLRRRRLRRRLRRLRLLLLRRLLLLRLLRLRLRRRLRRRLRLLRRRRLLLLLLLLLLLRRLLRRLLLLLRLLLLLLLRLRLRRLRLRRRLLLRLLRLLLLLRLRLRLRLLLRLRLLRLRLRRLRLRRRRLLLRLRLRRLLRLRRRRRLLRLRRRRLRRRRRLLLLLRLRLRRRRRLLRLRRLRRRLRRRLLLRLLLRRLRLLLRLLLLRLRRRRRLLLRRRRLLRRRRLLLRLRRRRRRRLLRLRLLLRRLRRRLRRLLLLLRRLLRRLRLLLLRRLLLRLLLRRLRRLRRLLLLRLRRRLLLLLRLRRLLRRLRLLLRLRRRRLLRLLLRLLLLRLLLLRLLLRRLRRLLLLLLRRLLRRLRLLRLRLLRLLLRRRRLLLRLLRLLRRLLLLLRLLRLRLLLRLLLLRRRRRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLRRRRRLLLLRRRRRRRRLLRRLRLLRLLRLRRLRRRLRRRRLRRLLLLLRLLRRRLLRRRLLRRRLLLRLRLLRRLLLRLLLRRRLLRLRLLLLRLRLLRLRRLRRRLLRRRRLRLRRRRLLRRRRLLLRRRRLRLLRRRLRRRRLRLLRLRLLRRLRRLRRLLRLRLRLLRLLRRRRRRRRLRRRRRLLLRLRLLRLLRRRRRLRRLRLLRLRLLLLRRRLRRRRRLRRRRRRLRRRRRLLRLRRLRRLRRRRRLRLRRRRLLRLLRLLLLRRLLLLLLLLLLRRRRRLRRLLLRLLLLRLRRLRRRLRRRLLRRLRRRRRLLRRRRLLLRRLRLRRLLLLLRLLLLLRRLRRRLLLRLRLLLRRLLLLLRRRRLLLRRRRLLLLLRLLLLLRLLRRLLLLLRRRLLLRRRLLRLRLRRRLLRLLRLRLLLLRRLLRLRRLRLLRLRLLLLRLRRLRLRRRLRLLRRRRRRRRRRRLLRRLLRRLLLLLRLLRRLRLLRLLRLLLRRRLRLRRLRLLRRLLRLRLRRLRRRLLLRLLLRRLRRRLLLRRLLLLLRLLLLRRLLLRLRRLRLLLRRRRLRLLLRRLLLLLLRLRLRLLRLRLLRLLLLLLRLRRLRLLRRLLRRLLLLLLLLRRRRRLLLLRLRLRLRRRRLLRRRRLLLRRLLLRRLLRRLRRRRLRRRRRLLLLRRRLLLLRRLLLRLLLLRLRLRLRRRLLRLLRRLLLRLRRRRRLRLRRLRLRLRLRLLLLLLRLLRLLRLLLRLLRRRRRRLRLLRLLRRRRLRLLLLRRLLRRRRLRLRRLRRRRLLRLRLRRRLRLLRLLLRRRLLRRLLLLRRRLRRLLRLLRRRRLRLRRRLRRRLRRLRLRLLLRRLRRRRRLLLRLLLRLRLLLLRRRRLRRLLLLLRRLRRLLLRRRLLRLRRLLRRRLRLLLRLRLRRLLRRRRRRRLLLRLRRRLRLLRLLLRLRRLRRLLLLRLLRRRLRRLLRLLRLRLRLRLLRLLRRLLRRRRRRLLRLLLRRRLRRLLRLRRRLLRLRRRLLRRLLRLLRLRLLRRRLRRLRRRRRLLRLLLLRLRLLLLRLRLRLRLLRRRLLLRRRLRRRRRRLRRLRLLLRRRRRRRLRRRRRLRLLLLLLLLRLLRLLLLRRLLLRRLLRRLRLRLRLRRRRRLRLRLRLLRRRLLLLLLRRRRLLLRRLLRLRRRLLLRLLLLRRLLRLRLLRLLLLLLRLRRRRRLRLLLRLLRRLLLRLLLLLRRLLRRLRLRRRRLLRLRLLRLLRRLLLRRLLLLRLRLLLLLRLRLRLLRRLLLRRLRRRLRRLRLRRRLRRLRRLLRLRRLRRRRLRRLLLLLRRRLLRLLLLLLRRRLLRRLRLRLRLLRLRLRLLRLRLLLLLLRLLLRLLLRRRRLRLRLLLRRRLRLRLRRRLRRRLLRLLLRLRRRLLRLLRRLLLRRLRLRLLLLLRRRLLRLLLRRLLRLLRLLLRLLLRLLRLRLLRRRRRRRRLRRRRRLRRRLLRLRLRRLLRLRRRRRLRRRRLLLRRLLRLLRLLLRRLRRLLLRRLLLRLRLLRRRLLRRRLLLLRRLRLRRLRLLRLRLRLRLLLLRRLLLLRLLRLLLLRLRLLLRLRLRRRLLLRLRLRRRRLLLLLLRRLLRLLRLRLRRLRRLLLLLLRRLRRLRRLLRRLRLRLRLRLLLRRLRRRLLRRLLRRRRLLRLLRLLLLLRRLLLRRLLRRLRRRLLLLLRLLRRLRLRRLRRLRLLLRRRLRLLLLRLLLRRLRLLLRRLLRRLLLLLRLRLLRRLLLRLRRLRLRRRRRRLLLLLLLLRLRLLRLLRRRLRLRLLLLRRRLRLLRLRLRRLRLLRRLRRLRRLRLRRRLLRLRLLLLLLLLLRRRRLRRRRRLLRRRRLRRLRRLLLLLRRRRRLRRLLRRRLRLLLRLLRLRLLLRRLRLLRLLRLRRRLLLRLRLLLRLLRLRLLLRRRLLLLRLLRLRRRLLRRRLLLRLRRRRRRLRLLRLLLLLLRLLLLRLRLRRLLRLLRRLLLLRLRLRRRLLRLRLLLLLLRRRRLLLRRRRRLLRRRLLRRLLRLRRLRLLRRLLRRRLRLLLLLRLLLLRRLLRLRLLRRLRLRRLLLRRRRLRLLLLLLLLRRRLRLLLLRLLLRLRLRLLRLRRLLRLRRLLRLRRLRLLRRLRLRLRRLLLRLLRLLLRRRRLLLLLRRLLLLLRLLLRRLLRLRRRLRLLRLLLRRRLRRLLRRRLLRLRRLLRRRRRRLLLLRRLLRRLRRRLRLLLLLLLRLRRLRRRLRLLLLLRRLLLRRLRRRRRRRRLLLLRRLRLRLLRRLLLRLLLRLRLRRRRLRRRRRRLRLRRLLRRLRLRRRRRLLRRLRRLRRLRLLLLLRLRLLLLLRLLRLRLRRLLLRRRRRLLRRLRLRRLLLRRRLRLRRLRLRLLRRRLRRRLLRRRRLLLLRLRRLRLLRRLLLRLRLRRRLRLLLRLRLRLLRLLRRLLRRLLRLRLLLLRRRRLLLLLLLRLRLLLLLRLLRRLRLLRLRRRRLRLRLLLRLLRRLLLLRRRLRRLLLRRLRLRLRLRRRRLLLRLRRLLRLLLRRRRLRLLLLLLRRLLLRLRLRRRLRRRLLLRRLRRRLRRLLRLLRRRRLRLLLRLRRLLLLLLRRRLLRRRRLRRLRRRLRRRLRLLRRRRRLRLLLLRRLRLLRLRLRLRLRRLLLRRRRLLRRRLLLRRLLRLRRLLLLLRRLRRRLRRLLLLRLLLRLLLLRLRRLRLLRLRRLRRLLLLLRLLLRRLLLLLLRLRLRLLLLLRLLLRRLLLRLLLLLRRLLRLLLRLLLRLRRRLLRLLLLLRLLLLRRLLRLRRLLRRRLRLLRLRRRRLLRLLLRRRLRLRRRRRRRLLRLLRRLRLLLRRRLRLRRLLLRLLRLLLLLLRLLLLRRLLRRLLRRLRRRRRRRRLLRLRRRLRRLRRRRRLRRLRLRRRRLLLRLRLRRRRRRLRLRRRRRRLRLLRLLLRLRLLRLLLRRRRLRLRLLLLRLRLRLLLRLLRLLRRLRRLRRLLLRRRRRRLRRRLRLRLLLLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRRRLRLLLLRLRLLRLRRLRRRLRRRLRLLRRRRRLLRLRLLLLRLLLLLLRLLRRLLLLRRLLLRLRRRLRRLLRLLRLRRRLLRRRRLLRRRRLRRLLRRLRLRLRLLLRLLRLRLLRLLRLRLRRLRRRLRLLLRLLLRLLRRLLRRLLRLRLRLLLLLRLLRRLRRRLLLLRRRLRRLRRRLLLRLLLLRRRRLLRRLLLLRLLRRLLLLLLRLRRRLLLLLRRRRRRRLRRRLLLRRLRRLLRRRRRLRRRLRRRLLRLLRRRLLRLRRRLLLRLLLLLRLRLLRLLRRLLLLRRRLRLLLLRRRRLRRLRLRLLRLRLLRLRRLRRLLLRRRRRLRRLRRLLLLRRLLLRLRRLLRRRLLLRLLLRLLRLRRRLLRRRLRRLLRRLRRRLLRRLRLLRLLLRLRRRLRLRRRRLLRLRRRLRLLRRRRRLLRRLLRLRLRLRRLRRLLRRRLRLLRRRRRRLLRLRLRRLLLLLRRRRRLLRRLLRRRRLRLLRRRRLLLLLRLRRRLRRRLRLRRLRRLLLRLLLLRRRLRLRLRRLLLLRRRRLLLRRRLLLLRRLRRLRRLLLRLLRLLRLLRRRRLRRLLRRRLLLRLRRLLLRRRRLRLLRRLRLLRLRLRRLLRRLLRRRRLLRLRRLRLLLRLLLRRLLRRLLRLRLLLRLRLRRLLLLLRRRRRLRRRRRLLLLRLRLLLLLRLLRRRLRLLRRLRRRRLLLLRLRRLRRRLRRRLRRRRRRLRRRLLLRRLRRRRLRRLRLRRRRRRLRLRRLLLLRRRLLRRRRRLRRLRLRLLLLRLLLRLLRRLLRLRLLLLLRRLRRLRLRLLLLLRLRLRLLLRRLRLLRLLLRLRLRRLRLRRLLRRLLLLLLRRLLRLLLRRLRLRLLLRRLRLLLLRLLRLRLLLLRRLLLRRRLRLRRLRLLRRRRLRRLRLRLRLLRRRRRLRLRLLRLRLLRRRLRRRLLLLLLRRRLRRLRLLRLLLRRRLLLRLRLRRRLLLRRRLLLLLRRLLLRRRRRRRLLLLLLRLLLRRRRLLLLLRLLRRRRRRLRLRRLRLLRLRLRLRLLLRRRRLLLRLRRLRRRLLLRLRLRRLLLRLLLRRLRRLLRLLRRLRLLRRRRRLLRLLLRRLLRLRRLLLLLRRRRRRRLLLLRRRLRRLLRLRRRRRLRLLRRLRLLRLLRLRLRRLRRLLRRLRRRRLLLLLRRLRLRRRLLRRRRRRRLLLRRRRRRLRLLLRLRLLRLLLLLRRRLLRLRLLRRRRRLLLLLRLLRLLRLLRLLLRLRLRLLLRLLLLRRRRLLLRRRLRLRRRRRLLLLRRRLRLRLRRLLRRRLRLRLRLLRLRLLRLRLRLRLRRRRLLRRLLLRLLRRLLLRLRRLRRLRLLRLLRRRLRLRRLRLLLRLRRLLRRLRRLRRLRLLRRLLRLRLLRRRLLRRLRRLRLRLLLRLLRLLRRLLRLRLLRLLLLLRLRRRRRRRLRRLLLRRRRRLLLRRLLLLLRRRLLLLLLRLLRRRLLLLRRLLLRRRLRLRLLLRLLRLLLRLLLRLRLRRRLLRRRRLLRRLRRLRLRRRRRLLLLLRLLRRRRRRLLLRLLRLLLRLRLRRLRRLRRLLRLRRLLRLRRRLRLLLLLRRRLRRLRLLLLRLLRRRRLRLRLLLLLRRRRRLRRRLRLRRRRRLLLRRLLLRLLRLLLRLRRLRLRRLRLLLLLLLLRLRLLLRLLRLRRRLRLRRRRLRRRLRLLLRLRRLRLRRRLRLRLLRRLLRRLRLLLLRLLLRRRLRRLLRRLRRRRRRLRRRRLLLLLLLLLLLRRRLLRLLLLRRRLRRRLLRLRLRRRRLLRRLLRRLLLRRRRLRLLLLLLLLLLLRLRLLRRLRRRLRRRRLLLRLLRRLRRLRRLRRLLRRLLRRRLLRLRRRRRLRRRLRRRLLLRLLRLLRRRLRRRRLRRRLRRRRRLRLLRLRLRLRRRRLLRRRLLRLLRLLRRRRLLRRLLRRRRRRRLRLLLRRRLLRLRRLRRRLLRRRRLLRRLLRLRRRLLRLRRRLLLLLLRRLLLRRRRRRRLRLLLLRLRLRLRRRLLRRRLRRLLRRLLRRRRRLRLLRRRLLRLLRRRRLLLLLRRLRRRLLLLLRLLRRRLRLLLLLRRRRRRRRLRRLRRLRRLLLLLLRLRLRRRLLLLRLLRLRRRLRLRRLLRRLRLRLRLRRRLLRLLRLLLRRLRLLLRRRRRRRRRRRRRRLRRRRRLLRLLRRRLRRLRLRRRLLRLLLLRRLRLLLRLRRLLRRRRRRLLRLRLRRLRLRLRRRRLRRRRLLRLRRRLRLRRLRRLLLLLRRLRRLLLLLRRRLLRRLRRLLLLRRRRRLRLRRRLRRRLLRRLRRRLLRLRLRRRRLLLRLLLLRRLLLLRRRLLRLLRRRRLRRLRRLRLRLLLRLLRRLLRLRRRRRRLLLLLLLLRRRLRRLRLLLRLRLRLLRLRRRRLRLRRLRRRLRRRLRRRLRRLLLRLLLLRLLRRRLRRRRRRLLRRRLRLRLLRLRLRRRRRRLRRRLLLRLLLRLLLLRLRRLLRLRLRLLRLLRLLRRLRLLLRLLLLRLLRLRRLLLRRLRLLRRRLRLRRLLRLLRRRLLRLLRRLRRLRRLLRRLLRLRRLRLLRLRRLLLLLRLLRLRRRRLRRLRRLRLLLLRRRLLLLLLLLLLLLRRLLRLLLRLLRLLRLRLRLLRRRLLRRRRLRLRLRRLRLRLLRRRLLLRRRLRRRRRRRRLRLRRLLLRLLRLLRRRLRLLRRRLLRRLRLLRRLRRLLRRLLLLLRRLLLLLRRLLLLLRRRLLRLRLLLLLLRRLRRRLLRLLLLRLLLLLLRRLRLLRRLRLLRRLLRRRLLLLLRLRLRRLRRRLRRLLLLRRRLLRRLLLLLRLLRLRRLRLLLLLLRRLRLRRRLLLLRRRRRLRRLLLLLRLRRRLRLLRRRRRLRLRRRLRLLRRLLLRRRRLRRLRLRRRLLRRLRRRRLRRRLLRLLRRLLRRRLLLRRRRLRLLRRRRRLRRRLLLLRRLLRLLRRLRRRRLLRLLRRLRRLRRRRLRRRLLLLRRRLLRRLRRRLRRRLRRLLRLRLLRRLLLLLLLLRLLRRRLLLRRRLRLLRLLRLRRLRRRLLLLRRLLRRRRLRLLRRLLRRLRLRRLRLRRRLLLLRRLLLLLLRLLLRLRRLRRLRLLLLRLLLLLRRLRRRRLRLLLRLLRLLLLRRRRLLRRRRLRRRRRLLRLRRRLLLRLLRLLRRRLLLRRLLLRRLRLRRLLRLRRLLRLLRRLLLLLLLLLLRRLRRRRRRLRRRLRLLLLLRRLLRLRLRRLRLLRRLRRRRLRRRRLRRRLRRRRLLRRRLLLLLRRLRRRRRLLLRLRLRLRRLLLLRRRRRLLLLRLRRRRLLRRRRLRLLLRLRLRRRLRLLRRLLLLLRLRLLLRLLLRRLLLLLRLLLRLLLRLRLLLRRRRRRRRRLLRLRLLRRLLRRLRRLRRLRRRRLLLLLLLRRLRRRLRRRLRLRRLRLLLLLRRRLLRLLRRRRRRLRRRRLRLRRRRRLRLRRLLRRLLRLRRRLLLLRLRRLRLRLRRRRLLRLRRRLLRRRRLLLRRLLRRLRRLRRRRLLRLRLLRLLLRRLLRLLLLLLLLLRLRRRRRRRLLLLLLRRLRLLLLRLRLRRLRRLLLLLLRLLLRLLRLLRRRLRRRRRRLLRLLRRRRRLRLRLLLRLRLRRLRRLLRLRRLRLLRLLLRLLLLRRLRLRRRRLRLLRRRLLLLLLLLLLLRRLRRRLLLRLLRRLRRLLRRLRLLRLRLLLRRRRRRRLRLRRRLRRRLRLRLLRRRRLLLLLRRLLRLRLLLRLLRRLRLRLRLLRLLRRRLRLRLLRRLRRRLRLRRLLRRRLRRRRRRRRLRRLLRRLLLLLRLRLLRRLLRLRRRLRRRLLLLLRLLRLLRRLLRLLLLLRLRRRLLRRRLLLLRLLRRLRRRRRLLRLLRRLRLRLRLLLRLRRLLRLLLRLLLLRRRLRLRRLRRRRRLLRRRLRLRRRLLLLLRLRRLRLRLRRLRLRLLLLLRLRRRRRRLLLRLLLLLRRRLRLLRLRLLLLRLLRRRRRRRLRRLLLRLRLLLRRLLLLLRRRLRLLRLLRRRLLRLRRLLRLLRLLLLLRLLRRRLLLLLLLLLLLLLLLRLRLRRRLRLLRRRLLRLLRLRRLLRLRRLRLRRLLRRLLRLRLRRRLLRRRRLLLRLRRRRLRRLLLRRRLLLLRRLRRRRLLRRLRLLLRRLLRRRRRRRRLLRRLLLRLRLRLLRLLLLRRLRRRLLRLLLRRRLLRRRLRRLRLLLLLRLRLLLLRLLLRLRRLRRLRRRRLLRLLRLLLRLRRLLLLRLLLRLRRRLLRRLRLRLLRLRLLRRRLLRLRLLLLRRLLRLLRRRLLRRLRLRRRLRRRLLRLLLRLLRRLLLLLLLRLLRRLRLLLRLLRRLLRLRRLLRLLLLRLRRLRLLLLRRRRRLLLLLLRLRLLLRRLRRLRLRRLLLRRRLRLRRRRRRRRLRRRLRRRRRRLRRRLLLLRLLRLLRRRLLRRLLRLLLRRLLLLRRRLRRRRLLRRLRLRLLRRRLLRRRRLLRLLLLRRLLRRRLRRRRLLLRRLLRLLLLRRLRLRRLRRRRRLLLRLLLLRLRLRRRLLRRLRLRLLRRLRLLRLLLLLLRLRRRRLLLLLRRRLRLLLRRRRLRLRRRRRRLRLRRLRLLRLRRLLRRRRLLLLLRLRRLLLRRLLLLRRLRLLRRRLRRLLRLLLLRRLRRLRRRRLRRRLLLRRRRRRLLRRLLRRLRRLRRLRLLLLRLLRRLLLRLRRRRRLLLRLRLLLLRLRLLRRLRLRRRLRLRRLRLLLLLLLRRLLRRLRLRRLLRRLLRLLRLRLRRLLLRLLLLLRLRLRLRRRLRRLLRLLLRLRRRLLLLRLLRLRRRRRLLRLRRLRRLLLLRRRLRRRRRLLRLLLRLLLRRLLLRRRRLRLRRLLRRRRRRRLRLRLRRRRLLRLLLLLRRRLRRRRLRLLLLLRRLLRRLRRRLLLLRLLRLRRLRRRRLRRLLLLLLRRRLRLLLRLRLLLRLLLLLRLLRRRRLLRLRRRLLRLLLRLRRLRLRRRRRRRLLLRRRLRRRLRRLRLLLLRRRLRRRRLLLRLLLLRRLLLLLLLLLRLLRLLRLRLLRRLRLLRLRLRRRRLRLRLRRLRLRRLRLLRLLLLLRLRRRRRLLLRRRRRRRRLRLRRLRRRRLLLLRLRLRLLRRRRRRLRRLLRLLLRRRLLRRRLLRRRRLLRLRRLRRRLRLLLRRRRLLRLRLLRLLRRLLLLRRLRRRLLRRLRLRLRRRRLLLLLRLLLRRRRRRLLLLRLLRRRLRLLRRRLRRRRLRRRRRRRLLLRRLRLRRLRLRLRRLLRLRRLRLRLRLRRLLRRLRRRLRLRLLLLRLLLRRRLLLLRRLRRRRLRRRRRRLRLLRLRLLRRLLRLRRLRLLRLRLLRLLLLRLLRRLLRLLLLLLLLRRLRRLLLLLLLLLLLLRRLLRRRRRRLLRRLRRRRLLRRRLRRLLRRRRRRRRLRLLRLLLLRRLRLRRLLLLRLRLRRRLLRLRRRLRRLLRRLLLLLLLRLLLRRRLLRLLLLLRRRRLRLRRRRLRRRLRRLLLRLLRLRLLRLLRRLRLRRLRRLRLRLLLRLLRRLRLLLRLRRLRRRRLLLRRRLRLLLRLRLLLLLLRLLRRLRLLRRLLLRRRRLLRLRRLRLRRRLLRLRLLRLRRLLLLRLLLLLLRLRLLLRRRLRLRRRLRLRLRLLRRRLLRRLLRRRRRRLLLLRLRLLLLLLRLRLRRLLRLLRLLLLLRLRLLRLLRRLRRRLLLRLLRLLRRRLRRLLLLRLRLRRRRRLRRRLLLLRLLLLLRRRRRLRRRRLRRRRLLLLLRLLLLLLLRLRRRLLLRRRRRRLRLLRRRLRRRLLLRLRLRRRLRLLRLRLLLRLRRLRLLRRRLRLLLLLLRLLRRRLRLLLLLRRLLRRLLRLLRLRRRRLRLRLRLRLRRRLRRLRRRRRRLLLLLRLLLLLLLLRRRLLRLRLLRRLLRLLLLRRLRRLRRRLRRLRRLRRRLLLRLLRRRLRLLLRRRLRLRLLLLLRLRRLRRLRRRLRRRLLLLRRRLLRLRRLLRLLLRLRLLLLLLRRLRLLRRRRLLRRLLRRLRLLRRLLRRRRLRRRLLLRLLRLRRRRLLRLLRLRLRLLLLRLRRRRRRRRLRRLLRLLLRRLLRRLLRRLLLLLRRLRRLLLRRLRLLRRRLLRRRLLLLRLRLRLLRLLLLRLRLRRLRLLLRRRLLLRLRLLRLRLRRRRRRLRRLRLLLLRRRLRRRRRLLRRLLLLLLLLLRLLRRRLLLRLLRRRRLRRLRLLLRLRLRLRLLLRLRLLRRRLLRRLLRRRRRLRRLLLRLRRLLLLRLLLLRLLLRLRLRRLLRLLLRRRRLRRLRRLLRLRRLLLLLLLLRLRRRLLRLRLLRRRLLRLRLLRLLRRLLRRRRRLLRLLRLLLLRLLRRLLRLLLLRLLRRRRRRLRLLRLLLRLRRLLRLRRRRRLLLRRLRLRLRRRLRLLLLRLLLRRLLRLRRLRLRLLRLRRLLRRLLRRLLLRRLRLLLRRRLRRLRLLLLLRRRLRRRLLRRLRRRLLRLLLLLRRRRLRLLLRRRRRRRLRLLLLRLLLRRRRLRRRLRLRLLLLRLRLLLRLRRRRRLRLRRRRRLRLRRRLLRLRRLRRLRLLLLRRRLLLRLLRRRRLLRLLRLLRRLLLRRLLRLLLRRLLLLRRLLRRLLRRRRLLLRRRRLRLRLRLLLRRRRLLLLLRLRLLLLRLRRRRRLRLRLRLRLLLLRRLLLRLLLRRRLLLLLLRRLLRRLLRLRRRRRRRRLLLLLRRRRRLRRLRRRLLLRLLLLLLRRRRRRLLRLRRLRRRRLLRLLRRRLLLLRLLLRRLLLRLRLRRLLRLRLLLRLRLRRRLLLLLLLLLRRRRRLLRLLRRRLRLLLRLRLRRLLLLRRLLLLRRLRRLRRRLRLLLLRLLLLLRLLLRRLRLLRLLLRLLRLLLLLRRRRLLLLRRRLRRLLLLLRRLRLRRLRLLRRLLRLRLLLRRLLLLRRLRLRLRRLLRRRRLLLLLRRLRLRLRRRRLLRRLLRRRLRLLRRRLLRRLLRRLRRLLRLLRLLRRRLLRLRLLLRLRRLRRRLRRRLLRRRLRLLLRLRLRRRLLLRLRRLLRLLRLLRRLRRLRLRLLRRLLLRRLLLLLRRLLRLRLLRRRRLLRLLRLLRLLLLLRRRLLLRRRLRRLRLLRRLLRRRLRRLRRRLRLRLRRLLLRLRLLRLRRLLRLRLRRRLRRRRLRLRRRRLRLLLRLRLRRRRLRLLLLRLLLRRRLRLRRLRRLLRLRRRLRLLRLLLLRLLRLLLRRRLLRLLRLLRRLRRLLLLRRRLLLLRRLLLRRLLRLLLRLRLRRLLLRLLLRRRLLRRRLRLRRLRRRRRRRLLRLRRRLLRLRRRLRLLRRLLLLLRRLLRLLRLRLLRRRLRLRRLRRRLRRLRRLRLRRLRRRRRRLLLLRRRRLLLLRRRRLRLLRRRLRRRLLLRLLLLRRRRRLRRRLRRLLRRRLLLRRLLRLLLLLLLLRLRLRLRRRRRRRRLLRRLLRRRLLRRLRLRLLLLRRRRLLRRLRRRLRRLRRLLLLRRRLLRLLRRRLRRLRLLLRLRLLLLRLLRLLLLLRRLLRRLLLLRLLRLRRRRLLLLLLLRRRRLLLLRLLRRLLLLRLLRRLLRRRLLLRLRRLLLLLRRRLRRLLRRLLRLRLRLRRRRRRLRLRRLRLRRLRLRRLRLLLRLLRRRLLRLRLRRRLRRRLLLRRLRRRLLLRLLRRRLLRLLLLLLLLRLLLLRLRRLLLRRRRRLLLRRRLRRRLRLLLRRRRRRLLRLLRLRRLRLRLRLRLRRLLRLLLLLRLRLLRLRRLLRRLRLLLLLRLLRLRLRLLLLLRLLLRLLRLLLRRLRLLRLRLLRRLLLLRRLLLRLLRLLLLLRRRRLLRLRLLLLLRLLRRLLLLLRRLLRRLLLLRRRLRRRLRRRLLRLRRLLLLRRLLRRRRRRRRLRRLRLRRRLLLRRLLLRRLRRRLRLLRRLLRLRRLRRRLLRRLLRLRLLLLRRLLLLRLLLLLLRLRRLLLLRLLRLRRLRRRRRLLLRLLLLRRLRLRRLLRRLRLRRRRLLLLLLLRRLRRRLRLRRRRLRLRRLRRRRRLRLLRRRLLRRRRRRRLLLRRRRLRLRRRLLRLLLLLLLLRRLRRRRLLRRRLLLRRRRRLRLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRLRLRLLLLLLRLLLLRRLRRLLLRRRRLRLRLRLLLLLRRLLRRLLLLLRRRLLRLRLLLLLLLRRRRRLLLLLRLLRLRRLRLRLRRLRRRRLLRRLLRRLRRRLRLLRRLLRRLLLLLLRRRLRLRRRRRRRLLLRLLRLLRRLRLRRLLLLLRLRLLLRLRLRLLRRRLLLRRRLRLRRRRLLRRLLLLRRLRLLLRLLLLRLRRRLLLLLLRRRRLRRRLLRLRRLLRLLRRRLLRRRRRLLRLRRRLRRRLRRLLLRLLLRRLLRLRLRLLLRRLLLLRLLLRRLLRRRRLLRRRLLLLLLRRRRLRLLRRRRLRRRRRRRLRLRRLLRRRRRRLLRLLRLLLLLRRRLRLRRRLRRRLRLRLRLRLRLRRRRLLLRRLRLLLRRLLLLLLRRLLLLRLLLRLRRLLRRRRLRLLRLLRRLRLLRLRLLLLRRLLRLLLLRRRLRRLLRLRLRLLRRRRLLRRRLRLLRLRLRLRRRRRRLLRLLRRRRRRLLRRRRLLLRLRLRRRRLRLLLLRLLRLLLRLLLRLRRLRRLRLRLLLLLLRRRRLLLRRLRRLRRLRLRRRRLLRLRRRLRLLRRRRLLRLRLRRLLLRLRRLLLRRRLRLLLRLRRRLRLRLRRLLRLLRRRRLLRRRRRRRLLLRRLLRLLLLLLRLRRLLRLLRLRRRRRRLRRRLRRLRRRRLLLLRLRLRLRRRLLRRRRRLLRRLLLRRLLLLLLRRLRRRLLLRRRRRRRRLRLRLLRLRLRLRRLRRLRLLLRRRRLLLLRLRLLRRLLLRLRRLRRRLRLRRLLLRLLLRLLRRLRRLRLLLLLRRRLRLRRRLLLLLLLRLRRRLLLLLRLRRLLRLRRLRLLLRRLLRRLRLRLLRLRRRLLLLRRLLRLLLLRLRLRLLRLLLLRLLLLLRLLLRLRLLLRRLRLRRRRRLRRLLLRLLRLRRRRRRRLRLRRLLRLRRRLLRRLLLLRLRRLRRRLRLLRLLLRLRRLLLRRRRLRLLLRRRLLLLLRRRLLLRRRRLRRRLRLLLLLRRRRLLLLRRRRLRLLRLRLRLRRLRRLRLRLRLLLRLRRRLRLLRLRRRRRRRLLRLRLRRRLLRRRLRRLRRLLRLLRRLRLLLRRRLLLRLLLLRLLRLRRLRLRLRRLLLRRRRLLRRRLRRLLRRRRRRLLRLLRLRLLLLLRLLLLRRLRLLLRRRRRRRLLRLRLRLRRRLRLRLRLLLLLLLLLRRRRLRRLLRRRRLLLLLLLLLRLLLRRRLRRRRLRLRLLLRLLRLLRLRLRLLRLRRRLRLRLLLLRRRRRLLRRLRLLRLRRLLLLRLRLLRLLRRRLLRRRRRLRLRLLRRRLLRLRLRLRLLLLLLLRRLRLRLLRRLLLRLRRLLRLLLRLLRRLRLRLRRRRLLLRLRRLLLLLRRRLLLLLLLRLLLRRRRRRRLLLLLLRLLLLLLLRLLRLRRRRLLRRRLLLLLLLRLRLRLRRRLLRLLLRRRRRLLRRRLLLLLRRRLLRRLLRLLLRRLLLLRLRLLRRLLRRLRLLRLLLLRLLLLLRLRLLLRLLRRRRLLRRLLRLLLLRLLRLLLLLRLLRRLRLLLLLRRLLLRLLLRLRRRRRLRRRRRRRRLRRRRRRRRLRRLLLRLLRLLLLRLLLLRRRRRLLLRLLLLLLLRLLLRRRLLLRRRRRLLLRRLLLLRLRLLRRRRLLRLLLRRRRLLRLRLLLRLLLRRLRLRRRLRLRRLRLLLLLRLLLRLRRLLLRRRLRLRLRLLRLRLLRRLRLRLLLLRRLRLRLLRLRRRRRRLLRRLLRLRLRRLLRRLRRLLRLLLRRLRLRRRRLRLLLLRLRLRRRLLRRLLLRRRRLRLLLLLLLLRLLLRLLRRRLRLRRLRLRLLLRLRLRLRLLRRLLLLLRRLLRRRLRLLRRRLLLLLLLRRRLLLRLLLLLLRLLRRRRLRRLRRRRRRLRLRRRRLLLRRRLRRRLRRLLLRRLLRRRRLRRLRLRRRRRLLLLLLRLLRLLRLRRLLRRLLRRRRLLRRLLRLRLRLRLLRLRLLLLRLRRLLLRRLRLRRLRLRLLRLRLRLLRRLRLRRLRRRLLRLLRRLLRLRLLRRRLLRLLRRLRLLRLLRRLRRLRLLLRLRLRRRLRLLLLRLRRRRLRRLRRLRRRRRLRLLLLRLRLLLRLRRLRLRRLRRRLRLRRLLRRLLLRLRLLLRLRRLLLLLRLRLLLLLRRRLLRRRRRRRLRLRRRRRLLLLLRRLLRRLLLRRRLLRLRLRRRLRRLLRLRLRLRRRRRRLLRRRLRRLRRLLRRRLLRRRRLLRRRLRLRRRRLRRLLLLRRRRRRLLLLLRLRLLRLLLRLRLLLRRLLLRLRRRLLRRRLLLRRRRLLLLRRRRRRLLLRLLLLRLLRRRRLRLLRLLRRRRRRLLRRRRLRLLLRLRRLLLLLRRRRRLLLLLRRLLRRLLRLLRRLLLRRLLRLLLRRRRLLLRRLLLRLRRLLRRRLRRLLLLLRLLRLRRLRLRLLRLRRRRRRLRLLRRLLRLRLRLRRRLLRRRLLLLLLRRLLRLRLLRLLLLRRLLLLRLLRRRRLLLRRRRLRLLRLLRLLRRRLRLRRRRLLLRRLLRLLRRLRLRRLLRLRLLRRRLLRLLRLRRLRRLRLLLLLLLLRLLRLRRLRLRRRRRLRLLLLRLRLRLLLLLRLLRLRRLLRLLLRRRRLLRLRLRRLLLRLRRRRRLRLRLRLRRLRLLRLLRRLRRRLRRLRRRLRLRRLRLRLRRLLLLRRLLRLLRRRRLRLLRRRRRLRLLLRLLLRLRRRLLLLLRLLLLLRRLLRLRLLLRLLRLRLLRRRLLRLLLRRRLLLRLRRLRLLRRLRLRLRRLLLRLLRLRLRRRLRLRRRLRRLLLLRRRRRRRLLLRLRLLRLLRLRLLRLLLLRLRLRRLLRLLRRLRLLRRRLLLLRLLRRRRLLLRRRRRRRLRRLRLLRLRLRLRRRRRRRRLLRRRLRRLRRRRLLRLLRRLRRRRLLRRLLLRRRLLRLLRRLRRLRRRRLLRRLLLRLLRRLRRRRLRRRRRRLRRLRRRRLLRRRLLLRRLLLRRRRRRRLLRLLRLLRLRRLLRLLLLLRRLRLLRRRLLRRRRRRLRRLRRLRLLRRRLLLLRRRLLRLRRRRLLLLRLLLLLRLLRRRRRLLLLRRRLLLLLRLLLRLLRRRRRRLRRLRLLLLLLRLRRRLLRLLLRLLRLLLRLRLRLLRRRRLRRRLLLLRLRRRLRLRLLLLLRLRLLLLRLLRRRLRRLLLLRLRRLLRLLRRLLLRLLRLLLRRLRRRLRRLRRLLLLLLLLRRRLRRRLRRLLLLRLLRRRRLRLRRLLRRLRLRRLLRRRLLLLLRRLLRRRRLLLRRLLLRRLLLLRRRRLRLRLLRLRRLRLLRLRLLRLRLLRRLRRRLLRLLRRLRLLRLRLRLRLLLRRLLRLLRLLRRLLLLLLLRRLRRRRRRRLRLRLRLLRRLLRRLRLLLRRRRRRLRLLRLRRLLRRRRRRRLLLRRLRLLRLLRLRLLRLLLRRRRLRRRRRRLLLLRRRLRLLRLLRRLLRLRRLLLLLRLRRRRLRLRRLRLLRLRLLLLLRLRLLLRRLLRLLRLRRLRRLLRLRLLRLLLRLLLRRLLRRRRLRRLRLRLRRRLRLLLRRLRRLLLLLLLLRLLRLLRLLLLRLLLRLLLRLRRRRRRLRRLLLRLLRRRLRLRLRLLLRLRRLLLLRLLRLRLLRLLRLRRRLLLRRLLRLRLRRLLLRRRRLLLLLLLRLLLRRRLLRLRRLLLLRRRRLRRLLLRRRLRLLLLRRRRRRLRLRRRRRLRRLLRLLRRRRLLLLLRRRLRRRRLLRLLLLRRLLLRRLRLLRRRRRLLLRRRLLLLLRLRRLLRLLLRLRRLRRLLRLRLRRLLRRRRLLLRRRLLLLRLRLRRRLRLLRRRLRLRRLLRRLLLRLLRLRLLLRLRRLLLRLLLRLLRRRLRLRLLRLLLLLLRLRLRRRRLLRLRRRLRLLRRRLRRRRLRRRLRLLRLRRRLLRRLLRLLRLLRLRLRLRRLLLRLLLLLRLRRRRRLRLRLRLLLLRRLRRLLRLRLRLLRLLRLLRRLRLRLLRLRLRLRLRRLLLRLRRLLRLLRLLRLRLRLLRRLLRLLRLLLLLRLLLLRLLRLLLLLLLLLLLLLLRLRRRLRLLRRLLLRLLLLRRRRRRRRLRLRRLLRRLLLLRLLRLLRLRRLLRLLRRRLRLRRLRLRRRLRRLRRRRRRLLLLRLRRLLRRLLRRRLRRRRRLRRLLRRLRLRLLRLRLLLLLRLRLLRLLLRRRLLLLRRRLLRLRRLLLLRLLLLLRLRRRRRLRRLRRRRRLRRLLRLLLLRRLLLLRLLLLLRRRRLRRLRLLLLRRRRRLRRLLLRRRLRLRRLRRLLRLRLLRRRLLRRRLLRRLLRLLLRLLRRLLLRLLLRRLRRRLLLLRRLRRLLLLRRLLRLLRLRRRLLRLLLLRRLRLLRRLRLRLLLLLRRLLRLRLRLLLLRRLLRLRRLRRLRRLRRRLRRRRLRRRRRRRRLRLLRLLRRRRRRRLLRLRLRRLLRLRRRLRRLRLLRLLRLLLLRRRLLRRRRLLLLLRLRRLLRRRLRLLLLLLLLLLLLLLLRLLRLLRRLRRRRLLLLLLLLLLRLRRLLLLLLRLRLLRLLRLLRRLRLLLRLRRRRLRLRLRRRRRRRLLRRRLLLLRRRRRLRLRLLRLRRLRRLLLRRRLLRLLRRRRLRLLRLLLLRRLLLLRRRRRRLLRLLRLRLLRLLLRRRLLRRRRRRRRLRRLLRRRLLRLLRLLRLRLRLRRLRRRLLLRLRLLRRRLLLRRLLLLRLRLRLRRLRRLLLRLRRRRLLLLRLLLRLLRRLRLRRLRRRLRLLLRLRLRRLLLRLLRLLRLRRRLLRRRRLRLLLLLLLRLRRLLLRLLRLLLLRLLLLLRRLLRLLLLRRRLRRRRRLLLRRRRLLLRRLLLRRRRRRLLRLRRRLLLRRRRLRLRRLLLRRLRLRRRRLLLRRRLLLRRRLRRLLRRRRRRLLLLRLLRRRRLLRRRLLLLRLLLLRRLLRLLLRLRLLRLLLLLLRLRRRRLRLRLRRRLLRLLLRRRRLRLLLRRRRRLLRRRRLRRLRRRLRLLLRLRRLLRRLLLLRLLLRRRLRRLRRLLLLLLRRRRRRLLLLLRLLRRLRRLRRRLLRRRRLRLLRLRRLRLLLLRRRRRRRRLLLRRRRLRLRLRRRRLRRRLLRLLRLRLLLLRLRRRRLRRRRRLLLRRLLLRRRLLRRRRLRRLRRLRRRLRLLLRLRRLLLLLLRRRLRLLRLLRRRRRRLLRRLLLRLLLRRLLLLLRLRLLLRLRRLLLLLLLRLRLRLLRRLRRRRRLRRRRRRRRLRLRRRLRRLRLLLRRLLRLRRLRRRLRLRRRRRRLLRRLRLLLLLLRLLLRRRLLLLLLLRRRRLRRRRLRLRLLRLRLLRRLLLLLLRRLLRLLRRLRLLRRRLRRLRRLRLRLLLLRRLRRLLRLLLLRLRLRLRLLRRRRRLLLRRLRLRRLLRLRLRRRLLRRRRRRRLRRLRLLLLRRLRLRRLRRLRLRLRRRRRRLRLRLRRLRLLLLRRLRLRLLLRRLRLRLLRRLRRLLLRLRRRRRLRRLRRLLLRLLRLRRLRRLRRRRLRRLRRLLRRRLRRLLRLLRLLLLRRRLLRLLLLLLRRLRLLLRLRLLLLLRLLRRRLRLLRRLLRRRLRLLLRLRLLLRRRLLRRLRLRLRLLLRLLLRLLLLLLLLLLRLRLRLRRRRRLRLRRLLRRLRRRLLLRLRRRLRLLLLRLLRLLRRLLLRLRLRLLRLLRLLRLRLLRRRRLLRLLLRLRRLRLLRLRLRRRRLLLRLRRLRLRLLRLLLLLRLLLLLRRRRLRLLLRLRRLRLLRLLRLLLRLLLLRRRRRLLRRRLRRLRLLRRRRRLLLLLRLRLRRLLRRLLLLLLRRLLRRRLRRLRLRRRLLLLLLRLLRLRLRLLRLRLLLRLLRRLRLLRRRLRLRLRLLLRLLLRRLLRRRLLLLLLLRRLLLLLLLLRRRLRLRLLRRRLRLLLLRRLRRLRLRLRRLLRLLRRLRLRLLLRRLRLLLRRRRRRLLLRLLLLRRLLRRRRRLRRRLRRLLRRRRRLLLRLLLLRRRRLLRLRLRRRLLLRRRRLRRRLLRLLRLRRRLLRRRRRRRRRLLLRLRLRRRRLLRRLRRRRRLLRLLLRRLRRRRLLRLRRRLLRRLLRRLLLRRLLLRLRRLRLRLLRRLLLLRRRLLRRLRLLLRLLLLLLRRLLLRLRRRRLRLLLLRRLLLRLRLLLLRLRLRRRLRRRRLLLLLRRRLRRRRRLLRRLLRRLLRLRLLLLRRLRLLRRRRLRLRRLRRLLRLRLRLLLLLRLRLLRLLLLRRLRRRLRRLRRLRLLLLRLLLRRLLLLLLLLRRRLRLLLRLLLRRRLLLRLRRLLRLRRLLRLLRLRRLRRRLLRLLRLRLRLLLLRLLLRLRRRRRRRRRLRRLLRLLLLRLLRRLRRLRRLRLLRLRRLRLLLLRLRLLLRLRRLRLRRLRLLLRRLRLRRLRRLRLLRLRLLLLLRLRLRLLRLLRLRRRRLRRRRLRRRRRRLRRRLLRRRLLRLRLLRLLRRLRRRRLLRRLLRLLLLRRLLLRRRRLLLLLLRRRRLRLRLLRLRRLLRRRRRRRRLRRLLRLRRRRLRRLLRRRLRLLLRLRRLLRLRRRLLRLLRLLRLRLLLRLRRLLLLRLRRRRRLLLRRLLRRLLLRRLLLLLRLLLLLLRRRRRLLLRRRRRLLRRRRLRLRLLRLLRRRRLLLLLRLRLLLLRLRRRRRRLLRLRRRLLLLRLRLLRLLRLLRLLLLLLRRLRRLRRRRRRRRRRLRRLLLLRRRLLRLRLRLRLLLRLLLLLRRRRRRRLLRLRRLLRRRRLRLRLRRLRRLRLLRLRLLLRLLLLRLLRLRLRLRRRLLRRLLRLLRLLLRRRRRLLRLRRRRLRRLRLLRRRRLLLRRRLLRLLLLRRLRRRLLLLLLRLLLLLRRLLRRLRLLLLRLLLRRLLLLLRRLLLLLLRRRLRLLLRRLRRLLRRLLLRLRRLRRRRLLLRRLRLRRLLRLRLRLLRRRRLLLLLRLLLRLRLRLRRLRLLLLLRRLRLLRRRLLRLRLRLLRRLLRLRRLLLLRLLRRRLLRRLRLLLRRRRRLLLRRRLRLLLRLRLRLRRLLRLLRLLLLLRLRRRLRRLRLRLRRLLLRRRRRLLRLLRLRRRLLRRRRRLRLLRRLRLRLLLRRRLLLLRLLRLLRLLRLRRRRRLRLLRLLRRLLLRLRLLRLLLLRLRRLRRLLRRRLLLRRLLRLRLRLRLLLLRLRRRRRRLRRLLLLLLLLRLLLRRRRRRLLLLRRRLLRLRLLLLRLLLLLLRLRLLLLRRLRRRLLLLLLRRLRLLLRRRLRLRRRRLLLLRRRLRRLLLRLLLRRRLLRLRLRLLRLRRRLRRRLLRLRLRLLRLRRLRRLRRRLLLLRRRLLRLLLLRLRRRLLRLLLRRRLLRLLRRLRLLRLRRRRRRLLRLRRRRLLLLLRRLRRLLRLRLRRLLRRRLLLRRRLRLRRRRLRRLLRRRLLLRRLLRLRLRLLRRRRRLLLRRRRRRRRLRRLLLRRRRLRRLRLRLLLLLRRRRLLRLRLLLRRLRRLLLLRRRLLLLRRRRLRRLRLLLRLRLRRLRLLLRRLLRRRRLRRLRLRLRRRRLRRRLRRLRRLRRRRLRLLLRRRLRLRLRLLLLLLLRRRRRLLRRLLLRLRRRLRRRLRRLLRRLRLLLLRLRRRRLRLRRLRRLLLRRLRLRLRLLLRRRLLRRRRRRLRRLLRRRLRRLRLLLRRLRRRLLRRLLLLLRLRLLLRRRLLLRLRLRLRLLLRRRRLRRLRRLLRRRRRRLLRRLRRRRRRLRLLRRLRRLRRLLLLRRLRLLRLRRRLLRLLRRLLLRLRRLRLRLLRLLRLRLLLRRLLLRRLRLLRLRLRLLLLRLRRLLLRLRRLLRLLRLRLLLRLRLLRLLRRRRLRLLLLRRLLLRRLLLRRLLLRRRRRRLLRRLRLRRLLRLLRLRRRRRRLRRRRLLLLLRLLRRLLRRLRRRLLLLLLLLLLRLLRRRRRRRLRLLLLLLLRRRLRLRRRLLLLRRRRLLLLRLLLLLLLRRRLRLLLRLLLLRRRRLRRLLRRRLLRRRLLRLLLLLRRLRRRLRRRLRRLLLRRRRRRRRLRLLRRRLLRRRRRRLLLLRRRLLRRRRLRLLRLLLLLLRRRLRRRRLLRRRLLLRLRRRRRLLRRLLLRRRRRLRRLLRLLRRRRLLLRLRLRLRRRLLLRRLLLLRRLLLLLLLLRRRRLRLLLRLLLRRLLRRLRLLLRRRLLLLRRLLLRRRRRRRRLLLLLRRLLRRRLRLRLLRLRRRRLLLRLLRRRRRRLRLRRRLLRRLLLLLLRRRRRLRLRRRRRLLLRLLRRLLLRRLRRLLLLRRLRLLLRLRLLLLRLRLLLRRRRRLRLRLLRRRRRLLRRLRLRLLLRLRRLRRRRLLRRLLRLRLRRRLLRLLRLLLLLLRRRLRLRRRLLRLLRLRRRLLRLLRLRLLLRRLLRLLLRLLRLRLRRLLLLRRRLLLLRRRLRRRLLRLRLLRRRRRLRRRRRLLRRRRRRLRLRRRRRRRLRRRLRRLRRRLLLLRRLLLRRRRRRLLRLLLRRRLRLRRRRLLLRRLRLRLRLLLLLLLLLRLLLLLLLRRRLLLLRRLLRLLLLLRRRRLLRLRLLLLLRLLRLLLLRLRRRLRLRLRLRLLLRRRLLRRRLRLLLLRLRLRLLRRRLLRLRLRRLRRLLLLRLLRRRRLRRRLRLLLLLLLLLRLRLRLLRRLRRLRLRRRRLLLRRLRRLRLLLRRRRRRRLLLLRRLRLLLLRRRLLLLRRLRLLRLRLRRLRLRRRRRLLLRLLRLLRRLRLRLRLLLRRLRRLLRLRLLLRRRRRRRRLLLRLLLLRLLLRRLRRLRRLLRLRRRRRRRRLLLRRLRRRRLRLLLLRRRLRRRLLRRRRRRLLRLLLLRLLLLLLLLLRRRLLLRRRRLRRLRRLRRRRLRLLLRRRRLRLLLLRRRLRLLLRLRRLRRLLLRLRRLRRRLRLLRLRRLRLRRRLRRLRRLRLRLLRRRRLRRLRRLRRLLLLLRLRRLLLLLRLLRLRRLRRLLRLRLRRLRRLRLRLLRLRRRRLRLRRLLRLLRLRRRLRRRRRLLLRLLLLLRRRLRLRLLLLRLRRRRLLRLRRLLLRLLRLRRRRLRRLRLRRRLRLRRRLLLRLLLLRLLLLRLLLLRLRRLLRLLRRLLRRRLLRLRRRRLRLRLLLLRLLLRLLLLRRRLRRLLRRRRRRLLLRRRLRLRLLLLRLLLLRLRRLLLLLLLLLRRLRRLRRRLLLRRRRLRLLLRRLRRRLRLRRLRRLLRRRRRLLLLRLLLRRRLLLRLLLLRLLLLRRRRLRRLRLLLLRRRLLRLRRRRLLLRLLLLLRLRLRLRLLRLLRLLLLLLLRLRLRRRLRLRLLRRRLLRRRLLRRRLRLLLLLRLLLRRLRLRRLRRRRRLLLRLLRLLRLRLLRLLRRLLLRLRLLLLLLLLLRLRLRLLLLLRLLRRLLLLLLRRLRLLRLLRLRLLRRLLLRRLLLLRRLRRRLLLRLRRRRLRLLLRRLLRRRLRLLLLLLLRLRLRRLRRLRRLLLLLLRRLLRLLRLLRRLRLRLRLRLLLLRLRRRLLLLRRRLLLLLLLRLRLRLRRRRRLLLLRLRRLRLLRLRLLRRRRRRLLRRRLLRRLRRRLRLLLLLRLLRRLRRLRRLLLRRRLRRLLRRRLLRRLRLRLLRRRLRRRLRRRRRLLLRLRLRRLLLLRLLLLLRLRLLLRRLRRLLRLRRLLRLLRLRLLLLLRRLRLLRRLLLLLLLLRRLLRLLLRLRLRLRRRRRRRRRRLRLRLRRRLLRRLLLRLLRLLLLRLLLRRLRRRLLLRRLLRLLLLLLLRRRLLLRLRRRRRRLRRLLLRLLLLRRRRLLLLLLRLRRRRRRRLLLLLLRLRLRLLRRLLLRRLRRLLLRLLLLRRRRLLLLLRLRRRLRLLRLRLLLRLRRRLLLLRRLRLRRLRLRRRRRLLLRRLLRLRLRRLRRRLRRRLLLLLRLLLRLLRRRLLLLLLLRRRRRLRRRLLRLRRLLRLLLLLLLLRLLLRLLRRLLLLLRLRLRLLRRLRLRRLLLRLLLLLLRRLRRRRLRLLRLRLLLLLLLRRLRLRRLLLLLLLLLRRRRLRRLRLLLLRLLRRLRLLLRRLRLRRRLRRRLRRRRRLRRLRRRLRLLRLRRLLLLLRRLLRLRRRLRRLRRLLLRRRRRRRLLRLRLLLRLRLLLLLLLRLLRRRRRRLLLRLLLLRRLRRRLLLLRLRRLRRLLRRLLRRRRLLLRLLLRRRLRRRLRRRLRLLRLLRLRLLLRLLLRLRLRRLLRLLLLRLRRRRLRLLRRLRLRRRLRLLLLLRRLLLRLRRRRRRRLRRRRRRRRLLRRRLRLLLLLLRLRRLLLLRRLRLLLLLRLRLLLRLRRRRLRLRRRRLLLLRRRRLLLRLLLRRRLLLLRLRRRLLRLLRRRLRRRRLRLRRLRRRLRRLRRLRRRRLRRRRRLLRRRLLLLRRRLRRLLRRRRLRLRLRRRLRLLRLRLRLLLRLLLRLLLLLLLRRLLRLRLLLRRRRLLLRRRRRLLLLLLLRLLLLRRRRRLLRLRLLRRRRRLLLRRRRLLLLRRLRLLRLLLLLLRLLLLRLRRRLRLLLRLRLRRRLRRLLRLLRRLRLLLLLRLLLRLRRLLRLLLLRLRRLLRLLRLRLLRLRLLRLLRRRRRLLRLRRLLRLLLRLLRRLLRRRRLRLLLRRLLRLLLLRLLLLRRLLLLRLLLRRLLRRRRRRLRRRRLLRLRRRRLRLRRLRRLLRRLRLLLRRLRLLRRLRRRLLLLRRLRRLRRRLRRRRRLLLLLLRRRLLRLRRLLRRRRLRLRLLLLLLRLRRLLLLRLLRLRRRRLRLRRRRLRLLLRLRRLLLRRRLRLRLRLRLLLRRLRLRRLLRRRRRRRRRLRRLLRLLRLRLRLRRLLLRRLLLRLRRRRRRRLLLRRRRRLLLLRLRRRLRRRLLLLLLLLRRLRRLLRRRLLLRLLRRRLLRRLRLRLLLRLRRLLRRRRLRRLRLLLLRLRRLLLLLRRLRLRRRLLLRRLLLRRRLLRLRRRLRRRRRLRRLRRLLLRLRRRLLLRLLRRRLLRRLLRLLLLRRRRRLLRRLRLRRRLLRRRRRLRLLRRRRLLLRRRLRRLRLRRLLLLLRLRLLRRRRRLRLLRRRRRRRLLLRLLLLRRLRLLLLRLRRLLRLRRLRRLRLRRLLRLLRRRLRRRRRLRRLLLLRLRLRLRRLRLLLLLRRRRRRRLLRLLRLRLLRRRLLRLRLLRRRLLRRRRLLRRRRRRLRRLRLLRLLLLRRLLRRRRRLLLRRRRRLLRRLLRLLLLLRRRLRLLRRRLRLLRRLLRLRRRLRRLRRRRRRRRRLRLRLRRRRRLLLLRLLRRRRLRRLLLLLLRLRRLRLLLLRLRLRRRRRLRRLLLRRLRRLRLRRLRLRLRRLLRRRLLRLLLLLLLRRLRLLRRRLRLRLRRLLLLRRLLLLRLLRLLRLRRLRRRLLRRLLLRRRRLLLLLRLRLRRLLRLLRRRLRRLLLRRLRRLLRRLLRLLLRRLLLLRLRRLRLRLLRRRLLRLLRLRLLRRRRLRRRRRRLLRRLLRLRRLRRRRRLRRLLRRLLRLLLRLRRLLLLLLRRRLLLLLLRRLRLRLLRLLLRLRRLRLLLLRRRRRLRLRRLRLLRRLRRLRRLLLRLLLLLRLLLLRRLRLLLRLRRLRRRRRRLLLLRLLRRLLRLRRLLLLLLLLRLRRLLRLRLLLRRRLRLLLRRLLRLLLLLLLLRLRLRLLRLRLLRRRLRLLLRRLLLRLLLRRLLRRRRLRLLLLRLRRRRRLLLRRLRRLRRRLRLLRLLRLLRRLRLRLRLRRLLRLLLLRRRLRRLLLRLLRRLLRLRLLLLLRRLRLLRLLLLLLLLLRRLRRRRLLRRRRLRRRRLRRLLRRRLLLRLLLLRRLLLRLRLLRLRRLLLLRRRLLRRLLLRRLLRRLLLRRRLRRLLLLRRRRLRRLRRLLRLLRRLRRLLLRLLRRRRLRRLLLRRLLLRRRRRRRRRRRLLLRRLRLLLLRLRRLLLLLRRLRRLLLLRRLRLRRRLRRRRRLLRRRLLLLRLRLRLRLRLLRLRLLLRRLLRRLLRRLLRLRLRRRLRRRLLRLRLRLLLLRLRLRRRRLLLLLRLLRRRRLLLLLLRRRLRLRLRRLRRRRRRRRLRLRRLRRRLLRLLRRLLLLLLRLLRLRRRLLRRLLRLLLRRLRRLRLRLRRLLLRRLRRLLRLRLRRLRLLLLLLRLRLLLLRRRLRRRLLRLRLRLLRLLRLLRLLLLLLRLLRLLLRLLRLRRLLRRRLLLRLRLRRLLLLLLLLRLRRLLRRLRLRLRLRLRLRLLRLRRRRLRRRLLRLLRRLLLLRLLRLRRLRRLLRLLRLRLRRLRLRRRRLLRRLRRRRRRLLRLLLRRLRLRLLRLRLRLLRRLRRLLRRLRLLLLRLRLLLLRRLLLRRLLLRRLLRLLRRRLRRLRRLRLLRLLRLLRLRRRRRLRLLLLLRRRRRRLRLRLLRRLLLLLLRRLLLRRRLRLLLRLLRRRRRRLRRLLLRRRLRLRLLRLRLLLRLRRLRLLLLRLLLLRLLLLLRLLRRRLRRLRLRRRRRRLLRLRRLRRLRLLRLLLRLLRRRRRLLRRRLLLRLRLLRRLRLRLLRRLRLRLRLLLLLLRRRLLRRRRLLRRLLRLRLRLLRRRLRRLLRRRRLRLLRLLRRRRRRRRLRLRLRLRRRLRLRLRRLRRLRLLLRLRLRLRLRRLRRRLLRLRLLLLLRLLLRLLLLRLLLLLLLRRLLLLRLLRRLRRRRLRLLLLLLLRLLRLLRLLLLRRRRLRLRRRLLRLRRRLRRRRLRLRLRLRRRRRRRRLRLLLLLLLLLRRLRRLLLLRRRLRRLRLRLRRLRLLLRRRRRRLLLLRRRRRLLRRRLRRLRLLLLRLLLRLLLLRRRRLRRRRRRRRLRRLLLRRLLLLLRLLRLRLRLRRLRRRLRLLLRLLRRRRLLRRLLLRRLRLRLRRLRRLLLRLRRRLLRRLRLLLRLRRRLRLRLLRRRLRLLRRRLLLLRRLLLLRLLRRRRRLLLRRRLRLLLLRLLRLRRRRLRLLRLLLLLLRRLRRRRLLLRLLLRRLRRRRLLLLRRRRRRRRLLLLLLRRRRLLRLRRRLLLRRRLRLLRLLLLRRLRLRRRLLRLLLRLLRRRRRLLLLLRRRRRLLLLRLRRRRRLLRLRRLLLRLRLRLRLRRRRLLLLLLRLLLLRRRLRLRRLRLLRRRRLLRLLLRRRRLRRLLRRRRRRRRRLRLRRLRLRLRLLRRLRRRLRLLRLRLLRLRRLLRRRRRLLRLRLRRRRRRRRLLLRLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRRRLRLLLLRRLLLRLLLRRLLLRRRLRRLRLLRLLLLRLLLRRLRRRRRLLLLRLLRLLLRRLRRRLRRLRRLRRRRRLLLRLRLLRLLLRRRRLRLLRLLLRRRLLLLLLLLRLRLLLLRLLLLRRRLLLRLRLRLLLLLLRLLLLLLLRLRRLLRLLRRLRRLRLRLRRLRRRLLLLLRRRLLLLLRRRRRLLRLRRRLLLLRLLRLLRLLLLRLRLLLLLLLLLRLRLLLRRLLLLRLRRLLLRRRRLLLLLRLLLLLLRRLRRLRRRLRRLRRRRRRLRRLLLLRRLLRRLLLRLRLRLLLLLLRLRLLLRRRRLRLLRRLLLLRRLLLRRRLRRRRRLRLRRLRLLRLRRLRRLRLRLRRRRRRRRLRLRRLRLLLLRRRRLLLLLRRLRRRLRRRLRRLLRRRLLRRRLRLRRRLLRRRRLLLRRRRLRRRLLLRRRRRLRRRRRRLLRLLLRLLLRLRLLRLLLLLLLRLRLLLRRRLRLLLRLLRRRLLRRLRLLRRRLLLRLRLLLLRRLRRRRRLRLRRRLLRRRLRRRLLLLLLLRLRLRRRLRLRRRRLLRRRLRRLRRRRLLRLRRRLRRLLLRRRRLLRRRLRRLRLRLLRRLRLRLLRLRLRRRLLRLLLRLRRLRRLLLRLRRRRLRLRLRLLRLRLLLLLLLRRLLRLLRRRLLRLLLLRLRLRLRRRRLLLLRLLLLRRRRRRRRRRLRRRLLLRRLRRLLRLLRLRLLLLLRRLLLLLLRLRLRRRRRRLRLRRRLRRRLLRLLRLRLRLRRLRLLLRLLLRRRLLRRRLRLRLLLLLRLLLRRRLRLRLLLLLRLLRLLLLLRRLRRRRRLRLLRLRLRLRLLRLRLRLRLRLRLLLLLLRRLRRLLRLLRLLLLLRRRRLRLLLRRLLLLRLLRRRRRLRRLLRRRLRLRRRLLLRLLLLRRRRRLRLRLLRRLLLLRLLRRRRLLLLLLLRLRRRLRRRRLLRRRRLRLLLLRLLLRLRRRRLRRRLRRLRRRLRRLRLLLLRRLLLRRLLRRLRLLRLLLRLLRLLLRLLLRLLRLRRLRLLLLRLLLLLLLLLLRRLRLRRLRRRLRRLLLRLRLLLLRLRLLRLRLLRLLRRLRLRRRLRLRLLLRLLLLLRLRRRRLRLRLRLLRRLRLLRRRLLRLLLRLRLRRRRLRLLLLRLLLRLRLLRRRRLRLLLRRLRRLRLLRLLLRRRRLLRLLLRLLRRRRLRLRLRLRRLLLLLLRRRLRLRRLRRRLRLRRLRLRLLLRLRLLLLRLLRLRRLRRRLRRRLRRRLRLRLRLRRRLLLRRRRRLRRLLLLLLLRLRLLRLRLRLLRRLRRLRLRRLLLLRRRLRLRRLLRRRLRRLRRLLLLRRRLRLRLLLRRLRRRLRRRRLRRRRRRLRRRLRRRRLLRRRRLRRRRRLRRRRRLRRRLRLLLLRRLLRRRRRRLRRLLRRRLLRLRLLRRRRLLLRRLRRRLLRRLLRLRRRRLRRLRRRRLRLLLLLLRLLRLRRRLRRLLRRLRLRLLLRLRRLLLLRLRRRRRRLLRRLLRLRRLLRLLLLRRLLRRLLRLRRLLLRRLLRRRLRLLRLRLLLLRRLRRRLLLRRLRLLLRRRLRRLRRRRLRLRRRLRLLLRLRRRRRLRLLLLRRLLRRRLRRLRRRRRRRLRRLRRRLRLLRRLLRLLLRLRLLLLRLLLRRRRRRLRLLRLLRRLRLRRLRRRLRRLRRLRLRRLLLLLLRLLLRRLRLRLRLRRLRLLRLLRLRRRLLLRLRRLLRRRRRLLRRRRLLRRLRLLLRRLRLRLLLLRRLRLLRLLLLLRLLRRRRRLRRLRLLLLLRLLLRLRLLRRRRLLRLLLLRLRRLRLRRLLRLLRRLRLRLLRLRLRLRLRRRRRLRLLLLLLLLLLRRLLLLRLLRLLRRRRRLLLRLRLLRRLRRLLRRRRRLLRLRLRLLRLRLRRRRLLLLRLRRRRRLRRRRLRLRRRLRLRRRRLLRLRLRLRLLLRRLRLLLLLLLLRRRRLRLRRLRLRLRRLLLRLRRRLLRLLRRRRRLLRLLRRRRRLRRLRRRLLLRRRRLLLLLRRLLLRRRLRRLRRLRLRRLLRRLLLRLRLRRLLLLRRLRRRLLLRRLLLLRLLLRRRLLLRLRLRRRRRRRLRLRRRRLLLRRLRLLLRRLRLRRRLLRRRRLRLLRLLLRLRLLLRLLRRLLLRRRRRLLLLRRLRRLLRLRRRRLRLLLRRLRLLRRLRRRRRRRLLRLLRLLLLRRLLLLRRLRLLLLRRRRLLRRLLRLLLRLRRRRRRLLRLLLLLLLLRRLRRLLRRRLLRLLLLRLLRRRRLLLRLRLRRLLLRRLRRRLLLRLLLLRLLLRLRLRRLLRRLLLLRLLLRLRRRLLRRLLLRRLRRRRLRRLRRRRLRRLRLRLLRRRRRRLLLRLLLLRRRRLRLLRLRRLLLLRRRRLLLRRLLRRRLRRRLRLLRRLRLLRLRRLRRRRLLLRRLRRRLRLLLRRLRRRRRRLRRRLRLRRRRLLRLRRRLRRLRRRRLRRLLRRRLRLRLRLLLLLRLRRRRRLLRLLLRRLLRLLLLRLRRLLLRLRLLLLRLRRRRLRLRRLRRLLLLRRLRRRRLLLRRRRLRLRLLLRLLLLRRLLRLLRLLLRRLRRRLLLRLLRLLRLRLRRRRRLLLRLLLLLRLLRRRLRLLRRLRLLLLLRRRRLRRLLRLRRRLRLLRRLRRRRRLLLLRRLLLLRRLRRLLRLLRRLLRRLRLLLRRLRRRRRLRRLLRRRLLRLRLRRRRLLRLLLRRRRLLLRRLRRLLRRLRLRLRLRLRLRRLLRRRRLRLRLRRLRRLRRLLLRRLRLLLRRRRLRRRLRLRRLLRLLRLLRRRRRRRRRRLLLLLRLLRRLLRRLLRLLLLLLLRRLRRLLRRRRRLLLRLLLLLLRLRRLRLRRRLLRRRRLRRRLLRRLLRLLLRRRLLLRLRLLLLLLRRLRLLLLRRLLRLLLRRRLLLLRLLLRLRLRRLLRLLLRRRRRRRLLRLLRRRLLRRRRRRLLLRRLRLRLRRRLRRLRLLLRLLRRRRRRLLLLRLRLLLRLRLRRRLRLRLLLRLRRLLRRLRRLRRRRLRLLRRRLLRRRRRRLRRLLLLLLLLLLLLLLRRRRLLLLLRLLRRRLRRRLRLLLRRRRLLRRRLLLRRRLRRLLRLLRRRRLLRRRLRLRLLLRRLLRLLLLLLRLRRRRRLLRRLLRRRLLLLRLRRRRRLRLLRRLRRLLRLLLRLLLRRLLRRLLLRRRRLRRRRRLLLLRLRLLRLRLRLLRLRLRRRLRRRLRRLRRRLLRRLRLRRRLRLRRRLLRLRLRRRLLRLLRLLLLLLRRRRLLRRRRLLLLRLRLLLRLLLRRLRLLLRLRRRLLLRLRLRRRRRLLLRRRRLLLRRRLRRRRLRRRLLRRLRRLRLRRRLLRRRRRRLLRRRRRRRRLRLRLLRLLRRRRLLRRRLRRRRRRLLLRLLRRRLRRLRRRRLLLLLLRLRRRLRLLLLLLLRLLLLRLRLRRLLLLRLLLLLRLLLLRRRLRLLLLLLRLRLRLRLRLRLLRLLRLRLLRLLRLLRLLLRRLRRRLLLRLRRLLLLRRRLLLRLRRLRLLLLLRLRRRRRLRLRLRLLLLLLLLLLLRLRLRRRRLRLRLRLRLLLLRRLRLLRRLLRRRRRRRLRLLRLLRRRLRRLRRLRRRLLRRLLRRLLLLRLRRRLRRRLRLLRLRRLLRLRLRLLLRRLRLLLRLLLLLRRRRLRRRLRLRLLLLRRLLRRLRLLRRLLLLLRRRRRRLLLLLRLRRLRLRRLLRRRRRRRRRRRRRRRRLLLLLLLRRRRRLRLLRRLLLLLRRLLLLRLRRLRRRRLRLLLRLRLLRLRLLRRRLRLRLLRRRLRLLRLLLRLLRRRLRLLRLRRLRRRLRLLLLRLRRLRLLRLRRLLRLRRLRRRRLLLRLRRLLLLLRLLRRRLRRRLLRLRLLRRLLRRLRLRRLRRLRLRLRRLLLLRRLRRRRRRRRRRLRLLRRRLRRRLLLLRLLLLLLRRRLLRLRLLLRRLLRLLRRLLRRLLLRLRLRRLLRRLLLLLLRRRLLLRLLRLRRRRRLLLLRRLLRLRLLRRRRRRLRLRLRLLRLRLRLLLLRRRRRRLLRRRLRLLLLRRRLRLRLLLLRRLLLLLLRRLRLLLRLLRRLRRLRRRLLLLRRRLRLLLRLLLRRLRLRRLLLLLRRRLRRLLRLLLLRRLLLLRLRLLRLLLRLLRRRRRLRLLLLLRRRRLLRRLLLRLRLLLLLRLRRLLRLLRLRRLRLLLLRRLRLRLRLRLRRRRRRLLRRRLLRRRLLLLLLLRRRLLRLRLRRRRRLRLRRLRRRRRLLLRLLRLRRRLLLRRRLRRLLLLRLRLRLRLLLLLRLRRRLRLRRLRRLRRRLLLRLRLLLLLRLRRLLLRRRLRLRLRLRLRLRRRLLRLRLLLRRLRRLLLLLLLRLRLRRRLRRRLLRRLRLRRLLRLRRLLRLLRLLLRLRLLLLLRLRRLLLRRRRLLLLLRLRRRLRLRRLRLLLLLRLRRLRLLRRLLLRRRLRRRLRRRRLRRLRRLRRLLLLLLLLRRLRLLRLLRLRRRLRRLRRLLLRRRRRLRLLRLRRRRRLRRRRRLLLRLRLRLLLLLRLLRLLLLLRLLLRLRLLLRRRRLLRLLRLLLLLRRRRLLRRLLLLLLRRLLRRLRRRLRRLRLRLRRLRRRLRLRRRLRLLRRLRRRLLLRLRRLLLLRLLLRRLLRLRLRRRRRRRLLLLLRRRLLLLLLLLRRRRLRRLLLRLLRLRLRLLRLRLLRLRRRRRRRRLLLLLRLRLLRLLRLLRRLLRRLLLRLRRRRRLRRLRLLRLRRLLRLLRLRLRLRLRRRRRRLRRLLLRRLLRLRLRRLRLRLLLRRRRRRRRRRLRLRLLLRLRLLLRLLRRRLLLRLLLLRRRLLRRRLRRLRRLRRLLLLRLRRRLLLRLLRLLLLLLRLRLLLRRRRRLRRLLRRLRLLLLRLRRRRLRRLLLLLLLRLLLRLRLRLRRLRLRRLLLRRRLRLLRLRLLLLRRLRRLRLLLRRLRLRRLLLRRLRRLRRLLLLRRLLRLLRLRLLLLLLRRLLRLRLRLLRLLRLRLLLLRRRLRRRLRLLRRLRLLLRRLRRRLLRRRLLLLLRLLLRRRLRRRLLLLRLRRLLRLLLRLLLRRLLLLRLLLRRRLRRRLRRRLLLLRRRLLRLLLRLRLRLRLLLLLLLRRRRLRLLLLLLLLLLRLRRLRRLLRRLRRRLLRRRRRLRRRRRRLRRRLRLRRRRLRLRLRLLLLRRLRLLRRLRRLLLRLLLLLLRLLRLRLLLLLLLLRRLRRLRLRLLRLLRLRLLLRRRRLRRLRLLRRRLRRLLLRLRRRRRRRRRLLRLRLRRLRLRRRRLLRLLLLLRLLRRLLRRRRRLRLLLRRRRLLLRLLLRLLLRLRLLLLLLLRLLRLLLLRLLLRLLRLRLRRRLRLLLLLLLRRRLLRRRRRLLRLRRRRLRLRLLRLLRRRLLLRLLRLLRLLLLLLRLLRRRRRRRLRLLLRLRLRRRLRRRLRRLRLLRLLLRLLRLLLLLLLRLLLLLLRRRLLRRLLLRLLLRRLLRLLRRRRRLLRLRRLRRLLLRLLRRLLLRRRLRLLLRRRLLLLLRRLRLRLRLLLLRRLLLRLLRRRRRRLLRRRLLRLRRRLLLLRLLRRLLRRRRLLRLLLRRLRRLLRLLLLLRRLRRLLRRLRRRRLLLLLRLRRLLLRLLRLLRLRRLLRLRRRLLLRLRRRRRLRRRRLRRRRLRLRRRRLRLLRRRLRLLLRRRLRLRLLRRRLLRLRLRRLLLRRRLLRRRRLRLLLRLLRLLRRRLRRLLRRLLRLRRLLLRRRLRLRRRRRLLRRLLRRRLRRLLLLLRLLRRRRRLLLRRRRLRRLRRRRLRLLLRLLRLLRLRRLLRRLRRRRLLLLLLRLLRLLLLRRRLRLRRRLLRLRLLLRRRRRLLLRRLRRRRRLLRLRRLLLLRRRRRRLLLLRRLLLRRRLLLLLRRLRRRRRLRLRLRRRRLRLRLRLRLLRRLRLLLRRRLLRLRLLRLRLLLRRLLLLRLLRLRLRRRRRLRRLLLLLRRLLLLRLLLLLLRLRLRLRRRRRLRRRRRLRLLLRRRRRRRLLRRLRLLLLRLRLRRRRLLLLLRLRRRLRLLLLLLLRLLLRRLLRLRRLRRRLRRLRLLLRLRLRRLRRLRLLRLRLLRRLRRLLRRLLLRRRRRLLRRLLRLLLLLLRRLLLLRRRLRRRRRLLRRRRRLRRLRRLRRRRRRLRLRLLRRLRLRLLRRLRRRRRRRLLLLRRLLRRRRLLLLRRRRRRRRRRRRRLLRRLLRLRLRRLRLLRLRLLRRRRLRRRLRRLLRRRRLLRRRLRLRLLRLLLRRLLRLLRRRRLLRRRRLRLLRLRRLLRRLLLRLLLLRLRLRRLLLRRRLRRRRLLLRRLLRLLRRRLRLLLRRLRLRRLLLLLLRRLRRLLLRLLRLLLRLRRRLRRRLLRLLRRLLRLRRRLRRRRLLRRLRLLRRLLLRLRRRLRLRLRRRLLLLLLRRLRRRRLRLLLRLRRLRLLLLRRRRLLRRRRRRLLRLLLRLLRLLRLLRLRRRLLLLLRRRLRLRLRRLRLLLLRLLLLLLLRRRLRRRLLLRLLLLLRLRRLRLLRLRLRRRLRLRLRLLLRLLLLLRLRRLRLLLLRLRLLLRRLRRLLRRRLRLLLLLRRRRRRRRRLLLLRLRLRRRLLLRLLRLLRRRLRLRLLRRLRRRRRRLRRRLRLLRRLLLRLLLRRLLLRLLRLLLLRLLLLRRLRLRLLRLLLRLRLLLRRRLRRRLRRRRRLRLRRLLLRLRRLLLLRLRLRRRRRLLLRLLRLRRLLRLLRLLRRRLLLRRLRLRRLLLRLLLRRLRLRRRLLRRLRRRLLLLLRLRRLLLRLLRLRRLLRLLLRLLLRRRRRRRLRRRRRLLRLLRLLLRLLLLRRLLLRLLLRLLLLRLLRLRRRLRRRRRLLRRLLLLRRLRRLLRLRLLRLRLLLRRLRRLRLRRRLRLRLRRLLLRRLLRLRLLRLLLRLRLRRRRLLLRLRLRRRLRLLLRLLRRLLRRRLRLRRRLLRRRRLRRRLLRRLRLLLRRRRLLRLLRLLLLRRRLRLRRRRRLRLRLLLLRRRLRRLLRRRLRLLRRLRRRRLRRLLLLLLLRLLLRRRRLRRRLLRRRLRRLRLLLLLRLLLLLLRLRLLRLRLLLRRRLLRRRLLLRRRRRRLRRRLRRLRLRLLLRRRRLRLRLRLRLRLLLLRRLRLRRLLLRLLLRRLLRRRLRLRRLLRLRRLLRLLLLRLLLRRLRLRRRLRRRLLRLRRLLRLRRRLRLLLLRLRLLLRLLLRRRRLLLLRRRLRRLLLRRLLLRLLLLRLLRRLLRRLLRRRRRLRLLLRLRLLRLRRRRLRLLRLLLRRRLRRLRRRLRLRLLRRLLRRLLLLLRLLLRLRLRRRRRRRLRLRRLRLRLRLRLRRLRRLLRLRRLRLLLLLRLLLRLLRRRRLRLRRLRRLRRRRRRLRLRRLRRLRLRRLLRLLLRRRRRLRLLRLRRLLLLLLLLRRRRLLLLRRLLLRLRRLRLLLRRRLLRLRRLLRLLLRLRLRRLLRRLLRLLLRRRRLLLRLRLRLRRLLRRRLRRRLRRRRRLLLLLLLRLRLLLRLRLLLLLRRLRRRRLRLRLLLRLLLLLLLLLRRRLLRRLRRRRLLRLRLRRLLLRLLRRLLLRRLRLRRLLRLLLLRRRRLLLRLRRLRLRRRRRRRRLRLRRRLLLRRRRRRLRLLRLLLLLLLRLLRLLLLRRLLRLLRLRLLRRRLLLRRLRRRLLLRRRLRRLRRRLLRRLRLLLLRLLLRLLRLRRRRLLRRRRLRRLRLRLLLRLLLRLRRLLLLRRRRRRRRRRRLLRRLLRRRRRLRRRRRRRLRLRLLRLRLLLRRRLRRLRRRRRLRLRLRLRRRLRLRRLRLRLLRLRLLLLRRRLRLRLLRRLRLLLLLRRLRLLLLRLLLLLRRRRRLRLRLLLLLRRLRLLRLLLRLLLRRRLRRRLLRLRRRLRRRRLRLLLLLRRRLLLLRRLLLLRRRLRLLLLLLLRRLRLRRRLLRLLLRLLRRRRRLLRRLLRLRRRRLLRRRLRRRLLRLLRLLRRRRLRLLLRRRRRLRLLRRLLRLRRRLRLLLLRRLRRRLRRRRLRRRRLRRRLLRLLRRRRRRLLRRLLRLRRLRLRRLRRRLLLLRRRLRRLRRLLRRRRRLRRLRLRRRLRRRRLLLLLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRLLLLLRRRRLLLLLLLLRRLLRLRRLRRLRLLRLLLRLLLLRLLRRRRRLRRLLLRRLLLRRLLLRRRLRLRRLLRRRLRRRLLLRRLRLRRRRLRLRRLRLLRLLLRRLLLLRLRLLLLRRLLLLRRRLLLLRLRRLLLRLLLLRLRRLRLRRLLRLLRLLRRLRLRLRRLRRLLLLLLLLRLLLLLRRRLRLRRLRRLLLLLRLLRLRRLRLRRRRLLLRLLLLLRLLLLLLRLLLLLRRLRLLRLLRLLLLLRLRLLLLRRLRRLRRRRLLRRRRRRRRRRLLLLLRLLRRRLRRRRLRLLRLLLRLLLRRLLRLLLLLRRLLLLRRRLLRLRLLRRRRRLRRRRRLLRLLLRRRLRLRRRLLRRRRRLLLLRRRLLLLRRRRRLRRRRRLRRLLRRRRRLLLRRRLLLRRLRLRLLLRRLRRLRLRRRRLLRRLRLLRLRRLRLRRRRLRLLRLRLLLRLRRLLLLLLLLLLLRRLLRRLLRRRRRLRRLLRLRRLRRLRRRLLLRLRLLRLRRLLRRLRLRLLRLLLRRRLRRRLLRLLLRRRLLRRRRRLRRRRLLRRRLRLLRLRRRLLLLRLRRRLLRRRRRRLRLRLRRLRLRRLRRRRRRLRLLRLRRLLRRLLRRRRRRRRLLLLLRRRRLRLRLRLLLLRRLLLLRRRLLRRRLLRRLLRLLLLRLLLLLRRRRLLLRRRRLLRRRLRRRRLRLRLRLLLRRLRRLLRRRLRLLLLLRLRLLRLRLRLRLRRRRRRLRRLRRLRRRLRRLLLLLLRLRRLRRLLLLRLRRRRLLRRLLLLRLRLLRLLLLRRLRLRLLLRLRRLRRRLLLRRLLRRRRLLLRLLRRLRRLLLLRLRLLLRLLLRLLRLRLRRRLLRLLLLLRRRLRRRLRLRRRRLLLLRLLRRRRRLLRLLRRRLLLRRLRLLRRLLLRLRRRLRLRLLRRLLLLLLLRRRLRLLLRLRRLRRRLRLLRLLRRRRLRRLLLRLLRRLRRLRLRLRLRRLRRLLRRLLLLLLRRLRRRLLLRLLRRLRLLLRRLRLLLRRLLRRLRRLRLRRLLLRLLRLLLLLRRLRRRRLRLRRRRLRLRLRLRRLLLRRRLLLRLLLLLLRLLRLRRRLLLLLLLRLLLLLRLRRRRRRRRLRRLRRRRLLRRRLLRRLLRLRLRLRLLLLLRLRLRLRRLLLRRRRRRLLLLRRRLLRRLRLLLRRRLRRRRLLRRLRLRRLRRRRRRLRLLLLLRLRRRLRRLLRRRLRRRRRLLRRLLRLRLLLLRRLRLRRLRRLLRRRLLRRRRLRLRRRRRLRLRLRRLLRRRLLRLLLRLLRLRLLLRLLRLLRRLRLLRLLLLRLLRRRRRLLLRRLRRRRRRLLLRRLLRLRLRLRRLRLRLRRLRLRRRRRRLRRRLRRRLLLLRLRLRRRLLLRLRLRLLLRLLLRRLRRRLRLLLRRLRRLLRRRLLRLRLRRRRRLLLRRLRRRLLRRLRRLRRRLRRRLRRLRLRRLLLLLLLLRLLLLLRLLLRRLRLRLLRRLRLLLLLRLLLLRRRLLRRLRRLRRRLLRLLRRRLLRRRLRLRRLLLRRLLLRRRRLLRLRLLRLRRLRLRLRLRRRRLLRRRRLRRLRRRRLRLRRRLRLRLLLRRRLRLRLLLLRRRRRRLLRRLRRLRLRLLRLLRRRRRRLLRLLRLLRRLLRLRLRLRLRRRLLRLLLRRLLRRLLLLRRLRRLRRRRRLLRRRLLRRLLRLLLRRRRRLRRLLRLRLLRLLRLRRRLLLRLRRRRLRRRLLRLRRRLLRRLLRRRRRLRLRRLLRRRLRLLRLRLLLLLLRRRRRRRRLRLRRLRRLLLRLRLRRRRLLLRLRRLRLRLLRLRRLLRLLRLLRLRLLLRRLRLRRRRRRRRRLLLLRLLLLLRRLLLLRLLRLLRRRRRLLLLLRLLRRLLLRLRRRLRRLRLRRRLLRLRRLRRLRLLLRRRLRLRRRLRRLRLRRRLLLRRRRLRRLRLLLRRLLLRRRLRLLLLLLRLRRLRRRRRRLRRRRLRLRLLRRLRRLLRRRRLRLRLLLRRLRLRRRRRRLLLLRRRLLLLLRRLLLRRLLRRLRLLRLRRLLRRLLLRLRRRRRLRRRRLLRRLRLRRLLRLRLLRRRLLLLRLRRRRRRRRLLLRLRRRRLRRRLRLRLRRLRLLRRLRLLRRLRLLRLRRLLRLRLRLLRRRLRRLRRRLLLLRRRRRLLRRRRRLRRRLLRRLRLLLRLRRLRRRLLLRLLRRLLLRRLRLLRRLLLLLLRRRRLLRRLLRLLLRLRRRRRRRLRLLRLLLRLRRRRRLLRRRLLRLLLLLLLLRRRRLLRLRLRRLLRRRLRRRLRLRLLLLRLLLLLLRLRLLRRLLRLRLLLLLRRLLRLLRLLRLRRRRRLRLRRRRRLRRLRLRLLRRRLLLLLRRLLRLRLLRRRLLLRLRLLRLRLRRLLLRLLLRRLLLLRRRRLRLLRLRRLLRRRLRLRLLLRLRRRLRLRLRRLRRLLRRLLRRLRLRRRRLLLLRRRRRRRLRLRRRRRLRRLLRLRRLRLLLLRLRLRRRLRRLLRRRRLLLRLLRRRLLRLRLRLRLLLLRRRLRLLRRLRRRLLLLRLRRRRRRLLRRRLRLRLLLRLLLRRRLLRLLLRLLRRLRRLLLLRLRRRLRLLRRRRRRLLLRRLLLLRLLRLLLRLLLRLRRLLLLLRLRRRRLLRLRRLRLRLRLRLLRRRLLLLRRLLLRRRLLRRLRLLRRRRRLLRLLLRLLRRRRLRRRLRRRRLRLLRLRRLRLLRLLRRRRRLRRRLLRRRRRRLRLRLRRRRRLRRRLLRRRLRRRRRLLRRLRRRLRRRLRLLLRRLRRRRRLRRRRLLRRLRLLRRLLLRLRRLRLLLLRRLRRRLLLRLRLLLLLLLRRLRRLLRLRRRLLLRLRLLRRRLRRLRRRRRRLRRRRLLRRLLRRLLRLLLLLLLLRRLRLLLRLLRLLLLLRLLRLRLLLLRRRLRLRLLLLLLRLRLLLLLLRLRRLRRRLRLRRLRRRLLLLRLRLRRRRLRLRLRRRLRRLRRLLRLLRLLRRRLLLLLLRLLLRLRLRRRRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLLLRLRRRRLRLRRLRLLRLLLRLLLRLRRLLLLLRRLRLRRRRLRRRRRRLRRLLRRRRLLRRRLRLLLRLLRRLRRLRLLLRRLLLLRRLLLLRLLRRLLRLRLRLRRRLRRLRLRRLRRLRLRLLRLLLRLRRRLRRRLRRLLRRLLRRLRLRLRRRRRLRRLLRLLLRRRRLLLRLLRLLLRRRLRRRRLLLLRRLLRRRRLRRLLRRRRRRLRLLLRRRRRLLLLLLLRLLLRRRLLRLLRRLLLLLRLLLRLLLRRLRRLLLRRLRLLLRRRLRRRRRLRLRRLRRLLRRRRLLLRLRRRRLLLLRLLRLRLRRLRLRRLRLLRLLRRRLLLLLRLLRLLRRRRLLRRRLRLLRRLLLRRRLRRRLRRLRLLLRRLLLRLLRRLLRLLLRRLLRLRRLRRRLRLLLRLRLLLLRRLRLLLRLRRLLLLLRRLLRRLRLRLRLLRLLRRLLLRLRRLLLLLLRRLRLRLLRRRRRLLLLLRRLLRRLLLLRLRRLLLLRRRRRLRLLLRLLLRLRLLRLLRRRLRRRRLLLRLRLRLLRRRRLLLLRRRLLLRRRRLLRLLRLLRRRLRRLRRLRRLLLLRLLRRLLLRRRLRLLRRRLLLLRLRRLLRLRRLRLRLLRRLLRRLLLLRRLRLLRLRRRLRRRLLRRLLRRLRLRRRLRLRLLRRRRRLLLLLRLLLLLRRRRLRLRRRRRLRRLLLRLRRLLRLLLLRRRRLRLLRLLLRLLLRLLLLLLRLLLRRRLLRLLLLRLLRLRLLLLLLRLRLLRRRRLLLRRLLLLLRLLRLRLRRRRLRRRLRRLLRRLRLRRRRRLLRLLRLRLRRRRRLRLRLRRRLLRLRRLRRRLRLRLLRLRLLRRLLRRRRRRLLRRLRRRLLRLRLRRRLLRLRRRRLRRLRLRRRRLLRRRLLLRLRLLRLRRLLLLRLLRLRLRLRRLLLLLRLRLRRLRLRRLLLRLLLRRRRRRLLLRLLRLRRLRRRLLLRRRLRLRLLLRRRLLLRRRRRLLRRRLLLLLLLRRRRRRLRRRLLLLRRRRRLRRLLLLLLRLRLLRLRRLRLRLRLRRRLLLLRRRLRLLRLLLRRRLRLRLLRRRLRRRLLRLLRRLRRLLRLRRLLLLLRRLRRRLLRRLRLLRRRRRLLLLLLLRRRRLLLRLLRRLRLLLLLRLRRLLRLRRLRRLRLRLLRLLRRLLRLLLLRRRRRLLRLRLLLRRLLLLLLLRRRLLLLLLRLRRRLRLRRLRRRRRLLLRRLRLRRLLLLLRRRRRLRRLRRLRRLRRRLRLRLRRRLRRRRLLLLRRRLLLRLRLLLLLRRRRLLLRLRLRLLRRLLLRLRLRLRRLRLRRLRLRLRLRLLLLRRLLRRRLRRLLRRRLRLLRLLRLRRLRRLLLRLRLLRLRRRLRLLRRLLRLLRLLRLRRLLRRLRLRRLLLRRLLRLLRLRLRRRLRRLRRLLRRLRLRRLRRRRRLRLLLLLLLRLLRRRLLLLLRRRLLRRRRRLLLRRRRRRLRRLLLRRRRLLRRRLLLRLRLRRRLRRLRRRLRRRLRLRLLLRRLLLLRRLLRLLRLRLLLLLRRRRRLRRLLLLLLRRRLRRLRRRLRLRLLRLLRLLRRLRLLRRLRLLLRLRRRRRLLLRLLRLRRRRLRRLLLLRLRLRRRRRLLLLLRLLLRLRLLLLLRRRLLRRRLRRLRRRLRLLRLRLLRLRRRRRRRRLRLRRRLRRLRLLLRLRLLLLRLLLRLRRRLRLLRLRLLLRLRLRRLLRRLLRLRRRRLRRRLLLRLLRRLLRLLLLLLRLLLLRRRRRRRRRRRLLLRRLRRRRLLLRLLLRRLRLRLLLLRRLLRRLLRRRLLLLRLRRRRRRRRRRRLRLRRLLRLLLRLLLLRRRLRRLLRLLRLLRLLRRLLRRLLLRRLRLLLLLRLLLRLLLRRRLRRLRRLLLRLLLLRLLLRLLLLLRLRRLRLRLRLLLLRRLLLRRLRRLRRLLLLRRLLRRLLLLLLLRLRRRLLLRRLRLLRLLLRRLLLLRRLLRRLRLLLRRLRLLLRRRRRRLLRRRLLLLLLLRLRRRRLRLRLRLLLRRLLLRLLRRLLRRLLLLLRLRRLLLRRLRRLLLLRRRRRLLRLLLRRRRRLRRLLLRLRRRRRLLLLLLLLRLLRLLRLLRRRRRRLRLRLLLRRRRLRRLRLLLRLRLLRRLLRLRLRLRLLLRRLRRLRRRLLRLRRRLLLLLLLLLLLLLLRLLLLLRRLRRLLLRLLRLRLLLRRLRRRRLLRLRRRLRLLRRLLLLLLRRLRLRLLRLRLRLLLLRLLLLRRLRLLLRLRLLRLLRRRRRLLRLLRRRRRLLLRRLLRLLRRRRLLLLLRLRLLLRLLLRRLLRLLLRRLRLRLLLLRRRLRRRRLLRRRRLLLRRLRRLLLLRLLRLLRLRLRRRLRRLLRRLRLLLLLLRRRRRRRRLLLRLLRLRRRLRLRLRRLRLLLLRLRLLRLLLRLLLRLLLRLLRRRLRRRRLRRLLLRLLLLLLRRLLLRLRLRRLRLRLLLLLLRLLLRRRLRRRLRRRRLRLLRRLRLRLRRLRRLRRLLRLRRRLRRRRLRRLRLLRRRLLRLRRLLLRLRLLRRLRRLLLRRLRRLLRLLRLLRRLLRRLRLLRLRRLRLLRRRRRLRRLRLLLLRLLRLLRLRRRRLLLRRRRRRRRRRRRLLRRLRRRLRRLRRLRLRLRRLLLRRLLLLRLRLRLLRLRLRRLLLRRRLLLRLLLLLLLLRLRLLRRRLRRLRRLLLRLRRLLLRRLLRLRRLLRLLRRLLRRRRRLLRRRRRLLRRRRRLLLRRLRLRRRRRRLLRLLLRRLRRRRLRRRRRRLLRLRRLLRLRRLLRRLLLRRRRRLRLRLLRLLLRLLRRRRLLLRRLLRRRRRLRRLRLLRLRRRRRRLLRLRLLLRRRRLLLLLRLLRRRRRLRLLLRLRRLLLLLRLRLLLRLRRLLRRRLLLLRLLRLRLLLRRLLRLLLLRLLLRRLRRLLRRLLLRRRLLLLRLRRLLLLLRLLLRRRRLLRRLRRLLRLLLLRRLRRLLRLLRLLLLRLLLRRRRLLLRRLLRLLLRLLLRLLRRLRLRRLLRRRRRRRRLRRLLLRRRLLLRLRRLRRLRLLRLLLRRRRLLRRLLLLRLRRLLRRLLRLRLLRLRLLLRRRRLLRRRRRRLRRRLRLLRLLRLRRRRLRRRRRLLRLLLLRLRRRLRRLRRRRLLLLRRLLLLRLLLLLRRLRLLLRRRLRRLRRLLLRRRLLRRRLLRLRLLRRLRLLRRLRRLLRRRRRRRRRRLLRLLLLLLRLLLRLRRRRRLLRRLRLRLLRLRRLLRLLLLRLLLLRLLLRLLLLRRLLLRRRRRLLRLLLLLRRRLRLRLRLLRRRRLLLLLRRRRLRLLLLRRLLLLRLRRRLRLRLLLRLRRLLRRRRRLRLRRRLRRRLLRRRRRLRRRLRRRLRLRRRLLLLLLLLLRRLRLRRLLRRLLRLLRLLRLLLLRRRRRRRLLRLLLRLLLRLRLLRLRRRRRLLLRRLRRLLLLLLRLLLLRLRLLLLLRLRLLRRLLRRLRLLLRRRRLRLLRLRLRLLLLRRLRLLLRRLLLLRRRLLRRLLRLLRLLLLRRLRLRRLRRRLLRRLRRRRRRRRRLRLLLLLLLRRRRRRLLRLRRRRLRLRLLRLLRRRRRRLRRRLRRLRRLLLRLLLLLLRRLRRLLLLLRLRLRRRLRLRLLRLLRRLRLLRLRRLRRRLRRRRLLRLRLLLLRLRRLLLRRRRRRRRRRRLLRLLLRRRLRRLLRLLRRLLRLRRLRLRRRLLLLLLLRLRLLLRLLLRLRLRRLLLLRRRRRLLRRLRLRRRLRRLLRLRLRLRRLRRLLLRLRLRRLLRLLLRLRLLRRLLLRLLLLLLLLRLLRRLLRRRRRLRLRRLLRRLRLLLRLLLRRRRRLRRLRRLLRRLRRRRRLRLLLRRLLLRRRRLRRLLRLLLLLRRLRRLLRLRLRLRRRLRLLRRLRRRLRRRRLLLRLRLLRLLLLLRRLLLRLRLLLRRRRRLRLLRLRLRLLRLRLRRRRRLRLLLLLLRRRLRRRRRLLLRLRRLRLRRRRLRRLLLLLLLRLLRRRLRLRRRLLRRRRRLLLRLRRLRRLLLRRLRLLRRLRRLRRRRRLRRLLLRRRRRRRRRRRRRRRLRLRLLLRLRRLLLRRLRRLRLLRRLRLLRLRLLRRLLRRLRLRLLLRRLLLLRRRLRLLLLRLLRRRLLLRRRRLLRLLLLRRLLRLRRRLLRRLLLLLLLLRRLLRRRLRLRLRRLRRRRLLRLLLRRLRRRLLLRRLLLRLLRLRRRRRLRLRRRRLRRRLRLLRLLRLLLLRRLRRLRRRLRLLRRRRLRRRLRLLLRRLLRLRLRRLRLRRLLLRRLRLRRRRLLRRLRRLLLRRLLRLRLLLRLLLRRLRRRLRRLLRRRRRRRLRRLLRLRRRLRRLLRRLRLLRRLRRRRLRLLRLRRRRLLLLLRRRRRRLRLRRRLLRLLRLRLLRRRLLLRLRLLLLLLLLRLLLRLLLLLLRLLLRRRRLRRLRRLLLRRLLRRLRRRLLRRRRLLLRLLLLRRLLRLRLRRLLLRRLLLLRRLRRRRLLRRLLLRLLLLRRRLLRRLRRRRLLRLRLLRLLLLLRRRLRRRRLRLRLLLRRLLRLRLRRLLRLRRLRRRRRRLRLLLLRRRRRLLLRLRRRLLLLRLRLLLLLLRLRLLRLRRLRLLRRLLLLRRRRRLRLLRRRLLRRRRLLRLRRLLLRLLRRLRRRRLLRLLRLLLLRLLLRRRLLLLLLRRLLRRLLRLLRLLRLRRRRLRRLLRRRLRLLLLLRRRLRLRRRRLRLRRLLRLRLLLRLRLLRLRRRRRRRLLRRLLRLRLLRRLLRRLRRLRLRLLRRRLRRRRRLRLRLRLLLRLLRRLRRRLRLLLRRRRLRRLRLLLLLRRLRLLRLLRRRRLLLRLLLLLRRLRRRLRRRLLRRRLLLLRLRLLRRLLLLLLLRLRLRLLLLRRLRRRRRLLLRLLLLRLRRRRRLLRRLLRLLLRRRRLRRLRLLRLLLLRLLRRRRRRLLLRLRRRLRLRRRLRRRRRLRRLLLLRRLRLLLRRLRRRLRLLRLRLLLLLLLRRRLLLRLLLRLLRLRRRRLLLRLLLLRRRLRRRRLLRRRRRRRRRLRRLRRLRLRRLLRLRRLRLRLLLLRLRLRLLRLRLLRLRRLRRRRRLRLLLLLRRRLLLLLLLLRLRLLRLLLLRRRRLRLRLRRLLLLLLRLLRRLRRRLLLRRLLLRRLLLLRRLRLLRLLLRLRRRLLLLRRLRLRRLRRLLRRRRLLRLLLRRLLRLRLRLLLLRRRRRLRRRLLLLLLRRRRLRRLLLRLRRLLLRLLLLRLLLLLLLRRRLLRLRLLRLRLRLLRRLRLLRLRLRLRLLRRLLRLLLRLRLRRRRLRRRLLLRRRRLLRLLLLRLLLLLLRLRRLRLRRLLRRLRLLRLRRLRLRRLRRRRLRRLLRRLRRRRRRRRLLRLLRRRRRRRRRRRRLLRRLLLLLLRRLLRLLLLRRLLLRLLRRLLLLLLLLRLRRLRRRRLLRLRLLRRRRLRLRLLLRRLRLLLRLLRRLLRRRRRRRLRRRLLLRRLRRRRRLLLLRLRLLLLRLLLRLLRRRLRRLRLRRLRRLLRLRLLRLLRLRLRRRLRRLLRLRRRLRLLRLLLLRRRLLLRLRRRLRLRRRRRRLRRLLRLRRLLRRRLLLLRRLRLLRLRLLLRRLRLRRLRLLRRRRLRRRRRRLRLRRRLLLRLRLLLRLRLRLRRLLLRRLLRRLLLLLLRRRRLRLRRRRRRLRLRLLRRLRRLRRRRRLRLRRLRRLLRLLLRRRLRRLRRLLLRLLRRRRLRLRLLLLLRLLLRRRRLRRRRRLLLLLRLLLLRLLLLRRRRRLRRRRRRRLRLLLRRRLLLLLLRLRRLLLRLLLRRRLRLRLLLRLRRLRLRRRLRLLRLRRLLLRLRRRRRRLRRLLLRLRRRRRLLRRLLRRLRRLRLLLLRLRLRLRLRLLLRLLRLLLLLLRRRRRLRRRRRRRRLLLRRLRLRRLLRRLRRRRLLRLLRLLLRLLRLLRLLLRRRLRRLLLRLRRRLLLRLRLRRRRRLRLLRLLRLLLRLLLRRRRLLLRRLRLLRRLRRRLRLRRRRRRLLRLRRLLLLRRLLRRLLRLRRLLRRLLLLRLLLRRRLRRLRLLLLRRLRRLRLRLRRRRLRLLLLLLLLRLLRRLRRRLLRRLLRRLLRRRRRLLRLLRRRLLRLRRLLLRRLLLRRRRLRLRLRRLRRRRLRLRLLRLRRRLLLRRRLRLRRLRLRLLLLLLRLLRLRRRRLLLRLLLLLRRLLRRRRRRRRRLRRLLLRRRLRRLLLLRLLRLRRRLRLRLRLRRRLRLRRLLLRRLLRRLLLLLRLLRRRLRLLRRRRLRRRRLRRRLRLRLLRRLRRRLLLLRLLRLLRRLRLLRRRRRRRRLRLLLRRLRLRRLLLRRLRLRRLRRLLRRLLLLLRRLRRLRRRRLRRLLRRLRRRRLRRLLLLLLRLRRLRRRLRLLRRLRLLLLLRRRLLRLRLRLLLRLRRRRLRRRLLRRLRLLRLRLRRLRLLRRLLRRLLRRRLLRLRRRLLLRLLRLRRRRRLLLRLLLRRLLRLLLRRLRRRRRLLLLRLRRRLLLLLLLRLRRRRLRRRLLLLRLLLRLRLRRRRLRLRRRLRLLLLLRLRLLLLLRLRLLLRRLRLLRLLRLRRRRLLLRRRLRRLLLLRRLRRLRRLLRRRLLRRLRRRLLRRRRLLRRLLRRLLLLRRRLLLLRLRLRLRRRLLLLRRRRRLRLRRRRLRLLLLLRLRLRLRLRRRRLLRRRLRRRLLLRRRRRRLLRRLLRRLRLLLLLLLLRRRRRLLLLLRLLRLLLRRRLRRRRRRLLLLLLRRLRLLRLLLLRRLRRLLLRRRRLRRRLLRRRLRLRLLRRLRLRRRLRLRLLLRRRRRRRRRLLLLLRRLRRLLLRLRRRLRLRLLRRRRLLRRRRLLRLLRLLLRLRRRRLRRRRRLRRRLLRLRRLRRRLRRLRRRRRLLLLRRRRLLLRLLRRRRRLLRLRLLRLRRLLRRLRLRRRLLRRRRLLRLRLRLLRRLLLLRRRRRLLRLRLRLLLLRRLLRRLLLRLRRLLLRRLLRRLLRLLRRLRRLRRLLLRRLRLRRRLRLLRLLLRLLLRRLLLRLRRRLRLRLLLRRRLRLLRRLRRLRRLLRLLRLRLRRLLRRRLLRRRRRLLRRLRLRRLLLLRRLRRLRRLRRRRRLLLRRRLLLRLLRLRRLLRRLLLRLLRLLLRLRLRLLRRRLRLRRLRLLRRLRLRLLLRLLLLRLRLLLLRLRRRLRLRLLLLRLRRRRLRRRLLLRLRLLRLLRRLRLLLRLRRLRRRRLRRLRRRLLLRRLRRLRRLLRLLRRRRLLLRRRRLLRRRLLRRLRRRLRLRLLRRRLRRRLLLRRLLLRLRLLRLLLLLLLRRLRLLLRRLRLLLRLRRLLRRRRRLLRRLRRLRLRRLLLRLRLLRLLLRLLRLLRLRLLRLLLLLLRRRRLLLLRRRRLLLLRLRRLLLRLLLRRRLRRRRLLLLLRLLLRLLRRLLLRRRLLRRLRRRRRRRRLRLRLRLLLLLLLLRRLLRRLLLRRLLRLRLRRRRLLLLRRLLRLLLRLLRLLRRRRLLLRRLRRLLLRLLRLRRRLRLRRRRLRRLRRRRRLLRRLLRRRRLRRLRLLLLRRRRRRRLLLLRRRRLRRLLRRRRLRRLLRRLLLRRRLRLLRRRRRLLLRLLRRLLRRLRLRLRLLLLLLRLRLLRLRLLRLRLLRLRRRLRRLLLRRLRLRLLLRLLLRRRLLRLLLRRRLRRLLLRRLRRRRRRRRLRRRRLRLLRRRLLLLLRRRLLLRLLLRLRRRLLLLLLRRLRRLRLLRLRLRLRLRLLRRLRRRRRLRLRRLRLLRRLLRLRRRRRLRRLRLRLRRRRRLRRRLRRLRRRLLRLRRLRLRRLLRRRRLLRRRLRRLRRRRRLLLLRRLRLRRRRRLRRLLRRRRRLLRRLLRRRRLLLRLLLRLLLRRLRLLRRRRLLRRLLLLLLLLRLLRLRLLLRRRLLRRRLLRLLLRLRRLLRRLRLLRLLLRRLLRRLRLRRRRLLRRRRLRRRRRRLRLLRRRRLRRLRLLRLLLLLRRRLRRRRLLRLRLLRRLLRLRLLLLRRRRRRRLLRLLLRLRLLLLRLRLLRLLLLLRLRRLLLRRLLLLLLLRRRLLLLRLRLLLRRLRRRRRRRRLLRLLLLRRLLLRRRLLLLLRLRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLRLRLRRRRRRLRRRRLLRLLRRRLLLLRLRLRLRRRRRLLRRLLRRRRRLLLRRLRLRRRRRRRLLLLLRRRRRLRRLRLLRLRLRLLRLLLLRRLLRRLLRLLLRLRRLLRRLLRRRRRRLLLRLRLLLLLLLRRRLRRLRRLLRLRLLRRRRRLRLRRRLRLRLRRLLLRRRLLLRLRLLLLRRLLRRRRLLRLRRRLRRRRLRLLLRRRRRRLLLLRLLLRRLRLLRRLRRLLLRRLLLLLRRLRLLLRLLLRLLRRRLRRRLLRRLRLRLRRRLLRRRRLRRRLLRRLLLLRRLLLRRRRRRLLLLRLRRLLLLRLLLLLLLRLRLLRRLLLLLLRRLRRLRRRRRLLLRLRLLLRLLLRLRLRLRLRLRLLLLRRRLLRLRRRLLRRRRRRLLRRRRLRRRLRLLRRLLLLRLRRLRRLLRLRRLRLRRRRLLRRLRRRRLLLRLLRRLRLRLRRLLLLRRLLLRLRRLRLRLRLLLLLLRRLRRLLLLLLRRLLLLRRRLRLRLLLLRLRRRRLRRLRRRLRRRLRLLRLLRLRLRRRRRRLLLLRRRLLRLLRLLRLRLLLLRRLRLLLRLRRLLLLRRLRLRLLRRRLRLLRRRLLLRLRRRLRLLLRLRLRLLRRLRRLLLLRRLLLLLLLRRRLLRRLRRRRRRLRLLRRLRRLRLLLLLLRLLLRLLRLLLLRRRRLRLRLRLLLRRLLLLLRRLLRRRLLRRRRRRLLRLLLRRRLLLLLLLLRLRLRRLRLRLRLLRLLRLRRRLLLLRRRRLRLRRLLRRRLRLLRLLLRLRLLRRRLRRRLRRLLRLLRLRRRRRLLLRLRLLLRRRRRRRLRLLLRRRRRLRLLRRLRLLRLRRRLLRRLLRLRLRRLRLLLRRRRLLRRLRRRRLRLRLRRLRRRRLRRRRRLRRRLRLRRRLLRLRLLLLLRLLRRRLRRLRLLLLLLLRLRLLRRLRLLLRRLLRRRRLRLLRLLLRLRRLRRRLRLLRRRLLLLRLRRRLLLRRRRRLLLRRRLLLLRLLLRLRRRRRLLLLRRRRLLLLRLRRLRLRLRLLRLLRLRLRLRRRLRLLLRLRRLRLLLLLLLRRLRLRLLLRRLLLRLLRLLRRLRRLLRLRRRLLLRRRLRRRRLRRLRLLRLRLRLLRRRLLLLRRLLLRLLRRLLLLLLRRLRRLRLRRRRRLRRRRLLRLRRRLLLLLLLRRLRLRLRLLLRLRLRLRRRRRRRRRLLLLRLLRRLLLLRRRRRRRRRLRRRLLLRLLLLRLRLRRRLRRLRRLRLRLRRLRLLLRLRLRRRRLLLLLRRLLRLRRLRLLRRRRLRLRRLRRLLLRRLLLLLRLRLRRLLLRRLRLRLRLRRRRRRRLLRLRLRRLLRRRLRLLRRLRRRLRRLLRLRLRLLLLRRRLRLLRRRRRLLLRRRRRRRLRRRLLLLLLLRRRRRRLRRRRRRRLRRLRLLLLRRLLLRRRRRRRLRLRLRLLLRRLRRRLLLLLRRLLLRRRRRLLLRRLLRRLRRRLLRRRRLRLRRLLRRLLRLRRLRRRRLRRRRRLRLRRRLRRLLLLRRLLRRLRRRRLRRLRRRRRLRRLLRLRRRRRLLRRRLRRRLRLLLLLRLLLLLLLLRLLLLLLLLRLLRRRLRRLRRRRLRRRRLLLLLRRRLRRRRRRRLRRRLLLRRRLLLLLRRRLLRRRRLRLRRLLLLRRLRRRLLLLRRLRLRRRLRRRLLRLRLLLRLRLLRLRRRRRLRRRLRLLRRRLLLRLRLRLRRLRLRRLLRLRLRRRRLLRLRLRRLRLLLLLLRRLLRRLRLRLLRRLLRLLRRLRRRLLRLRLLLLRLRRRRLRLRLLLRRLLRRRLLLLRLRRRRRRRRLRRRLRRLLLRLRLLRLRLRRRLRLRLRLRRLLRRRRRLLRRLLLRLRRLLLRRRRRRRLLLRRRLRRRRRRLRRLLLLRLLRLLLLLLRLRLLLLRRRLLLRLLLRLLRRRLLRRLLLLRLLRLRLLLLLRRRRRRLRRLRRLRLLRRLLRRLLLLRRLLRRLRLRLRLRRLRLRRRRLRLLRRRLLRLRLLRLRLRRLRLRLRRLLRLRLLRLLLRRLRRLLRRLRLRRLLLRRLRRLLRLRRLRRLLRLLRLRRRLRLRLLLRLRRRRLRLLLLRLLRLLRLLLLLRLRRRRLRLRRRLRLLRLRLLRLLLRLRLLRRLLRRRLRLRRRLRLLRRRRRLRLRRRRRLLLRRLLLLLLLRLRLLLLLRRRRRLLRRLLRRRLLLRRLRLRLLLRLLRRLRLRLRLLLLLLRRLLLRLLRLLRRLLLRRLLLLRRLLLRLRLLLLRLLRRRRLLLLLLRRRRRLRLRRLRRRLRLRRRLLRRRLRLLLRRLLLRRRLLLLRRRRLLLLLLRRRLRRRRLRRLLLLRLRRLRRLLLLLLRRLLLLRLRRRLRLLRRRRRLLLLLRRRRRLLRRLLRRLRRLLRRRLLRRLRRRLLLLRRRLLRRRLRLLRRLLLRLLRRRRRLRRLRLLRLRLRRLRLLLLLLRLRRLLRRLRLRLRLLLRRLLLRRRRRRLLRRLRLRRLRRRRLLRRRRLRRLLLLRRRLLLLRLRRLRRLRRLLLRLRLLLLRRRLLRRLRRLLRLRLLRRLRLRRLLLRRLRRLRLLRLLRLRRRRRRRRLRRLRLLRLRLLLLLRLRRRRLRLRLRRRRRLRRLRLLRRLRRRLLLLRRLRLRLLRRRLRLLLLLRLRLRLRLLRLRRLRRLLRLLLRLLRLLLRLRLLRLRLRLLRRRRLLRRLRRLLLLRLRRLLLLLRLRRRLRRRLRLLLRRRRRLRRRRRLLRRLRLRRRLRRLRLRRLLLRRLRRRLLLRRRLRLLRLRRLLRLRLRLLRRRLRRLRLRLLLRLRLLLRLLRRRRLLLLLLLRRRLRLRRLRRLRLRRLRRRRLRLRLLRRLRRLLRLRRLLLRRRRLRRLLLLRRRLLLLLLLRLLRLRRLRLRLRLLLLLLLLRRLLLRLLRLLLLRRLRRLLRLLLLRRLLRRRLLLRRLRRLLRLLRLLLLRRLLRRRLRRLLRLLLLRLLLLLLRLLRLLLLRRLLLRRRLLRRRLLLLLLLRRLRRLRRLRLLRRLRRRRRLLRLRRLLLRRLLLLLLRLLRLLRLRRLLLRRRRLLLRRLRLLLLRRRRLRRRRRLRRLLLLLRRRRLLLRRRRRLRRRLRRLLLLLLRLLRLRRRRRRLRLLLRRLRRRLRRLRRRLRLRLRRLLLLRLLLRRRRLRLLLRLRLRRRRRLRLRRRRLRRLLLRLLRRRRLRLLRRLRRLLRRRLRRLRRRLLRLLLRLLRLLRRRRRRRRLLLRLLLRLLRRRRLRRLLLLRLRLLRRLLRLRLLRRLLLRRRRRLLRRLLLLRRRLLRRRLLRRRRLLLLRLRLRRLRLLRLRRLRLRRLRLRRLLRLLLRRLRRLLRLRRLRLRLRLRRRLLRRLRRLRRLLRRRRRRRLLRLLLLLLLRLRLRLRRLLRRLLRLRRRLLLLLLRLRRLRLLRRLLLLLLLRRRLLRLRRLRRLRLRRLRRRLLLLRLLLLLLRRRRLLLRLRRLRRLLRRLRLLRRRRRLRLLLLRLRLLRLRRLRLRRRRRLRLRRRLLRRLRRLRLLRLLRRLRLRRLRRRLRRRLLRRLLLLRLLRLRLRLLLRLRRRLLRLLRRRRRRRRLRRLRRLRRRRLRRRLRRRLRLLLLLLRLLRRRLRRLLLRLRLRLRRRLRLLRRRRLRRLRLRRLRRLRLLLRRRLLRRLRLRLLRRRLLLLRRRRRRRLRRRLLLRRLRLLRRRRLLLLRLLRRRLLLRLRRRRLLLLLLRLRLLLLLRLLRRLRRLLLLRRRRRLLLRLLLLRRLRRRRLLRRRLLRLRRLLLLLRRRLLLRRRRRLRLLRRLRRRLRLLRLLRRLRLRLLRRLLLLRRRLLLRRRRLRLRLLLRLRRLLLRLRLLRRLLRRRLRRLRLRRRLRLLRRRLRRRLRRLLLRLRLRRLRRRRRRLRLRLLLLRRLRLLLRLRRLLLRLLLLRLLLRLRRLRLLLRRLLRRLRRLRRLRLRLRLLRRRLRRRRRLRLLLLLRLRLRLRRRRLLRLLRRLRLRLRRLRRLRRLLRLRLRRLRLRLRLRLLRRRLRLLRRLRRLRRLRLRLRRLLRRLRRLRRRRRLRRRRLRRLRRRRRRRRRRRRRRLRLLLRLRRLLRRRLRRRRLLLLLLLLRLRLLRRLLRRRRLRRLRRLRLLRRLRRLLLRLRLLRLRLLLRLLRLLLLLLRRRRLRLLRRLLRRLLLRLLLLLRLLRRLLRLRLRRLRLRRRRRLRLRRLRRRLLLRRRRLLLRRLRLLRRRRLRRRRRLRLLLLLRLLRLLLLLRLLRRLRRRRLLRRRRLRRRRRLLLLRLLRLRRRRLLLLLRLLRRRLLLRLRLLRLLRRLRLRRLLLRRLLLRRLLRRLRRRLRRLLRRRLRRRLLRLLLRRRRLLRLLRRRRLLRRLRRLRLLLRRLRRRRLLRLRRLLRLRLRRRRRLLRRLRLRLRRRRLLRRLRLLRLLRLLRLLLRLLLLRLLLLLLLLRLRRLRRLLLLLLLRRLRLRLLRRLRLLLRLLRLRRLRRLRRRRLLLRRLLLLRRRRRLRLLRRLLLRLRRRRRRRRRRRRRRRLRRLRRLLRLLLLRRRRRRRRRRLRLLRRRRRRLRLRRLRRLRRLLRLRRRLRLLLLRLRLRLLLLLLLRRLLLRRRRLLLLLRLRLRRLRLLRLLRRRLLLRRLRRLLLLRLRRLRRRRLLRRRRLLLLLLRRLRRLRLRRLRRRLLLRRLLLLLLLLRLLRRLLLRRLRRLRRLRLRLRLLRLLLRRRLRLRRLLLRRRLLRRRRLRLRLRLLRLLRRRLRLLLLRRRRLRRRLRRLLRLRLLRLLLRLRRRLRLRLLRRRLRRLRRLRLLLRRLLLLRLRRRRRRRLRLLRRRLRRLRRRRLRRRRRLLRRLRRRRLLLRLLLLLRRRLLLLRRRLLRRRLLLLLLRRLRLLLRRRLLLLRLRLLRRRLLRLRLLLLRRRLLLRRRLLLRLLRRLLLLLLRRRRLRRLLLLRRLLLRRRRLRRRRLLRRLRRRLRLRRLRRRRRRLRLLLLRLRLRLLLRRLRRRLLLLRLRRRLLLLLRRLLLLRLLRLLLRLRRRLRLLRRLLRRRRLRRRLLLRLLRLLRRRRRRLLLLLLRRRRRLRRLLRLLRLLLRRLLLLRLRRLRLLRLRRRRLLLLLLLLRRRLLLLRLRLRLLLLRLLLRRLRRLRLRRRRLRLLLLRLLLLLRRRLLRRRLLLRRLLLLRLLRLLRLLLRLRRRLRLLRRRRRRLLLRLRRLRRLLLLLLRRLLRRRLRRRLLRRRRRLRLRRRLRLLRRRRRRRLRLRLRRLLRLLLLLRLLLLLLLLRLRLLLRLLRLRRRLLRRLRLLRLLLRLRLLLLLLRRLLRLRRRRRRLRRRLLLRRRRRRRLLLLRLLLLRLRLRRLRLRRLLRRRRRRLLRRLRRLLRLRRLLLRLLRLLRLRLRRRRLLRLLRRLRRRRLRLRLRLRRLLLLLRRRLLRLRLLRRLRLRLLLRRLLLLLLLRLLRLRRRRLLRLRLLRLLRLRLRLLLLLLRLRLRLLRLRRRRLLRLRLRRRLLRLRLRRLLRLLRRRLRLLLLLRLLRLLRRRLRRLRLLRLLRLLLLRLLRLLRRLLLRLLRRLRRLRRRRLLLRRLRRRRRRLLRLRRRLRLRRRRRLRRLLLRLRRLLRRLLLRLRRRLRLRRRLLLRRLLRLRLRLRRRLRRRLRRRRRRRRRRLRLRLRLLLLLRLRLLRRLLRLLLRRRLRLLLRLRRRRLRRLRRLLRRRLRLRLRRLRRLRRLRLRRLLLLRRLRRRLRLLRLRRLRLRLLLLRRRLRLLRLRLRRLRRRRRLRRRRRLLLLRLRRRLRLLRLRRLRRLRRRLRRRRLLLLLRRLLLRLLRLRRLLLLLRRRRRLRLRLLRRLLRRRRRRLLRRLLLRLLRLRLLLRRRRRRLRRLRLRLRRLRLRRRLRRLLRLRRLLLRLRLRLRRRLRRRLLRRLLLRRRRRRRLLRRRRRRRRLLLRLRLRRLLLRLRRRRLLRLLRLRLRLLRRLRRLLRLRLRRRLLRLRRRLLLLLLRRRLRRRRLLRRLLLLLRLLLRLLRRLLLLLRRRLRRRRLLLLRRLRLRLLLRRRLLLLRLLLRRLRRLRLLLRRLLLLLLLLLRRRLRLRLLLLRRLLRLLLLLRRLRRRLLRLLLLRRLRLLLRRLLRRLLRRRLLRRRLRLLRLRLRRLLRRRRLLLRRLLRLRRRLRRRRRRLLRRRLRLLLLRLRRRRLLRRRLRLRRRRLRLRLLLRLLLLRRRRRLLLRLLLLLRRLLRRLLRRLRLRRRRLLRLRRLLLLRLRLLRLLRRLRLRLRRRRRLRLRRLRRRRLLRLLLRLLRLLRLRRRRLRRRLLRRRRRRRRLLLRLRRRLRRRLLLRRRLRLLRRLRLLRRLRRLRLLRLLLRRLRRLRLRLRRRRLRRRLRLLLLLLLLLRLLRRLRRRRLRRLLRLLRLLRLRRLRLLRLRRRRLRLRRRLRLLRLRLLRLRRRLLRLRLLRLLRLRRLRLRRRRRLRLRLRRLRRLRLLLLRLLLLRLLLLLLRLLLRRLLLRRLRLRRLRRLLRLLLLRRLLRRLRRRRLLRRRLLLLRRRRRRLLLLRLRLRRLRLLRRLLLLLLLLRLLRRLRLLLLRLLRRLLLRLRRRLRLLRRLRLLLRRLRRLRRLRLRRRLRLLRRRRLRLLLLLRRRLLRRLLRRRLLRRRRRLRRRRRRLLLLLRRRLLLLLRRLLLLRLRLRRLRRLLLLRRRRRLRLRRRRLRLLLLLLRRLRLLLRRRRLRLRRLRRLRRLRRRRRRLLRLLRLLLLLLLLLLRLLRRRRLLLRRLRLRLRLRRRLRRRRRLLLLLLLRRLRLLRRLLLLRLRLRLLRLLRLRRLRLRRRLRRRRLRRLRLRLRLLLRRLLRRLRRLRRRLLLLLRRLRLLLLRLLRLRRLLLLRRRLLLRRLRRRRLLRLLLRRRRRRLRRRRRLLRRLLRLRRRRLRRRLLRRRRRLLRRRRRRLLLRLRRRLLRLLRRLLRRRLRLLRLLLLRRRLLRLRLLRRLRLRLRRLLLLRRRRRLRRRLRLRLRLLRLRRRRRLLRLRRLLLRRLRLRLRRLLRRLRLLRRRRLRRLLLRRLLRLRRRLLLLLRRRLLLRLRRRLRLRLRLLRRLRRLRRRRRLRLLLRLLRLRLRLLRRRLLLLLRRLRRLRLLLRRLLLLLRLRRLLRLRLRRRLLLRRRRLRRLRRLRRLRLLLLLRLRRLRRLLRRRLRLRRLRRRRLRLLRLLRRLLLRRRLLRRLRLRLRLRRRRLRLLLLLLRLLRRRRRRRRLRRRLLLLLLRRRRLLLRRLRLRRRRLRRRRRRLRLRRRRLLRLLLRRRRRRLLRLRRRLLLRLRLLLLRRRRLLLRLLRRRLRRRLLLRRLRLRLRRLRLLLRLLLRRLRLRLRRLRLLRLLRLLLRRRRLLLRRLRRRRLRLLLRRLRRRLLLRRLRRLLRLRRLRLLLLLLRRLRLLLLRRRRRLLRLLRRLRLRLLRRLLLRRRLLLRLRLLLLRLLRRLLLRRRLLRRLRLRLRRLLLLLRRRLLLLLLLLRLLRRRLLLLRLLRLRLRRRRRLLLLRRLRLRRRLLRLLRRRRLLLRRRRLLLLRLLRLRRRLRLRLLRLRRRLLRRLLLLRLLRLRLRLLLLRLLLRLLRLLRLLLLRLRRRLLLRLRLRLRRRRRRRLLLLLRRLLRRRLRLLLRLLLRLLRRLLRLRRRRLRLLLLRLRLLRLLRRRLLRLRLRLRRRLLLRRLLLLLLRLLRRLLLRLLRLRRRLLRLLLRRLLRRRRRLRLRRRLLLRRRLRLRLRLRRRLLLLRLLRLLRRLLLLLLRRLLRLLLLLLRLRRLLRLLRLLRRRRLLRLRRLRLLLRRLRRLLRRRLRLLRLRLRRLRRLRLRRRLLRRRLLRLRRLRLRLRRRRLRLLRRRLRLLRRLRRLRLRRRLRLRRLRRLLLLRLRRRRLLRRRLLRRRLLRRRLLLLLLRRLLRLRLLRRLRRLRLLLLLLRLLLLRRRRRLRRLLRRLLRLLLRRRRRRRRRRLRRLLLLLLLRLRRRRRRRLLLRLRLLLRRRRLLLLRRRRLRRRRRRRLLLRLRRRLRRRRLLLLRLLRRLLLRRLLLRRLRRRRRLLRLLLRLLLRLLRRRLLLLLLLLRLRRLLLRRLLLLLLRRRRLLLRRLLLLRLRRLRRRRRRLLLRLLLLRRLLLRRRLRLLLLLRRLLRRRLLLLLRLLRRLRRLLLLRRRLRLRLRLLLRRRLLRRRRLLRRRRRRRRLLLLRLRRRLRRRLLRRLLRLRRRLLLRRRRLLRRRLLLLLLLLRRRRRLLRRLLLRLRLRRLRLLLLRRRLRRLLLLLLRLRLLLRRLLRRRRRRLLLLLRLRLLLLLRRRLRRLLRRRLLRLLRRRRLLRLRRRLRLRRRRLRLRRRLLLLLRLRLRRLLLLLRRLLRLRLRRRLRLLRLLLLRRLLRRLRLRLLLRRLRRLRRRRRRLLLRLRLLLRRLRRLRLLLRRLRRLRLRRRLLRRLRRRLRRLRLRLLRRRRLLLRRRRLLLRLLLRRLRLRRLLLLLRLLLLLRRLLLLLLRLRLLLLLLLRLLLRLLRLLLRRRRLLRRRLLLLLLRRLRRRLLLRLRLLLLRRRLLRLRLRLRRRRRRRRRLRRRRRRRLLLRRRRLLRRLRRRRRLLLLRRLRLRRRRRLRRLRRRRLRLLLRLRLRLRLRRRLLLRRLLLRLRRRRLRLRLRRLLLRRLRLRLLRLLRRRRLRRLLLLRLLLRLRRRRRRRRRLRLRLRRLLRLLRLRLLLLRRRLLRLLRLRRRLLLLLLLRRRRLLRLRRRRLLLRRRRLLRLRRLRLRLLRLRLLLLLRRRLRRLRRLLRLRLRLRRRLLRLLRRLRLRRRLLLLLLLLRRRLRRRRLRRRLLRLLRLLRRLRLLLLLLLLRRRLLRLLLLRLRRRRLLLRLLLRRLLLLLLRRLRRRRLRRRRRRRRRLLLRRRLLLLRLLRLLRLLLLRLRRRLLLLRLRRRRLLLRLRRRLRLLRLLRRRLRLLRLLLRLRRLRLLRLRLLLRLLRLLRLRLRRLLLLRLLRLLRLLRRRRRLRLLRRRRRLRRLRLLRLLRRLRLRLLRLLRLRLRRLRLLLLRLRLLRRLRRLRLLLRLLLLLRRRLRRRRRLLLRLRLRRRRLRLLLLRRLRLLRRRLRRLRLLLLRLLRLRLLLRLRLLLRRRLRRRRLRRRRLRRRRLRLLRRLRRLLRRLLLRRLRLLLLRLRLRRRRLRRRLRRRRLLLRLLRRLLLLLLRRRLLLRLRLRRRRLRRRRLRLLRRRRRRRRRLLRLLRLLLRRRLLLLRLRRRLLRLLLRLRLLRLLRRLLLLLRRRRLRRRLLLRRRLRRRRLRRRRLLLLRLLRLRRRRLLLRRLRLLLLRRRLRRRRRLRLRLRLRRLRRLRRRRRRRLRLRLLLRLRLRRLLLRRLLLRRLLLRLRRRRRLRRRLLRLRLLRLLLLLRRRLRRLRRLRLRRLRRLLRRRLRLRRRRRRRRRLRLRLRRRRRLRRLLRRRRRRLLRLRRLRRLRLRRLLRRRLLRRRRLLRLLLRRRLRLLLLRLRRRLLRRLLLRLRRRRRRRLRLRLLRLLRLLRRRRRRLLRRLRRLRRLLRLRLRLRLRRRRLRLLLRRRRLLLRRRRRRRLRLRLRLLLLLRRRRLRLLRLRRLRLRRLLLLLLRRLLLRRLLRLLLRLRRRRRLRRLLRLLRLLRRRLLLRLLRRLLLRRLLRLRLRRLLLRLLLRLLLLLRRRLRLRLLRRRRLRRRRRLRLRRRLLRLLRRLRLLRRLRRLRLRRRRRLLRLRRLLRRRRRRRRLLRRLRRRLRLRLRLLLLLLLLLLRLRLRLLLRRLLRRRLRRLRRRRLRRRLLRLLLRRRLLRRLRRRRRRRLLLRRRLRLLLLLLRLLRRRLRRRRLLLLRRRRRRLRLLLLLLLRRRRRRLRLRLRRLLRRRLLRLLRRRLRRRRLLLLRRRRRLRLLLRLRRLRLRRRLRLLLRRRRLLRLRLLRLRLLLLLRRRLLRRLRLRLLRLLLRLLLRRRRRLRRRLRRLLLRRRRRRRLLLLLRLLLRRLRLLRRLRRRRRRRRLRRRLRRLLRRRRRLRLRLRRLLRLRLLRRRLRRRRRRLLRLLLLRLRRLRLRRRRRRRLLRLRLLRRRRRRRRRLLLLRLLRLRRRRLRRLLRLRRRLLRLRLLLRLLLRLLLLLRLLRLLLRLRRLRLLRRRRRLLRRLRLLLRLLRLLRRRLLLLLLLRRLRLRRRLRLRRRRRRRLRRLLLLLLRRRLRRRRLLRLLLRRRRLRLLRLLRRLLRRLLLLRRRLRRRLLLRLLLRLLLRLRRLRRLRLRRRLRRRLRLRLLRRLRRRRLRLLLLRLRRLLRLRLLLRLRRRRRLLRRRLRLLLLLLLRLLLLLLLLRRLLLRLRRRRRRLRLLRRRRLLRLRRRRRLRLRRRLRLLLLRLRLLLLRRRRLLLLRRRLRRRLLLRRRRLRLLLRRLRRLLLRLLLLRLRLLRLLLRLLRLLRLLLLRLLLLLRRLLLRRRRLLLRLLRRLLLLRLRLRLLLRLRRLRLRLRRRLRRRLRRRRRRRLLRRLRLRRRLLLLRRRLLLLLRRRRRRRLRRRRLLLLLRRLRLRRLLLLLRRRLLLLRRRRLLRLRRLRRRRRRLRRRRLRLLLRLRRRLRLRLLLRLLRRLRRLLRLRRRRRLRRRLRLLRRLRRRRLRLLRRLRRLRLRRLRLRRLRRLLLLLRRLRLLRRLRRRLRRLLRRLLLLRLRRRLLRRLRRRRLRRRRLLRRRRLRRRLLRRLLLLLLRLLLLRRLRLLLLRLRLLRLLRRLLRLRRRLLRLRRLLRLLLRRRRLLRLLRLLLRLLLLLRRRRRRLLLRRLRLLRRLLLLRLRLRRRRRRLRLLRRRRLRRLRLLLLRLRLLLLRLRRRLRLLRRRLLLRLRLRLRLRRRLLRLRLLRRLLLLLLLLLRLLRRLRRLRLRLRLLRRRLLRRRLRLLLLLLLRRRLLLLLRRRRLRLLLRLLLRRRRRRRRLLRLLRRLLLRRRLRRLLLRRLLRLRLRRRLRLLRRLLLLRLLRLRRRRLRLLRRRRRLLRLRLLLRRRLLRRRLLLRRLRLLLRLLLLLRLLRLLRRRLRLLLRRRLRRLLLRRLLRRLRRRRLLLLLRRLLRLRLLLRRLLLLLRLRRLLLLRRRLLLRLLRLRLLRRRRRLRLRRLLLLLRLRRLLLLLLLRRRLRRRRLLRLRRRRLRLLRRLRLLRLLRLRLLRRLRRLLLRLLLLLRLLRRRRLRLRLRLLRLRRRRRLLLLLLLRRLRRLRLRRLLLRRLRLRRLLLRRLLLLRRLLLLLLRLLRLRRLRRRRLLRRLLLLLRRRLLLLLRRLLRRLRRRRRLLLRLRRLLLRLRRLLRRLRLLLRLLRLLLLLLLLLRLRLRLLLLLRRRRLRRLLLLRLLRRRRRRLRLLRLRRRRLRLRLLLLLRLLRRRLLRLLRLRLLRLRLRLLRRLLLRRLRRRRRRRLLRLRRLLLRLRLRLLRRRRLLRRRRLRRLRRLRLLRLLLRRLLRRRLLLLRRRRRLRLRLLRRLRRLLLRLLRRRLLRLLRRLLRRLRRRLLRRRRLRLLRLRLRRLLLRRLRRLRLRRLLLLRLLLLLLRRLLRRLRLLRLLLLLRLLRRLLRRLRRRLRLLRRRRRRLLLRRRRRRLLRLRLRRLRRRLRLLRLRRRRLLLLLRLRLLRLRRLLRLLRLLRRRLRRRRRLRRRRLLRLRRRLRLLRLLLLLLRRRRLRRLLRRLRLLRRRRRRRRLRLLRRLRLRRRLLLRLRRRLLRRLRRRRRRRRLRLRLRRLRLRRLLLRLRRRLLRRRLRRRLLRRLLLLRLRRRRLRLLLLLRRRLLRLLRLLLRLRRLRRLRRLLRLRLRLRLLRRLRRRRLLLRLLRRRLRRLLRRLRLRRRRRLLRLRRLRRRRRRRRRLLRLLLLRRLLLLRLLLLRLLRRLLLRRRLRRRRLLRRRLRLRRLRLLRRRRLLLRRLLRRRLLRRLLRRRLLLRLLRRRRLLLLRLLRLLRRLRRLLRLLRRRLRRLLLLRLLRRRLLRRRLLLLLLLLLLLRRRLLRLRRRRLRLLRRRRRLLRLLRRRRLLRLRLLLRLLLLLRRLLLRRRRLRLRLRLRLRRLRLRRRLLRRLLRRLLRRLRLRLLLRLLLRRLRLRLRRRRLRLRLLLLRRRRRLRRLLLLRRRRRRLLLRLRLRLLRLLLLLLLLRLRLLRLLLRRLRRLLRRRRRRLRRLRLLLRRLLRRLRRRLLRLLRLRLRLLRRRLLRLLRRLRLRLLRLRRRRRRLRLRRRRLLLRLLLRRLRLRLRRLRRLRRLRRRRRRLRRLRRRLRRLRLLRRLLLRRRLRLRLLRRRRRRRRLRLLRRLLRLRLRLRLRLRLRRLRLLLLRLLLRRLRRLLRRRRLRRLRLLRLLRRLRRLRLRLLRLRLLLLRRLLRLLLLLLRRLRRRLLRLRLRRLRLRLRRLLRLLRRLLRLRRRRLRLRRRRLLRRRLLRRRLLRRLRRLLLRLLRLLRLRRLRRLRRLRLLLLLRLRRRRRLLLLLLRLRLRRLLRRRRRRLLRRRLLLRLRRRLRRLLLLLLRLLRRRLLLRLRLRRLRLRRRLRLLRLRRRRLRRRRLRRRRRLRRLLLRLLRLRLLLLLLRRLRLLRLLRLRRLRRRLRRLLLLLRRLLLRRRLRLRRLLRLRLRRLLRLRLRLRRRRRRLLLRRLLLLRRLLRRLRLRLRRLLLRLLRRLLLLRLRRLRRLLLLLLLLRLRLRLRLLLRLRLRLLRLLRLRRRLRLRLRLRLLRLLLRRLRLRRRRRLRRRLRRRRLRRRRRRRLLRRRRLRRLLRLLLLRLRRRRRRRLRRLRRLRRRRLLLLRLRLLLRRLRLLLRLLLLRLRLRLRLLLLLLLLRLRRRRRRRRRLLRLLRRRRLLLRLLRLRLRLLRLRRRLLLLLLRRRRLLLLLRRLLLRLLRLRRRRLRRRLRRRRLLLLRLLLLLLLLRLLRRRLLRRRRRLRRLRLRLRLLRLLLRLRRRLRRLLLLRRLLRRRLLRLRLRLLRLLRRRLRLLLRRLLRLRRRLRLLLRLRLRRLLLRLRRLLLRRRRLLRRRRLRRLLLLLRRRLLLRLRRRRLRRLRLLLLRLRRLRRRRRRLLRLLLLRRRLRRRLLRLLLLRRRRLLLLLLLLRRRRRRLLLLRRLRLLLRRRLLLRLRRLRRRRLLRLRLLLRRLRRRLRRLLLLLRRRRRLLLLLRRRRLRLLLLLRRLRLLRRRLRLRLRLRLLLLRRRRRRLRRRRLLLRLRLLRLRRLLLLRRLRRRLLLLRLLRRLLLLLLLLLRLRLLRLRLRLRRLLRLLLRLRRLRLRRLRLLRRLLLLLRRLRLRLLLLLLLLRRRLRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLLLRLRRRRLLRRRLRRRLLRRRLLLRLLRLRRLRRRRLRRRLLRLLLLLRRRRLRRLRRRLLRLLLRLLRLLRLLLLLRRRLRLRRLRRRLLLLRLRRLRRRLLLRRRRRRRRLRLRRRRLRRRRLLLRRRLRLRLRRRRRRLRRRRRRRLRLLRRLRRLLRLLRLRLRLLRLLLRRRRRLLLRRRRRLLLLLRRLRLLLRRRRLRRLRRLRRRRLRLRRRRRRRRRLRLRRRLLRRRRLRLLRRRLLLLRRRRRLRRRRRRLLRLLRLLLRLLRLLLLLLRLLRRRRLLRRLLRRRLRLRLRRRRRRLRLRRRLLLLRLRRLLRRRRLLRRRLLLRLLLLLRLRLLRLRRLRLLRLLRLRLRLLLLLLLLRLRLLRLRRRRLLLLRRRRRLLRLLLRLLLRLLRRLLLRRLLLRLRLLLRRLLLLRRRLLLLRLLLRRRLLLLLRLLLLLLRRLRRRLRRRLRLRRLRRRRRRRLRLRRRLLLRLRRRLRRLLLRRLLRLRRLLLRRRLRLRRRRLLRLLLLLRLRLLLRRLLLRLLLRRRRRRRLRLRLLLRLRLLLLRRLLLRLLRLLLLRRLRLLLRLLRRRLLLLRRLLLRLLRLRLRRLLRLRLRRLRLRLLLRRLRRRLRLLRLLRRRLRLLLLRLRLRLRRLRLRRRRRRRLLRRLRRLLLRRLRRRRLRLRLRLLLLRRRRLRRRRLLLLLLLLLLRLLLRRRLLRLLRRLRRLRLRRRRRLLRRRRRRLRLRLLLLLLRLRLLLRLLLRRLRRLRLRLRLLRLRRRLRRRLLLRRLLLRLRLRRRRRLRRRLLLRLRLRRRRRLRRLRRRRRLLRLLLLLRLRRLRLRLRLRRLRLRLRLRLRLRRRRRRLLRLLRRLRRLRRRRRLLLLRLRRRLLRRRRLRRLLLLLRLLRRLLLRLRLLLRRRLRRRRLLLLLRLRLRRLLRRRRLRRLLLLRRRRRRRLRLLLRLLLLRRLLLLRLRRRRLRRRLRLLLLRLLLRLLRLLLRLLRLRRRRLLRRRLLRRLLRLRRLRRRLRRLRRRLRRRLRRLRLLRLRRRRLRRRRRRRRRRLLRLRLLRLLLRLLRRRLRLRRRRLRLRRLRLRRLRRLLRLRLLLRLRLRRRLRRRRRLRLLLLRLRLRLRRLLRLRRLLLRRLRRRLRLRLLLLRLRRRRLRRRLRLRRLLLLRLRRRLLRLLRLRRLRRRLLLLRRLRRRLRRLLLLRLRLRLRLLRRRRRRLLLRLRLLRLLLRLRLLRLRLRRRLRLRRRRLRRLRLLRLLLRLLLRLLLRLRLRLRLLLRRRLLLLLRLLRRRRRRRLRLRRLRLRLRRLLRLLRLRLLRRRRLLLRLRLLRRLLLRLLRLLRRRRLLLRLRLRRRLLRLLLRLLLLRLLLLLLRLLLRLLLLRRLLLLRLLLLLRLLLLLRLLLRLRRRRLLRRLLLLLLRLLRRLLLRRLRLRRLLLLRRRLLRLLLRRLLRRLRLLLLRLLRLLLLRLRRRRRRLRRLRLLLRLLRRLLRLRLRRRLRLLRRRRLRLLLLLLRRLLRRLRLLRRLRRRRLLRRLLRRLRLLRRRLLRRLLLRLRRLRLRRRRLLRLLLRRRLLRLRRRLLLRLLRLLLLRLRLLLRLRRRLRLLLLLRLRRRRLLRRLLLRLLRLLLLLLLRLLRLLLRLRRLLRRLRRRLRLRRRRLRRRLLLLLLRLRRLRRLLRLRLLRLLLRLLRLLRLRLLRRRRRRLRRRLLRLRLRLRLLRLRRLRRLRLLLRRRLRLLRRLLLLLRRLLLLRRLLRLRRRLLRLRLRRRRLLRLRRLRRRRRLRRLLLLLRLLRLRRRRRLRRRLRLRRLLLLRRLRRRRLRLLRLRLLRRLRRLLRLRLRRLRLRLRLRLLLLLRLRRRRRRRRRRLLRRRRLRRLRRLLLLLRRRLRLRRLLRLLRRLLLLLRRLRLRLRRLRLRLLLLRRRRLRLLLLLRLLLLRLRLLLRLRLLLLRRLRLRLRLRRRLLRLRRRRRRRRLLLLRLRLLRLRLRLLRRRLRLLLRRLRRLLLLLRRLRRLLLLLRLLRLLLRRRLLLLRRRRRLLRRRLLLRLLRLLRLRLLRRLLRRRLRLRLLRRRRLLRLLLRRRLLRRRRLRRRLLLRRRLRLRLLLLLLLRLRLLLLRRRLLRLRRRLLRLRLLLRRLLLLRLRRLRRRLRLRRRLRRLLRRRLLLLLRRRRLLRLLRRLRLLLLRLRRRLLRLRRLLRLLLLLLLRRLRRLRRRRLLRRRRLLRLRRRRLLLLRRLLRRLRRRLRLLLLLLRRLRRRRRRRRLLRLLRRLLLRRLRRRRLRRLLLLRRRLRLRLLRRRLLRLLLRRRLRRRRLRRRLRLRLLRRLLRRRRLRRRLRLLLRRLLRRRLLRLLLLRLLRLLLLRLLRLRLRRLLLLLLRRRLRRRRLLLLRLRRLRLLRRRRLLLLRRRLLRRLLLRLLLRLRRLLRLRRLRLLRLLLLRRRLLRLLLRLRRRLLRLLLLLLRLLLRLRLLLLRRLRLLLRLLRLLLLRLLRRLLLRLRLRLRRRRRLRLLLLLRRLRRRLLRRLRRRRLRLLRRRLRLRRRRLRLLLLRLRLLRLLRRRRLLRLLLLRRRLLLLRLRLRRRLRRRRLLRRLRRLRRRLLRLLLRRRLRRLRRLRLRLLLLLRRRLRRRRRLRRLLLRLRRLLRLRRRRRLLLLRLLRRLRLLLRLRRLLRLLLLLRRRRLLRRRRLLRLLRRLRRLLRRLLRLRRRLLRLLLLLRLLRRLLLRRLRLRLLLLRRLRRRLLLLRRRLLRLLRRLLRLRLRLRLRLRLLRRLLLLRLRLRLLRLLRLLRRRLLRLRRRLLLLRLLLRLRLLRRLRRLRRLLLLLLLLLLRRRRRLRRLLRRLLRRLRRRRRRRLLRLLRRLLLLLRRRLRRRRRRLRLLRLRLLLRRLLLLRLLLRRLLRRLRRRLLLRRRLRLRRRRRRLLRLRRRRLLRRLRRRLLLRRRRLRRRLRLRLLRRLRRRLLLLLLLRRLRRLLLRRLLLLLLRRRLLRLRLRLLLRLLRLRRRLRRLLLLLLRRRRLRLRRRLRLRLLLRLRLRRRLRLLRRLLRLLRLLLLRLRRLLLRRLLLLLLRLLRRRRRRRRRRRRRRLLLLRRRRRLRRLLLRLLLRLRRRLLLLRRLLLRRRLLLRLLRRLRRLLLLRRLLLRLRLRRRLLRRLRRRRRRLRLLLLLRRLLRRLLLRRRRLRLLLLLRLRRLLRLLRRLRRRLRRRLLRRLLRRRLLLLRLLLLLRRRRLRLRRLRLRLRRLRLRLLLRLLLRLLRLLLRRLLRLRLLLRLRLLLRRLRLRLLLRRLRRLRRRRRRLLLLRRLLLLRRRRLRLRRRLRRRLLRLRRRLRLLLRRRLRLRLLLLLRRRLLLLRRRLLLRLLLLRLLLRRLLRLLRLRLLLRRLLLLLLRRLLLLLLLLRLRLRRLRRLLLLRRLLLRLLLLLLRRRLRRLLLRLLRLLLLRRRRRRLRLLLRLRRRRRRRLRRRRLRLRLLRRRRLRRRRRLRRRRLLLRLRRRRRRLRLRLRLRLRLRRLRRLRLRRLRRLRRLRRRLLRLLLRRRLRLLRRRRLLLRRRLRLLRLRRRRRLRLLLLLRLRLRLRRRRRRRRRRRLRLRLLLLRLRLRLRLRRRRLLRLRRLLRRLLLLLLLRLRRLRRLLLRLLRLLRLLLRRLLRRLLRRRRLRLLLRLLLRLRRLRLLRRLRLRLRRRLLRLRRRLRRRRRLLLLRLLLRLRLRRRRLLRRLLRLRRLLRRRRRLLLLLLRRRRRLRLLRLRLLRRLLLLLLLLLLLLLLLLRRRRRRRLLLLLRLRRLLRRRRRLLRRRRLRLLRLLLLRLRRRLRLRRLRLRRLLLRLRLRRLLLRLRRLRRRLRRLLLRLRRLRLLRLLLRLRRRRLRLLRLRRLRLLRRLRLLRLLLLRRRLRLLRRRRRLRRLLLRLLLRRLRLRRLLRRLLRLRLLRLLRLRLRLLRRRRLLRLLLLLLLLLLRLRRLLLRLLLRRRRLRRRRRRLLLRRLRLRRRLLRRLRRLLRRLLRRRLRLRLLRRLLRRRRRRLLLRRRLRRLRLLLLLRRRRLLRRLRLRRLLLLLLRLRLRLRRLRLRLRRRRLLLLLLRRLLLRLRRRRLLLRLRLRRRRLLRRRRRRLLRLRRRLRRLLRLLRLLLRRRRLLLRLRRRLRRRLLRLRLLRRRRRLLLRLLRRLRRRRLLRRRRLRLRRLRRRLRRLLLLLRLRRRRRLLLLRRLLRRRLRLRRRRRLRLLRRLRRLRLLRLRRRRLLRLRLRLRLRLLLLLLRRLLLRRLLLRRRRRRRLLLRRLRLRLLLLLRLRLLRLLLLLRRRLRRLRLLLRRRLLLRLLRRRRLRLRLRLRRRRRLRLLLRLRLLRLLRLLLRRRLRLRRRRRLRLLRRRLLLRLRLRLRLRLRLLLRRLRLRRRLLRLLRRRRRRRLRLRLLLRLLLRRLLRLRLLRRLRLLRRLRRLRRRLRLRRRRRLRLLRRRLLLLRRRRRLRLLLRLRLLRLRRRRRLRLLRLRRLLRRRLLLRLLLRLLLLRLLRLLRLLRRRRRRRRLLRLRRLRRLRLLLRLLRLLRRRLLLLLRLRRLRLLLLLRLLLLLRRRLRLRLRRRRRLRRLRRRRRLRRRLRLRRRLLLLRRLRRLRRRRRLLLLRRLLRRRRRRLLRRLLRLLLRLLRLRLRLLRLLLRLRLLLRLRRLLRLLLRRRLRLLRRRRLRRRLLRRLRLRLLLLLLLRRRRRLLLRRRRRRRRLLLLRLLRRRLRRLRLRLRRLRLRRLRLLLLLLLLRRRRRLRLRRLRRLRRLLRRLLRRRLRLLLLLRLLRLRRLRLLRRLRRLRLRLRLRLLLLLLRLLRRRLLRRLRLRLLRLRLRRRLLLLLLLLLLRLRLRRRLRLRRRLRRLLLRRRLRRRRLLLRRLLLRLLRLLRLLRRRRLRLLLRRRLRRLRRRRRRLRLRRRLLLLLRLLRRLLRLRRRRLRLLLLRLLRRRRRRRLRRRLRLRLRLLRLRLLRRRLLLRLRRLRLRRRRLLRLLRLRRRLLRLRLLRRRLLRLLRLLRRRRLLRRLRRLRLRRRRRRLLRRLRLRLRRLRRLRLRRRRLLLRLLLRLRRLLRLRRRLLRLLLRRLLLRRRRRLRRRLLLRLLLRRRRLRLLRRLRRRLRRRLLRRRRLRRRLLLRLLLRLLLRRRRLLLRRLRRRLRLRLRLRRRRRRRLLLLRLRRRRRRRRRRLRLLRLLRRLLRLLLRRLLLLLRLLLLLLRLLLRLRLLLLRLRLRLRRRRLLRLRRLLRLLRRRLRRRRRRLRRLRLRRRRRRRRLLRLLRLRLRRLRRLRLRRRLLLLRLLRLRRLLLRLLRRRLRLLLLLLLLLRRLRLRLLRLRLLLLRRLRRRRRLRRLLRRLLLLLRLRRRLLLLRRRLRRRLRRRLRLRRRRRRRLRRLRRRRLRRRLRRLRLRLLLRLRRRRRRRLLLRRLLLLLRRLRLLLLRLRLRRLRRLLLRRRLRRLRRLRRRRRRLRRLLLLLLLRLRRRLRLRLLLRLLLRLLRLRRLRRRLRRLRRRRRRRLRRRRRRLLLRRLLRRRLRRRLLRRLRRLLLLLRRLRLLRLLRRRLRRLLRRRLLLRLRRRLLLRRRRRLLRLRLRLRRRRLLRRRLRRLLLLLLRRLLLRRLRLLLRRRRLRRLLRRLLLLRRLRRRLLRLLRRLRRRRRLLRLLRRLLRLLLLRRRRRLRLLRRRLRRLRRLRLLRRLRLLLRRRLRLLLLLRLLLLRLLLLRLRLLLLRLRRLLLRLRRRLLLRLRLRRLLLRRLRLRLLRRRLLLRRLLLLRLRRRLRRLRRLLLRLLRRLLRRLRLLRRRLLLRLRLLLLLRRLLRRLLLRLLRRRRRLRRLLLLLRRRLLLLRLLRLLLLRLRRRLRRLRRLRLLRRLLRLLLLRRRRRRLRRLRRRRLLLRLRLLLRRLRLRRRLLLLLRRRLLRLLLLLRRLRLLRRRRLLLLLLRRRRLLRRRLLLRRRRRLLRLLLLLRLRLRLLLLRLRLRLRLRRLLRLRRRLLLRRLRLRRLRLRRRLLRRRRLRRLRLRLLLLLRLLRRRRRLLRRRRLRRRRRRLRLRLRLLLLLRLLLLLRLRRRLLLLLLLRRLLRLRRRRLRLRLLLLRRRRRLRLLLRLRRRRRRRLRRRLLRRLRLLRLLLRLLRLRRRLRLRLLRLLRLRRLRLRRLLRLLRRLLRRRLLLLLRRLLRRLRRRRRRLLRRRRLLLRLLLLLRRLLLLLRLLRLLRLLLLLLRLRLRRLLRLRLRRLLRLLLLLLLRRRRLLRRLLLLRRRRLLLLLLLLLLLLLRRLLRRLRLRLLRLRRLRLRRLLLLRLLLRLLRRLLLLRRLLLRLRLRRLRRRLLRRLRRLLLLRRLLLLRLRRLRLLRRLLRRRLRRRRLRLRLLRRRLLLRLLLLRRRLLRRLRRLLLRLRRRLLRLRLLRRRRRRLLRLLRRRLRRLRRRLRLLLRLLLRRLRRLLRRLRLLLRLLLLRRLLRLRRLLRRRLRLLLRLRLRLLLRRRRRRLLRLLLLRLRRRLRLLRLRRRRLLLLRRLLLLLLRRLRRRLRRLRRLRRLRLLLRRRRRLLLRLRLRLLRLRRRRLRRRRRRRLLLRLLLRRRLRRRRRLRLLRLRRLRLRLLLRLRLRLRRRLRRRRRLRLLRLRRRRLRLRRRLLRLLRRLLLRLRRRRRLLLLLLLLLRRRRLRLRLLLRRRLRRLRRLLLRLRLRRLLRLLLLLLRLLLRLRRLLRRRLRRRLLRRRLRRLRRRRLRRRRLLRLRLRRLRRRLRLRRRLLLRLLLRLLLLLRLRLLRRRLRLLRRRRLRLRLLLLLRRRLRRLRLLRRLRRLRRLLLRRRLLRLRLLRRRLRRRLLRLRLLLRRLLRLLLRRRRRLRLLRRRLRRLRLLRRLRRRLRRRLLLLLLLRLLLLLRRLRRLRRRLRRRRLLRRRLRRRLRRRRLRRLRLLLRLLLLLRRLLRRRRLLRLLRRLRLRRLRLRRRLLRLLRLRLLLRLRLRLLRRRLLRRLRLRRLRRRLRLRLLLLRRRLRLRLLLRLRRRLRRLLRRLLLRLRLLLRRLLLLRLLLRRLLRLRRRLLLLRRLRRLRRRRLLLRLRLLLLLRLRLRRRRLLLRLLRRLLLRLRRLLRLLLLRLLRRRRRRRLRRRLLLLRLLLRRLLLRLLRLRRRRRLRRRRRRLRLRRLRLRRRLLLRRLLLRRRLLLLLLRLLLRLLRLRLRRRLLLLRLRLRLRLRLRRRRLLRLRLLRRRLRRRLLRRLLLRLRLLRRLRLLRRLRRRRLRRRLLRLRLLLRLLLRRLRLLRRLRLLLRLRRRRLRLRRRLRRRLLLLRRRRLLLRLLRRRLLRRRLRRRRLRRLLRRLLRRLLLLLRLRRRLRLRRLRLLLLRLRRLRRRLLLRLLRLLLRLRLRRLLRRLLRRRRRLRRRLRLRLLLLLLLRLRLLRLRLRLRLRLLRLLRRLRLLRLRRRRRLRRRLRRLLLLRLRLLRLLRLLLLLLRLRLLRLLRLRLLRRLRRRLLLLLRLRRLRLLRRRRRRRRLLLLRRRRLLRRRLRLLRLRRRLLLRRLRLLRRLRRRLRLRLLRRLLRRLRRRLLLLRRRLRLRLRLLRRLLLRLLLRLLLLLRRRRRRRLRLRRRLRLRRRRRLLRLLLLRLRLRRRLRRRRRRRRRLLLRRLLRLLLLRRLRLRLLRRRLRRLLRRRLLRLRLLRRLRRRRLLLLRRRLRLLRLRLLLLLLLLRLRLLLRRRLLLLLLRLRRLRRRRRRRLRRLRRRRLLRRLRRLRLRRLLLRRRLLRLLLRRRLLLRLLRLLLRRLLRLRRRRLRRRLRRLRLLLLRRLLLLRLLRLRLRRRLRRRLRLLRRRRLLLLLLLLLLLRRLLRRLLLLLRLLLLLLLRLRLRRLRLRRRLLLRLLRLLLLLRLRLRLRLLLRLRLLRLRLRRLRLRRRRLLLRLRLRRLLRLRRRRRLLRLRRRRLRRRRRLLLLLRLRLRRRRRLLRLRRLRRRLRRRLLLRLLLRRLRLLLRLLLLRLRRRRRLLLRRRRLLRRRRLLLRLRRRRRRRLLRLRLLLRRLRRRLRRLLLLLRRLLRRLRLLLLRRLLLRLLLRRLRRLRRLLLLRLRRRLLLLLRLRRLLRRLRLLLRLRRRRLLRLLLRLLLLRLLLLRLLLRRLRRLLLLLLRRLLRRLRLLRLRLLRLLLRRRRLLLRLLRLLRRLLLLLRLLRLRLLLRLLLLRRRRRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLRRRRRLLLLRRRRRRRRLLRRLRLLRLLRLRRLRRRLRRRRLRRLLLLLRLLRRRLLRRRLLRRRLLLRLRLLRRLLLRLLLRRRLLRLRLLLLRLRLLRLRRLRRRLLRRRRLRLRRRRLLRRRRLLLRRRRLRLLRRRLRRRRLRLLRLRLLRRLRRLRRLLRLRLRLLRLLRRRRRRRRLRRRRRLLLRLRLLRLLRRRRRLRRLRLLRLRLLLLRRRLRRRRRLRRRRRRLRRRRRLLRLRRLRRLRRRRRLRLRRRRLLRLLRLLLLRRLLLLLLLLLLRRRRRLRRLLLRLLLLRLRRLRRRLRRRLLRRLRRRRRLLRRRRLLLRRLRLRRLLLLLRLLLLLRRLRRRLLLRLRLLLRRLLLLLRRRRLLLRRRRLLLLLRLLLLLRLLRRLLLLLRRRLLLRRRLLRLRLRRRLLRLLRLRLLLLRRLLRLRRLRLLRLRLLLLRLRRLRLRRRLRLLRRRRRRRRRRRLLRRLLRRLLLLLRLLRRLRLLRLLRLLLRRRLRLRRLRLLRRLLRLRLRRLRRRLLLRLLLRRLRRRLLLRRLLLLLRLLLLRRLLLRLRRLRLLLRRRRLRLLLRRLLLLLLRLRLRLLRLRLLRLLLLLLRLRRLRLLRRLLRRLLLLLLLLRRRRRLLLLRLRLRLRRRRLLRRRRLLLRRLLLRRLLRRLRRRRLRRRRRLLLLRRRLLLLRRLLLRLLLLRLRLRLRRRLLRLLRRLLLRLRRRRRLRLRRLRLRLRLRLLLLLLRLLRLLRLLLRLLRRRRRRLRLLRLLRRRRLRLLLLRRLLRRRRLRLRRLRRRRLLRLRLRRRLRLLRLLLRRRLLRRLLLLRRRLRRLLRLLRRRRLRLRRRLRRRLRRLRLRLLLRRLRRRRRLLLRLLLRLRLLLLRRRRLRRLLLLLRRLRRLLLRRRLLRLRRLLRRRLRLLLRLRLRRLLRRRRRRRLLLRLRRRLRLLRLLLRLRRLRRLLLLRLLRRRLRRLLRLLRLRLRLRLLRLLRRLLRRRRRRLLRLLLRRRLRRLLRLRRRLLRLRRRLLRRLLRLLRLRLLRRRLRRLRRRRRLLRLLLLRLRLLLLRLRLRLRLLRRRLLLRRRLRRRRRRLRRLRLLLRRRRRRRLRRRRRLRLLLLLLLLRLLRLLLLRRLLLRRLLRRLRLRLRLRRRRRLRLRLRLLRRRLLLLLLRRRRLLLRRLLRLRRRLLLRLLLLRRLLRLRLLRLLLLLLRLRRRRRLRLLLRLLRRLLLRLLLLLRRLLRRLRLRRRRLLRLRLLRLLRRLLLRRLLLLRLRLLLLLRLRLRLLRRLLLRRLRRRLRRLRLRRRLRRLRRLLRLRRLRRRRLRRLLLLLRRRLLRLLLLLLRRRLLRRLRLRLRLLRLRLRLLRLRLLLLLLRLLLRLLLRRRRLRLRLLLRRRLRLRLRRRLRRRLLRLLLRLRRRLLRLLRRLLLRRLRLRLLLLLRRRLLRLLLRRLLRLLRLLLRLLLRLLRLRLLRRRRRRRRLRRRRRLRRRLLRLRLRRLLRLRRRRRLRRRRLLLRRLLRLLRLLLRRLRRLLLRRLLLRLRLLRRRLLRRRLLLLRRLRLRRLRLLRLRLRLRLLLLRRLLLLRLLRLLLLRLRLLLRLRLRRRLLLRLRLRRRRLLLLLLRRLLRLLRLRLRRLRRLLLLLLRRLRRLRRLLRRLRLRLRLRLLLRRLRRRLLRRLLRRRRLLRLLRLLLLLRRLLLRRLLRRLRRRLLLLLRLLRRLRLRRLRRLRLLLRRRLRLLLLRLLLRRLRLLLRRLLRRLLLLLRLRLLRRLLLRLRRLRLRRRRRRLLLLLLLLRLRLLRLLRRRLRLRLLLLRRRLRLLRLRLRRLRLLRRLRRLRRLRLRRRLLRLRLLLLLLLLLRRRRLRRRRRLLRRRRLRRLRRLLLLLRRRRRLRRLLRRRLRLLLRLLRLRLLLRRLRLLRLLRLRRRLLLRLRLLLRLLRLRLLLRRRLLLLRLLRLRRRLLRRRLLLRLRRRRRRLRLLRLLLLLLRLLLLRLRLRRLLRLLRRLLLLRLRLRRRLLRLRLLLLLLRRRRLLLRRRRRLLRRRLLRRLLRLRRLRLLRRLLRRRLRLLLLLRLLLLRRLLRLRLLRRLRLRRLLLRRRRLRLLLLLLLLRRRLRLLLLRLLLRLRLRLLRLRRLLRLRRLLRLRRLRLLRRLRLRLRRLLLRLLRLLLRRRRLLLLLRRLLLLLRLLLRRLLRLRRRLRLLRLLLRRRLRRLLRRRLLRLRRLLRRRRRRLLLLRRLLRRLRRRLRLLLLLLLRLRRLRRRLRLLLLLRRLLLRRLRRRRRRRRLLLLRRLRLRLLRRLLLRLLLRLRLRRRRLRRRRRRLRLRRLLRRLRLRRRRRLLRRLRRLRRLRLLLLLRLRLLLLLRLLRLRLRRLLLRRRRRLLRRLRLRRLLLRRRLRLRRLRLRLLRRRLRRRLLRRRRLLLLRLRRLRLLRRLLLRLRLRRRLRLLLRLRLRLLRLLRRLLRRLLRLRLLLLRRRRLLLLLLLRLRLLLLLRLLRRLRLLRLRRRRLRLRLLLRLLRRLLLLRRRLRRLLLRRLRLRLRLRRRRLLLRLRRLLRLLLRRRRLRLLLLLLRRLLLRLRLRRRLRRRLLLRRLRRRLRRLLRLLRRRRLRLLLRLRRLLLLLLRRRLLRRRRLRRLRRRLRRRLRLLRRRRRLRLLLLRRLRLLRLRLRLRLRRLLLRRRRLLRRRLLLRRLLRLRRLLLLLRRLRRRLRRLLLLRLLLRLLLLRLRRLRLLRLRRLRRLLLLLRLLLRRLLLLLLRLRLRLLLLLRLLLRRLLLRLLLLLRRLLRLLLRLLLRLRRRLLRLLLLLRLLLLRRLLRLRRLLRRRLRLLRLRRRRLLRLLLRRRLRLRRRRRRRLLRLLRRLRLLLRRRLRLRRLLLRLLRLLLLLLRLLLLRRLLRRLLRRLRRRRRRRRLLRLRRRLRRLRRRRRLRRLRLRRRRLLLRLRLRRRRRRLRLRRRRRRLRLLRLLLRLRLLRLLLRRRRLRLRLLLLRLRLRLLLRLLRLLRRLRRLRRLLLRRRRRRLRRRLRLRLLLLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRRRLRLLLLRLRLLRLRRLRRRLRRRLRLLRRRRRLLRLRLLLLRLLLLLLRLLRRLLLLRRLLLRLRRRLRRLLRLLRLRRRLLRRRRLLRRRRLRRLLRRLRLRLRLLLRLLRLRLLRLLRLRLRRLRRRLRLLLRLLLRLLRRLLRRLLRLRLRLLLLLRLLRRLRRRLLLLRRRLRRLRRRLLLRLLLLRRRRLLRRLLLLRLLRRLLLLLLRLRRRLLLLLRRRRRRRLRRRLLLRRLRRLLRRRRRLRRRLRRRLLRLLRRRLLRLRRRLLLRLLLLLRLRLLRLLRRLLLLRRRLRLLLLRRRRLRRLRLRLLRLRLLRLRRLRRLLLRRRRRLRRLRRLLLLRRLLLRLRRLLRRRLLLRLLLRLLRLRRRLLRRRLRRLLRRLRRRLLRRLRLLRLLLRLRRRLRLRRRRLLRLRRRLRLLRRRRRLLRRLLRLRLRLRRLRRLLRRRLRLLRRRRRRLLRLRLRRLLLLLRRRRRLLRRLLRRRRLRLLRRRRLLLLLRLRRRLRRRLRLRRLRRLLLRLLLLRRRLRLRLRRLLLLRRRRLLLRRRLLLLRRLRRLRRLLLRLLRLLRLLRRRRLRRLLRRRLLLRLRRLLLRRRRLRLLRRLRLLRLRLRRLLRRLLRRRRLLRLRRLRLLLRLLLRRLLRRLLRLRLLLRLRLRRLLLLLRRRRRLRRRRRLLLLRLRLLLLLRLLRRRLRLLRRLRRRRLLLLRLRRLRRRLRRRLRRRRRRLRRRLLLRRLRRRRLRRLRLRRRRRRLRLRRLLLLRRRLLRRRRRLRRLRLRLLLLRLLLRLLRRLLRLRLLLLLRRLRRLRLRLLLLLRLRLRLLLRRLRLLRLLLRLRLRRLRLRRLLRRLLLLLLRRLLRLLLRRLRLRLLLRRLRLLLLRLLRLRLLLLRRLLLRRRLRLRRLRLLRRRRLRRLRLRLRLLRRRRRLRLRLLRLRLLRRRLRRRLLLLLLRRRLRRLRLLRLLLRRRLLLRLRLRRRLLLRRRLLLLLRRLLLRRRRRRRLLLLLLRLLLRRRRLLLLLRLLRRRRRRLRLRRLRLLRLRLRLRLLLRRRRLLLRLRRLRRRLLLRLRLRRLLLRLLLRRLRRLLRLLRRLRLLRRRRRLLRLLLRRLLRLRRLLLLLRRRRRRRLLLLRRRLRRLLRLRRRRRLRLLRRLRLLRLLRLRLRRLRRLLRRLRRRRLLLLLRRLRLRRRLLRRRRRRRLLLRRRRRRLRLLLRLRLLRLLLLLRRRLLRLRLLRRRRRLLLLLRLLRLLRLLRLLLRLRLRLLLRLLLLRRRRLLLRRRLRLRRRRRLLLLRRRLRLRLRRLLRRRLRLRLRLLRLRLLRLRLRLRLRRRRLLRRLLLRLLRRLLLRLRRLRRLRLLRLLRRRLRLRRLRLLLRLRRLLRRLRRLRRLRLLRRLLRLRLLRRRLLRRLRRLRLRLLLRLLRLLRRLLRLRLLRLLLLLRLRRRRRRRLRRLLLRRRRRLLLRRLLLLLRRRLLLLLLRLLRRRLLLLRRLLLRRRLRLRLLLRLLRLLLRLLLRLRLRRRLLRRRRLLRRLRRLRLRRRRRLLLLLRLLRRRRRRLLLRLLRLLLRLRLRRLRRLRRLLRLRRLLRLRRRLRLLLLLRRRLRRLRLLLLRLLRRRRLRLRLLLLLRRRRRLRRRLRLRRRRRLLLRRLLLRLLRLLLRLRRLRLRRLRLLLLLLLLRLRLLLRLLRLRRRLRLRRRRLRRRLRLLLRLRRLRLRRRLRLRLLRRLLRRLRLLLLRLLLRRRLRRLLRRLRRRRRRLRRRRLLLLLLLLLLLRRRLLRLLLLRRRLRRRLLRLRLRRRRLLRRLLRRLLLRRRRLRLLLLLLLLLLLRLRLLRRLRRRLRRRRLLLRLLRRLRRLRRLRRLLRRLLRRRLLRLRRRRRLRRRLRRRLLLRLLRLLRRRLRRRRLRRRLRRRRRLRLLRLRLRLRRRRLLRRRLLRLLRLLRRRRLLRRLLRRRRRRRLRLLLRRRLLRLRRLRRRLLRRRRLLRRLLRLRRRLLRLRRRLLLLLLRRLLLRRRRRRRLRLLLLRLRLRLRRRLLRRRLRRLLRRLLRRRRRLRLLRRRLLRLLRRRRLLLLLRRLRRRLLLLLRLLRRRLRLLLLLRRRRRRRRLRRLRRLRRLLLLLLRLRLRRRLLLLRLLRLRRRLRLRRLLRRLRLRLRLRRRLLRLLRLLLRRLRLLLRRRRRRRRRRRRRRLRRRRRLLRLLRRRLRRLRLRRRLLRLLLLRRLRLLLRLRRLLRRRRRRLLRLRLRRLRLRLRRRRLRRRRLLRLRRRLRLRRLRRLLLLLRRLRRLLLLLRRRLLRRLRRLLLLRRRRRLRLRRRLRRRLLRRLRRRLLRLRLRRRRLLLRLLLLRRLLLLRRRLLRLLRRRRLRRLRRLRLRLLLRLLRRLLRLRRRRRRLLLLLLLLRRRLRRLRLLLRLRLRLLRLRRRRLRLRRLRRRLRRRLRRRLRRLLLRLLLLRLLRRRLRRRRRRLLRRRLRLRLLRLRLRRRRRRLRRRLLLRLLLRLLLLRLRRLLRLRLRLLRLLRLLRRLRLLLRLLLLRLLRLRRLLLRRLRLLRRRLRLRRLLRLLRRRLLRLLRRLRRLRRLLRRLLRLRRLRLLRLRRLLLLLRLLRLRRRRLRRLRRLRLLLLRRRLLLLLLLLLLLLRRLLRLLLRLLRLLRLRLRLLRRRLLRRRRLRLRLRRLRLRLLRRRLLLRRRLRRRRRRRRLRLRRLLLRLLRLLRRRLRLLRRRLLRRLRLLRRLRRLLRRLLLLLRRLLLLLRRLLLLLRRRLLRLRLLLLLLRRLRRRLLRLLLLRLLLLLLRRLRLLRRLRLLRRLLRRRLLLLLRLRLRRLRRRLRRLLLLRRRLLRRLLLLLRLLRLRRLRLLLLLLRRLRLRRRLLLLRRRRRLRRLLLLLRLRRRLRLLRRRRRLRLRRRLRLLRRLLLRRRRLRRLRLRRRLLRRLRRRRLRRRLLRLLRRLLRRRLLLRRRRLRLLRRRRRLRRRLLLLRRLLRLLRRLRRRRLLRLLRRLRRLRRRRLRRRLLLLRRRLLRRLRRRLRRRLRRLLRLRLLRRLLLLLLLLRLLRRRLLLRRRLRLLRLLRLRRLRRRLLLLRRLLRRRRLRLLRRLLRRLRLRRLRLRRRLLLLRRLLLLLLRLLLRLRRLRRLRLLLLRLLLLLRRLRRRRLRLLLRLLRLLLLRRRRLLRRRRLRRRRRLLRLRRRLLLRLLRLLRRRLLLRRLLLRRLRLRRLLRLRRLLRLLRRLLLLLLLLLLRRLRRRRRRLRRRLRLLLLLRRLLRLRLRRLRLLRRLRRRRLRRRRLRRRLRRRRLLRRRLLLLLRRLRRRRRLLLRLRLRLRRLLLLRRRRRLLLLRLRRRRLLRRRRLRLLLRLRLRRRLRLLRRLLLLLRLRLLLRLLLRRLLLLLRLLLRLLLRLRLLLRRRRRRRRRLLRLRLLRRLLRRLRRLRRLRRRRLLLLLLLRRLRRRLRRRLRLRRLRLLLLLRRRLLRLLRRRRRRLRRRRLRLRRRRRLRLRRLLRRLLRLRRRLLLLRLRRLRLRLRRRRLLRLRRRLLRRRRLLLRRLLRRLRRLRRRRLLRLRLLRLLLRRLLRLLLLLLLLLRLRRRRRRRLLLLLLRRLRLLLLRLRLRRLRRLLLLLLRLLLRLLRLLRRRLRRRRRRLLRLLRRRRRLRLRLLLRLRLRRLRRLLRLRRLRLLRLLLRLLLLRRLRLRRRRLRLLRRRLLLLLLLLLLLRRLRRRLLLRLLRRLRRLLRRLRLLRLRLLLRRRRRRRLRLRRRLRRRLRLRLLRRRRLLLLLRRLLRLRLLLRLLRRLRLRLRLLRLLRRRLRLRLLRRLRRRLRLRRLLRRRLRRRRRRRRLRRLLRRLLLLLRLRLLRRLLRLRRRLRRRLLLLLRLLRLLRRLLRLLLLLRLRRRLLRRRLLLLRLLRRLRRRRRLLRLLRRLRLRLRLLLRLRRLLRLLLRLLLLRRRLRLRRLRRRRRLLRRRLRLRRRLLLLLRLRRLRLRLRRLRLRLLLLLRLRRRRRRLLLRLLLLLRRRLRLLRLRLLLLRLLRRRRRRRLRRLLLRLRLLLRRLLLLLRRRLRLLRLLRRRLLRLRRLLRLLRLLLLLRLLRRRLLLLLLLLLLLLLLLRLRLRRRLRLLRRRLLRLLRLRRLLRLRRLRLRRLLRRLLRLRLRRRLLRRRRLLLRLRRRRLRRLLLRRRLLLLRRLRRRRLLRRLRLLLRRLLRRRRRRRRLLRRLLLRLRLRLLRLLLLRRLRRRLLRLLLRRRLLRRRLRRLRLLLLLRLRLLLLRLLLRLRRLRRLRRRRLLRLLRLLLRLRRLLLLRLLLRLRRRLLRRLRLRLLRLRLLRRRLLRLRLLLLRRLLRLLRRRLLRRLRLRRRLRRRLLRLLLRLLRRLLLLLLLRLLRRLRLLLRLLRRLLRLRRLLRLLLLRLRRLRLLLLRRRRRLLLLLLRLRLLLRRLRRLRLRRLLLRRRLRLRRRRRRRRLRRRLRRRRRRLRRRLLLLRLLRLLRRRLLRRLLRLLLRRLLLLRRRLRRRRLLRRLRLRLLRRRLLRRRRLLRLLLLRRLLRRRLRRRRLLLRRLLRLLLLRRLRLRRLRRRRRLLLRLLLLRLRLRRRLLRRLRLRLLRRLRLLRLLLLLLRLRRRRLLLLLRRRLRLLLRRRRLRLRRRRRRLRLRRLRLLRLRRLLRRRRLLLLLRLRRLLLRRLLLLRRLRLLRRRLRRLLRLLLLRRLRRLRRRRLRRRLLLRRRRRRLLRRLLRRLRRLRRLRLLLLRLLRRLLLRLRRRRRLLLRLRLLLLRLRLLRRLRLRRRLRLRRLRLLLLLLLRRLLRRLRLRRLLRRLLRLLRLRLRRLLLRLLLLLRLRLRLRRRLRRLLRLLLRLRRRLLLLRLLRLRRRRRLLRLRRLRRLLLLRRRLRRRRRLLRLLLRLLLRRLLLRRRRLRLRRLLRRRRRRRLRLRLRRRRLLRLLLLLRRRLRRRRLRLLLLLRRLLRRLRRRLLLLRLLRLRRLRRRRLRRLLLLLLRRRLRLLLRLRLLLRLLLLLRLLRRRRLLRLRRRLLRLLLRLRRLRLRRRRRRRLLLRRRLRRRLRRLRLLLLRRRLRRRRLLLRLLLLRRLLLLLLLLLRLLRLLRLRLLRRLRLLRLRLRRRRLRLRLRRLRLRRLRLLRLLLLLRLRRRRRLLLRRRRRRRRLRLRRLRRRRLLLLRLRLRLLRRRRRRLRRLLRLLLRRRLLRRRLLRRRRLLRLRRLRRRLRLLLRRRRLLRLRLLRLLRRLLLLRRLRRRLLRRLRLRLRRRRLLLLLRLLLRRRRRRLLLLRLLRRRLRLLRRRLRRRRLRRRRRRRLLLRRLRLRRLRLRLRRLLRLRRLRLRLRLRRLLRRLRRRLRLRLLLLRLLLRRRLLLLRRLRRRRLRRRRRRLRLLRLRLLRRLLRLRRLRLLRLRLLRLLLLRLLRRLLRLLLLLLLLRRLRRLLLLLLLLLLLLRRLLRRRRRRLLRRLRRRRLLRRRLRRLLRRRRRRRRLRLLRLLLLRRLRLRRLLLLRLRLRRRLLRLRRRLRRLLRRLLLLLLLRLLLRRRLLRLLLLLRRRRLRLRRRRLRRRLRRLLLRLLRLRLLRLLRRLRLRRLRRLRLRLLLRLLRRLRLLLRLRRLRRRRLLLRRRLRLLLRLRLLLLLLRLLRRLRLLRRLLLRRRRLLRLRRLRLRRRLLRLRLLRLRRLLLLRLLLLLLRLRLLLRRRLRLRRRLRLRLRLLRRRLLRRLLRRRRRRLLLLRLRLLLLLLRLRLRRLLRLLRLLLLLRLRLLRLLRRLRRRLLLRLLRLLRRRLRRLLLLRLRLRRRRRLRRRLLLLRLLLLLRRRRRLRRRRLRRRRLLLLLRLLLLLLLRLRRRLLLRRRRRRLRLLRRRLRRRLLLRLRLRRRLRLLRLRLLLRLRRLRLLRRRLRLLLLLLRLLRRRLRLLLLLRRLLRRLLRLLRLRRRRLRLRLRLRLRRRLRRLRRRRRRLLLLLRLLLLLLLLRRRLLRLRLLRRLLRLLLLRRLRRLRRRLRRLRRLRRRLLLRLLRRRLRLLLRRRLRLRLLLLLRLRRLRRLRRRLRRRLLLLRRRLLRLRRLLRLLLRLRLLLLLLRRLRLLRRRRLLRRLLRRLRLLRRLLRRRRLRRRLLLRLLRLRRRRLLRLLRLRLRLLLLRLRRRRRRRRLRRLLRLLLRRLLRRLLRRLLLLLRRLRRLLLRRLRLLRRRLLRRRLLLLRLRLRLLRLLLLRLRLRRLRLLLRRRLLLRLRLLRLRLRRRRRRLRRLRLLLLRRRLRRRRRLLRRLLLLLLLLLRLLRRRLLLRLLRRRRLRRLRLLLRLRLRLRLLLRLRLLRRRLLRRLLRRRRRLRRLLLRLRRLLLLRLLLLRLLLRLRLRRLLRLLLRRRRLRRLRRLLRLRRLLLLLLLLRLRRRLLRLRLLRRRLLRLRLLRLLRRLLRRRRRLLRLLRLLLLRLLRRLLRLLLLRLLRRRRRRLRLLRLLLRLRRLLRLRRRRRLLLRRLRLRLRRRLRLLLLRLLLRRLLRLRRLRLRLLRLRRLLRRLLRRLLLRRLRLLLRRRLRRLRLLLLLRRRLRRRLLRRLRRRLLRLLLLLRRRRLRLLLRRRRRRRLRLLLLRLLLRRRRLRRRLRLRLLLLRLRLLLRLRRRRRLRLRRRRRLRLRRRLLRLRRLRRLRLLLLRRRLLLRLLRRRRLLRLLRLLRRLLLRRLLRLLLRRLLLLRRLLRRLLRRRRLLLRRRRLRLRLRLLLRRRRLLLLLRLRLLLLRLRRRRRLRLRLRLRLLLLRRLLLRLLLRRRLLLLLLRRLLRRLLRLRRRRRRRRLLLLLRRRRRLRRLRRRLLLRLLLLLLRRRRRRLLRLRRLRRRRLLRLLRRRLLLLRLLLRRLLLRLRLRRLLRLRLLLRLRLRRRLLLLLLLLLRRRRRLLRLLRRRLRLLLRLRLRRLLLLRRLLLLRRLRRLRRRLRLLLLRLLLLLRLLLRRLRLLRLLLRLLRLLLLLRRRRLLLLRRRLRRLLLLLRRLRLRRLRLLRRLLRLRLLLRRLLLLRRLRLRLRRLLRRRRLLLLLRRLRLRLRRRRLLRRLLRRRLRLLRRRLLRRLLRRLRRLLRLLRLLRRRLLRLRLLLRLRRLRRRLRRRLLRRRLRLLLRLRLRRRLLLRLRRLLRLLRLLRRLRRLRLRLLRRLLLRRLLLLLRRLLRLRLLRRRRLLRLLRLLRLLLLLRRRLLLRRRLRRLRLLRRLLRRRLRRLRRRLRLRLRRLLLRLRLLRLRRLLRLRLRRRLRRRRLRLRRRRLRLLLRLRLRRRRLRLLLLRLLLRRRLRLRRLRRLLRLRRRLRLLRLLLLRLLRLLLRRRLLRLLRLLRRLRRLLLLRRRLLLLRRLLLRRLLRLLLRLRLRRLLLRLLLRRRLLRRRLRLRRLRRRRRRRLLRLRRRLLRLRRRLRLLRRLLLLLRRLLRLLRLRLLRRRLRLRRLRRRLRRLRRLRLRRLRRRRRRLLLLRRRRLLLLRRRRLRLLRRRLRRRLLLRLLLLRRRRRLRRRLRRLLRRRLLLRRLLRLLLLLLLLRLRLRLRRRRRRRRLLRRLLRRRLLRRLRLRLLLLRRRRLLRRLRRRLRRLRRLLLLRRRLLRLLRRRLRRLRLLLRLRLLLLRLLRLLLLLRRLLRRLLLLRLLRLRRRRLLLLLLLRRRRLLLLRLLRRLLLLRLLRRLLRRRLLLRLRRLLLLLRRRLRRLLRRLLRLRLRLRRRRRRLRLRRLRLRRLRLRRLRLLLRLLRRRLLRLRLRRRLRRRLLLRRLRRRLLLRLLRRRLLRLLLLLLLLRLLLLRLRRLLLRRRRRLLLRRRLRRRLRLLLRRRRRRLLRLLRLRRLRLRLRLRLRRLLRLLLLLRLRLLRLRRLLRRLRLLLLLRLLRLRLRLLLLLRLLLRLLRLLLRRLRLLRLRLLRRLLLLRRLLLRLLRLLLLLRRRRLLRLRLLLLLRLLRRLLLLLRRLLRRLLLLRRRLRRRLRRRLLRLRRLLLLRRLLRRRRRRRRLRRLRLRRRLLLRRLLLRRLRRRLRLLRRLLRLRRLRRRLLRRLLRLRLLLLRRLLLLRLLLLLLRLRRLLLLRLLRLRRLRRRRRLLLRLLLLRRLRLRRLLRRLRLRRRRLLLLLLLRRLRRRLRLRRRRLRLRRLRRRRRLRLLRRRLLRRRRRRRLLLRRRRLRLRRRLLRLLLLLLLLRRLRRRRLLRRRLLLRRRRRLRLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRLRLRLLLLLLRLLLLRRLRRLLLRRRRLRLRLRLLLLLRRLLRRLLLLLRRRLLRLRLLLLLLLRRRRRLLLLLRLLRLRRLRLRLRRLRRRRLLRRLLRRLRRRLRLLRRLLRRLLLLLLRRRLRLRRRRRRRLLLRLLRLLRRLRLRRLLLLLRLRLLLRLRLRLLRRRLLLRRRLRLRRRRLLRRLLLLRRLRLLLRLLLLRLRRRLLLLLLRRRRLRRRLLRLRRLLRLLRRRLLRRRRRLLRLRRRLRRRLRRLLLRLLLRRLLRLRLRLLLRRLLLLRLLLRRLLRRRRLLRRRLLLLLLRRRRLRLLRRRRLRRRRRRRLRLRRLLRRRRRRLLRLLRLLLLLRRRLRLRRRLRRRLRLRLRLRLRLRRRRLLLRRLRLLLRRLLLLLLRRLLLLRLLLRLRRLLRRRRLRLLRLLRRLRLLRLRLLLLRRLLRLLLLRRRLRRLLRLRLRLLRRRRLLRRRLRLLRLRLRLRRRRRRLLRLLRRRRRRLLRRRRLLLRLRLRRRRLRLLLLRLLRLLLRLLLRLRRLRRLRLRLLLLLLRRRRLLLRRLRRLRRLRLRRRRLLRLRRRLRLLRRRRLLRLRLRRLLLRLRRLLLRRRLRLLLRLRRRLRLRLRRLLRLLRRRRLLRRRRRRRLLLRRLLRLLLLLLRLRRLLRLLRLRRRRRRLRRRLRRLRRRRLLLLRLRLRLRRRLLRRRRRLLRRLLLRRLLLLLLRRLRRRLLLRRRRRRRRLRLRLLRLRLRLRRLRRLRLLLRRRRLLLLRLRLLRRLLLRLRRLRRRLRLRRLLLRLLLRLLRRLRRLRLLLLLRRRLRLRRRLLLLLLLRLRRRLLLLLRLRRLLRLRRLRLLLRRLLRRLRLRLLRLRRRLLLLRRLLRLLLLRLRLRLLRLLLLRLLLLLRLLLRLRLLLRRLRLRRRRRLRRLLLRLLRLRRRRRRRLRLRRLLRLRRRLLRRLLLLRLRRLRRRLRLLRLLLRLRRLLLRRRRLRLLLRRRLLLLLRRRLLLRRRRLRRRLRLLLLLRRRRLLLLRRRRLRLLRLRLRLRRLRRLRLRLRLLLRLRRRLRLLRLRRRRRRRLLRLRLRRRLLRRRLRRLRRLLRLLRRLRLLLRRRLLLRLLLLRLLRLRRLRLRLRRLLLRRRRLLRRRLRRLLRRRRRRLLRLLRLRLLLLLRLLLLRRLRLLLRRRRRRRLLRLRLRLRRRLRLRLRLLLLLLLLLRRRRLRRLLRRRRLLLLLLLLLRLLLRRRLRRRRLRLRLLLRLLRLLRLRLRLLRLRRRLRLRLLLLRRRRRLLRRLRLLRLRRLLLLRLRLLRLLRRRLLRRRRRLRLRLLRRRLLRLRLRLRLLLLLLLRRLRLRLLRRLLLRLRRLLRLLLRLLRRLRLRLRRRRLLLRLRRLLLLLRRRLLLLLLLRLLLRRRRRRRLLLLLLRLLLLLLLRLLRLRRRRLLRRRLLLLLLLRLRLRLRRRLLRLLLRRRRRLLRRRLLLLLRRRLLRRLLRLLLRRLLLLRLRLLRRLLRRLRLLRLLLLRLLLLLRLRLLLRLLRRRRLLRRLLRLLLLRLLRLLLLLRLLRRLRLLLLLRRLLLRLLLRLRRRRRLRRRRRRRRLRRRRRRRRLRRLLLRLLRLLLLRLLLLRRRRRLLLRLLLLLLLRLLLRRRLLLRRRRRLLLRRLLLLRLRLLRRRRLLRLLLRRRRLLRLRLLLRLLLRRLRLRRRLRLRRLRLLLLLRLLLRLRRLLLRRRLRLRLRLLRLRLLRRLRLRLLLLRRLRLRLLRLRRRRRRLLRRLLRLRLRRLLRRLRRLLRLLLRRLRLRRRRLRLLLLRLRLRRRLLRRLLLRRRRLRLLLLLLLLRLLLRLLRRRLRLRRLRLRLLLRLRLRLRLLRRLLLLLRRLLRRRLRLLRRRLLLLLLLRRRLLLRLLLLLLRLLRRRRLRRLRRRRRRLRLRRRRLLLRRRLRRRLRRLLLRRLLRRRRLRRLRLRRRRRLLLLLLRLLRLLRLRRLLRRLLRRRRLLRRLLRLRLRLRLLRLRLLLLRLRRLLLRRLRLRRLRLRLLRLRLRLLRRLRLRRLRRRLLRLLRRLLRLRLLRRRLLRLLRRLRLLRLLRRLRRLRLLLRLRLRRRLRLLLLRLRRRRLRRLRRLRRRRRLRLLLLRLRLLLRLRRLRLRRLRRRLRLRRLLRRLLLRLRLLLRLRRLLLLLRLRLLLLLRRRLLRRRRRRRLRLRRRRRLLLLLRRLLRRLLLRRRLLRLRLRRRLRRLLRLRLRLRRRRRRLLRRRLRRLRRLLRRRLLRRRRLLRRRLRLRRRRLRRLLLLRRRRRRLLLLLRLRLLRLLLRLRLLLRRLLLRLRRRLLRRRLLLRRRRLLLLRRRRRRLLLRLLLLRLLRRRRLRLLRLLRRRRRRLLRRRRLRLLLRLRRLLLLLRRRRRLLLLLRRLLRRLLRLLRRLLLRRLLRLLLRRRRLLLRRLLLRLRRLLRRRLRRLLLLLRLLRLRRLRLRLLRLRRRRRRLRLLRRLLRLRLRLRRRLLRRRLLLLLLRRLLRLRLLRLLLLRRLLLLRLLRRRRLLLRRRRLRLLRLLRLLRRRLRLRRRRLLLRRLLRLLRRLRLRRLLRLRLLRRRLLRLLRLRRLRRLRLLLLLLLLRLLRLRRLRLRRRRRLRLLLLRLRLRLLLLLRLLRLRRLLRLLLRRRRLLRLRLRRLLLRLRRRRRLRLRLRLRRLRLLRLLRRLRRRLRRLRRRLRLRRLRLRLRRLLLLRRLLRLLRRRRLRLLRRRRRLRLLLRLLLRLRRRLLLLLRLLLLLRRLLRLRLLLRLLRLRLLRRRLLRLLLRRRLLLRLRRLRLLRRLRLRLRRLLLRLLRLRLRRRLRLRRRLRRLLLLRRRRRRRLLLRLRLLRLLRLRLLRLLLLRLRLRRLLRLLRRLRLLRRRLLLLRLLRRRRLLLRRRRRRRLRRLRLLRLRLRLRRRRRRRRLLRRRLRRLRRRRLLRLLRRLRRRRLLRRLLLRRRLLRLLRRLRRLRRRRLLRRLLLRLLRRLRRRRLRRRRRRLRRLRRRRLLRRRLLLRRLLLRRRRRRRLLRLLRLLRLRRLLRLLLLLRRLRLLRRRLLRRRRRRLRRLRRLRLLRRRLLLLRRRLLRLRRRRLLLLRLLLLLRLLRRRRRLLLLRRRLLLLLRLLLRLLRRRRRRLRRLRLLLLLLRLRRRLLRLLLRLLRLLLRLRLRLLRRRRLRRRLLLLRLRRRLRLRLLLLLRLRLLLLRLLRRRLRRLLLLRLRRLLRLLRRLLLRLLRLLLRRLRRRLRRLRRLLLLLLLLRRRLRRRLRRLLLLRLLRRRRLRLRRLLRRLRLRRLLRRRLLLLLRRLLRRRRLLLRRLLLRRLLLLRRRRLRLRLLRLRRLRLLRLRLLRLRLLRRLRRRLLRLLRRLRLLRLRLRLRLLLRRLLRLLRLLRRLLLLLLLRRLRRRRRRRLRLRLRLLRRLLRRLRLLLRRRRRRLRLLRLRRLLRRRRRRRLLLRRLRLLRLLRLRLLRLLLRRRRLRRRRRRLLLLRRRLRLLRLLRRLLRLRRLLLLLRLRRRRLRLRRLRLLRLRLLLLLRLRLLLRRLLRLLRLRRLRRLLRLRLLRLLLRLLLRRLLRRRRLRRLRLRLRRRLRLLLRRLRRLLLLLLLLRLLRLLRLLLLRLLLRLLLRLRRRRRRLRRLLLRLLRRRLRLRLRLLLRLRRLLLLRLLRLRLLRLLRLRRRLLLRRLLRLRLRRLLLRRRRLLLLLLLRLLLRRRLLRLRRLLLLRRRRLRRLLLRRRLRLLLLRRRRRRLRLRRRRRLRRLLRLLRRRRLLLLLRRRLRRRRLLRLLLLRRLLLRRLRLLRRRRRLLLRRRLLLLLRLRRLLRLLLRLRRLRRLLRLRLRRLLRRRRLLLRRRLLLLRLRLRRRLRLLRRRLRLRRLLRRLLLRLLRLRLLLRLRRLLLRLLLRLLRRRLRLRLLRLLLLLLRLRLRRRRLLRLRRRLRLLRRRLRRRRLRRRLRLLRLRRRLLRRLLRLLRLLRLRLRLRRLLLRLLLLLRLRRRRRLRLRLRLLLLRRLRRLLRLRLRLLRLLRLLRRLRLRLLRLRLRLRLRRLLLRLRRLLRLLRLLRLRLRLLRRLLRLLRLLLLLRLLLLRLLRLLLLLLLLLLLLLLRLRRRLRLLRRLLLRLLLLRRRRRRRRLRLRRLLRRLLLLRLLRLLRLRRLLRLLRRRLRLRRLRLRRRLRRLRRRRRRLLLLRLRRLLRRLLRRRLRRRRRLRRLLRRLRLRLLRLRLLLLLRLRLLRLLLRRRLLLLRRRLLRLRRLLLLRLLLLLRLRRRRRLRRLRRRRRLRRLLRLLLLRRLLLLRLLLLLRRRRLRRLRLLLLRRRRRLRRLLLRRRLRLRRLRRLLRLRLLRRRLLRRRLLRRLLRLLLRLLRRLLLRLLLRRLRRRLLLLRRLRRLLLLRRLLRLLRLRRRLLRLLLLRRLRLLRRLRLRLLLLLRRLLRLRLRLLLLRRLLRLRRLRRLRRLRRRLRRRRLRRRRRRRRLRLLRLLRRRRRRRLLRLRLRRLLRLRRRLRRLRLLRLLRLLLLRRRLLRRRRLLLLLRLRRLLRRRLRLLLLLLLLLLLLLLLRLLRLLRRLRRRRLLLLLLLLLLRLRRLLLLLLRLRLLRLLRLLRRLRLLLRLRRRRLRLRLRRRRRRRLLRRRLLLLRRRRRLRLRLLRLRRLRRLLLRRRLLRLLRRRRLRLLRLLLLRRLLLLRRRRRRLLRLLRLRLLRLLLRRRLLRRRRRRRRLRRLLRRRLLRLLRLLRLRLRLRRLRRRLLLRLRLLRRRLLLRRLLLLRLRLRLRRLRRLLLRLRRRRLLLLRLLLRLLRRLRLRRLRRRLRLLLRLRLRRLLLRLLRLLRLRRRLLRRRRLRLLLLLLLRLRRLLLRLLRLLLLRLLLLLRRLLRLLLLRRRLRRRRRLLLRRRRLLLRRLLLRRRRRRLLRLRRRLLLRRRRLRLRRLLLRRLRLRRRRLLLRRRLLLRRRLRRLLRRRRRRLLLLRLLRRRRLLRRRLLLLRLLLLRRLLRLLLRLRLLRLLLLLLRLRRRRLRLRLRRRLLRLLLRRRRLRLLLRRRRRLLRRRRLRRLRRRLRLLLRLRRLLRRLLLLRLLLRRRLRRLRRLLLLLLRRRRRRLLLLLRLLRRLRRLRRRLLRRRRLRLLRLRRLRLLLLRRRRRRRRLLLRRRRLRLRLRRRRLRRRLLRLLRLRLLLLRLRRRRLRRRRRLLLRRLLLRRRLLRRRRLRRLRRLRRRLRLLLRLRRLLLLLLRRRLRLLRLLRRRRRRLLRRLLLRLLLRRLLLLLRLRLLLRLRRLLLLLLLRLRLRLLRRLRRRRRLRRRRRRRRLRLRRRLRRLRLLLRRLLRLRRLRRRLRLRRRRRRLLRRLRLLLLLLRLLLRRRLLLLLLLRRRRLRRRRLRLRLLRLRLLRRLLLLLLRRLLRLLRRLRLLRRRLRRLRRLRLRLLLLRRLRRLLRLLLLRLRLRLRLLRRRRRLLLRRLRLRRLLRLRLRRRLLRRRRRRRLRRLRLLLLRRLRLRRLRRLRLRLRRRRRRLRLRLRRLRLLLLRRLRLRLLLRRLRLRLLRRLRRLLLRLRRRRRLRRLRRLLLRLLRLRRLRRLRRRRLRRLRRLLRRRLRRLLRLLRLLLLRRRLLRLLLLLLRRLRLLLRLRLLLLLRLLRRRLRLLRRLLRRRLRLLLRLRLLLRRRLLRRLRLRLRLLLRLLLRLLLLLLLLLLRLRLRLRRRRRLRLRRLLRRLRRRLLLRLRRRLRLLLLRLLRLLRRLLLRLRLRLLRLLRLLRLRLLRRRRLLRLLLRLRRLRLLRLRLRRRRLLLRLRRLRLRLLRLLLLLRLLLLLRRRRLRLLLRLRRLRLLRLLRLLLRLLLLRRRRRLLRRRLRRLRLLRRRRRLLLLLRLRLRRLLRRLLLLLLRRLLRRRLRRLRLRRRLLLLLLRLLRLRLRLLRLRLLLRLLRRLRLLRRRLRLRLRLLLRLLLRRLLRRRLLLLLLLRRLLLLLLLLRRRLRLRLLRRRLRLLLLRRLRRLRLRLRRLLRLLRRLRLRLLLRRLRLLLRRRRRRLLLRLLLLRRLLRRRRRLRRRLRRLLRRRRRLLLRLLLLRRRRLLRLRLRRRLLLRRRRLRRRLLRLLRLRRRLLRRRRRRRRRLLLRLRLRRRRLLRRLRRRRRLLRLLLRRLRRRRLLRLRRRLLRRLLRRLLLRRLLLRLRRLRLRLLRRLLLLRRRLLRRLRLLLRLLLLLLRRLLLRLRRRRLRLLLLRRLLLRLRLLLLRLRLRRRLRRRRLLLLLRRRLRRRRRLLRRLLRRLLRLRLLLLRRLRLLRRRRLRLRRLRRLLRLRLRLLLLLRLRLLRLLLLRRLRRRLRRLRRLRLLLLRLLLRRLLLLLLLLRRRLRLLLRLLLRRRLLLRLRRLLRLRRLLRLLRLRRLRRRLLRLLRLRLRLLLLRLLLRLRRRRRRRRRLRRLLRLLLLRLLRRLRRLRRLRLLRLRRLRLLLLRLRLLLRLRRLRLRRLRLLLRRLRLRRLRRLRLLRLRLLLLLRLRLRLLRLLRLRRRRLRRRRLRRRRRRLRRRLLRRRLLRLRLLRLLRRLRRRRLLRRLLRLLLLRRLLLRRRRLLLLLLRRRRLRLRLLRLRRLLRRRRRRRRLRRLLRLRRRRLRRLLRRRLRLLLRLRRLLRLRRRLLRLLRLLRLRLLLRLRRLLLLRLRRRRRLLLRRLLRRLLLRRLLLLLRLLLLLLRRRRRLLLRRRRRLLRRRRLRLRLLRLLRRRRLLLLLRLRLLLLRLRRRRRRLLRLRRRLLLLRLRLLRLLRLLRLLLLLLRRLRRLRRRRRRRRRRLRRLLLLRRRLLRLRLRLRLLLRLLLLLRRRRRRRLLRLRRLLRRRRLRLRLRRLRRLRLLRLRLLLRLLLLRLLRLRLRLRRRLLRRLLRLLRLLLRRRRRLLRLRRRRLRRLRLLRRRRLLLRRRLLRLLLLRRLRRRLLLLLLRLLLLLRRLLRRLRLLLLRLLLRRLLLLLRRLLLLLLRRRLRLLLRRLRRLLRRLLLRLRRLRRRRLLLRRLRLRRLLRLRLRLLRRRRLLLLLRLLLRLRLRLRRLRLLLLLRRLRLLRRRLLRLRLRLLRRLLRLRRLLLLRLLRRRLLRRLRLLLRRRRRLLLRRRLRLLLRLRLRLRRLLRLLRLLLLLRLRRRLRRLRLRLRRLLLRRRRRLLRLLRLRRRLLRRRRRLRLLRRLRLRLLLRRRLLLLRLLRLLRLLRLRRRRRLRLLRLLRRLLLRLRLLRLLLLRLRRLRRLLRRRLLLRRLLRLRLRLRLLLLRLRRRRRRLRRLLLLLLLLRLLLRRRRRRLLLLRRRLLRLRLLLLRLLLLLLRLRLLLLRRLRRRLLLLLLRRLRLLLRRRLRLRRRRLLLLRRRLRRLLLRLLLRRRLLRLRLRLLRLRRRLRRRLLRLRLRLLRLRRLRRLRRRLLLLRRRLLRLLLLRLRRRLLRLLLRRRLLRLLRRLRLLRLRRRRRRLLRLRRRRLLLLLRRLRRLLRLRLRRLLRRRLLLRRRLRLRRRRLRRLLRRRLLLRRLLRLRLRLLRRRRRLLLRRRRRRRRLRRLLLRRRRLRRLRLRLLLLLRRRRLLRLRLLLRRLRRLLLLRRRLLLLRRRRLRRLRLLLRLRLRRLRLLLRRLLRRRRLRRLRLRLRRRRLRRRLRRLRRLRRRRLRLLLRRRLRLRLRLLLLLLLRRRRRLLRRLLLRLRRRLRRRLRRLLRRLRLLLLRLRRRRLRLRRLRRLLLRRLRLRLRLLLRRRLLRRRRRRLRRLLRRRLRRLRLLLRRLRRRLLRRLLLLLRLRLLLRRRLLLRLRLRLRLLLRRRRLRRLRRLLRRRRRRLLRRLRRRRRRLRLLRRLRRLRRLLLLRRLRLLRLRRRLLRLLRRLLLRLRRLRLRLLRLLRLRLLLRRLLLRRLRLLRLRLRLLLLRLRRLLLRLRRLLRLLRLRLLLRLRLLRLLRRRRLRLLLLRRLLLRRLLLRRLLLRRRRRRLLRRLRLRRLLRLLRLRRRRRRLRRRRLLLLLRLLRRLLRRLRRRLLLLLLLLLLRLLRRRRRRRLRLLLLLLLRRRLRLRRRLLLLRRRRLLLLRLLLLLLLRRRLRLLLRLLLLRRRRLRRLLRRRLLRRRLLRLLLLLRRLRRRLRRRLRRLLLRRRRRRRRLRLLRRRLLRRRRRRLLLLRRRLLRRRRLRLLRLLLLLLRRRLRRRRLLRRRLLLRLRRRRRLLRRLLLRRRRRLRRLLRLLRRRRLLLRLRLRLRRRLLLRRLLLLRRLLLLLLLLRRRRLRLLLRLLLRRLLRRLRLLLRRRLLLLRRLLLRRRRRRRRLLLLLRRLLRRRLRLRLLRLRRRRLLLRLLRRRRRRLRLRRRLLRRLLLLLLRRRRRLRLRRRRRLLLRLLRRLLLRRLRRLLLLRRLRLLLRLRLLLLRLRLLLRRRRRLRLRLLRRRRRLLRRLRLRLLLRLRRLRRRRLLRRLLRLRLRRRLLRLLRLLLLLLRRRLRLRRRLLRLLRLRRRLLRLLRLRLLLRRLLRLLLRLLRLRLRRLLLLRRRLLLLRRRLRRRLLRLRLLRRRRRLRRRRRLLRRRRRRLRLRRRRRRRLRRRLRRLRRRLLLLRRLLLRRRRRRLLRLLLRRRLRLRRRRLLLRRLRLRLRLLLLLLLLLRLLLLLLLRRRLLLLRRLLRLLLLLRRRRLLRLRLLLLLRLLRLLLLRLRRRLRLRLRLRLLLRRRLLRRRLRLLLLRLRLRLLRRRLLRLRLRRLRRLLLLRLLRRRRLRRRLRLLLLLLLLLRLRLRLLRRLRRLRLRRRRLLLRRLRRLRLLLRRRRRRRLLLLRRLRLLLLRRRLLLLRRLRLLRLRLRRLRLRRRRRLLLRLLRLLRRLRLRLRLLLRRLRRLLRLRLLLRRRRRRRRLLLRLLLLRLLLRRLRRLRRLLRLRRRRRRRRLLLRRLRRRRLRLLLLRRRLRRRLLRRRRRRLLRLLLLRLLLLLLLLLRRRLLLRRRRLRRLRRLRRRRLRLLLRRRRLRLLLLRRRLRLLLRLRRLRRLLLRLRRLRRRLRLLRLRRLRLRRRLRRLRRLRLRLLRRRRLRRLRRLRRLLLLLRLRRLLLLLRLLRLRRLRRLLRLRLRRLRRLRLRLLRLRRRRLRLRRLLRLLRLRRRLRRRRRLLLRLLLLLRRRLRLRLLLLRLRRRRLLRLRRLLLRLLRLRRRRLRRLRLRRRLRLRRRLLLRLLLLRLLLLRLLLLRLRRLLRLLRRLLRRRLLRLRRRRLRLRLLLLRLLLRLLLLRRRLRRLLRRRRRRLLLRRRLRLRLLLLRLLLLRLRRLLLLLLLLLRRLRRLRRRLLLRRRRLRLLLRRLRRRLRLRRLRRLLRRRRRLLLLRLLLRRRLLLRLLLLRLLLLRRRRLRRLRLLLLRRRLLRLRRRRLLLRLLLLLRLRLRLRLLRLLRLLLLLLLRLRLRRRLRLRLLRRRLLRRRLLRRRLRLLLLLRLLLRRLRLRRLRRRRRLLLRLLRLLRLRLLRLLRRLLLRLRLLLLLLLLLRLRLRLLLLLRLLRRLLLLLLRRLRLLRLLRLRLLRRLLLRRLLLLRRLRRRLLLRLRRRRLRLLLRRLLRRRLRLLLLLLLRLRLRRLRRLRRLLLLLLRRLLRLLRLLRRLRLRLRLRLLLLRLRRRLLLLRRRLLLLLLLRLRLRLRRRRRLLLLRLRRLRLLRLRLLRRRRRRLLRRRLLRRLRRRLRLLLLLRLLRRLRRLRRLLLRRRLRRLLRRRLLRRLRLRLLRRRLRRRLRRRRRLLLRLRLRRLLLLRLLLLLRLRLLLRRLRRLLRLRRLLRLLRLRLLLLLRRLRLLRRLLLLLLLLRRLLRLLLRLRLRLRRRRRRRRRRLRLRLRRRLLRRLLLRLLRLLLLRLLLRRLRRRLLLRRLLRLLLLLLLRRRLLLRLRRRRRRLRRLLLRLLLLRRRRLLLLLLRLRRRRRRRLLLLLLRLRLRLLRRLLLRRLRRLLLRLLLLRRRRLLLLLRLRRRLRLLRLRLLLRLRRRLLLLRRLRLRRLRLRRRRRLLLRRLLRLRLRRLRRRLRRRLLLLLRLLLRLLRRRLLLLLLLRRRRRLRRRLLRLRRLLRLLLLLLLLRLLLRLLRRLLLLLRLRLRLLRRLRLRRLLLRLLLLLLRRLRRRRLRLLRLRLLLLLLLRRLRLRRLLLLLLLLLRRRRLRRLRLLLLRLLRRLRLLLRRLRLRRRLRRRLRRRRRLRRLRRRLRLLRLRRLLLLLRRLLRLRRRLRRLRRLLLRRRRRRRLLRLRLLLRLRLLLLLLLRLLRRRRRRLLLRLLLLRRLRRRLLLLRLRRLRRLLRRLLRRRRLLLRLLLRRRLRRRLRRRLRLLRLLRLRLLLRLLLRLRLRRLLRLLLLRLRRRRLRLLRRLRLRRRLRLLLLLRRLLLRLRRRRRRRLRRRRRRRRLLRRRLRLLLLLLRLRRLLLLRRLRLLLLLRLRLLLRLRRRRLRLRRRRLLLLRRRRLLLRLLLRRRLLLLRLRRRLLRLLRRRLRRRRLRLRRLRRRLRRLRRLRRRRLRRRRRLLRRRLLLLRRRLRRLLRRRRLRLRLRRRLRLLRLRLRLLLRLLLRLLLLLLLRRLLRLRLLLRRRRLLLRRRRRLLLLLLLRLLLLRRRRRLLRLRLLRRRRRLLLRRRRLLLLRRLRLLRLLLLLLRLLLLRLRRRLRLLLRLRLRRRLRRLLRLLRRLRLLLLLRLLLRLRRLLRLLLLRLRRLLRLLRLRLLRLRLLRLLRRRRRLLRLRRLLRLLLRLLRRLLRRRRLRLLLRRLLRLLLLRLLLLRRLLLLRLLLRRLLRRRRRRLRRRRLLRLRRRRLRLRRLRRLLRRLRLLLRRLRLLRRLRRRLLLLRRLRRLRRRLRRRRRLLLLLLRRRLLRLRRLLRRRRLRLRLLLLLLRLRRLLLLRLLRLRRRRLRLRRRRLRLLLRLRRLLLRRRLRLRLRLRLLLRRLRLRRLLRRRRRRRRRLRRLLRLLRLRLRLRRLLLRRLLLRLRRRRRRRLLLRRRRRLLLLRLRRRLRRRLLLLLLLLRRLRRLLRRRLLLRLLRRRLLRRLRLRLLLRLRRLLRRRRLRRLRLLLLRLRRLLLLLRRLRLRRRLLLRRLLLRRRLLRLRRRLRRRRRLRRLRRLLLRLRRRLLLRLLRRRLLRRLLRLLLLRRRRRLLRRLRLRRRLLRRRRRLRLLRRRRLLLRRRLRRLRLRRLLLLLRLRLLRRRRRLRLLRRRRRRRLLLRLLLLRRLRLLLLRLRRLLRLRRLRRLRLRRLLRLLRRRLRRRRRLRRLLLLRLRLRLRRLRLLLLLRRRRRRRLLRLLRLRLLRRRLLRLRLLRRRLLRRRRLLRRRRRRLRRLRLLRLLLLRRLLRRRRRLLLRRRRRLLRRLLRLLLLLRRRLRLLRRRLRLLRRLLRLRRRLRRLRRRRRRRRRLRLRLRRRRRLLLLRLLRRRRLRRLLLLLLRLRRLRLLLLRLRLRRRRRLRRLLLRRLRRLRLRRLRLRLRRLLRRRLLRLLLLLLLRRLRLLRRRLRLRLRRLLLLRRLLLLRLLRLLRLRRLRRRLLRRLLLRRRRLLLLLRLRLRRLLRLLRRRLRRLLLRRLRRLLRRLLRLLLRRLLLLRLRRLRLRLLRRRLLRLLRLRLLRRRRLRRRRRRLLRRLLRLRRLRRRRRLRRLLRRLLRLLLRLRRLLLLLLRRRLLLLLLRRLRLRLLRLLLRLRRLRLLLLRRRRRLRLRRLRLLRRLRRLRRLLLRLLLLLRLLLLRRLRLLLRLRRLRRRRRRLLLLRLLRRLLRLRRLLLLLLLLRLRRLLRLRLLLRRRLRLLLRRLLRLLLLLLLLRLRLRLLRLRLLRRRLRLLLRRLLLRLLLRRLLRRRRLRLLLLRLRRRRRLLLRRLRRLRRRLRLLRLLRLLRRLRLRLRLRRLLRLLLLRRRLRRLLLRLLRRLLRLRLLLLLRRLRLLRLLLLLLLLLRRLRRRRLLRRRRLRRRRLRRLLRRRLLLRLLLLRRLLLRLRLLRLRRLLLLRRRLLRRLLLRRLLRRLLLRRRLRRLLLLRRRRLRRLRRLLRLLRRLRRLLLRLLRRRRLRRLLLRRLLLRRRRRRRRRRRLLLRRLRLLLLRLRRLLLLLRRLRRLLLLRRLRLRRRLRRRRRLLRRRLLLLRLRLRLRLRLLRLRLLLRRLLRRLLRRLLRLRLRRRLRRRLLRLRLRLLLLRLRLRRRRLLLLLRLLRRRRLLLLLLRRRLRLRLRRLRRRRRRRRLRLRRLRRRLLRLLRRLLLLLLRLLRLRRRLLRRLLRLLLRRLRRLRLRLRRLLLRRLRRLLRLRLRRLRLLLLLLRLRLLLLRRRLRRRLLRLRLRLLRLLRLLRLLLLLLRLLRLLLRLLRLRRLLRRRLLLRLRLRRLLLLLLLLRLRRLLRRLRLRLRLRLRLRLLRLRRRRLRRRLLRLLRRLLLLRLLRLRRLRRLLRLLRLRLRRLRLRRRRLLRRLRRRRRRLLRLLLRRLRLRLLRLRLRLLRRLRRLLRRLRLLLLRLRLLLLRRLLLRRLLLRRLLRLLRRRLRRLRRLRLLRLLRLLRLRRRRRLRLLLLLRRRRRRLRLRLLRRLLLLLLRRLLLRRRLRLLLRLLRRRRRRLRRLLLRRRLRLRLLRLRLLLRLRRLRLLLLRLLLLRLLLLLRLLRRRLRRLRLRRRRRRLLRLRRLRRLRLLRLLLRLLRRRRRLLRRRLLLRLRLLRRLRLRLLRRLRLRLRLLLLLLRRRLLRRRRLLRRLLRLRLRLLRRRLRRLLRRRRLRLLRLLRRRRRRRRLRLRLRLRRRLRLRLRRLRRLRLLLRLRLRLRLRRLRRRLLRLRLLLLLRLLLRLLLLRLLLLLLLRRLLLLRLLRRLRRRRLRLLLLLLLRLLRLLRLLLLRRRRLRLRRRLLRLRRRLRRRRLRLRLRLRRRRRRRRLRLLLLLLLLLRRLRRLLLLRRRLRRLRLRLRRLRLLLRRRRRRLLLLRRRRRLLRRRLRRLRLLLLRLLLRLLLLRRRRLRRRRRRRRLRRLLLRRLLLLLRLLRLRLRLRRLRRRLRLLLRLLRRRRLLRRLLLRRLRLRLRRLRRLLLRLRRRLLRRLRLLLRLRRRLRLRLLRRRLRLLRRRLLLLRRLLLLRLLRRRRRLLLRRRLRLLLLRLLRLRRRRLRLLRLLLLLLRRLRRRRLLLRLLLRRLRRRRLLLLRRRRRRRRLLLLLLRRRRLLRLRRRLLLRRRLRLLRLLLLRRLRLRRRLLRLLLRLLRRRRRLLLLLRRRRRLLLLRLRRRRRLLRLRRLLLRLRLRLRLRRRRLLLLLLRLLLLRRRLRLRRLRLLRRRRLLRLLLRRRRLRRLLRRRRRRRRRLRLRRLRLRLRLLRRLRRRLRLLRLRLLRLRRLLRRRRRLLRLRLRRRRRRRRLLLRLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRRRLRLLLLRRLLLRLLLRRLLLRRRLRRLRLLRLLLLRLLLRRLRRRRRLLLLRLLRLLLRRLRRRLRRLRRLRRRRRLLLRLRLLRLLLRRRRLRLLRLLLRRRLLLLLLLLRLRLLLLRLLLLRRRLLLRLRLRLLLLLLRLLLLLLLRLRRLLRLLRRLRRLRLRLRRLRRRLLLLLRRRLLLLLRRRRRLLRLRRRLLLLRLLRLLRLLLLRLRLLLLLLLLLRLRLLLRRLLLLRLRRLLLRRRRLLLLLRLLLLLLRRLRRLRRRLRRLRRRRRRLRRLLLLRRLLRRLLLRLRLRLLLLLLRLRLLLRRRRLRLLRRLLLLRRLLLRRRLRRRRRLRLRRLRLLRLRRLRRLRLRLRRRRRRRRLRLRRLRLLLLRRRRLLLLLRRLRRRLRRRLRRLLRRRLLRRRLRLRRRLLRRRRLLLRRRRLRRRLLLRRRRRLRRRRRRLLRLLLRLLLRLRLLRLLLLLLLRLRLLLRRRLRLLLRLLRRRLLRRLRLLRRRLLLRLRLLLLRRLRRRRRLRLRRRLLRRRLRRRLLLLLLLRLRLRRRLRLRRRRLLRRRLRRLRRRRLLRLRRRLRRLLLRRRRLLRRRLRRLRLRLLRRLRLRLLRLRLRRRLLRLLLRLRRLRRLLLRLRRRRLRLRLRLLRLRLLLLLLLRRLLRLLRRRLLRLLLLRLRLRLRRRRLLLLRLLLLRRRRRRRRRRLRRRLLLRRLRRLLRLLRLRLLLLLRRLLLLLLRLRLRRRRRRLRLRRRLRRRLLRLLRLRLRLRRLRLLLRLLLRRRLLRRRLRLRLLLLLRLLLRRRLRLRLLLLLRLLRLLLLLRRLRRRRRLRLLRLRLRLRLLRLRLRLRLRLRLLLLLLRRLRRLLRLLRLLLLLRRRRLRLLLRRLLLLRLLRRRRRLRRLLRRRLRLRRRLLLRLLLLRRRRRLRLRLLRRLLLLRLLRRRRLLLLLLLRLRRRLRRRRLLRRRRLRLLLLRLLLRLRRRRLRRRLRRLRRRLRRLRLLLLRRLLLRRLLRRLRLLRLLLRLLRLLLRLLLRLLRLRRLRLLLLRLLLLLLLLLLRRLRLRRLRRRLRRLLLRLRLLLLRLRLLRLRLLRLLRRLRLRRRLRLRLLLRLLLLLRLRRRRLRLRLRLLRRLRLLRRRLLRLLLRLRLRRRRLRLLLLRLLLRLRLLRRRRLRLLLRRLRRLRLLRLLLRRRRLLRLLLRLLRRRRLRLRLRLRRLLLLLLRRRLRLRRLRRRLRLRRLRLRLLLRLRLLLLRLLRLRRLRRRLRRRLRRRLRLRLRLRRRLLLRRRRRLRRLLLLLLLRLRLLRLRLRLLRRLRRLRLRRLLLLRRRLRLRRLLRRRLRRLRRLLLLRRRLRLRLLLRRLRRRLRRRRLRRRRRRLRRRLRRRRLLRRRRLRRRRRLRRRRRLRRRLRLLLLRRLLRRRRRRLRRLLRRRLLRLRLLRRRRLLLRRLRRRLLRRLLRLRRRRLRRLRRRRLRLLLLLLRLLRLRRRLRRLLRRLRLRLLLRLRRLLLLRLRRRRRRLLRRLLRLRRLLRLLLLRRLLRRLLRLRRLLLRRLLRRRLRLLRLRLLLLRRLRRRLLLRRLRLLLRRRLRRLRRRRLRLRRRLRLLLRLRRRRRLRLLLLRRLLRRRLRRLRRRRRRRLRRLRRRLRLLRRLLRLLLRLRLLLLRLLLRRRRRRLRLLRLLRRLRLRRLRRRLRRLRRLRLRRLLLLLLRLLLRRLRLRLRLRRLRLLRLLRLRRRLLLRLRRLLRRRRRLLRRRRLLRRLRLLLRRLRLRLLLLRRLRLLRLLLLLRLLRRRRRLRRLRLLLLLRLLLRLRLLRRRRLLRLLLLRLRRLRLRRLLRLLRRLRLRLLRLRLRLRLRRRRRLRLLLLLLLLLLRRLLLLRLLRLLRRRRRLLLRLRLLRRLRRLLRRRRRLLRLRLRLLRLRLRRRRLLLLRLRRRRRLRRRRLRLRRRLRLRRRRLLRLRLRLRLLLRRLRLLLLLLLLRRRRLRLRRLRLRLRRLLLRLRRRLLRLLRRRRRLLRLLRRRRRLRRLRRRLLLRRRRLLLLLRRLLLRRRLRRLRRLRLRRLLRRLLLRLRLRRLLLLRRLRRRLLLRRLLLLRLLLRRRLLLRLRLRRRRRRRLRLRRRRLLLRRLRLLLRRLRLRRRLLRRRRLRLLRLLLRLRLLLRLLRRLLLRRRRRLLLLRRLRRLLRLRRRRLRLLLRRLRLLRRLRRRRRRRLLRLLRLLLLRRLLLLRRLRLLLLRRRRLLRRLLRLLLRLRRRRRRLLRLLLLLLLLRRLRRLLRRRLLRLLLLRLLRRRRLLLRLRLRRLLLRRLRRRLLLRLLLLRLLLRLRLRRLLRRLLLLRLLLRLRRRLLRRLLLRRLRRRRLRRLRRRRLRRLRLRLLRRRRRRLLLRLLLLRRRRLRLLRLRRLLLLRRRRLLLRRLLRRRLRRRLRLLRRLRLLRLRRLRRRRLLLRRLRRRLRLLLRRLRRRRRRLRRRLRLRRRRLLRLRRRLRRLRRRRLRRLLRRRLRLRLRLLLLLRLRRRRRLLRLLLRRLLRLLLLRLRRLLLRLRLLLLRLRRRRLRLRRLRRLLLLRRLRRRRLLLRRRRLRLRLLLRLLLLRRLLRLLRLLLRRLRRRLLLRLLRLLRLRLRRRRRLLLRLLLLLRLLRRRLRLLRRLRLLLLLRRRRLRRLLRLRRRLRLLRRLRRRRRLLLLRRLLLLRRLRRLLRLLRRLLRRLRLLLRRLRRRRRLRRLLRRRLLRLRLRRRRLLRLLLRRRRLLLRRLRRLLRRLRLRLRLRLRLRRLLRRRRLRLRLRRLRRLRRLLLRRLRLLLRRRRLRRRLRLRRLLRLLRLLRRRRRRRRRRLLLLLRLLRRLLRRLLRLLLLLLLRRLRRLLRRRRRLLLRLLLLLLRLRRLRLRRRLLRRRRLRRRLLRRLLRLLLRRRLLLRLRLLLLLLRRLRLLLLRRLLRLLLRRRLLLLRLLLRLRLRRLLRLLLRRRRRRRLLRLLRRRLLRRRRRRLLLRRLRLRLRRRLRRLRLLLRLLRRRRRRLLLLRLRLLLRLRLRRRLRLRLLLRLRRLLRRLRRLRRRRLRLLRRRLLRRRRRRLRRLLLLLLLLLLLLLLRRRRLLLLLRLLRRRLRRRLRLLLRRRRLLRRRLLLRRRLRRLLRLLRRRRLLRRRLRLRLLLRRLLRLLLLLLRLRRRRRLLRRLLRRRLLLLRLRRRRRLRLLRRLRRLLRLLLRLLLRRLLRRLLLRRRRLRRRRRLLLLRLRLLRLRLRLLRLRLRRRLRRRLRRLRRRLLRRLRLRRRLRLRRRLLRLRLRRRLLRLLRLLLLLLRRRRLLRRRRLLLLRLRLLLRLLLRRLRLLLRLRRRLLLRLRLRRRRRLLLRRRRLLLRRRLRRRRLRRRLLRRLRRLRLRRRLLRRRRRRLLRRRRRRRRLRLRLLRLLRRRRLLRRRLRRRRRRLLLRLLRRRLRRLRRRRLLLLLLRLRRRLRLLLLLLLRLLLLRLRLRRLLLLRLLLLLRLLLLRRRLRLLLLLLRLRLRLRLRLRLLRLLRLRLLRLLRLLRLLLRRLRRRLLLRLRRLLLLRRRLLLRLRRLRLLLLLRLRRRRRLRLRLRLLLLLLLLLLLRLRLRRRRLRLRLRLRLLLLRRLRLLRRLLRRRRRRRLRLLRLLRRRLRRLRRLRRRLLRRLLRRLLLLRLRRRLRRRLRLLRLRRLLRLRLRLLLRRLRLLLRLLLLLRRRRLRRRLRLRLLLLRRLLRRLRLLRRLLLLLRRRRRRLLLLLRLRRLRLRRLLRRRRRRRRRRRRRRRRLLLLLLLRRRRRLRLLRRLLLLLRRLLLLRLRRLRRRRLRLLLRLRLLRLRLLRRRLRLRLLRRRLRLLRLLLRLLRRRLRLLRLRRLRRRLRLLLLRLRRLRLLRLRRLLRLRRLRRRRLLLRLRRLLLLLRLLRRRLRRRLLRLRLLRRLLRRLRLRRLRRLRLRLRRLLLLRRLRRRRRRRRRRLRLLRRRLRRRLLLLRLLLLLLRRRLLRLRLLLRRLLRLLRRLLRRLLLRLRLRRLLRRLLLLLLRRRLLLRLLRLRRRRRLLLLRRLLRLRLLRRRRRRLRLRLRLLRLRLRLLLLRRRRRRLLRRRLRLLLLRRRLRLRLLLLRRLLLLLLRRLRLLLRLLRRLRRLRRRLLLLRRRLRLLLRLLLRRLRLRRLLLLLRRRLRRLLRLLLLRRLLLLRLRLLRLLLRLLRRRRRLRLLLLLRRRRLLRRLLLRLRLLLLLRLRRLLRLLRLRRLRLLLLRRLRLRLRLRLRRRRRRLLRRRLLRRRLLLLLLLRRRLLRLRLRRRRRLRLRRLRRRRRLLLRLLRLRRRLLLRRRLRRLLLLRLRLRLRLLLLLRLRRRLRLRRLRRLRRRLLLRLRLLLLLRLRRLLLRRRLRLRLRLRLRLRRRLLRLRLLLRRLRRLLLLLLLRLRLRRRLRRRLLRRLRLRRLLRLRRLLRLLRLLLRLRLLLLLRLRRLLLRRRRLLLLLRLRRRLRLRRLRLLLLLRLRRLRLLRRLLLRRRLRRRLRRRRLRRLRRLRRLLLLLLLLRRLRLLRLLRLRRRLRRLRRLLLRRRRRLRLLRLRRRRRLRRRRRLLLRLRLRLLLLLRLLRLLLLLRLLLRLRLLLRRRRLLRLLRLLLLLRRRRLLRRLLLLLLRRLLRRLRRRLRRLRLRLRRLRRRLRLRRRLRLLRRLRRRLLLRLRRLLLLRLLLRRLLRLRLRRRRRRRLLLLLRRRLLLLLLLLRRRRLRRLLLRLLRLRLRLLRLRLLRLRRRRRRRRLLLLLRLRLLRLLRLLRRLLRRLLLRLRRRRRLRRLRLLRLRRLLRLLRLRLRLRLRRRRRRLRRLLLRRLLRLRLRRLRLRLLLRRRRRRRRRRLRLRLLLRLRLLLRLLRRRLLLRLLLLRRRLLRRRLRRLRRLRRLLLLRLRRRLLLRLLRLLLLLLRLRLLLRRRRRLRRLLRRLRLLLLRLRRRRLRRLLLLLLLRLLLRLRLRLRRLRLRRLLLRRRLRLLRLRLLLLRRLRRLRLLLRRLRLRRLLLRRLRRLRRLLLLRRLLRLLRLRLLLLLLRRLLRLRLRLLRLLRLRLLLLRRRLRRRLRLLRRLRLLLRRLRRRLLRRRLLLLLRLLLRRRLRRRLLLLRLRRLLRLLLRLLLRRLLLLRLLLRRRLRRRLRRRLLLLRRRLLRLLLRLRLRLRLLLLLLLRRRRLRLLLLLLLLLLRLRRLRRLLRRLRRRLLRRRRRLRRRRRRLRRRLRLRRRRLRLRLRLLLLRRLRLLRRLRRLLLRLLLLLLRLLRLRLLLLLLLLRRLRRLRLRLLRLLRLRLLLRRRRLRRLRLLRRRLRRLLLRLRRRRRRRRRLLRLRLRRLRLRRRRLLRLLLLLRLLRRLLRRRRRLRLLLRRRRLLLRLLLRLLLRLRLLLLLLLRLLRLLLLRLLLRLLRLRLRRRLRLLLLLLLRRRLLRRRRRLLRLRRRRLRLRLLRLLRRRLLLRLLRLLRLLLLLLRLLRRRRRRRLRLLLRLRLRRRLRRRLRRLRLLRLLLRLLRLLLLLLLRLLLLLLRRRLLRRLLLRLLLRRLLRLLRRRRRLLRLRRLRRLLLRLLRRLLLRRRLRLLLRRRLLLLLRRLRLRLRLLLLRRLLLRLLRRRRRRLLRRRLLRLRRRLLLLRLLRRLLRRRRLLRLLLRRLRRLLRLLLLLRRLRRLLRRLRRRRLLLLLRLRRLLLRLLRLLRLRRLLRLRRRLLLRLRRRRRLRRRRLRRRRLRLRRRRLRLLRRRLRLLLRRRLRLRLLRRRLLRLRLRRLLLRRRLLRRRRLRLLLRLLRLLRRRLRRLLRRLLRLRRLLLRRRLRLRRRRRLLRRLLRRRLRRLLLLLRLLRRRRRLLLRRRRLRRLRRRRLRLLLRLLRLLRLRRLLRRLRRRRLLLLLLRLLRLLLLRRRLRLRRRLLRLRLLLRRRRRLLLRRLRRRRRLLRLRRLLLLRRRRRRLLLLRRLLLRRRLLLLLRRLRRRRRLRLRLRRRRLRLRLRLRLLRRLRLLLRRRLLRLRLLRLRLLLRRLLLLRLLRLRLRRRRRLRRLLLLLRRLLLLRLLLLLLRLRLRLRRRRRLRRRRRLRLLLRRRRRRRLLRRLRLLLLRLRLRRRRLLLLLRLRRRLRLLLLLLLRLLLRRLLRLRRLRRRLRRLRLLLRLRLRRLRRLRLLRLRLLRRLRRLLRRLLLRRRRRLLRRLLRLLLLLLRRLLLLRRRLRRRRRLLRRRRRLRRLRRLRRRRRRLRLRLLRRLRLRLLRRLRRRRRRRLLLLRRLLRRRRLLLLRRRRRRRRRRRRRLLRRLLRLRLRRLRLLRLRLLRRRRLRRRLRRLLRRRRLLRRRLRLRLLRLLLRRLLRLLRRRRLLRRRRLRLLRLRRLLRRLLLRLLLLRLRLRRLLLRRRLRRRRLLLRRLLRLLRRRLRLLLRRLRLRRLLLLLLRRLRRLLLRLLRLLLRLRRRLRRRLLRLLRRLLRLRRRLRRRRLLRRLRLLRRLLLRLRRRLRLRLRRRLLLLLLRRLRRRRLRLLLRLRRLRLLLLRRRRLLRRRRRRLLRLLLRLLRLLRLLRLRRRLLLLLRRRLRLRLRRLRLLLLRLLLLLLLRRRLRRRLLLRLLLLLRLRRLRLLRLRLRRRLRLRLRLLLRLLLLLRLRRLRLLLLRLRLLLRRLRRLLRRRLRLLLLLRRRRRRRRRLLLLRLRLRRRLLLRLLRLLRRRLRLRLLRRLRRRRRRLRRRLRLLRRLLLRLLLRRLLLRLLRLLLLRLLLLRRLRLRLLRLLLRLRLLLRRRLRRRLRRRRRLRLRRLLLRLRRLLLLRLRLRRRRRLLLRLLRLRRLLRLLRLLRRRLLLRRLRLRRLLLRLLLRRLRLRRRLLRRLRRRLLLLLRLRRLLLRLLRLRRLLRLLLRLLLRRRRRRRLRRRRRLLRLLRLLLRLLLLRRLLLRLLLRLLLLRLLRLRRRLRRRRRLLRRLLLLRRLRRLLRLRLLRLRLLLRRLRRLRLRRRLRLRLRRLLLRRLLRLRLLRLLLRLRLRRRRLLLRLRLRRRLRLLLRLLRRLLRRRLRLRRRLLRRRRLRRRLLRRLRLLLRRRRLLRLLRLLLLRRRLRLRRRRRLRLRLLLLRRRLRRLLRRRLRLLRRLRRRRLRRLLLLLLLRLLLRRRRLRRRLLRRRLRRLRLLLLLRLLLLLLRLRLLRLRLLLRRRLLRRRLLLRRRRRRLRRRLRRLRLRLLLRRRRLRLRLRLRLRLLLLRRLRLRRLLLRLLLRRLLRRRLRLRRLLRLRRLLRLLLLRLLLRRLRLRRRLRRRLLRLRRLLRLRRRLRLLLLRLRLLLRLLLRRRRLLLLRRRLRRLLLRRLLLRLLLLRLLRRLLRRLLRRRRRLRLLLRLRLLRLRRRRLRLLRLLLRRRLRRLRRRLRLRLLRRLLRRLLLLLRLLLRLRLRRRRRRRLRLRRLRLRLRLRLRRLRRLLRLRRLRLLLLLRLLLRLLRRRRLRLRRLRRLRRRRRRLRLRRLRRLRLRRLLRLLLRRRRRLRLLRLRRLLLLLLLLRRRRLLLLRRLLLRLRRLRLLLRRRLLRLRRLLRLLLRLRLRRLLRRLLRLLLRRRRLLLRLRLRLRRLLRRRLRRRLRRRRRLLLLLLLRLRLLLRLRLLLLLRRLRRRRLRLRLLLRLLLLLLLLLRRRLLRRLRRRRLLRLRLRRLLLRLLRRLLLRRLRLRRLLRLLLLRRRRLLLRLRRLRLRRRRRRRRLRLRRRLLLRRRRRRLRLLRLLLLLLLRLLRLLLLRRLLRLLRLRLLRRRLLLRRLRRRLLLRRRLRRLRRRLLRRLRLLLLRLLLRLLRLRRRRLLRRRRLRRLRLRLLLRLLLRLRRLLLLRRRRRRRRRRRLLRRLLRRRRRLRRRRRRRLRLRLLRLRLLLRRRLRRLRRRRRLRLRLRLRRRLRLRRLRLRLLRLRLLLLRRRLRLRLLRRLRLLLLLRRLRLLLLRLLLLLRRRRRLRLRLLLLLRRLRLLRLLLRLLLRRRLRRRLLRLRRRLRRRRLRLLLLLRRRLLLLRRLLLLRRRLRLLLLLLLRRLRLRRRLLRLLLRLLRRRRRLLRRLLRLRRRRLLRRRLRRRLLRLLRLLRRRRLRLLLRRRRRLRLLRRLLRLRRRLRLLLLRRLRRRLRRRRLRRRRLRRRLLRLLRRRRRRLLRRLLRLRRLRLRRLRRRLLLLRRRLRRLRRLLRRRRRLRRLRLRRRLRRRRLLLLLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRLLLLLRRRRLLLLLLLLRRLLRLRRLRRLRLLRLLLRLLLLRLLRRRRRLRRLLLRRLLLRRLLLRRRLRLRRLLRRRLRRRLLLRRLRLRRRRLRLRRLRLLRLLLRRLLLLRLRLLLLRRLLLLRRRLLLLRLRRLLLRLLLLRLRRLRLRRLLRLLRLLRRLRLRLRRLRRLLLLLLLLRLLLLLRRRLRLRRLRRLLLLLRLLRLRRLRLRRRRLLLRLLLLLRLLLLLLRLLLLLRRLRLLRLLRLLLLLRLRLLLLRRLRRLRRRRLLRRRRRRRRRRLLLLLRLLRRRLRRRRLRLLRLLLRLLLRRLLRLLLLLRRLLLLRRRLLRLRLLRRRRRLRRRRRLLRLLLRRRLRLRRRLLRRRRRLLLLRRRLLLLRRRRRLRRRRRLRRLLRRRRRLLLRRRLLLRRLRLRLLLRRLRRLRLRRRRLLRRLRLLRLRRLRLRRRRLRLLRLRLLLRLRRLLLLLLLLLLLRRLLRRLLRRRRRLRRLLRLRRLRRLRRRLLLRLRLLRLRRLLRRLRLRLLRLLLRRRLRRRLLRLLLRRRLLRRRRRLRRRRLLRRRLRLLRLRRRLLLLRLRRRLLRRRRRRLRLRLRRLRLRRLRRRRRRLRLLRLRRLLRRLLRRRRRRRRLLLLLRRRRLRLRLRLLLLRRLLLLRRRLLRRRLLRRLLRLLLLRLLLLLRRRRLLLRRRRLLRRRLRRRRLRLRLRLLLRRLRRLLRRRLRLLLLLRLRLLRLRLRLRLRRRRRRLRRLRRLRRRLRRLLLLLLRLRRLRRLLLLRLRRRRLLRRLLLLRLRLLRLLLLRRLRLRLLLRLRRLRRRLLLRRLLRRRRLLLRLLRRLRRLLLLRLRLLLRLLLRLLRLRLRRRLLRLLLLLRRRLRRRLRLRRRRLLLLRLLRRRRRLLRLLRRRLLLRRLRLLRRLLLRLRRRLRLRLLRRLLLLLLLRRRLRLLLRLRRLRRRLRLLRLLRRRRLRRLLLRLLRRLRRLRLRLRLRRLRRLLRRLLLLLLRRLRRRLLLRLLRRLRLLLRRLRLLLRRLLRRLRRLRLRRLLLRLLRLLLLLRRLRRRRLRLRRRRLRLRLRLRRLLLRRRLLLRLLLLLLRLLRLRRRLLLLLLLRLLLLLRLRRRRRRRRLRRLRRRRLLRRRLLRRLLRLRLRLRLLLLLRLRLRLRRLLLRRRRRRLLLLRRRLLRRLRLLLRRRLRRRRLLRRLRLRRLRRRRRRLRLLLLLRLRRRLRRLLRRRLRRRRRLLRRLLRLRLLLLRRLRLRRLRRLLRRRLLRRRRLRLRRRRRLRLRLRRLLRRRLLRLLLRLLRLRLLLRLLRLLRRLRLLRLLLLRLLRRRRRLLLRRLRRRRRRLLLRRLLRLRLRLRRLRLRLRRLRLRRRRRRLRRRLRRRLLLLRLRLRRRLLLRLRLRLLLRLLLRRLRRRLRLLLRRLRRLLRRRLLRLRLRRRRRLLLRRLRRRLLRRLRRLRRRLRRRLRRLRLRRLLLLLLLLRLLLLLRLLLRRLRLRLLRRLRLLLLLRLLLLRRRLLRRLRRLRRRLLRLLRRRLLRRRLRLRRLLLRRLLLRRRRLLRLRLLRLRRLRLRLRLRRRRLLRRRRLRRLRRRRLRLRRRLRLRLLLRRRLRLRLLLLRRRRRRLLRRLRRLRLRLLRLLRRRRRRLLRLLRLLRRLLRLRLRLRLRRRLLRLLLRRLLRRLLLLRRLRRLRRRRRLLRRRLLRRLLRLLLRRRRRLRRLLRLRLLRLLRLRRRLLLRLRRRRLRRRLLRLRRRLLRRLLRRRRRLRLRRLLRRRLRLLRLRLLLLLLRRRRRRRRLRLRRLRRLLLRLRLRRRRLLLRLRRLRLRLLRLRRLLRLLRLLRLRLLLRRLRLRRRRRRRRRLLLLRLLLLLRRLLLLRLLRLLRRRRRLLLLLRLLRRLLLRLRRRLRRLRLRRRLLRLRRLRRLRLLLRRRLRLRRRLRRLRLRRRLLLRRRRLRRLRLLLRRLLLRRRLRLLLLLLRLRRLRRRRRRLRRRRLRLRLLRRLRRLLRRRRLRLRLLLRRLRLRRRRRRLLLLRRRLLLLLRRLLLRRLLRRLRLLRLRRLLRRLLLRLRRRRRLRRRRLLRRLRLRRLLRLRLLRRRLLLLRLRRRRRRRRLLLRLRRRRLRRRLRLRLRRLRLLRRLRLLRRLRLLRLRRLLRLRLRLLRRRLRRLRRRLLLLRRRRRLLRRRRRLRRRLLRRLRLLLRLRRLRRRLLLRLLRRLLLRRLRLLRRLLLLLLRRRRLLRRLLRLLLRLRRRRRRRLRLLRLLLRLRRRRRLLRRRLLRLLLLLLLLRRRRLLRLRLRRLLRRRLRRRLRLRLLLLRLLLLLLRLRLLRRLLRLRLLLLLRRLLRLLRLLRLRRRRRLRLRRRRRLRRLRLRLLRRRLLLLLRRLLRLRLLRRRLLLRLRLLRLRLRRLLLRLLLRRLLLLRRRRLRLLRLRRLLRRRLRLRLLLRLRRRLRLRLRRLRRLLRRLLRRLRLRRRRLLLLRRRRRRRLRLRRRRRLRRLLRLRRLRLLLLRLRLRRRLRRLLRRRRLLLRLLRRRLLRLRLRLRLLLLRRRLRLLRRLRRRLLLLRLRRRRRRLLRRRLRLRLLLRLLLRRRLLRLLLRLLRRLRRLLLLRLRRRLRLLRRRRRRLLLRRLLLLRLLRLLLRLLLRLRRLLLLLRLRRRRLLRLRRLRLRLRLRLLRRRLLLLRRLLLRRRLLRRLRLLRRRRRLLRLLLRLLRRRRLRRRLRRRRLRLLRLRRLRLLRLLRRRRRLRRRLLRRRRRRLRLRLRRRRRLRRRLLRRRLRRRRRLLRRLRRRLRRRLRLLLRRLRRRRRLRRRRLLRRLRLLRRLLLRLRRLRLLLLRRLRRRLLLRLRLLLLLLLRRLRRLLRLRRRLLLRLRLLRRRLRRLRRRRRRLRRRRLLRRLLRRLLRLLLLLLLLRRLRLLLRLLRLLLLLRLLRLRLLLLRRRLRLRLLLLLLRLRLLLLLLRLRRLRRRLRLRRLRRRLLLLRLRLRRRRLRLRLRRRLRRLRRLLRLLRLLRRRLLLLLLRLLLRLRLRRRRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLLLRLRRRRLRLRRLRLLRLLLRLLLRLRRLLLLLRRLRLRRRRLRRRRRRLRRLLRRRRLLRRRLRLLLRLLRRLRRLRLLLRRLLLLRRLLLLRLLRRLLRLRLRLRRRLRRLRLRRLRRLRLRLLRLLLRLRRRLRRRLRRLLRRLLRRLRLRLRRRRRLRRLLRLLLRRRRLLLRLLRLLLRRRLRRRRLLLLRRLLRRRRLRRLLRRRRRRLRLLLRRRRRLLLLLLLRLLLRRRLLRLLRRLLLLLRLLLRLLLRRLRRLLLRRLRLLLRRRLRRRRRLRLRRLRRLLRRRRLLLRLRRRRLLLLRLLRLRLRRLRLRRLRLLRLLRRRLLLLLRLLRLLRRRRLLRRRLRLLRRLLLRRRLRRRLRRLRLLLRRLLLRLLRRLLRLLLRRLLRLRRLRRRLRLLLRLRLLLLRRLRLLLRLRRLLLLLRRLLRRLRLRLRLLRLLRRLLLRLRRLLLLLLRRLRLRLLRRRRRLLLLLRRLLRRLLLLRLRRLLLLRRRRRLRLLLRLLLRLRLLRLLRRRLRRRRLLLRLRLRLLRRRRLLLLRRRLLLRRRRLLRLLRLLRRRLRRLRRLRRLLLLRLLRRLLLRRRLRLLRRRLLLLRLRRLLRLRRLRLRLLRRLLRRLLLLRRLRLLRLRRRLRRRLLRRLLRRLRLRRRLRLRLLRRRRRLLLLLRLLLLLRRRRLRLRRRRRLRRLLLRLRRLLRLLLLRRRRLRLLRLLLRLLLRLLLLLLRLLLRRRLLRLLLLRLLRLRLLLLLLRLRLLRRRRLLLRRLLLLLRLLRLRLRRRRLRRRLRRLLRRLRLRRRRRLLRLLRLRLRRRRRLRLRLRRRLLRLRRLRRRLRLRLLRLRLLRRLLRRRRRRLLRRLRRRLLRLRLRRRLLRLRRRRLRRLRLRRRRLLRRRLLLRLRLLRLRRLLLLRLLRLRLRLRRLLLLLRLRLRRLRLRRLLLRLLLRRRRRRLLLRLLRLRRLRRRLLLRRRLRLRLLLRRRLLLRRRRRLLRRRLLLLLLLRRRRRRLRRRLLLLRRRRRLRRLLLLLLRLRLLRLRRLRLRLRLRRRLLLLRRRLRLLRLLLRRRLRLRLLRRRLRRRLLRLLRRLRRLLRLRRLLLLLRRLRRRLLRRLRLLRRRRRLLLLLLLRRRRLLLRLLRRLRLLLLLRLRRLLRLRRLRRLRLRLLRLLRRLLRLLLLRRRRRLLRLRLLLRRLLLLLLLRRRLLLLLLRLRRRLRLRRLRRRRRLLLRRLRLRRLLLLLRRRRRLRRLRRLRRLRRRLRLRLRRRLRRRRLLLLRRRLLLRLRLLLLLRRRRLLLRLRLRLLRRLLLRLRLRLRRLRLRRLRLRLRLRLLLLRRLLRRRLRRLLRRRLRLLRLLRLRRLRRLLLRLRLLRLRRRLRLLRRLLRLLRLLRLRRLLRRLRLRRLLLRRLLRLLRLRLRRRLRRLRRLLRRLRLRRLRRRRRLRLLLLLLLRLLRRRLLLLLRRRLLRRRRRLLLRRRRRRLRRLLLRRRRLLRRRLLLRLRLRRRLRRLRRRLRRRLRLRLLLRRLLLLRRLLRLLRLRLLLLLRRRRRLRRLLLLLLRRRLRRLRRRLRLRLLRLLRLLRRLRLLRRLRLLLRLRRRRRLLLRLLRLRRRRLRRLLLLRLRLRRRRRLLLLLRLLLRLRLLLLLRRRLLRRRLRRLRRRLRLLRLRLLRLRRRRRRRRLRLRRRLRRLRLLLRLRLLLLRLLLRLRRRLRLLRLRLLLRLRLRRLLRRLLRLRRRRLRRRLLLRLLRRLLRLLLLLLRLLLLRRRRRRRRRRRLLLRRLRRRRLLLRLLLRRLRLRLLLLRRLLRRLLRRRLLLLRLRRRRRRRRRRRLRLRRLLRLLLRLLLLRRRLRRLLRLLRLLRLLRRLLRRLLLRRLRLLLLLRLLLRLLLRRRLRRLRRLLLRLLLLRLLLRLLLLLRLRRLRLRLRLLLLRRLLLRRLRRLRRLLLLRRLLRRLLLLLLLRLRRRLLLRRLRLLRLLLRRLLLLRRLLRRLRLLLRRLRLLLRRRRRRLLRRRLLLLLLLRLRRRRLRLRLRLLLRRLLLRLLRRLLRRLLLLLRLRRLLLRRLRRLLLLRRRRRLLRLLLRRRRRLRRLLLRLRRRRRLLLLLLLLRLLRLLRLLRRRRRRLRLRLLLRRRRLRRLRLLLRLRLLRRLLRLRLRLRLLLRRLRRLRRRLLRLRRRLLLLLLLLLLLLLLRLLLLLRRLRRLLLRLLRLRLLLRRLRRRRLLRLRRRLRLLRRLLLLLLRRLRLRLLRLRLRLLLLRLLLLRRLRLLLRLRLLRLLRRRRRLLRLLRRRRRLLLRRLLRLLRRRRLLLLLRLRLLLRLLLRRLLRLLLRRLRLRLLLLRRRLRRRRLLRRRRLLLRRLRRLLLLRLLRLLRLRLRRRLRRLLRRLRLLLLLLRRRRRRRRLLLRLLRLRRRLRLRLRRLRLLLLRLRLLRLLLRLLLRLLLRLLRRRLRRRRLRRLLLRLLLLLLRRLLLRLRLRRLRLRLLLLLLRLLLRRRLRRRLRRRRLRLLRRLRLRLRRLRRLRRLLRLRRRLRRRRLRRLRLLRRRLLRLRRLLLRLRLLRRLRRLLLRRLRRLLRLLRLLRRLLRRLRLLRLRRLRLLRRRRRLRRLRLLLLRLLRLLRLRRRRLLLRRRRRRRRRRRRLLRRLRRRLRRLRRLRLRLRRLLLRRLLLLRLRLRLLRLRLRRLLLRRRLLLRLLLLLLLLRLRLLRRRLRRLRRLLLRLRRLLLRRLLRLRRLLRLLRRLLRRRRRLLRRRRRLLRRRRRLLLRRLRLRRRRRRLLRLLLRRLRRRRLRRRRRRLLRLRRLLRLRRLLRRLLLRRRRRLRLRLLRLLLRLLRRRRLLLRRLLRRRRRLRRLRLLRLRRRRRRLLRLRLLLRRRRLLLLLRLLRRRRRLRLLLRLRRLLLLLRLRLLLRLRRLLRRRLLLLRLLRLRLLLRRLLRLLLLRLLLRRLRRLLRRLLLRRRLLLLRLRRLLLLLRLLLRRRRLLRRLRRLLRLLLLRRLRRLLRLLRLLLLRLLLRRRRLLLRRLLRLLLRLLLRLLRRLRLRRLLRRRRRRRRLRRLLLRRRLLLRLRRLRRLRLLRLLLRRRRLLRRLLLLRLRRLLRRLLRLRLLRLRLLLRRRRLLRRRRRRLRRRLRLLRLLRLRRRRLRRRRRLLRLLLLRLRRRLRRLRRRRLLLLRRLLLLRLLLLLRRLRLLLRRRLRRLRRLLLRRRLLRRRLLRLRLLRRLRLLRRLRRLLRRRRRRRRRRLLRLLLLLLRLLLRLRRRRRLLRRLRLRLLRLRRLLRLLLLRLLLLRLLLRLLLLRRLLLRRRRRLLRLLLLLRRRLRLRLRLLRRRRLLLLLRRRRLRLLLLRRLLLLRLRRRLRLRLLLRLRRLLRRRRRLRLRRRLRRRLLRRRRRLRRRLRRRLRLRRRLLLLLLLLLRRLRLRRLLRRLLRLLRLLRLLLLRRRRRRRLLRLLLRLLLRLRLLRLRRRRRLLLRRLRRLLLLLLRLLLLRLRLLLLLRLRLLRRLLRRLRLLLRRRRLRLLRLRLRLLLLRRLRLLLRRLLLLRRRLLRRLLRLLRLLLLRRLRLRRLRRRLLRRLRRRRRRRRRLRLLLLLLLRRRRRRLLRLRRRRLRLRLLRLLRRRRRRLRRRLRRLRRLLLRLLLLLLRRLRRLLLLLRLRLRRRLRLRLLRLLRRLRLLRLRRLRRRLRRRRLLRLRLLLLRLRRLLLRRRRRRRRRRRLLRLLLRRRLRRLLRLLRRLLRLRRLRLRRRLLLLLLLRLRLLLRLLLRLRLRRLLLLRRRRRLLRRLRLRRRLRRLLRLRLRLRRLRRLLLRLRLRRLLRLLLRLRLLRRLLLRLLLLLLLLRLLRRLLRRRRRLRLRRLLRRLRLLLRLLLRRRRRLRRLRRLLRRLRRRRRLRLLLRRLLLRRRRLRRLLRLLLLLRRLRRLLRLRLRLRRRLRLLRRLRRRLRRRRLLLRLRLLRLLLLLRRLLLRLRLLLRRRRRLRLLRLRLRLLRLRLRRRRRLRLLLLLLRRRLRRRRRLLLRLRRLRLRRRRLRRLLLLLLLRLLRRRLRLRRRLLRRRRRLLLRLRRLRRLLLRRLRLLRRLRRLRRRRRLRRLLLRRRRRRRRRRRRRRRLRLRLLLRLRRLLLRRLRRLRLLRRLRLLRLRLLRRLLRRLRLRLLLRRLLLLRRRLRLLLLRLLRRRLLLRRRRLLRLLLLRRLLRLRRRLLRRLLLLLLLLRRLLRRRLRLRLRRLRRRRLLRLLLRRLRRRLLLRRLLLRLLRLRRRRRLRLRRRRLRRRLRLLRLLRLLLLRRLRRLRRRLRLLRRRRLRRRLRLLLRRLLRLRLRRLRLRRLLLRRLRLRRRRLLRRLRRLLLRRLLRLRLLLRLLLRRLRRRLRRLLRRRRRRRLRRLLRLRRRLRRLLRRLRLLRRLRRRRLRLLRLRRRRLLLLLRRRRRRLRLRRRLLRLLRLRLLRRRLLLRLRLLLLLLLLRLLLRLLLLLLRLLLRRRRLRRLRRLLLRRLLRRLRRRLLRRRRLLLRLLLLRRLLRLRLRRLLLRRLLLLRRLRRRRLLRRLLLRLLLLRRRLLRRLRRRRLLRLRLLRLLLLLRRRLRRRRLRLRLLLRRLLRLRLRRLLRLRRLRRRRRRLRLLLLRRRRRLLLRLRRRLLLLRLRLLLLLLRLRLLRLRRLRLLRRLLLLRRRRRLRLLRRRLLRRRRLLRLRRLLLRLLRRLRRRRLLRLLRLLLLRLLLRRRLLLLLLRRLLRRLLRLLRLLRLRRRRLRRLLRRRLRLLLLLRRRLRLRRRRLRLRRLLRLRLLLRLRLLRLRRRRRRRLLRRLLRLRLLRRLLRRLRRLRLRLLRRRLRRRRRLRLRLRLLLRLLRRLRRRLRLLLRRRRLRRLRLLLLLRRLRLLRLLRRRRLLLRLLLLLRRLRRRLRRRLLRRRLLLLRLRLLRRLLLLLLLRLRLRLLLLRRLRRRRRLLLRLLLLRLRRRRRLLRRLLRLLLRRRRLRRLRLLRLLLLRLLRRRRRRLLLRLRRRLRLRRRLRRRRRLRRLLLLRRLRLLLRRLRRRLRLLRLRLLLLLLLRRRLLLRLLLRLLRLRRRRLLLRLLLLRRRLRRRRLLRRRRRRRRRLRRLRRLRLRRLLRLRRLRLRLLLLRLRLRLLRLRLLRLRRLRRRRRLRLLLLLRRRLLLLLLLLRLRLLRLLLLRRRRLRLRLRRLLLLLLRLLRRLRRRLLLRRLLLRRLLLLRRLRLLRLLLRLRRRLLLLRRLRLRRLRRLLRRRRLLRLLLRRLLRLRLRLLLLRRRRRLRRRLLLLLLRRRRLRRLLLRLRRLLLRLLLLRLLLLLLLRRRLLRLRLLRLRLRLLRRLRLLRLRLRLRLLRRLLRLLLRLRLRRRRLRRRLLLRRRRLLRLLLLRLLLLLLRLRRLRLRRLLRRLRLLRLRRLRLRRLRRRRLRRLLRRLRRRRRRRRLLRLLRRRRRRRRRRRRLLRRLLLLLLRRLLRLLLLRRLLLRLLRRLLLLLLLLRLRRLRRRRLLRLRLLRRRRLRLRLLLRRLRLLLRLLRRLLRRRRRRRLRRRLLLRRLRRRRRLLLLRLRLLLLRLLLRLLRRRLRRLRLRRLRRLLRLRLLRLLRLRLRRRLRRLLRLRRRLRLLRLLLLRRRLLLRLRRRLRLRRRRRRLRRLLRLRRLLRRRLLLLRRLRLLRLRLLLRRLRLRRLRLLRRRRLRRRRRRLRLRRRLLLRLRLLLRLRLRLRRLLLRRLLRRLLLLLLRRRRLRLRRRRRRLRLRLLRRLRRLRRRRRLRLRRLRRLLRLLLRRRLRRLRRLLLRLLRRRRLRLRLLLLLRLLLRRRRLRRRRRLLLLLRLLLLRLLLLRRRRRLRRRRRRRLRLLLRRRLLLLLLRLRRLLLRLLLRRRLRLRLLLRLRRLRLRRRLRLLRLRRLLLRLRRRRRRLRRLLLRLRRRRRLLRRLLRRLRRLRLLLLRLRLRLRLRLLLRLLRLLLLLLRRRRRLRRRRRRRRLLLRRLRLRRLLRRLRRRRLLRLLRLLLRLLRLLRLLLRRRLRRLLLRLRRRLLLRLRLRRRRRLRLLRLLRLLLRLLLRRRRLLLRRLRLLRRLRRRLRLRRRRRRLLRLRRLLLLRRLLRRLLRLRRLLRRLLLLRLLLRRRLRRLRLLLLRRLRRLRLRLRRRRLRLLLLLLLLRLLRRLRRRLLRRLLRRLLRRRRRLLRLLRRRLLRLRRLLLRRLLLRRRRLRLRLRRLRRRRLRLRLLRLRRRLLLRRRLRLRRLRLRLLLLLLRLLRLRRRRLLLRLLLLLRRLLRRRRRRRRRLRRLLLRRRLRRLLLLRLLRLRRRLRLRLRLRRRLRLRRLLLRRLLRRLLLLLRLLRRRLRLLRRRRLRRRRLRRRLRLRLLRRLRRRLLLLRLLRLLRRLRLLRRRRRRRRLRLLLRRLRLRRLLLRRLRLRRLRRLLRRLLLLLRRLRRLRRRRLRRLLRRLRRRRLRRLLLLLLRLRRLRRRLRLLRRLRLLLLLRRRLLRLRLRLLLRLRRRRLRRRLLRRLRLLRLRLRRLRLLRRLLRRLLRRRLLRLRRRLLLRLLRLRRRRRLLLRLLLRRLLRLLLRRLRRRRRLLLLRLRRRLLLLLLLRLRRRRLRRRLLLLRLLLRLRLRRRRLRLRRRLRLLLLLRLRLLLLLRLRLLLRRLRLLRLLRLRRRRLLLRRRLRRLLLLRRLRRLRRLLRRRLLRRLRRRLLRRRRLLRRLLRRLLLLRRRLLLLRLRLRLRRRLLLLRRRRRLRLRRRRLRLLLLLRLRLRLRLRRRRLLRRRLRRRLLLRRRRRRLLRRLLRRLRLLLLLLLLRRRRRLLLLLRLLRLLLRRRLRRRRRRLLLLLLRRLRLLRLLLLRRLRRLLLRRRRLRRRLLRRRLRLRLLRRLRLRRRLRLRLLLRRRRRRRRRLLLLLRRLRRLLLRLRRRLRLRLLRRRRLLRRRRLLRLLRLLLRLRRRRLRRRRRLRRRLLRLRRLRRRLRRLRRRRRLLLLRRRRLLLRLLRRRRRLLRLRLLRLRRLLRRLRLRRRLLRRRRLLRLRLRLLRRLLLLRRRRRLLRLRLRLLLLRRLLRRLLLRLRRLLLRRLLRRLLRLLRRLRRLRRLLLRRLRLRRRLRLLRLLLRLLLRRLLLRLRRRLRLRLLLRRRLRLLRRLRRLRRLLRLLRLRLRRLLRRRLLRRRRRLLRRLRLRRLLLLRRLRRLRRLRRRRRLLLRRRLLLRLLRLRRLLRRLLLRLLRLLLRLRLRLLRRRLRLRRLRLLRRLRLRLLLRLLLLRLRLLLLRLRRRLRLRLLLLRLRRRRLRRRLLLRLRLLRLLRRLRLLLRLRRLRRRRLRRLRRRLLLRRLRRLRRLLRLLRRRRLLLRRRRLLRRRLLRRLRRRLRLRLLRRRLRRRLLLRRLLLRLRLLRLLLLLLLRRLRLLLRRLRLLLRLRRLLRRRRRLLRRLRRLRLRRLLLRLRLLRLLLRLLRLLRLRLLRLLLLLLRRRRLLLLRRRRLLLLRLRRLLLRLLLRRRLRRRRLLLLLRLLLRLLRRLLLRRRLLRRLRRRRRRRRLRLRLRLLLLLLLLRRLLRRLLLRRLLRLRLRRRRLLLLRRLLRLLLRLLRLLRRRRLLLRRLRRLLLRLLRLRRRLRLRRRRLRRLRRRRRLLRRLLRRRRLRRLRLLLLRRRRRRRLLLLRRRRLRRLLRRRRLRRLLRRLLLRRRLRLLRRRRRLLLRLLRRLLRRLRLRLRLLLLLLRLRLLRLRLLRLRLLRLRRRLRRLLLRRLRLRLLLRLLLRRRLLRLLLRRRLRRLLLRRLRRRRRRRRLRRRRLRLLRRRLLLLLRRRLLLRLLLRLRRRLLLLLLRRLRRLRLLRLRLRLRLRLLRRLRRRRRLRLRRLRLLRRLLRLRRRRRLRRLRLRLRRRRRLRRRLRRLRRRLLRLRRLRLRRLLRRRRLLRRRLRRLRRRRRLLLLRRLRLRRRRRLRRLLRRRRRLLRRLLRRRRLLLRLLLRLLLRRLRLLRRRRLLRRLLLLLLLLRLLRLRLLLRRRLLRRRLLRLLLRLRRLLRRLRLLRLLLRRLLRRLRLRRRRLLRRRRLRRRRRRLRLLRRRRLRRLRLLRLLLLLRRRLRRRRLLRLRLLRRLLRLRLLLLRRRRRRRLLRLLLRLRLLLLRLRLLRLLLLLRLRRLLLRRLLLLLLLRRRLLLLRLRLLLRRLRRRRRRRRLLRLLLLRRLLLRRRLLLLLRLRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLRLRLRRRRRRLRRRRLLRLLRRRLLLLRLRLRLRRRRRLLRRLLRRRRRLLLRRLRLRRRRRRRLLLLLRRRRRLRRLRLLRLRLRLLRLLLLRRLLRRLLRLLLRLRRLLRRLLRRRRRRLLLRLRLLLLLLLRRRLRRLRRLLRLRLLRRRRRLRLRRRLRLRLRRLLLRRRLLLRLRLLLLRRLLRRRRLLRLRRRLRRRRLRLLLRRRRRRLLLLRLLLRRLRLLRRLRRLLLRRLLLLLRRLRLLLRLLLRLLRRRLRRRLLRRLRLRLRRRLLRRRRLRRRLLRRLLLLRRLLLRRRRRRLLLLRLRRLLLLRLLLLLLLRLRLLRRLLLLLLRRLRRLRRRRRLLLRLRLLLRLLLRLRLRLRLRLRLLLLRRRLLRLRRRLLRRRRRRLLRRRRLRRRLRLLRRLLLLRLRRLRRLLRLRRLRLRRRRLLRRLRRRRLLLRLLRRLRLRLRRLLLLRRLLLRLRRLRLRLRLLLLLLRRLRRLLLLLLRRLLLLRRRLRLRLLLLRLRRRRLRRLRRRLRRRLRLLRLLRLRLRRRRRRLLLLRRRLLRLLRLLRLRLLLLRRLRLLLRLRRLLLLRRLRLRLLRRRLRLLRRRLLLRLRRRLRLLLRLRLRLLRRLRRLLLLRRLLLLLLLRRRLLRRLRRRRRRLRLLRRLRRLRLLLLLLRLLLRLLRLLLLRRRRLRLRLRLLLRRLLLLLRRLLRRRLLRRRRRRLLRLLLRRRLLLLLLLLRLRLRRLRLRLRLLRLLRLRRRLLLLRRRRLRLRRLLRRRLRLLRLLLRLRLLRRRLRRRLRRLLRLLRLRRRRRLLLRLRLLLRRRRRRRLRLLLRRRRRLRLLRRLRLLRLRRRLLRRLLRLRLRRLRLLLRRRRLLRRLRRRRLRLRLRRLRRRRLRRRRRLRRRLRLRRRLLRLRLLLLLRLLRRRLRRLRLLLLLLLRLRLLRRLRLLLRRLLRRRRLRLLRLLLRLRRLRRRLRLLRRRLLLLRLRRRLLLRRRRRLLLRRRLLLLRLLLRLRRRRRLLLLRRRRLLLLRLRRLRLRLRLLRLLRLRLRLRRRLRLLLRLRRLRLLLLLLLRRLRLRLLLRRLLLRLLRLLRRLRRLLRLRRRLLLRRRLRRRRLRRLRLLRLRLRLLRRRLLLLRRLLLRLLRRLLLLLLRRLRRLRLRRRRRLRRRRLLRLRRRLLLLLLLRRLRLRLRLLLRLRLRLRRRRRRRRRLLLLRLLRRLLLLRRRRRRRRRLRRRLLLRLLLLRLRLRRRLRRLRRLRLRLRRLRLLLRLRLRRRRLLLLLRRLLRLRRLRLLRRRRLRLRRLRRLLLRRLLLLLRLRLRRLLLRRLRLRLRLRRRRRRRLLRLRLRRLLRRRLRLLRRLRRRLRRLLRLRLRLLLLRRRLRLLRRRRRLLLRRRRRRRLRRRLLLLLLLRRRRRRLRRRRRRRLRRLRLLLLRRLLLRRRRRRRLRLRLRLLLRRLRRRLLLLLRRLLLRRRRRLLLRRLLRRLRRRLLRRRRLRLRRLLRRLLRLRRLRRRRLRRRRRLRLRRRLRRLLLLRRLLRRLRRRRLRRLRRRRRLRRLLRLRRRRRLLRRRLRRRLRLLLLLRLLLLLLLLRLLLLLLLLRLLRRRLRRLRRRRLRRRRLLLLLRRRLRRRRRRRLRRRLLLRRRLLLLLRRRLLRRRRLRLRRLLLLRRLRRRLLLLRRLRLRRRLRRRLLRLRLLLRLRLLRLRRRRRLRRRLRLLRRRLLLRLRLRLRRLRLRRLLRLRLRRRRLLRLRLRRLRLLLLLLRRLLRRLRLRLLRRLLRLLRRLRRRLLRLRLLLLRLRRRRLRLRLLLRRLLRRRLLLLRLRRRRRRRRLRRRLRRLLLRLRLLRLRLRRRLRLRLRLRRLLRRRRRLLRRLLLRLRRLLLRRRRRRRLLLRRRLRRRRRRLRRLLLLRLLRLLLLLLRLRLLLLRRRLLLRLLLRLLRRRLLRRLLLLRLLRLRLLLLLRRRRRRLRRLRRLRLLRRLLRRLLLLRRLLRRLRLRLRLRRLRLRRRRLRLLRRRLLRLRLLRLRLRRLRLRLRRLLRLRLLRLLLRRLRRLLRRLRLRRLLLRRLRRLLRLRRLRRLLRLLRLRRRLRLRLLLRLRRRRLRLLLLRLLRLLRLLLLLRLRRRRLRLRRRLRLLRLRLLRLLLRLRLLRRLLRRRLRLRRRLRLLRRRRRLRLRRRRRLLLRRLLLLLLLRLRLLLLLRRRRRLLRRLLRRRLLLRRLRLRLLLRLLRRLRLRLRLLLLLLRRLLLRLLRLLRRLLLRRLLLLRRLLLRLRLLLLRLLRRRRLLLLLLRRRRRLRLRRLRRRLRLRRRLLRRRLRLLLRRLLLRRRLLLLRRRRLLLLLLRRRLRRRRLRRLLLLRLRRLRRLLLLLLRRLLLLRLRRRLRLLRRRRRLLLLLRRRRRLLRRLLRRLRRLLRRRLLRRLRRRLLLLRRRLLRRRLRLLRRLLLRLLRRRRRLRRLRLLRLRLRRLRLLLLLLRLRRLLRRLRLRLRLLLRRLLLRRRRRRLLRRLRLRRLRRRRLLRRRRLRRLLLLRRRLLLLRLRRLRRLRRLLLRLRLLLLRRRLLRRLRRLLRLRLLRRLRLRRLLLRRLRRLRLLRLLRLRRRRRRRRLRRLRLLRLRLLLLLRLRRRRLRLRLRRRRRLRRLRLLRRLRRRLLLLRRLRLRLLRRRLRLLLLLRLRLRLRLLRLRRLRRLLRLLLRLLRLLLRLRLLRLRLRLLRRRRLLRRLRRLLLLRLRRLLLLLRLRRRLRRRLRLLLRRRRRLRRRRRLLRRLRLRRRLRRLRLRRLLLRRLRRRLLLRRRLRLLRLRRLLRLRLRLLRRRLRRLRLRLLLRLRLLLRLLRRRRLLLLLLLRRRLRLRRLRRLRLRRLRRRRLRLRLLRRLRRLLRLRRLLLRRRRLRRLLLLRRRLLLLLLLRLLRLRRLRLRLRLLLLLLLLRRLLLRLLRLLLLRRLRRLLRLLLLRRLLRRRLLLRRLRRLLRLLRLLLLRRLLRRRLRRLLRLLLLRLLLLLLRLLRLLLLRRLLLRRRLLRRRLLLLLLLRRLRRLRRLRLLRRLRRRRRLLRLRRLLLRRLLLLLLRLLRLLRLRRLLLRRRRLLLRRLRLLLLRRRRLRRRRRLRRLLLLLRRRRLLLRRRRRLRRRLRRLLLLLLRLLRLRRRRRRLRLLLRRLRRRLRRLRRRLRLRLRRLLLLRLLLRRRRLRLLLRLRLRRRRRLRLRRRRLRRLLLRLLRRRRLRLLRRLRRLLRRRLRRLRRRLLRLLLRLLRLLRRRRRRRRLLLRLLLRLLRRRRLRRLLLLRLRLLRRLLRLRLLRRLLLRRRRRLLRRLLLLRRRLLRRRLLRRRRLLLLRLRLRRLRLLRLRRLRLRRLRLRRLLRLLLRRLRRLLRLRRLRLRLRLRRRLLRRLRRLRRLLRRRRRRRLLRLLLLLLLRLRLRLRRLLRRLLRLRRRLLLLLLRLRRLRLLRRLLLLLLLRRRLLRLRRLRRLRLRRLRRRLLLLRLLLLLLRRRRLLLRLRRLRRLLRRLRLLRRRRRLRLLLLRLRLLRLRRLRLRRRRRLRLRRRLLRRLRRLRLLRLLRRLRLRRLRRRLRRRLLRRLLLLRLLRLRLRLLLRLRRRLLRLLRRRRRRRRLRRLRRLRRRRLRRRLRRRLRLLLLLLRLLRRRLRRLLLRLRLRLRRRLRLLRRRRLRRLRLRRLRRLRLLLRRRLLRRLRLRLLRRRLLLLRRRRRRRLRRRLLLRRLRLLRRRRLLLLRLLRRRLLLRLRRRRLLLLLLRLRLLLLLRLLRRLRRLLLLRRRRRLLLRLLLLRRLRRRRLLRRRLLRLRRLLLLLRRRLLLRRRRRLRLLRRLRRRLRLLRLLRRLRLRLLRRLLLLRRRLLLRRRRLRLRLLLRLRRLLLRLRLLRRLLRRRLRRLRLRRRLRLLRRRLRRRLRRLLLRLRLRRLRRRRRRLRLRLLLLRRLRLLLRLRRLLLRLLLLRLLLRLRRLRLLLRRLLRRLRRLRRLRLRLRLLRRRLRRRRRLRLLLLLRLRLRLRRRRLLRLLRRLRLRLRRLRRLRRLLRLRLRRLRLRLRLRLLRRRLRLLRRLRRLRRLRLRLRRLLRRLRRLRRRRRLRRRRLRRLRRRRRRRRRRRRRRLRLLLRLRRLLRRRLRRRRLLLLLLLLRLRLLRRLLRRRRLRRLRRLRLLRRLRRLLLRLRLLRLRLLLRLLRLLLLLLRRRRLRLLRRLLRRLLLRLLLLLRLLRRLLRLRLRRLRLRRRRRLRLRRLRRRLLLRRRRLLLRRLRLLRRRRLRRRRRLRLLLLLRLLRLLLLLRLLRRLRRRRLLRRRRLRRRRRLLLLRLLRLRRRRLLLLLRLLRRRLLLRLRLLRLLRRLRLRRLLLRRLLLRRLLRRLRRRLRRLLRRRLRRRLLRLLLRRRRLLRLLRRRRLLRRLRRLRLLLRRLRRRRLLRLRRLLRLRLRRRRRLLRRLRLRLRRRRLLRRLRLLRLLRLLRLLLRLLLLRLLLLLLLLRLRRLRRLLLLLLLRRLRLRLLRRLRLLLRLLRLRRLRRLRRRRLLLRRLLLLRRRRRLRLLRRLLLRLRRRRRRRRRRRRRRRLRRLRRLLRLLLLRRRRRRRRRRLRLLRRRRRRLRLRRLRRLRRLLRLRRRLRLLLLRLRLRLLLLLLLRRLLLRRRRLLLLLRLRLRRLRLLRLLRRRLLLRRLRRLLLLRLRRLRRRRLLRRRRLLLLLLRRLRRLRLRRLRRRLLLRRLLLLLLLLRLLRRLLLRRLRRLRRLRLRLRLLRLLLRRRLRLRRLLLRRRLLRRRRLRLRLRLLRLLRRRLRLLLLRRRRLRRRLRRLLRLRLLRLLLRLRRRLRLRLLRRRLRRLRRLRLLLRRLLLLRLRRRRRRRLRLLRRRLRRLRRRRLRRRRRLLRRLRRRRLLLRLLLLLRRRLLLLRRRLLRRRLLLLLLRRLRLLLRRRLLLLRLRLLRRRLLRLRLLLLRRRLLLRRRLLLRLLRRLLLLLLRRRRLRRLLLLRRLLLRRRRLRRRRLLRRLRRRLRLRRLRRRRRRLRLLLLRLRLRLLLRRLRRRLLLLRLRRRLLLLLRRLLLLRLLRLLLRLRRRLRLLRRLLRRRRLRRRLLLRLLRLLRRRRRRLLLLLLRRRRRLRRLLRLLRLLLRRLLLLRLRRLRLLRLRRRRLLLLLLLLRRRLLLLRLRLRLLLLRLLLRRLRRLRLRRRRLRLLLLRLLLLLRRRLLRRRLLLRRLLLLRLLRLLRLLLRLRRRLRLLRRRRRRLLLRLRRLRRLLLLLLRRLLRRRLRRRLLRRRRRLRLRRRLRLLRRRRRRRLRLRLRRLLRLLLLLRLLLLLLLLRLRLLLRLLRLRRRLLRRLRLLRLLLRLRLLLLLLRRLLRLRRRRRRLRRRLLLRRRRRRRLLLLRLLLLRLRLRRLRLRRLLRRRRRRLLRRLRRLLRLRRLLLRLLRLLRLRLRRRRLLRLLRRLRRRRLRLRLRLRRLLLLLRRRLLRLRLLRRLRLRLLLRRLLLLLLLRLLRLRRRRLLRLRLLRLLRLRLRLLLLLLRLRLRLLRLRRRRLLRLRLRRRLLRLRLRRLLRLLRRRLRLLLLLRLLRLLRRRLRRLRLLRLLRLLLLRLLRLLRRLLLRLLRRLRRLRRRRLLLRRLRRRRRRLLRLRRRLRLRRRRRLRRLLLRLRRLLRRLLLRLRRRLRLRRRLLLRRLLRLRLRLRRRLRRRLRRRRRRRRRRLRLRLRLLLLLRLRLLRRLLRLLLRRRLRLLLRLRRRRLRRLRRLLRRRLRLRLRRLRRLRRLRLRRLLLLRRLRRRLRLLRLRRLRLRLLLLRRRLRLLRLRLRRLRRRRRLRRRRRLLLLRLRRRLRLLRLRRLRRLRRRLRRRRLLLLLRRLLLRLLRLRRLLLLLRRRRRLRLRLLRRLLRRRRRRLLRRLLLRLLRLRLLLRRRRRRLRRLRLRLRRLRLRRRLRRLLRLRRLLLRLRLRLRRRLRRRLLRRLLLRRRRRRRLLRRRRRRRRLLLRLRLRRLLLRLRRRRLLRLLRLRLRLLRRLRRLLRLRLRRRLLRLRRRLLLLLLRRRLRRRRLLRRLLLLLRLLLRLLRRLLLLLRRRLRRRRLLLLRRLRLRLLLRRRLLLLRLLLRRLRRLRLLLRRLLLLLLLLLRRRLRLRLLLLRRLLRLLLLLRRLRRRLLRLLLLRRLRLLLRRLLRRLLRRRLLRRRLRLLRLRLRRLLRRRRLLLRRLLRLRRRLRRRRRRLLRRRLRLLLLRLRRRRLLRRRLRLRRRRLRLRLLLRLLLLRRRRRLLLRLLLLLRRLLRRLLRRLRLRRRRLLRLRRLLLLRLRLLRLLRRLRLRLRRRRRLRLRRLRRRRLLRLLLRLLRLLRLRRRRLRRRLLRRRRRRRRLLLRLRRRLRRRLLLRRRLRLLRRLRLLRRLRRLRLLRLLLRRLRRLRLRLRRRRLRRRLRLLLLLLLLLRLLRRLRRRRLRRLLRLLRLLRLRRLRLLRLRRRRLRLRRRLRLLRLRLLRLRRRLLRLRLLRLLRLRRLRLRRRRRLRLRLRRLRRLRLLLLRLLLLRLLLLLLRLLLRRLLLRRLRLRRLRRLLRLLLLRRLLRRLRRRRLLRRRLLLLRRRRRRLLLLRLRLRRLRLLRRLLLLLLLLRLLRRLRLLLLRLLRRLLLRLRRRLRLLRRLRLLLRRLRRLRRLRLRRRLRLLRRRRLRLLLLLRRRLLRRLLRRRLLRRRRRLRRRRRRLLLLLRRRLLLLLRRLLLLRLRLRRLRRLLLLRRRRRLRLRRRRLRLLLLLLRRLRLLLRRRRLRLRRLRRLRRLRRRRRRLLRLLRLLLLLLLLLLRLLRRRRLLLRRLRLRLRLRRRLRRRRRLLLLLLLRRLRLLRRLLLLRLRLRLLRLLRLRRLRLRRRLRRRRLRRLRLRLRLLLRRLLRRLRRLRRRLLLLLRRLRLLLLRLLRLRRLLLLRRRLLLRRLRRRRLLRLLLRRRRRRLRRRRRLLRRLLRLRRRRLRRRLLRRRRRLLRRRRRRLLLRLRRRLLRLLRRLLRRRLRLLRLLLLRRRLLRLRLLRRLRLRLRRLLLLRRRRRLRRRLRLRLRLLRLRRRRRLLRLRRLLLRRLRLRLRRLLRRLRLLRRRRLRRLLLRRLLRLRRRLLLLLRRRLLLRLRRRLRLRLRLLRRLRRLRRRRRLRLLLRLLRLRLRLLRRRLLLLLRRLRRLRLLLRRLLLLLRLRRLLRLRLRRRLLLRRRRLRRLRRLRRLRLLLLLRLRRLRRLLRRRLRLRRLRRRRLRLLRLLRRLLLRRRLLRRLRLRLRLRRRRLRLLLLLLRLLRRRRRRRRLRRRLLLLLLRRRRLLLRRLRLRRRRLRRRRRRLRLRRRRLLRLLLRRRRRRLLRLRRRLLLRLRLLLLRRRRLLLRLLRRRLRRRLLLRRLRLRLRRLRLLLRLLLRRLRLRLRRLRLLRLLRLLLRRRRLLLRRLRRRRLRLLLRRLRRRLLLRRLRRLLRLRRLRLLLLLLRRLRLLLLRRRRRLLRLLRRLRLRLLRRLLLRRRLLLRLRLLLLRLLRRLLLRRRLLRRLRLRLRRLLLLLRRRLLLLLLLLRLLRRRLLLLRLLRLRLRRRRRLLLLRRLRLRRRLLRLLRRRRLLLRRRRLLLLRLLRLRRRLRLRLLRLRRRLLRRLLLLRLLRLRLRLLLLRLLLRLLRLLRLLLLRLRRRLLLRLRLRLRRRRRRRLLLLLRRLLRRRLRLLLRLLLRLLRRLLRLRRRRLRLLLLRLRLLRLLRRRLLRLRLRLRRRLLLRRLLLLLLRLLRRLLLRLLRLRRRLLRLLLRRLLRRRRRLRLRRRLLLRRRLRLRLRLRRRLLLLRLLRLLRRLLLLLLRRLLRLLLLLLRLRRLLRLLRLLRRRRLLRLRRLRLLLRRLRRLLRRRLRLLRLRLRRLRRLRLRRRLLRRRLLRLRRLRLRLRRRRLRLLRRRLRLLRRLRRLRLRRRLRLRRLRRLLLLRLRRRRLLRRRLLRRRLLRRRLLLLLLRRLLRLRLLRRLRRLRLLLLLLRLLLLRRRRRLRRLLRRLLRLLLRRRRRRRRRRLRRLLLLLLLRLRRRRRRRLLLRLRLLLRRRRLLLLRRRRLRRRRRRRLLLRLRRRLRRRRLLLLRLLRRLLLRRLLLRRLRRRRRLLRLLLRLLLRLLRRRLLLLLLLLRLRRLLLRRLLLLLLRRRRLLLRRLLLLRLRRLRRRRRRLLLRLLLLRRLLLRRRLRLLLLLRRLLRRRLLLLLRLLRRLRRLLLLRRRLRLRLRLLLRRRLLRRRRLLRRRRRRRRLLLLRLRRRLRRRLLRRLLRLRRRLLLRRRRLLRRRLLLLLLLLRRRRRLLRRLLLRLRLRRLRLLLLRRRLRRLLLLLLRLRLLLRRLLRRRRRRLLLLLRLRLLLLLRRRLRRLLRRRLLRLLRRRRLLRLRRRLRLRRRRLRLRRRLLLLLRLRLRRLLLLLRRLLRLRLRRRLRLLRLLLLRRLLRRLRLRLLLRRLRRLRRRRRRLLLRLRLLLRRLRRLRLLLRRLRRLRLRRRLLRRLRRRLRRLRLRLLRRRRLLLRRRRLLLRLLLRRLRLRRLLLLLRLLLLLRRLLLLLLRLRLLLLLLLRLLLRLLRLLLRRRRLLRRRLLLLLLRRLRRRLLLRLRLLLLRRRLLRLRLRLRRRRRRRRRLRRRRRRRLLLRRRRLLRRLRRRRRLLLLRRLRLRRRRRLRRLRRRRLRLLLRLRLRLRLRRRLLLRRLLLRLRRRRLRLRLRRLLLRRLRLRLLRLLRRRRLRRLLLLRLLLRLRRRRRRRRRLRLRLRRLLRLLRLRLLLLRRRLLRLLRLRRRLLLLLLLRRRRLLRLRRRRLLLRRRRLLRLRRLRLRLLRLRLLLLLRRRLRRLRRLLRLRLRLRRRLLRLLRRLRLRRRLLLLLLLLRRRLRRRRLRRRLLRLLRLLRRLRLLLLLLLLRRRLLRLLLLRLRRRRLLLRLLLRRLLLLLLRRLRRRRLRRRRRRRRRLLLRRRLLLLRLLRLLRLLLLRLRRRLLLLRLRRRRLLLRLRRRLRLLRLLRRRLRLLRLLLRLRRLRLLRLRLLLRLLRLLRLRLRRLLLLRLLRLLRLLRRRRRLRLLRRRRRLRRLRLLRLLRRLRLRLLRLLRLRLRRLRLLLLRLRLLRRLRRLRLLLRLLLLLRRRLRRRRRLLLRLRLRRRRLRLLLLRRLRLLRRRLRRLRLLLLRLLRLRLLLRLRLLLRRRLRRRRLRRRRLRRRRLRLLRRLRRLLRRLLLRRLRLLLLRLRLRRRRLRRRLRRRRLLLRLLRRLLLLLLRRRLLLRLRLRRRRLRRRRLRLLRRRRRRRRRLLRLLRLLLRRRLLLLRLRRRLLRLLLRLRLLRLLRRLLLLLRRRRLRRRLLLRRRLRRRRLRRRRLLLLRLLRLRRRRLLLRRLRLLLLRRRLRRRRRLRLRLRLRRLRRLRRRRRRRLRLRLLLRLRLRRLLLRRLLLRRLLLRLRRRRRLRRRLLRLRLLRLLLLLRRRLRRLRRLRLRRLRRLLRRRLRLRRRRRRRRRLRLRLRRRRRLRRLLRRRRRRLLRLRRLRRLRLRRLLRRRLLRRRRLLRLLLRRRLRLLLLRLRRRLLRRLLLRLRRRRRRRLRLRLLRLLRLLRRRRRRLLRRLRRLRRLLRLRLRLRLRRRRLRLLLRRRRLLLRRRRRRRLRLRLRLLLLLRRRRLRLLRLRRLRLRRLLLLLLRRLLLRRLLRLLLRLRRRRRLRRLLRLLRLLRRRLLLRLLRRLLLRRLLRLRLRRLLLRLLLRLLLLLRRRLRLRLLRRRRLRRRRRLRLRRRLLRLLRRLRLLRRLRRLRLRRRRRLLRLRRLLRRRRRRRRLLRRLRRRLRLRLRLLLLLLLLLLRLRLRLLLRRLLRRRLRRLRRRRLRRRLLRLLLRRRLLRRLRRRRRRRLLLRRRLRLLLLLLRLLRRRLRRRRLLLLRRRRRRLRLLLLLLLRRRRRRLRLRLRRLLRRRLLRLLRRRLRRRRLLLLRRRRRLRLLLRLRRLRLRRRLRLLLRRRRLLRLRLLRLRLLLLLRRRLLRRLRLRLLRLLLRLLLRRRRRLRRRLRRLLLRRRRRRRLLLLLRLLLRRLRLLRRLRRRRRRRRLRRRLRRLLRRRRRLRLRLRRLLRLRLLRRRLRRRRRRLLRLLLLRLRRLRLRRRRRRRLLRLRLLRRRRRRRRRLLLLRLLRLRRRRLRRLLRLRRRLLRLRLLLRLLLRLLLLLRLLRLLLRLRRLRLLRRRRRLLRRLRLLLRLLRLLRRRLLLLLLLRRLRLRRRLRLRRRRRRRLRRLLLLLLRRRLRRRRLLRLLLRRRRLRLLRLLRRLLRRLLLLRRRLRRRLLLRLLLRLLLRLRRLRRLRLRRRLRRRLRLRLLRRLRRRRLRLLLLRLRRLLRLRLLLRLRRRRRLLRRRLRLLLLLLLRLLLLLLLLRRLLLRLRRRRRRLRLLRRRRLLRLRRRRRLRLRRRLRLLLLRLRLLLLRRRRLLLLRRRLRRRLLLRRRRLRLLLRRLRRLLLRLLLLRLRLLRLLLRLLRLLRLLLLRLLLLLRRLLLRRRRLLLRLLRRLLLLRLRLRLLLRLRRLRLRLRRRLRRRLRRRRRRRLLRRLRLRRRLLLLRRRLLLLLRRRRRRRLRRRRLLLLLRRLRLRRLLLLLRRRLLLLRRRRLLRLRRLRRRRRRLRRRRLRLLLRLRRRLRLRLLLRLLRRLRRLLRLRRRRRLRRRLRLLRRLRRRRLRLLRRLRRLRLRRLRLRRLRRLLLLLRRLRLLRRLRRRLRRLLRRLLLLRLRRRLLRRLRRRRLRRRRLLRRRRLRRRLLRRLLLLLLRLLLLRRLRLLLLRLRLLRLLRRLLRLRRRLLRLRRLLRLLLRRRRLLRLLRLLLRLLLLLRRRRRRLLLRRLRLLRRLLLLRLRLRRRRRRLRLLRRRRLRRLRLLLLRLRLLLLRLRRRLRLLRRRLLLRLRLRLRLRRRLLRLRLLRRLLLLLLLLLRLLRRLRRLRLRLRLLRRRLLRRRLRLLLLLLLRRRLLLLLRRRRLRLLLRLLLRRRRRRRRLLRLLRRLLLRRRLRRLLLRRLLRLRLRRRLRLLRRLLLLRLLRLRRRRLRLLRRRRRLLRLRLLLRRRLLRRRLLLRRLRLLLRLLLLLRLLRLLRRRLRLLLRRRLRRLLLRRLLRRLRRRRLLLLLRRLLRLRLLLRRLLLLLRLRRLLLLRRRLLLRLLRLRLLRRRRRLRLRRLLLLLRLRRLLLLLLLRRRLRRRRLLRLRRRRLRLLRRLRLLRLLRLRLLRRLRRLLLRLLLLLRLLRRRRLRLRLRLLRLRRRRRLLLLLLLRRLRRLRLRRLLLRRLRLRRLLLRRLLLLRRLLLLLLRLLRLRRLRRRRLLRRLLLLLRRRLLLLLRRLLRRLRRRRRLLLRLRRLLLRLRRLLRRLRLLLRLLRLLLLLLLLLRLRLRLLLLLRRRRLRRLLLLRLLRRRRRRLRLLRLRRRRLRLRLLLLLRLLRRRLLRLLRLRLLRLRLRLLRRLLLRRLRRRRRRRLLRLRRLLLRLRLRLLRRRRLLRRRRLRRLRRLRLLRLLLRRLLRRRLLLLRRRRRLRLRLLRRLRRLLLRLLRRRLLRLLRRLLRRLRRRLLRRRRLRLLRLRLRRLLLRRLRRLRLRRLLLLRLLLLLLRRLLRRLRLLRLLLLLRLLRRLLRRLRRRLRLLRRRRRRLLLRRRRRRLLRLRLRRLRRRLRLLRLRRRRLLLLLRLRLLRLRRLLRLLRLLRRRLRRRRRLRRRRLLRLRRRLRLLRLLLLLLRRRRLRRLLRRLRLLRRRRRRRRLRLLRRLRLRRRLLLRLRRRLLRRLRRRRRRRRLRLRLRRLRLRRLLLRLRRRLLRRRLRRRLLRRLLLLRLRRRRLRLLLLLRRRLLRLLRLLLRLRRLRRLRRLLRLRLRLRLLRRLRRRRLLLRLLRRRLRRLLRRLRLRRRRRLLRLRRLRRRRRRRRRLLRLLLLRRLLLLRLLLLRLLRRLLLRRRLRRRRLLRRRLRLRRLRLLRRRRLLLRRLLRRRLLRRLLRRRLLLRLLRRRRLLLLRLLRLLRRLRRLLRLLRRRLRRLLLLRLLRRRLLRRRLLLLLLLLLLLRRRLLRLRRRRLRLLRRRRRLLRLLRRRRLLRLRLLLRLLLLLRRLLLRRRRLRLRLRLRLRRLRLRRRLLRRLLRRLLRRLRLRLLLRLLLRRLRLRLRRRRLRLRLLLLRRRRRLRRLLLLRRRRRRLLLRLRLRLLRLLLLLLLLRLRLLRLLLRRLRRLLRRRRRRLRRLRLLLRRLLRRLRRRLLRLLRLRLRLLRRRLLRLLRRLRLRLLRLRRRRRRLRLRRRRLLLRLLLRRLRLRLRRLRRLRRLRRRRRRLRRLRRRLRRLRLLRRLLLRRRLRLRLLRRRRRRRRLRLLRRLLRLRLRLRLRLRLRRLRLLLLRLLLRRLRRLLRRRRLRRLRLLRLLRRLRRLRLRLLRLRLLLLRRLLRLLLLLLRRLRRRLLRLRLRRLRLRLRRLLRLLRRLLRLRRRRLRLRRRRLLRRRLLRRRLLRRLRRLLLRLLRLLRLRRLRRLRRLRLLLLLRLRRRRRLLLLLLRLRLRRLLRRRRRRLLRRRLLLRLRRRLRRLLLLLLRLLRRRLLLRLRLRRLRLRRRLRLLRLRRRRLRRRRLRRRRRLRRLLLRLLRLRLLLLLLRRLRLLRLLRLRRLRRRLRRLLLLLRRLLLRRRLRLRRLLRLRLRRLLRLRLRLRRRRRRLLLRRLLLLRRLLRRLRLRLRRLLLRLLRRLLLLRLRRLRRLLLLLLLLRLRLRLRLLLRLRLRLLRLLRLRRRLRLRLRLRLLRLLLRRLRLRRRRRLRRRLRRRRLRRRRRRRLLRRRRLRRLLRLLLLRLRRRRRRRLRRLRRLRRRRLLLLRLRLLLRRLRLLLRLLLLRLRLRLRLLLLLLLLRLRRRRRRRRRLLRLLRRRRLLLRLLRLRLRLLRLRRRLLLLLLRRRRLLLLLRRLLLRLLRLRRRRLRRRLRRRRLLLLRLLLLLLLLRLLRRRLLRRRRRLRRLRLRLRLLRLLLRLRRRLRRLLLLRRLLRRRLLRLRLRLLRLLRRRLRLLLRRLLRLRRRLRLLLRLRLRRLLLRLRRLLLRRRRLLRRRRLRRLLLLLRRRLLLRLRRRRLRRLRLLLLRLRRLRRRRRRLLRLLLLRRRLRRRLLRLLLLRRRRLLLLLLLLRRRRRRLLLLRRLRLLLRRRLLLRLRRLRRRRLLRLRLLLRRLRRRLRRLLLLLRRRRRLLLLLRRRRLRLLLLLRRLRLLRRRLRLRLRLRLLLLRRRRRRLRRRRLLLRLRLLRLRRLLLLRRLRRRLLLLRLLRRLLLLLLLLLRLRLLRLRLRLRRLLRLLLRLRRLRLRRLRLLRRLLLLLRRLRLRLLLLLLLLRRRLRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLLLRLRRRRLLRRRLRRRLLRRRLLLRLLRLRRLRRRRLRRRLLRLLLLLRRRRLRRLRRRLLRLLLRLLRLLRLLLLLRRRLRLRRLRRRLLLLRLRRLRRRLLLRRRRRRRRLRLRRRRLRRRRLLLRRRLRLRLRRRRRRLRRRRRRRLRLLRRLRRLLRLLRLRLRLLRLLLRRRRRLLLRRRRRLLLLLRRLRLLLRRRRLRRLRRLRRRRLRLRRRRRRRRRLRLRRRLLRRRRLRLLRRRLLLLRRRRRLRRRRRRLLRLLRLLLRLLRLLLLLLRLLRRRRLLRRLLRRRLRLRLRRRRRRLRLRRRLLLLRLRRLLRRRRLLRRRLLLRLLLLLRLRLLRLRRLRLLRLLRLRLRLLLLLLLLRLRLLRLRRRRLLLLRRRRRLLRLLLRLLLRLLRRLLLRRLLLRLRLLLRRLLLLRRRLLLLRLLLRRRLLLLLRLLLLLLRRLRRRLRRRLRLRRLRRRRRRRLRLRRRLLLRLRRRLRRLLLRRLLRLRRLLLRRRLRLRRRRLLRLLLLLRLRLLLRRLLLRLLLRRRRRRRLRLRLLLRLRLLLLRRLLLRLLRLLLLRRLRLLLRLLRRRLLLLRRLLLRLLRLRLRRLLRLRLRRLRLRLLLRRLRRRLRLLRLLRRRLRLLLLRLRLRLRRLRLRRRRRRRLLRRLRRLLLRRLRRRRLRLRLRLLLLRRRRLRRRRLLLLLLLLLLRLLLRRRLLRLLRRLRRLRLRRRRRLLRRRRRRLRLRLLLLLLRLRLLLRLLLRRLRRLRLRLRLLRLRRRLRRRLLLRRLLLRLRLRRRRRLRRRLLLRLRLRRRRRLRRLRRRRRLLRLLLLLRLRRLRLRLRLRRLRLRLRLRLRLRRRRRRLLRLLRRLRRLRRRRRLLLLRLRRRLLRRRRLRRLLLLLRLLRRLLLRLRLLLRRRLRRRRLLLLLRLRLRRLLRRRRLRRLLLLRRRRRRRLRLLLRLLLLRRLLLLRLRRRRLRRRLRLLLLRLLLRLLRLLLRLLRLRRRRLLRRRLLRRLLRLRRLRRRLRRLRRRLRRRLRRLRLLRLRRRRLRRRRRRRRRRLLRLRLLRLLLRLLRRRLRLRRRRLRLRRLRLRRLRRLLRLRLLLRLRLRRRLRRRRRLRLLLLRLRLRLRRLLRLRRLLLRRLRRRLRLRLLLLRLRRRRLRRRLRLRRLLLLRLRRRLLRLLRLRRLRRRLLLLRRLRRRLRRLLLLRLRLRLRLLRRRRRRLLLRLRLLRLLLRLRLLRLRLRRRLRLRRRRLRRLRLLRLLLRLLLRLLLRLRLRLRLLLRRRLLLLLRLLRRRRRRRLRLRRLRLRLRRLLRLLRLRLLRRRRLLLRLRLLRRLLLRLLRLLRRRRLLLRLRLRRRLLRLLLRLLLLRLLLLLLRLLLRLLLLRRLLLLRLLLLLRLLLLLRLLLRLRRRRLLRRLLLLLLRLLRRLLLRRLRLRRLLLLRRRLLRLLLRRLLRRLRLLLLRLLRLLLLRLRRRRRRLRRLRLLLRLLRRLLRLRLRRRLRLLRRRRLRLLLLLLRRLLRRLRLLRRLRRRRLLRRLLRRLRLLRRRLLRRLLLRLRRLRLRRRRLLRLLLRRRLLRLRRRLLLRLLRLLLLRLRLLLRLRRRLRLLLLLRLRRRRLLRRLLLRLLRLLLLLLLRLLRLLLRLRRLLRRLRRRLRLRRRRLRRRLLLLLLRLRRLRRLLRLRLLRLLLRLLRLLRLRLLRRRRRRLRRRLLRLRLRLRLLRLRRLRRLRLLLRRRLRLLRRLLLLLRRLLLLRRLLRLRRRLLRLRLRRRRLLRLRRLRRRRRLRRLLLLLRLLRLRRRRRLRRRLRLRRLLLLRRLRRRRLRLLRLRLLRRLRRLLRLRLRRLRLRLRLRLLLLLRLRRRRRRRRRRLLRRRRLRRLRRLLLLLRRRLRLRRLLRLLRRLLLLLRRLRLRLRRLRLRLLLLRRRRLRLLLLLRLLLLRLRLLLRLRLLLLRRLRLRLRLRRRLLRLRRRRRRRRLLLLRLRLLRLRLRLLRRRLRLLLRRLRRLLLLLRRLRRLLLLLRLLRLLLRRRLLLLRRRRRLLRRRLLLRLLRLLRLRLLRRLLRRRLRLRLLRRRRLLRLLLRRRLLRRRRLRRRLLLRRRLRLRLLLLLLLRLRLLLLRRRLLRLRRRLLRLRLLLRRLLLLRLRRLRRRLRLRRRLRRLLRRRLLLLLRRRRLLRLLRRLRLLLLRLRRRLLRLRRLLRLLLLLLLRRLRRLRRRRLLRRRRLLRLRRRRLLLLRRLLRRLRRRLRLLLLLLRRLRRRRRRRRLLRLLRRLLLRRLRRRRLRRLLLLRRRLRLRLLRRRLLRLLLRRRLRRRRLRRRLRLRLLRRLLRRRRLRRRLRLLLRRLLRRRLLRLLLLRLLRLLLLRLLRLRLRRLLLLLLRRRLRRRRLLLLRLRRLRLLRRRRLLLLRRRLLRRLLLRLLLRLRRLLRLRRLRLLRLLLLRRRLLRLLLRLRRRLLRLLLLLLRLLLRLRLLLLRRLRLLLRLLRLLLLRLLRRLLLRLRLRLRRRRRLRLLLLLRRLRRRLLRRLRRRRLRLLRRRLRLRRRRLRLLLLRLRLLRLLRRRRLLRLLLLRRRLLLLRLRLRRRLRRRRLLRRLRRLRRRLLRLLLRRRLRRLRRLRLRLLLLLRRRLRRRRRLRRLLLRLRRLLRLRRRRRLLLLRLLRRLRLLLRLRRLLRLLLLLRRRRLLRRRRLLRLLRRLRRLLRRLLRLRRRLLRLLLLLRLLRRLLLRRLRLRLLLLRRLRRRLLLLRRRLLRLLRRLLRLRLRLRLRLRLLRRLLLLRLRLRLLRLLRLLRRRLLRLRRRLLLLRLLLRLRLLRRLRRLRRLLLLLLLLLLRRRRRLRRLLRRLLRRLRRRRRRRLLRLLRRLLLLLRRRLRRRRRRLRLLRLRLLLRRLLLLRLLLRRLLRRLRRRLLLRRRLRLRRRRRRLLRLRRRRLLRRLRRRLLLRRRRLRRRLRLRLLRRLRRRLLLLLLLRRLRRLLLRRLLLLLLRRRLLRLRLRLLLRLLRLRRRLRRLLLLLLRRRRLRLRRRLRLRLLLRLRLRRRLRLLRRLLRLLRLLLLRLRRLLLRRLLLLLLRLLRRRRRRRRRRRRRRLLLLRRRRRLRRLLLRLLLRLRRRLLLLRRLLLRRRLLLRLLRRLRRLLLLRRLLLRLRLRRRLLRRLRRRRRRLRLLLLLRRLLRRLLLRRRRLRLLLLLRLRRLLRLLRRLRRRLRRRLLRRLLRRRLLLLRLLLLLRRRRLRLRRLRLRLRRLRLRLLLRLLLRLLRLLLRRLLRLRLLLRLRLLLRRLRLRLLLRRLRRLRRRRRRLLLLRRLLLLRRRRLRLRRRLRRRLLRLRRRLRLLLRRRLRLRLLLLLRRRLLLLRRRLLLRLLLLRLLLRRLLRLLRLRLLLRRLLLLLLRRLLLLLLLLRLRLRRLRRLLLLRRLLLRLLLLLLRRRLRRLLLRLLRLLLLRRRRRRLRLLLRLRRRRRRRLRRRRLRLRLLRRRRLRRRRRLRRRRLLLRLRRRRRRLRLRLRLRLRLRRLRRLRLRRLRRLRRLRRRLLRLLLRRRLRLLRRRRLLLRRRLRLLRLRRRRRLRLLLLLRLRLRLRRRRRRRRRRRLRLRLLLLRLRLRLRLRRRRLLRLRRLLRRLLLLLLLRLRRLRRLLLRLLRLLRLLLRRLLRRLLRRRRLRLLLRLLLRLRRLRLLRRLRLRLRRRLLRLRRRLRRRRRLLLLRLLLRLRLRRRRLLRRLLRLRRLLRRRRRLLLLLLRRRRRLRLLRLRLLRRLLLLLLLLLLLLLLLLRRRRRRRLLLLLRLRRLLRRRRRLLRRRRLRLLRLLLLRLRRRLRLRRLRLRRLLLRLRLRRLLLRLRRLRRRLRRLLLRLRRLRLLRLLLRLRRRRLRLLRLRRLRLLRRLRLLRLLLLRRRLRLLRRRRRLRRLLLRLLLRRLRLRRLLRRLLRLRLLRLLRLRLRLLRRRRLLRLLLLLLLLLLRLRRLLLRLLLRRRRLRRRRRRLLLRRLRLRRRLLRRLRRLLRRLLRRRLRLRLLRRLLRRRRRRLLLRRRLRRLRLLLLLRRRRLLRRLRLRRLLLLLLRLRLRLRRLRLRLRRRRLLLLLLRRLLLRLRRRRLLLRLRLRRRRLLRRRRRRLLRLRRRLRRLLRLLRLLLRRRRLLLRLRRRLRRRLLRLRLLRRRRRLLLRLLRRLRRRRLLRRRRLRLRRLRRRLRRLLLLLRLRRRRRLLLLRRLLRRRLRLRRRRRLRLLRRLRRLRLLRLRRRRLLRLRLRLRLRLLLLLLRRLLLRRLLLRRRRRRRLLLRRLRLRLLLLLRLRLLRLLLLLRRRLRRLRLLLRRRLLLRLLRRRRLRLRLRLRRRRRLRLLLRLRLLRLLRLLLRRRLRLRRRRRLRLLRRRLLLRLRLRLRLRLRLLLRRLRLRRRLLRLLRRRRRRRLRLRLLLRLLLRRLLRLRLLRRLRLLRRLRRLRRRLRLRRRRRLRLLRRRLLLLRRRRRLRLLLRLRLLRLRRRRRLRLLRLRRLLRRRLLLRLLLRLLLLRLLRLLRLLRRRRRRRRLLRLRRLRRLRLLLRLLRLLRRRLLLLLRLRRLRLLLLLRLLLLLRRRLRLRLRRRRRLRRLRRRRRLRRRLRLRRRLLLLRRLRRLRRRRRLLLLRRLLRRRRRRLLRRLLRLLLRLLRLRLRLLRLLLRLRLLLRLRRLLRLLLRRRLRLLRRRRLRRRLLRRLRLRLLLLLLLRRRRRLLLRRRRRRRRLLLLRLLRRRLRRLRLRLRRLRLRRLRLLLLLLLLRRRRRLRLRRLRRLRRLLRRLLRRRLRLLLLLRLLRLRRLRLLRRLRRLRLRLRLRLLLLLLRLLRRRLLRRLRLRLLRLRLRRRLLLLLLLLLLRLRLRRRLRLRRRLRRLLLRRRLRRRRLLLRRLLLRLLRLLRLLRRRRLRLLLRRRLRRLRRRRRRLRLRRRLLLLLRLLRRLLRLRRRRLRLLLLRLLRRRRRRRLRRRLRLRLRLLRLRLLRRRLLLRLRRLRLRRRRLLRLLRLRRRLLRLRLLRRRLLRLLRLLRRRRLLRRLRRLRLRRRRRRLLRRLRLRLRRLRRLRLRRRRLLLRLLLRLRRLLRLRRRLLRLLLRRLLLRRRRRLRRRLLLRLLLRRRRLRLLRRLRRRLRRRLLRRRRLRRRLLLRLLLRLLLRRRRLLLRRLRRRLRLRLRLRRRRRRRLLLLRLRRRRRRRRRRLRLLRLLRRLLRLLLRRLLLLLRLLLLLLRLLLRLRLLLLRLRLRLRRRRLLRLRRLLRLLRRRLRRRRRRLRRLRLRRRRRRRRLLRLLRLRLRRLRRLRLRRRLLLLRLLRLRRLLLRLLRRRLRLLLLLLLLLRRLRLRLLRLRLLLLRRLRRRRRLRRLLRRLLLLLRLRRRLLLLRRRLRRRLRRRLRLRRRRRRRLRRLRRRRLRRRLRRLRLRLLLRLRRRRRRRLLLRRLLLLLRRLRLLLLRLRLRRLRRLLLRRRLRRLRRLRRRRRRLRRLLLLLLLRLRRRLRLRLLLRLLLRLLRLRRLRRRLRRLRRRRRRRLRRRRRRLLLRRLLRRRLRRRLLRRLRRLLLLLRRLRLLRLLRRRLRRLLRRRLLLRLRRRLLLRRRRRLLRLRLRLRRRRLLRRRLRRLLLLLLRRLLLRRLRLLLRRRRLRRLLRRLLLLRRLRRRLLRLLRRLRRRRRLLRLLRRLLRLLLLRRRRRLRLLRRRLRRLRRLRLLRRLRLLLRRRLRLLLLLRLLLLRLLLLRLRLLLLRLRRLLLRLRRRLLLRLRLRRLLLRRLRLRLLRRRLLLRRLLLLRLRRRLRRLRRLLLRLLRRLLRRLRLLRRRLLLRLRLLLLLRRLLRRLLLRLLRRRRRLRRLLLLLRRRLLLLRLLRLLLLRLRRRLRRLRRLRLLRRLLRLLLLRRRRRRLRRLRRRRLLLRLRLLLRRLRLRRRLLLLLRRRLLRLLLLLRRLRLLRRRRLLLLLLRRRRLLRRRLLLRRRRRLLRLLLLLRLRLRLLLLRLRLRLRLRRLLRLRRRLLLRRLRLRRLRLRRRLLRRRRLRRLRLRLLLLLRLLRRRRRLLRRRRLRRRRRRLRLRLRLLLLLRLLLLLRLRRRLLLLLLLRRLLRLRRRRLRLRLLLLRRRRRLRLLLRLRRRRRRRLRRRLLRRLRLLRLLLRLLRLRRRLRLRLLRLLRLRRLRLRRLLRLLRRLLRRRLLLLLRRLLRRLRRRRRRLLRRRRLLLRLLLLLRRLLLLLRLLRLLRLLLLLLRLRLRRLLRLRLRRLLRLLLLLLLRRRRLLRRLLLLRRRRLLLLLLLLLLLLLRRLLRRLRLRLLRLRRLRLRRLLLLRLLLRLLRRLLLLRRLLLRLRLRRLRRRLLRRLRRLLLLRRLLLLRLRRLRLLRRLLRRRLRRRRLRLRLLRRRLLLRLLLLRRRLLRRLRRLLLRLRRRLLRLRLLRRRRRRLLRLLRRRLRRLRRRLRLLLRLLLRRLRRLLRRLRLLLRLLLLRRLLRLRRLLRRRLRLLLRLRLRLLLRRRRRRLLRLLLLRLRRRLRLLRLRRRRLLLLRRLLLLLLRRLRRRLRRLRRLRRLRLLLRRRRRLLLRLRLRLLRLRRRRLRRRRRRRLLLRLLLRRRLRRRRRLRLLRLRRLRLRLLLRLRLRLRRRLRRRRRLRLLRLRRRRLRLRRRLLRLLRRLLLRLRRRRRLLLLLLLLLRRRRLRLRLLLRRRLRRLRRLLLRLRLRRLLRLLLLLLRLLLRLRRLLRRRLRRRLLRRRLRRLRRRRLRRRRLLRLRLRRLRRRLRLRRRLLLRLLLRLLLLLRLRLLRRRLRLLRRRRLRLRLLLLLRRRLRRLRLLRRLRRLRRLLLRRRLLRLRLLRRRLRRRLLRLRLLLRRLLRLLLRRRRRLRLLRRRLRRLRLLRRLRRRLRRRLLLLLLLRLLLLLRRLRRLRRRLRRRRLLRRRLRRRLRRRRLRRLRLLLRLLLLLRRLLRRRRLLRLLRRLRLRRLRLRRRLLRLLRLRLLLRLRLRLLRRRLLRRLRLRRLRRRLRLRLLLLRRRLRLRLLLRLRRRLRRLLRRLLLRLRLLLRRLLLLRLLLRRLLRLRRRLLLLRRLRRLRRRRLLLRLRLLLLLRLRLRRRRLLLRLLRRLLLRLRRLLRLLLLRLLRRRRRRRLRRRLLLLRLLLRRLLLRLLRLRRRRRLRRRRRRLRLRRLRLRRRLLLRRLLLRRRLLLLLLRLLLRLLRLRLRRRLLLLRLRLRLRLRLRRRRLLRLRLLRRRLRRRLLRRLLLRLRLLRRLRLLRRLRRRRLRRRLLRLRLLLRLLLRRLRLLRRLRLLLRLRRRRLRLRRRLRRRLLLLRRRRLLLRLLRRRLLRRRLRRRRLRRLLRRLLRRLLLLLRLRRRLRLRRLRLLLLRLRRLRRRLLLRLLRLLLRLRLRRLLRRLLRRRRRLRRRLRLRLLLLLLLRLRLLRLRLRLRLRLLRLLRRLRLLRLRRRRRLRRRLRRLLLLRLRLLRLLRLLLLLLRLRLLRLLRLRLLRRLRRRLLLLLRLRRLRLLRRRRRRRRLLLLRRRRLLRRRLRLLRLRRRLLLRRLRLLRRLRRRLRLRLLRRLLRRLRRRLLLLRRRLRLRLRLLRRLLLRLLLRLLLLLRRRRRRRLRLRRRLRLRRRRRLLRLLLLRLRLRRRLRRRRRRRRRLLLRRLLRLLLLRRLRLRLLRRRLRRLLRRRLLRLRLLRRLRRRRLLLLRRRLRLLRLRLLLLLLLLRLRLLLRRRLLLLLLRLRRLRRRRRRRLRRLRRRRLLRRLRRLRLRRLLLRRRLLRLLLRRRLLLRLLRLLLRRLLRLRRRRLRRRLRRLRLLLLRRLLLLRLLRLRLRRRLRRRLRLLRRRRLLLLLLLLLLLRRLLRRLLLLLRLLLLLLLRLRLRRLRLRRRLLLRLLRLLLLLRLRLRLRLLLRLRLLRLRLRRLRLRRRRLLLRLRLRRLLRLRRRRRLLRLRRRRLRRRRRLLLLLRLRLRRRRRLLRLRRLRRRLRRRLLLRLLLRRLRLLLRLLLLRLRRRRRLLLRRRRLLRRRRLLLRLRRRRRRRLLRLRLLLRRLRRRLRRLLLLLRRLLRRLRLLLLRRLLLRLLLRRLRRLRRLLLLRLRRRLLLLLRLRRLLRRLRLLLRLRRRRLLRLLLRLLLLRLLLLRLLLRRLRRLLLLLLRRLLRRLRLLRLRLLRLLLRRRRLLLRLLRLLRRLLLLLRLLRLRLLLRLLLLRRRRRRRLRLLRLRLRRLLRLLLLRLRRLRRRRRRLRLRRRRRLLLLRRRRRRRRLLRRLRLLRLLRLRRLRRRLRRRRLRRLLLLLRLLRRRLLRRRLLRRRLLLRLRLLRRLLLRLLLRRRLLRLRLLLLRLRLLRLRRLRRRLLRRRRLRLRRRRLLRRRRLLLRRRRLRLLRRRLRRRRLRLLRLRLLRRLRRLRRLLRLRLRLLRLLRRRRRRRRLRRRRRLLLRLRLLRLLRRRRRLRRLRLLRLRLLLLRRRLRRRRRLRRRRRRLRRRRRLLRLRRLRRLRRRRRLRLRRRRLLRLLRLLLLRRLLLLLLLLLLRRRRRLRRLLLRLLLLRLRRLRRRLRRRLLRRLRRRRRLLRRRRLLLRRLRLRRLLLLLRLLLLLRRLRRRLLLRLRLLLRRLLLLLRRRRLLLRRRRLLLLLRLLLLLRLLRRLLLLLRRRLLLRRRLLRLRLRRRLLRLLRLRLLLLRRLLRLRRLRLLRLRLLLLRLRRLRLRRRLRLLRRRRRRRRRRRLLRRLLRRLLLLLRLLRRLRLLRLLRLLLRRRLRLRRLRLLRRLLRLRLRRLRRRLLLRLLLRRLRRRLLLRRLLLLLRLLLLRRLLLRLRRLRLLLRRRRLRLLLRRLLLLLLRLRLRLLRLRLLRLLLLLLRLRRLRLLRRLLRRLLLLLLLLRRRRRLLLLRLRLRLRRRRLLRRRRLLLRRLLLRRLLRRLRRRRLRRRRRLLLLRRRLLLLRRLLLRLLLLRLRLRLRRRLLRLLRRLLLRLRRRRRLRLRRLRLRLRLRLLLLLLRLLRLLRLLLRLLRRRRRRLRLLRLLRRRRLRLLLLRRLLRRRRLRLRRLRRRRLLRLRLRRRLRLLRLLLRRRLLRRLLLLRRRLRRLLRLLRRRRLRLRRRLRRRLRRLRLRLLLRRLRRRRRLLLRLLLRLRLLLLRRRRLRRLLLLLRRLRRLLLRRRLLRLRRLLRRRLRLLLRLRLRRLLRRRRRRRLLLRLRRRLRLLRLLLRLRRLRRLLLLRLLRRRLRRLLRLLRLRLRLRLLRLLRRLLRRRRRRLLRLLLRRRLRRLLRLRRRLLRLRRRLLRRLLRLLRLRLLRRRLRRLRRRRRLLRLLLLRLRLLLLRLRLRLRLLRRRLLLRRRLRRRRRRLRRLRLLLRRRRRRRLRRRRRLRLLLLLLLLRLLRLLLLRRLLLRRLLRRLRLRLRLRRRRRLRLRLRLLRRRLLLLLLRRRRLLLRRLLRLRRRLLLRLLLLRRLLRLRLLRLLLLLLRLRRRRRLRLLLRLLRRLLLRLLLLLRRLLRRLRLRRRRLLRLRLLRLLRRLLLRRLLLLRLRLLLLLRLRLRLLRRLLLRRLRRRLRRLRLRRRLRRLRRLLRLRRLRRRRLRRLLLLLRRRLLRLLLLLLRRRLLRRLRLRLRLLRLRLRLLRLRLLLLLLRLLLRLLLRRRRLRLRLLLRRRLRLRLRRRLRRRLLRLLLRLRRRLLRLLRRLLLRRLRLRLLLLLRRRLLRLLLRRLLRLLRLLLRLLLRLLRLRLLRRRRRRRRLRRRRRLRRRLLRLRLRRLLRLRRRRRLRRRRLLLRRLLRLLRLLLRRLRRLLLRRLLLRLRLLRRRLLRRRLLLLRRLRLRRLRLLRLRLRLRLLLLRRLLLLRLLRLLLLRLRLLLRLRLRRRLLLRLRLRRRRLLLLLLRRLLRLLRLRLRRLRRLLLLLLRRLRRLRRLLRRLRLRLRLRLLLRRLRRRLLRRLLRRRRLLRLLRLLLLLRRLLLRRLLRRLRRRLLLLLRLLRRLRLRRLRRLRLLLRRRLRLLLLRLLLRRLRLLLRRLLRRLLLLLRLRLLRRLLLRLRRLRLRRRRRRLLLLLLLLRLRLLRLLRRRLRLRLLLLRRRLRLLRLRLRRLRLLRRLRRLRRLRLRRRLLRLRLLLLLLLLLRRRRLRRRRRLLRRRRLRRLRRLLLLLRRRRRLRRLLRRRLRLLLRLLRLRLLLRRLRLLRLLRLRRRLLLRLRLLLRLLRLRLLLRRRLLLLRLLRLRRRLLRRRLLLRLRRRRRRLRLLRLLLLLLRLLLLRLRLRRLLRLLRRLLLLRLRLRRRLLRLRLLLLLLRRRRLLLRRRRRLLRRRLLRRLLRLRRLRLLRRLLRRRLRLLLLLRLLLLRRLLRLRLLRRLRLRRLLLRRRRLRLLLLLLLLRRRLRLLLLRLLLRLRLRLLRLRRLLRLRRLLRLRRLRLLRRLRLRLRRLLLRLLRLLLRRRRLLLLLRRLLLLLRLLLRRLLRLRRRLRLLRLLLRRRLRRLLRRRLLRLRRLLRRRRRRLLLLRRLLRRLRRRLRLLLLLLLRLRRLRRRLRLLLLLRRLLLRRLRRRRRRRRLLLLRRLRLRLLRRLLLRLLLRLRLRRRRLRRRRRRLRLRRLLRRLRLRRRRRLLRRLRRLRRLRLLLLLRLRLLLLLRLLRLRLRRLLLRRRRRLLRRLRLRRLLLRRRLRLRRLRLRLLRRRLRRRLLRRRRLLLLRLRRLRLLRRLLLRLRLRRRLRLLLRLRLRLLRLLRRLLRRLLRLRLLLLRRRRLLLLLLLRLRLLLLLRLLRRLRLLRLRRRRLRLRLLLRLLRRLLLLRRRLRRLLLRRLRLRLRLRRRRLLLRLRRLLRLLLRRRRLRLLLLLLRRLLLRLRLRRRLRRRLLLRRLRRRLRRLLRLLRRRRLRLLLRLRRLLLLLLRRRLLRRRRLRRLRRRLRRRLRLLRRRRRLRLLLLRRLRLLRLRLRLRLRRLLLRRRRLLRRRLLLRRLLRLRRLLLLLRRLRRRLRRLLLLRLLLRLLLLRLRRLRLLRLRRLRRLLLLLRLLLRRLLLLLLRLRLRLLLLLRLLLRRLLLRLLLLLRRLLRLLLRLLLRLRRRLLRLLLLLRLLLLRRLLRLRRLLRRRLRLLRLRRRRLLRLLLRRRLRLRRRRRRRLLRLLRRLRLLLRRRLRLRRLLLRLLRLLLLLLRLLLLRRLLRRLLRRLRRRRRRRRLLRLRRRLRRLRRRRRLRRLRLRRRRLLLRLRLRRRRRRLRLRRRRRRLRLLRLLLRLRLLRLLLRRRRLRLRLLLLRLRLRLLLRLLRLLRRLRRLRRLLLRRRRRRLRRRLRLRLLLLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRRRLRLLLLRLRLLRLRRLRRRLRRRLRLLRRRRRLLRLRLLLLRLLLLLLRLLRRLLLLRRLLLRLRRRLRRLLRLLRLRRRLLRRRRLLRRRRLRRLLRRLRLRLRLLLRLLRLRLLRLLRLRLRRLRRRLRLLLRLLLRLLRRLLRRLLRLRLRLLLLLRLLRRLRRRLLLLRRRLRRLRRRLLLRLLLLRRRRLLRRLLLLRLLRRLLLLLLRLRRRLLLLLRRRRRRRLRRRLLLRRLRRLLRRRRRLRRRLRRRLLRLLRRRLLRLRRRLLLRLLLLLRLRLLRLLRRLLLLRRRLRLLLLRRRRLRRLRLRLLRLRLLRLRRLRRLLLRRRRRLRRLRRLLLLRRLLLRLRRLLRRRLLLRLLLRLLRLRRRLLRRRLRRLLRRLRRRLLRRLRLLRLLLRLRRRLRLRRRRLLRLRRRLRLLRRRRRLLRRLLRLRLRLRRLRRLLRRRLRLLRRRRRRLLRLRLRRLLLLLRRRRRLLRRLLRRRRLRLLRRRRLLLLLRLRRRLRRRLRLRRLRRLLLRLLLLRRRLRLRLRRLLLLRRRRLLLRRRLLLLRRLRRLRRLLLRLLRLLRLLRRRRLRRLLRRRLLLRLRRLLLRRRRLRLLRRLRLLRLRLRRLLRRLLRRRRLLRLRRLRLLLRLLLRRLLRRLLRLRLLLRLRLRRLLLLLRRRRRLRRRRRLLLLRLRLLLLLRLLRRRLRLLRRLRRRRLLLLRLRRLRRRLRRRLRRRRRRLRRRLLLRRLRRRRLRRLRLRRRRRRLRLRRLLLLRRRLLRRRRRLRRLRLRLLLLRLLLRLLRRLLRLRLLLLLRRLRRLRLRLLLLLRLRLRLLLRRLRLLRLLLRLRLRRLRLRRLLRRLLLLLLRRLLRLLLRRLRLRLLLRRLRLLLLRLLRLRLLLLRRLLLRRRLRLRRLRLLRRRRLRRLRLRLRLLRRRRRLRLRLLRLRLLRRRLRRRLLLLLLRRRLRRLRLLRLLLRRRLLLRLRLRRRLLLRRRLLLLLRRLLLRRRRRRRLLLLLLRLLLRRRRLLLLLRLLRRRRRRLRLRRLRLLRLRLRLRLLLRRRRLLLRLRRLRRRLLLRLRLRRLLLRLLLRRLRRLLRLLRRLRLLRRRRRLLRLLLRRLLRLRRLLLLLRRRRRRRLLLLRRRLRRLLRLRRRRRLRLLRRLRLLRLLRLRLRRLRRLLRRLRRRRLLLLLRRLRLRRRLLRRRRRRRLLLRRRRRRLRLLLRLRLLRLLLLLRRRLLRLRLLRRRRRLLLLLRLLRLLRLLRLLLRLRLRLLLRLLLLRRRRLLLRRRLRLRRRRRLLLLRRRLRLRLRRLLRRRLRLRLRLLRLRLLRLRLRLRLRRRRLLRRLLLRLLRRLLLRLRRLRRLRLLRLLRRRLRLRRLRLLLRLRRLLRRLRRLRRLRLLRRLLRLRLLRRRLLRRLRRLRLRLLLRLLRLLRRLLRLRLLRLLLLLRLRRRRRRRLRRLLLRRRRRLLLRRLLLLLRRRLLLLLLRLLRRRLLLLRRLLLRRRLRLRLLLRLLRLLLRLLLRLRLRRRLLRRRRLLRRLRRLRLRRRRRLLLLLRLLRRRRRRLLLRLLRLLLRLRLRRLRRLRRLLRLRRLLRLRRRLRLLLLLRRRLRRLRLLLLRLLRRRRLRLRLLLLLRRRRRLRRRLRLRRRRRLLLRRLLLRLLRLLLRLRRLRLRRLRLLLLLLLLRLRLLLRLLRLRRRLRLRRRRLRRRLRLLLRLRRLRLRRRLRLRLLRRLLRRLRLLLLRLLLRRRLRRLLRRLRRRRRRLRRRRLLLLLLLLLLLRRRLLRLLLLRRRLRRRLLRLRLRRRRLLRRLLRRLLLRRRRLRLLLLLLLLLLLRLRLLRRLRRRLRRRRLLLRLLRRLRRLRRLRRLLRRLLRRRLLRLRRRRRLRRRLRRRLLLRLLRLLRRRLRRRRLRRRLRRRRRLRLLRLRLRLRRRRLLRRRLLRLLRLLRRRRLLRRLLRRRRRRRLRLLLRRRLLRLRRLRRRLLRRRRLLRRLLRLRRRLLRLRRRLLLLLLRRLLLRRRRRRRLRLLLLRLRLRLRRRLLRRRLRRLLRRLLRRRRRLRLLRRRLLRLLRRRRLLLLLRRLRRRLLLLLRLLRRRLRLLLLLRRRRRRRRLRRLRRLRRLLLLLLRLRLRRRLLLLRLLRLRRRLRLRRLLRRLRLRLRLRRRLLRLLRLLLRRLRLLLRRRRRRRRRRRRRRLRRRRRLLRLLRRRLRRLRLRRRLLRLLLLRRLRLLLRLRRLLRRRRRRLLRLRLRRLRLRLRRRRLRRRRLLRLRRRLRLRRLRRLLLLLRRLRRLLLLLRRRLLRRLRRLLLLRRRRRLRLRRRLRRRLLRRLRRRLLRLRLRRRRLLLRLLLLRRLLLLRRRLLRLLRRRRLRRLRRLRLRLLLRLLRRLLRLRRRRRRLLLLLLLLRRRLRRLRLLLRLRLRLLRLRRRRLRLRRLRRRLRRRLRRRLRRLLLRLLLLRLLRRRLRRRRRRLLRRRLRLRLLRLRLRRRRRRLRRRLLLRLLLRLLLLRLRRLLRLRLRLLRLLRLLRRLRLLLRLLLLRLLRLRRLLLRRLRLLRRRLRLRRLLRLLRRRLLRLLRRLRRLRRLLRRLLRLRRLRLLRLRRLLLLLRLLRLRRRRLRRLRRLRLLLLRRRLLLLLLLLLLLLRRLLRLLLRLLRLLRLRLRLLRRRLLRRRRLRLRLRRLRLRLLRRRLLLRRRLRRRRRRRRLRLRRLLLRLLRLLRRRLRLLRRRLLRRLRLLRRLRRLLRRLLLLLRRLLLLLRRLLLLLRRRLLRLRLLLLLLRRLRRRLLRLLLLRLLLLLLRRLRLLRRLRLLRRLLRRRLLLLLRLRLRRLRRRLRRLLLLRRRLLRRLLLLLRLLRLRRLRLLLLLLRRLRLRRRLLLLRRRRRLRRLLLLLRLRRRLRLLRRRRRLRLRRRLRLLRRLLLRRRRLRRLRLRRRLLRRLRRRRLRRRLLRLLRRLLRRRLLLRRRRLRLLRRRRRLRRRLLLLRRLLRLLRRLRRRRLLRLLRRLRRLRRRRLRRRLLLLRRRLLRRLRRRLRRRLRRLLRLRLLRRLLLLLLLLRLLRRRLLLRRRLRLLRLLRLRRLRRRLLLLRRLLRRRRLRLLRRLLRRLRLRRLRLRRRLLLLRRLLLLLLRLLLRLRRLRRLRLLLLRLLLLLRRLRRRRLRLLLRLLRLLLLRRRRLLRRRRLRRRRRLLRLRRRLLLRLLRLLRRRLLLRRLLLRRLRLRRLLRLRRLLRLLRRLLLLLLLLLLRRLRRRRRRLRRRLRLLLLLRRLLRLRLRRLRLLRRLRRRRLRRRRLRRRLRRRRLLRRRLLLLLRRLRRRRRLLLRLRLRLRRLLLLRRRRRLLLLRLRRRRLLRRRRLRLLLRLRLRRRLRLLRRLLLLLRLRLLLRLLLRRLLLLLRLLLRLLLRLRLLLRRRRRRRRRLLRLRLLRRLLRRLRRLRRLRRRRLLLLLLLRRLRRRLRRRLRLRRLRLLLLLRRRLLRLLRRRRRRLRRRRLRLRRRRRLRLRRLLRRLLRLRRRLLLLRLRRLRLRLRRRRLLRLRRRLLRRRRLLLRRLLRRLRRLRRRRLLRLRLLRLLLRRLLRLLLLLLLLLRLRRRRRRRLLLLLLRRLRLLLLRLRLRRLRRLLLLLLRLLLRLLRLLRRRLRRRRRRLLRLLRRRRRLRLRLLLRLRLRRLRRLLRLRRLRLLRLLLRLLLLRRLRLRRRRLRLLRRRLLLLLLLLLLLRRLRRRLLLRLLRRLRRLLRRLRLLRLRLLLRRRRRRRLRLRRRLRRRLRLRLLRRRRLLLLLRRLLRLRLLLRLLRRLRLRLRLLRLLRRRLRLRLLRRLRRRLRLRRLLRRRLRRRRRRRRLRRLLRRLLLLLRLRLLRRLLRLRRRLRRRLLLLLRLLRLLRRLLRLLLLLRLRRRLLRRRLLLLRLLRRLRRRRRLLRLLRRLRLRLRLLLRLRRLLRLLLRLLLLRRRLRLRRLRRRRRLLRRRLRLRRRLLLLLRLRRLRLRLRRLRLRLLLLLRLRRRRRRLLLRLLLLLRRRLRLLRLRLLLLRLLRRRRRRRLRRLLLRLRLLLRRLLLLLRRRLRLLRLLRRRLLRLRRLLRLLRLLLLLRLLRRRLLLLLLLLLLLLLLLRLRLRRRLRLLRRRLLRLLRLRRLLRLRRLRLRRLLRRLLRLRLRRRLLRRRRLLLRLRRRRLRRLLLRRRLLLLRRLRRRRLLRRLRLLLRRLLRRRRRRRRLLRRLLLRLRLRLLRLLLLRRLRRRLLRLLLRRRLLRRRLRRLRLLLLLRLRLLLLRLLLRLRRLRRLRRRRLLRLLRLLLRLRRLLLLRLLLRLRRRLLRRLRLRLLRLRLLRRRLLRLRLLLLRRLLRLLRRRLLRRLRLRRRLRRRLLRLLLRLLRRLLLLLLLRLLRRLRLLLRLLRRLLRLRRLLRLLLLRLRRLRLLLLRRRRRLLLLLLRLRLLLRRLRRLRLRRLLLRRRLRLRRRRRRRRLRRRLRRRRRRLRRRLLLLRLLRLLRRRLLRRLLRLLLRRLLLLRRRLRRRRLLRRLRLRLLRRRLLRRRRLLRLLLLRRLLRRRLRRRRLLLRRLLRLLLLRRLRLRRLRRRRRLLLRLLLLRLRLRRRLLRRLRLRLLRRLRLLRLLLLLLRLRRRRLLLLLRRRLRLLLRRRRLRLRRRRRRLRLRRLRLLRLRRLLRRRRLLLLLRLRRLLLRRLLLLRRLRLLRRRLRRLLRLLLLRRLRRLRRRRLRRRLLLRRRRRRLLRRLLRRLRRLRRLRLLLLRLLRRLLLRLRRRRRLLLRLRLLLLRLRLLRRLRLRRRLRLRRLRLLLLLLLRRLLRRLRLRRLLRRLLRLLRLRLRRLLLRLLLLLRLRLRLRRRLRRLLRLLLRLRRRLLLLRLLRLRRRRRLLRLRRLRRLLLLRRRLRRRRRLLRLLLRLLLRRLLLRRRRLRLRRLLRRRRRRRLRLRLRRRRLLRLLLLLRRRLRRRRLRLLLLLRRLLRRLRRRLLLLRLLRLRRLRRRRLRRLLLLLLRRRLRLLLRLRLLLRLLLLLRLLRRRRLLRLRRRLLRLLLRLRRLRLRRRRRRRLLLRRRLRRRLRRLRLLLLRRRLRRRRLLLRLLLLRRLLLLLLLLLRLLRLLRLRLLRRLRLLRLRLRRRRLRLRLRRLRLRRLRLLRLLLLLRLRRRRRLLLRRRRRRRRLRLRRLRRRRLLLLRLRLRLLRRRRRRLRRLLRLLLRRRLLRRRLLRRRRLLRLRRLRRRLRLLLRRRRLLRLRLLRLLRRLLLLRRLRRRLLRRLRLRLRRRRLLLLLRLLLRRRRRRLLLLRLLRRRLRLLRRRLRRRRLRRRRRRRLLLRRLRLRRLRLRLRRLLRLRRLRLRLRLRRLLRRLRRRLRLRLLLLRLLLRRRLLLLRRLRRRRLRRRRRRLRLLRLRLLRRLLRLRRLRLLRLRLLRLLLLRLLRRLLRLLLLLLLLRRLRRLLLLLLLLLLLLRRLLRRRRRRLLRRLRRRRLLRRRLRRLLRRRRRRRRLRLLRLLLLRRLRLRRLLLLRLRLRRRLLRLRRRLRRLLRRLLLLLLLRLLLRRRLLRLLLLLRRRRLRLRRRRLRRRLRRLLLRLLRLRLLRLLRRLRLRRLRRLRLRLLLRLLRRLRLLLRLRRLRRRRLLLRRRLRLLLRLRLLLLLLRLLRRLRLLRRLLLRRRRLLRLRRLRLRRRLLRLRLLRLRRLLLLRLLLLLLRLRLLLRRRLRLRRRLRLRLRLLRRRLLRRLLRRRRRRLLLLRLRLLLLLLRLRLRRLLRLLRLLLLLRLRLLRLLRRLRRRLLLRLLRLLRRRLRRLLLLRLRLRRRRRLRRRLLLLRLLLLLRRRRRLRRRRLRRRRLLLLLRLLLLLLLRLRRRLLLRRRRRRLRLLRRRLRRRLLLRLRLRRRLRLLRLRLLLRLRRLRLLRRRLRLLLLLLRLLRRRLRLLLLLRRLLRRLLRLLRLRRRRLRLRLRLRLRRRLRRLRRRRRRLLLLLRLLLLLLLLRRRLLRLRLLRRLLRLLLLRRLRRLRRRLRRLRRLRRRLLLRLLRRRLRLLLRRRLRLRLLLLLRLRRLRRLRRRLRRRLLLLRRRLLRLRRLLRLLLRLRLLLLLLRRLRLLRRRRLLRRLLRRLRLLRRLLRRRRLRRRLLLRLLRLRRRRLLRLLRLRLRLLLLRLRRRRRRRRLRRLLRLLLRRLLRRLLRRLLLLLRRLRRLLLRRLRLLRRRLLRRRLLLLRLRLRLLRLLLLRLRLRRLRLLLRRRLLLRLRLLRLRLRRRRRRLRRLRLLLLRRRLRRRRRLLRRLLLLLLLLLRLLRRRLLLRLLRRRRLRRLRLLLRLRLRLRLLLRLRLLRRRLLRRLLRRRRRLRRLLLRLRRLLLLRLLLLRLLLRLRLRRLLRLLLRRRRLRRLRRLLRLRRLLLLLLLLRLRRRLLRLRLLRRRLLRLRLLRLLRRLLRRRRRLLRLLRLLLLRLLRRLLRLLLLRLLRRRRRRLRLLRLLLRLRRLLRLRRRRRLLLRRLRLRLRRRLRLLLLRLLLRRLLRLRRLRLRLLRLRRLLRRLLRRLLLRRLRLLLRRRLRRLRLLLLLRRRLRRRLLRRLRRRLLRLLLLLRRRRLRLLLRRRRRRRLRLLLLRLLLRRRRLRRRLRLRLLLLRLRLLLRLRRRRRLRLRRRRRLRLRRRLLRLRRLRRLRLLLLRRRLLLRLLRRRRLLRLLRLLRRLLLRRLLRLLLRRLLLLRRLLRRLLRRRRLLLRRRRLRLRLRLLLRRRRLLLLLRLRLLLLRLRRRRRLRLRLRLRLLLLRRLLLRLLLRRRLLLLLLRRLLRRLLRLRRRRRRRRLLLLLRRRRRLRRLRRRLLLRLLLLLLRRRRRRLLRLRRLRRRRLLRLLRRRLLLLRLLLRRLLLRLRLRRLLRLRLLLRLRLRRRLLLLLLLLLRRRRRLLRLLRRRLRLLLRLRLRRLLLLRRLLLLRRLRRLRRRLRLLLLRLLLLLRLLLRRLRLLRLLLRLLRLLLLLRRRRLLLLRRRLRRLLLLLRRLRLRRLRLLRRLLRLRLLLRRLLLLRRLRLRLRRLLRRRRLLLLLRRLRLRLRRRRLLRRLLRRRLRLLRRRLLRRLLRRLRRLLRLLRLLRRRLLRLRLLLRLRRLRRRLRRRLLRRRLRLLLRLRLRRRLLLRLRRLLRLLRLLRRLRRLRLRLLRRLLLRRLLLLLRRLLRLRLLRRRRLLRLLRLLRLLLLLRRRLLLRRRLRRLRLLRRLLRRRLRRLRRRLRLRLRRLLLRLRLLRLRRLLRLRLRRRLRRRRLRLRRRRLRLLLRLRLRRRRLRLLLLRLLLRRRLRLRRLRRLLRLRRRLRLLRLLLLRLLRLLLRRRLLRLLRLLRRLRRLLLLRRRLLLLRRLLLRRLLRLLLRLRLRRLLLRLLLRRRLLRRRLRLRRLRRRRRRRLLRLRRRLLRLRRRLRLLRRLLLLLRRLLRLLRLRLLRRRLRLRRLRRRLRRLRRLRLRRLRRRRRRLLLLRRRRLLLLRRRRLRLLRRRLRRRLLLRLLLLRRRRRLRRRLRRLLRRRLLLRRLLRLLLLLLLLRLRLRLRRRRRRRRLLRRLLRRRLLRRLRLRLLLLRRRRLLRRLRRRLRRLRRLLLLRRRLLRLLRRRLRRLRLLLRLRLLLLRLLRLLLLLRRLLRRLLLLRLLRLRRRRLLLLLLLRRRRLLLLRLLRRLLLLRLLRRLLRRRLLLRLRRLLLLLRRRLRRLLRRLLRLRLRLRRRRRRLRLRRLRLRRLRLRRLRLLLRLLRRRLLRLRLRRRLRRRLLLRRLRRRLLLRLLRRRLLRLLLLLLLLRLLLLRLRRLLLRRRRRLLLRRRLRRRLRLLLRRRRRRLLRLLRLRRLRLRLRLRLRRLLRLLLLLRLRLLRLRRLLRRLRLLLLLRLLRLRLRLLLLLRLLLRLLRLLLRRLRLLRLRLLRRLLLLRRLLLRLLRLLLLLRRRRLLRLRLLLLLRLLRRLLLLLRRLLRRLLLLRRRLRRRLRRRLLRLRRLLLLRRLLRRRRRRRRLRRLRLRRRLLLRRLLLRRLRRRLRLLRRLLRLRRLRRRLLRRLLRLRLLLLRRLLLLRLLLLLLRLRRLLLLRLLRLRRLRRRRRLLLRLLLLRRLRLRRLLRRLRLRRRRLLLLLLLRRLRRRLRLRRRRLRLRRLRRRRRLRLLRRRLLRRRRRRRLLLRRRRLRLRRRLLRLLLLLLLLRRLRRRRLLRRRLLLRRRRRLRLLRRLLLRRRLRLRRRLLRLLRLRLRLRLRLRLRLLLLLLRLLLLRRLRRLLLRRRRLRLRLRLLLLLRRLLRRLLLLLRRRLLRLRLLLLLLLRRRRRLLLLLRLLRLRRLRLRLRRLRRRRLLRRLLRRLRRRLRLLRRLLRRLLLLLLRRRLRLRRRRRRRLLLRLLRLLRRLRLRRLLLLLRLRLLLRLRLRLLRRRLLLRRRLRLRRRRLLRRLLLLRRLRLLLRLLLLRLRRRLLLLLLRRRRLRRRLLRLRRLLRLLRRRLLRRRRRLLRLRRRLRRRLRRLLLRLLLRRLLRLRLRLLLRRLLLLRLLLRRLLRRRRLLRRRLLLLLLRRRRLRLLRRRRLRRRRRRRLRLRRLLRRRRRRLLRLLRLLLLLRRRLRLRRRLRRRLRLRLRLRLRLRRRRLLLRRLRLLLRRLLLLLLRRLLLLRLLLRLRRLLRRRRLRLLRLLRRLRLLRLRLLLLRRLLRLLLLRRRLRRLLRLRLRLLRRRRLLRRRLRLLRLRLRLRRRRRRLLRLLRRRRRRLLRRRRLLLRLRLRRRRLRLLLLRLLRLLLRLLLRLRRLRRLRLRLLLLLLRRRRLLLRRLRRLRRLRLRRRRLLRLRRRLRLLRRRRLLRLRLRRLLLRLRRLLLRRRLRLLLRLRRRLRLRLRRLLRLLRRRRLLRRRRRRRLLLRRLLRLLLLLLRLRRLLRLLRLRRRRRRLRRRLRRLRRRRLLLLRLRLRLRRRLLRRRRRLLRRLLLRRLLLLLLRRLRRRLLLRRRRRRRRLRLRLLRLRLRLRRLRRLRLLLRRRRLLLLRLRLLRRLLLRLRRLRRRLRLRRLLLRLLLRLLRRLRRLRLLLLLRRRLRLRRRLLLLLLLRLRRRLLLLLRLRRLLRLRRLRLLLRRLLRRLRLRLLRLRRRLLLLRRLLRLLLLRLRLRLLRLLLLRLLLLLRLLLRLRLLLRRLRLRRRRRLRRLLLRLLRLRRRRRRRLRLRRLLRLRRRLLRRLLLLRLRRLRRRLRLLRLLLRLRRLLLRRRRLRLLLRRRLLLLLRRRLLLRRRRLRRRLRLLLLLRRRRLLLLRRRRLRLLRLRLRLRRLRRLRLRLRLLLRLRRRLRLLRLRRRRRRRLLRLRLRRRLLRRRLRRLRRLLRLLRRLRLLLRRRLLLRLLLLRLLRLRRLRLRLRRLLLRRRRLLRRRLRRLLRRRRRRLLRLLRLRLLLLLRLLLLRRLRLLLRRRRRRRLLRLRLRLRRRLRLRLRLLLLLLLLLRRRRLRRLLRRRRLLLLLLLLLRLLLRRRLRRRRLRLRLLLRLLRLLRLRLRLLRLRRRLRLRLLLLRRRRRLLRRLRLLRLRRLLLLRLRLLRLLRRRLLRRRRRLRLRLLRRRLLRLRLRLRLLLLLLLRRLRLRLLRRLLLRLRRLLRLLLRLLRRLRLRLRRRRLLLRLRRLLLLLRRRLLLLLLLRLLLRRRRRRRLLLLLLRLLLLLLLRLLRLRRRRLLRRRLLLLLLLRLRLRLRRRLLRLLLRRRRRLLRRRLLLLLRRRLLRRLLRLLLRRLLLLRLRLLRRLLRRLRLLRLLLLRLLLLLRLRLLLRLLRRRRLLRRLLRLLLLRLLRLLLLLRLLRRLRLLLLLRRLLLRLLLRLRRRRRLRRRRRRRRLRRRRRRRRLRRLLLRLLRLLLLRLLLLRRRRRLLLRLLLLLLLRLLLRRRLLLRRRRRLLLRRLLLLRLRLLRRRRLLRLLLRRRRLLRLRLLLRLLLRRLRLRRRLRLRRLRLLLLLRLLLRLRRLLLRRRLRLRLRLLRLRLLRRLRLRLLLLRRLRLRLLRLRRRRRRLLRRLLRLRLRRLLRRLRRLLRLLLRRLRLRRRRLRLLLLRLRLRRRLLRRLLLRRRRLRLLLLLLLLRLLLRLLRRRLRLRRLRLRLLLRLRLRLRLLRRLLLLLRRLLRRRLRLLRRRLLLLLLLRRRLLLRLLLLLLRLLRRRRLRRLRRRRRRLRLRRRRLLLRRRLRRRLRRLLLRRLLRRRRLRRLRLRRRRRLLLLLLRLLRLLRLRRLLRRLLRRRRLLRRLLRLRLRLRLLRLRLLLLRLRRLLLRRLRLRRLRLRLLRLRLRLLRRLRLRRLRRRLLRLLRRLLRLRLLRRRLLRLLRRLRLLRLLRRLRRLRLLLRLRLRRRLRLLLLRLRRRRLRRLRRLRRRRRLRLLLLRLRLLLRLRRLRLRRLRRRLRLRRLLRRLLLRLRLLLRLRRLLLLLRLRLLLLLRRRLLRRRRRRRLRLRRRRRLLLLLRRLLRRLLLRRRLLRLRLRRRLRRLLRLRLRLRRRRRRLLRRRLRRLRRLLRRRLLRRRRLLRRRLRLRRRRLRRLLLLRRRRRRLLLLLRLRLLRLLLRLRLLLRRLLLRLRRRLLRRRLLLRRRRLLLLRRRRRRLLLRLLLLRLLRRRRLRLLRLLRRRRRRLLRRRRLRLLLRLRRLLLLLRRRRRLLLLLRRLLRRLLRLLRRLLLRRLLRLLLRRRRLLLRRLLLRLRRLLRRRLRRLLLLLRLLRLRRLRLRLLRLRRRRRRLRLLRRLLRLRLRLRRRLLRRRLLLLLLRRLLRLRLLRLLLLRRLLLLRLLRRRRLLLRRRRLRLLRLLRLLRRRLRLRRRRLLLRRLLRLLRRLRLRRLLRLRLLRRRLLRLLRLRRLRRLRLLLLLLLLRLLRLRRLRLRRRRRLRLLLLRLRLRLLLLLRLLRLRRLLRLLLRRRRLLRLRLRRLLLRLRRRRRLRLRLRLRRLRLLRLLRRLRRRLRRLRRRLRLRRLRLRLRRLLLLRRLLRLLRRRRLRLLRRRRRLRLLLRLLLRLRRRLLLLLRLLLLLRRLLRLRLLLRLLRLRLLRRRLLRLLLRRRLLLRLRRLRLLRRLRLRLRRLLLRLLRLRLRRRLRLRRRLRRLLLLRRRRRRRLLLRLRLLRLLRLRLLRLLLLRLRLRRLLRLLRRLRLLRRRLLLLRLLRRRRLLLRRRRRRRLRRLRLLRLRLRLRRRRRRRRLLRRRLRRLRRRRLLRLLRRLRRRRLLRRLLLRRRLLRLLRRLRRLRRRRLLRRLLLRLLRRLRRRRLRRRRRRLRRLRRRRLLRRRLLLRRLLLRRRRRRRLLRLLRLLRLRRLLRLLLLLRRLRLLRRRLLRRRRRRLRRLRRLRLLRRRLLLLRRRLLRLRRRRLLLLRLLLLLRLLRRRRRLLLLRRRLLLLLRLLLRLLRRRRRRLRRLRLLLLLLRLRRRLLRLLLRLLRLLLRLRLRLLRRRRLRRRLLLLRLRRRLRLRLLLLLRLRLLLLRLLRRRLRRLLLLRLRRLLRLLRRLLLRLLRLLLRRLRRRLRRLRRLLLLLLLLRRRLRRRLRRLLLLRLLRRRRLRLRRLLRRLRLRRLLRRRLLLLLRRLLRRRRLLLRRLLLRRLLLLRRRRLRLRLLRLRRLRLLRLRLLRLRLLRRLRRRLLRLLRRLRLLRLRLRLRLLLRRLLRLLRLLRRLLLLLLLRRLRRRRRRRLRLRLRLLRRLLRRLRLLLRRRRRRLRLLRLRRLLRRRRRRRLLLRRLRLLRLLRLRLLRLLLRRRRLRRRRRRLLLLRRRLRLLRLLRRLLRLRRLLLLLRLRRRRLRLRRLRLLRLRLLLLLRLRLLLRRLLRLLRLRRLRRLLRLRLLRLLLRLLLRRLLRRRRLRRLRLRLRRRLRLLLRRLRRLLLLLLLLRLLRLLRLLLLRLLLRLLLRLRRRRRRLRRLLLRLLRRRLRLRLRLLLRLRRLLLLRLLRLRLLRLLRLRRRLLLRRLLRLRLRRLLLRRRRLLLLLLLRLLLRRRLLRLRRLLLLRRRRLRRLLLRRRLRLLLLRRRRRRLRLRRRRRLRRLLRLLRRRRLLLLLRRRLRRRRLLRLLLLRRLLLRRLRLLRRRRRLLLRRRLLLLLRLRRLLRLLLRLRRLRRLLRLRLRRLLRRRRLLLRRRLLLLRLRLRRRLRLLRRRLRLRRLLRRLLLRLLRLRLLLRLRRLLLRLLLRLLRRRLRLRLLRLLLLLLRLRLRRRRLLRLRRRLRLLRRRLRRRRLRRRLRLLRLRRRLLRRLLRLLRLLRLRLRLRRLLLRLLLLLRLRRRRRLRLRLRLLLLRRLRRLLRLRLRLLRLLRLLRRLRLRLLRLRLRLRLRRLLLRLRRLLRLLRLLRLRLRLLRRLLRLLRLLLLLRLLLLRLLRLLLLLLLLLLLLLLRLRRRLRLLRRLLLRLLLLRRRRRRRRLRLRRLLRRLLLLRLLRLLRLRRLLRLLRRRLRLRRLRLRRRLRRLRRRRRRLLLLRLRRLLRRLLRRRLRRRRRLRRLLRRLRLRLLRLRLLLLLRLRLLRLLLRRRLLLLRRRLLRLRRLLLLRLLLLLRLRRRRRLRRLRRRRRLRRLLRLLLLRRLLLLRLLLLLRRRRLRRLRLLLLRRRRRLRRLLLRRRLRLRRLRRLLRLRLLRRRLLRRRLLRRLLRLLLRLLRRLLLRLLLRRLRRRLLLLRRLRRLLLLRRLLRLLRLRRRLLRLLLLRRLRLLRRLRLRLLLLLRRLLRLRLRLLLLRRLLRLRRLRRLRRLRRRLRRRRLRRRRRRRRLRLLRLLRRRRRRRLLRLRLRRLLRLRRRLRRLRLLRLLRLLLLRRRLLRRRRLLLLLRLRRLLRRRLRLLLLLLLLLLLLLLLRLLRLLRRLRRRRLLLLLLLLLLRLRRLLLLLLRLRLLRLLRLLRRLRLLLRLRRRRLRLRLRRRRRRRLLRRRLLLLRRRRRLRLRLLRLRRLRRLLLRRRLLRLLRRRRLRLLRLLLLRRLLLLRRRRRRLLRLLRLRLLRLLLRRRLLRRRRRRRRLRRLLRRRLLRLLRLLRLRLRLRRLRRRLLLRLRLLRRRLLLRRLLLLRLRLRLRRLRRLLLRLRRRRLLLLRLLLRLLRRLRLRRLRRRLRLLLRLRLRRLLLRLLRLLRLRRRLLRRRRLRLLLLLLLRLRRLLLRLLRLLLLRLLLLLRRLLRLLLLRRRLRRRRRLLLRRRRLLLRRLLLRRRRRRLLRLRRRLLLRRRRLRLRRLLLRRLRLRRRRLLLRRRLLLRRRLRRLLRRRRRRLLLLRLLRRRRLLRRRLLLLRLLLLRRLLRLLLRLRLLRLLLLLLRLRRRRLRLRLRRRLLRLLLRRRRLRLLLRRRRRLLRRRRLRRLRRRLRLLLRLRRLLRRLLLLRLLLRRRLRRLRRLLLLLLRRRRRRLLLLLRLLRRLRRLRRRLLRRRRLRLLRLRRLRLLLLRRRRRRRRLLLRRRRLRLRLRRRRLRRRLLRLLRLRLLLLRLRRRRLRRRRRLLLRRLLLRRRLLRRRRLRRLRRLRRRLRLLLRLRRLLLLLLRRRLRLLRLLRRRRRRLLRRLLLRLLLRRLLLLLRLRLLLRLRRLLLLLLLRLRLRLLRRLRRRRRLRRRRRRRRLRLRRRLRRLRLLLRRLLRLRRLRRRLRLRRRRRRLLRRLRLLLLLLRLLLRRRLLLLLLLRRRRLRRRRLRLRLLRLRLLRRLLLLLLRRLLRLLRRLRLLRRRLRRLRRLRLRLLLLRRLRRLLRLLLLRLRLRLRLLRRRRRLLLRRLRLRRLLRLRLRRRLLRRRRRRRLRRLRLLLLRRLRLRRLRRLRLRLRRRRRRLRLRLRRLRLLLLRRLRLRLLLRRLRLRLLRRLRRLLLRLRRRRRLRRLRRLLLRLLRLRRLRRLRRRRLRRLRRLLRRRLRRLLRLLRLLLLRRRLLRLLLLLLRRLRLLLRLRLLLLLRLLRRRLRLLRRLLRRRLRLLLRLRLLLRRRLLRRLRLRLRLLLRLLLRLLLLLLLLLLRLRLRLRRRRRLRLRRLLRRLRRRLLLRLRRRLRLLLLRLLRLLRRLLLRLRLRLLRLLRLLRLRLLRRRRLLRLLLRLRRLRLLRLRLRRRRLLLRLRRLRLRLLRLLLLLRLLLLLRRRRLRLLLRLRRLRLLRLLRLLLRLLLLRRRRRLLRRRLRRLRLLRRRRRLLLLLRLRLRRLLRRLLLLLLRRLLRRRLRRLRLRRRLLLLLLRLLRLRLRLLRLRLLLRLLRRLRLLRRRLRLRLRLLLRLLLRRLLRRRLLLLLLLRRLLLLLLLLRRRLRLRLLRRRLRLLLLRRLRRLRLRLRRLLRLLRRLRLRLLLRRLRLLLRRRRRRLLLRLLLLRRLLRRRRRLRRRLRRLLRRRRRLLLRLLLLRRRRLLRLRLRRRLLLRRRRLRRRLLRLLRLRRRLLRRRRRRRRRLLLRLRLRRRRLLRRLRRRRRLLRLLLRRLRRRRLLRLRRRLLRRLLRRLLLRRLLLRLRRLRLRLLRRLLLLRRRLLRRLRLLLRLLLLLLRRLLLRLRRRRLRLLLLRRLLLRLRLLLLRLRLRRRLRRRRLLLLLRRRLRRRRRLLRRLLRRLLRLRLLLLRRLRLLRRRRLRLRRLRRLLRLRLRLLLLLRLRLLRLLLLRRLRRRLRRLRRLRLLLLRLLLRRLLLLLLLLRRRLRLLLRLLLRRRLLLRLRRLLRLRRLLRLLRLRRLRRRLLRLLRLRLRLLLLRLLLRLRRRRRRRRRLRRLLRLLLLRLLRRLRRLRRLRLLRLRRLRLLLLRLRLLLRLRRLRLRRLRLLLRRLRLRRLRRLRLLRLRLLLLLRLRLRLLRLLRLRRRRLRRRRLRRRRRRLRRRLLRRRLLRLRLLRLLRRLRRRRLLRRLLRLLLLRRLLLRRRRLLLLLLRRRRLRLRLLRLRRLLRRRRRRRRLRRLLRLRRRRLRRLLRRRLRLLLRLRRLLRLRRRLLRLLRLLRLRLLLRLRRLLLLRLRRRRRLLLRRLLRRLLLRRLLLLLRLLLLLLRRRRRLLLRRRRRLLRRRRLRLRLLRLLRRRRLLLLLRLRLLLLRLRRRRRRLLRLRRRLLLLRLRLLRLLRLLRLLLLLLRRLRRLRRRRRRRRRRLRRLLLLRRRLLRLRLRLRLLLRLLLLLRRRRRRRLLRLRRLLRRRRLRLRLRRLRRLRLLRLRLLLRLLLLRLLRLRLRLRRRLLRRLLRLLRLLLRRRRRLLRLRRRRLRRLRLLRRRRLLLRRRLLRLLLLRRLRRRLLLLLLRLLLLLRRLLRRLRLLLLRLLLRRLLLLLRRLLLLLLRRRLRLLLRRLRRLLRRLLLRLRRLRRRRLLLRRLRLRRLLRLRLRLLRRRRLLLLLRLLLRLRLRLRRLRLLLLLRRLRLLRRRLLRLRLRLLRRLLRLRRLLLLRLLRRRLLRRLRLLLRRRRRLLLRRRLRLLLRLRLRLRRLLRLLRLLLLLRLRRRLRRLRLRLRRLLLRRRRRLLRLLRLRRRLLRRRRRLRLLRRLRLRLLLRRRLLLLRLLRLLRLLRLRRRRRLRLLRLLRRLLLRLRLLRLLLLRLRRLRRLLRRRLLLRRLLRLRLRLRLLLLRLRRRRRRLRRLLLLLLLLRLLLRRRRRRLLLLRRRLLRLRLLLLRLLLLLLRLRLLLLRRLRRRLLLLLLRRLRLLLRRRLRLRRRRLLLLRRRLRRLLLRLLLRRRLLRLRLRLLRLRRRLRRRLLRLRLRLLRLRRLRRLRRRLLLLRRRLLRLLLLRLRRRLLRLLLRRRLLRLLRRLRLLRLRRRRRRLLRLRRRRLLLLLRRLRRLLRLRLRRLLRRRLLLRRRLRLRRRRLRRLLRRRLLLRRLLRLRLRLLRRRRRLLLRRRRRRRRLRRLLLRRRRLRRLRLRLLLLLRRRRLLRLRLLLRRLRRLLLLRRRLLLLRRRRLRRLRLLLRLRLRRLRLLLRRLLRRRRLRRLRLRLRRRRLRRRLRRLRRLRRRRLRLLLRRRLRLRLRLLLLLLLRRRRRLLRRLLLRLRRRLRRRLRRLLRRLRLLLLRLRRRRLRLRRLRRLLLRRLRLRLRLLLRRRLLRRRRRRLRRLLRRRLRRLRLLLRRLRRRLLRRLLLLLRLRLLLRRRLLLRLRLRLRLLLRRRRLRRLRRLLRRRRRRLLRRLRRRRRRLRLLRRLRRLRRLLLLRRLRLLRLRRRLLRLLRRLLLRLRRLRLRLLRLLRLRLLLRRLLLRRLRLLRLRLRLLLLRLRRLLLRLRRLLRLLRLRLLLRLRLLRLLRRRRLRLLLLRRLLLRRLLLRRLLLRRRRRRLLRRLRLRRLLRLLRLRRRRRRLRRRRLLLLLRLLRRLLRRLRRRLLLLLLLLLLRLLRRRRRRRLRLLLLLLLRRRLRLRRRLLLLRRRRLLLLRLLLLLLLRRRLRLLLRLLLLRRRRLRRLLRRRLLRRRLLRLLLLLRRLRRRLRRRLRRLLLRRRRRRRRLRLLRRRLLRRRRRRLLLLRRRLLRRRRLRLLRLLLLLLRRRLRRRRLLRRRLLLRLRRRRRLLRRLLLRRRRRLRRLLRLLRRRRLLLRLRLRLRRRLLLRRLLLLRRLLLLLLLLRRRRLRLLLRLLLRRLLRRLRLLLRRRLLLLRRLLLRRRRRRRRLLLLLRRLLRRRLRLRLLRLRRRRLLLRLLRRRRRRLRLRRRLLRRLLLLLLRRRRRLRLRRRRRLLLRLLRRLLLRRLRRLLLLRRLRLLLRLRLLLLRLRLLLRRRRRLRLRLLRRRRRLLRRLRLRLLLRLRRLRRRRLLRRLLRLRLRRRLLRLLRLLLLLLRRRLRLRRRLLRLLRLRRRLLRLLRLRLLLRRLLRLLLRLLRLRLRRLLLLRRRLLLLRRRLRRRLLRLRLLRRRRRLRRRRRLLRRRRRRLRLRRRRRRRLRRRLRRLRRRLLLLRRLLLRRRRRRLLRLLLRRRLRLRRRRLLLRRLRLRLRLLLLLLLLLRLLLLLLLRRRLLLLRRLLRLLLLLRRRRLLRLRLLLLLRLLRLLLLRLRRRLRLRLRLRLLLRRRLLRRRLRLLLLRLRLRLLRRRLLRLRLRRLRRLLLLRLLRRRRLRRRLRLLLLLLLLLRLRLRLLRRLRRLRLRRRRLLLRRLRRLRLLLRRRRRRRLLLLRRLRLLLLRRRLLLLRRLRLLRLRLRRLRLRRRRRLLLRLLRLLRRLRLRLRLLLRRLRRLLRLRLLLRRRRRRRRLLLRLLLLRLLLRRLRRLRRLLRLRRRRRRRRLLLRRLRRRRLRLLLLRRRLRRRLLRRRRRRLLRLLLLRLLLLLLLLLRRRLLLRRRRLRRLRRLRRRRLRLLLRRRRLRLLLLRRRLRLLLRLRRLRRLLLRLRRLRRRLRLLRLRRLRLRRRLRRLRRLRLRLLRRRRLRRLRRLRRLLLLLRLRRLLLLLRLLRLRRLRRLLRLRLRRLRRLRLRLLRLRRRRLRLRRLLRLLRLRRRLRRRRRLLLRLLLLLRRRLRLRLLLLRLRRRRLLRLRRLLLRLLRLRRRRLRRLRLRRRLRLRRRLLLRLLLLRLLLLRLLLLRLRRLLRLLRRLLRRRLLRLRRRRLRLRLLLLRLLLRLLLLRRRLRRLLRRRRRRLLLRRRLRLRLLLLRLLLLRLRRLLLLLLLLLRRLRRLRRRLLLRRRRLRLLLRRLRRRLRLRRLRRLLRRRRRLLLLRLLLRRRLLLRLLLLRLLLLRRRRLRRLRLLLLRRRLLRLRRRRLLLRLLLLLRLRLRLRLLRLLRLLLLLLLRLRLRRRLRLRLLRRRLLRRRLLRRRLRLLLLLRLLLRRLRLRRLRRRRRLLLRLLRLLRLRLLRLLRRLLLRLRLLLLLLLLLRLRLRLLLLLRLLRRLLLLLLRRLRLLRLLRLRLLRRLLLRRLLLLRRLRRRLLLRLRRRRLRLLLRRLLRRRLRLLLLLLLRLRLRRLRRLRRLLLLLLRRLLRLLRLLRRLRLRLRLRLLLLRLRRRLLLLRRRLLLLLLLRLRLRLRRRRRLLLLRLRRLRLLRLRLLRRRRRRLLRRRLLRRLRRRLRLLLLLRLLRRLRRLRRLLLRRRLRRLLRRRLLRRLRLRLLRRRLRRRLRRRRRLLLRLRLRRLLLLRLLLLLRLRLLLRRLRRLLRLRRLLRLLRLRLLLLLRRLRLLRRLLLLLLLLRRLLRLLLRLRLRLRRRRRRRRRRLRLRLRRRLLRRLLLRLLRLLLLRLLLRRLRRRLLLRRLLRLLLLLLLRRRLLLRLRRRRRRLRRLLLRLLLLRRRRLLLLLLRLRRRRRRRLLLLLLRLRLRLLRRLLLRRLRRLLLRLLLLRRRRLLLLLRLRRRLRLLRLRLLLRLRRRLLLLRRLRLRRLRLRRRRRLLLRRLLRLRLRRLRRRLRRRLLLLLRLLLRLLRRRLLLLLLLRRRRRLRRRLLRLRRLLRLLLLLLLLRLLLRLLRRLLLLLRLRLRLLRRLRLRRLLLRLLLLLLRRLRRRRLRLLRLRLLLLLLLRRLRLRRLLLLLLLLLRRRRLRRLRLLLLRLLRRLRLLLRRLRLRRRLRRRLRRRRRLRRLRRRLRLLRLRRLLLLLRRLLRLRRRLRRLRRLLLRRRRRRRLLRLRLLLRLRLLLLLLLRLLRRRRRRLLLRLLLLRRLRRRLLLLRLRRLRRLLRRLLRRRRLLLRLLLRRRLRRRLRRRLRLLRLLRLRLLLRLLLRLRLRRLLRLLLLRLRRRRLRLLRRLRLRRRLRLLLLLRRLLLRLRRRRRRRLRRRRRRRRLLRRRLRLLLLLLRLRRLLLLRRLRLLLLLRLRLLLRLRRRRLRLRRRRLLLLRRRRLLLRLLLRRRLLLLRLRRRLLRLLRRRLRRRRLRLRRLRRRLRRLRRLRRRRLRRRRRLLRRRLLLLRRRLRRLLRRRRLRLRLRRRLRLLRLRLRLLLRLLLRLLLLLLLRRLLRLRLLLRRRRLLLRRRRRLLLLLLLRLLLLRRRRRLLRLRLLRRRRRLLLRRRRLLLLRRLRLLRLLLLLLRLLLLRLRRRLRLLLRLRLRRRLRRLLRLLRRLRLLLLLRLLLRLRRLLRLLLLRLRRLLRLLRLRLLRLRLLRLLRRRRRLLRLRRLLRLLLRLLRRLLRRRRLRLLLRRLLRLLLLRLLLLRRLLLLRLLLRRLLRRRRRRLRRRRLLRLRRRRLRLRRLRRLLRRLRLLLRRLRLLRRLRRRLLLLRRLRRLRRRLRRRRRLLLLLLRRRLLRLRRLLRRRRLRLRLLLLLLRLRRLLLLRLLRLRRRRLRLRRRRLRLLLRLRRLLLRRRLRLRLRLRLLLRRLRLRRLLRRRRRRRRRLRRLLRLLRLRLRLRRLLLRRLLLRLRRRRRRRLLLRRRRRLLLLRLRRRLRRRLLLLLLLLRRLRRLLRRRLLLRLLRRRLLRRLRLRLLLRLRRLLRRRRLRRLRLLLLRLRRLLLLLRRLRLRRRLLLRRLLLRRRLLRLRRRLRRRRRLRRLRRLLLRLRRRLLLRLLRRRLLRRLLRLLLLRRRRRLLRRLRLRRRLLRRRRRLRLLRRRRLLLRRRLRRLRLRRLLLLLRLRLLRRRRRLRLLRRRRRRRLLLRLLLLRRLRLLLLRLRRLLRLRRLRRLRLRRLLRLLRRRLRRRRRLRRLLLLRLRLRLRRLRLLLLLRRRRRRRLLRLLRLRLLRRRLLRLRLLRRRLLRRRRLLRRRRRRLRRLRLLRLLLLRRLLRRRRRLLLRRRRRLLRRLLRLLLLLRRRLRLLRRRLRLLRRLLRLRRRLRRLRRRRRRRRRLRLRLRRRRRLLLLRLLRRRRLRRLLLLLLRLRRLRLLLLRLRLRRRRRLRRLLLRRLRRLRLRRLRLRLRRLLRRRLLRLLLLLLLRRLRLLRRRLRLRLRRLLLLRRLLLLRLLRLLRLRRLRRRLLRRLLLRRRRLLLLLRLRLRRLLRLLRRRLRRLLLRRLRRLLRRLLRLLLRRLLLLRLRRLRLRLLRRRLLRLLRLRLLRRRRLRRRRRRLLRRLLRLRRLRRRRRLRRLLRRLLRLLLRLRRLLLLLLRRRLLLLLLRRLRLRLLRLLLRLRRLRLLLLRRRRRLRLRRLRLLRRLRRLRRLLLRLLLLLRLLLLRRLRLLLRLRRLRRRRRRLLLLRLLRRLLRLRRLLLLLLLLRLRRLLRLRLLLRRRLRLLLRRLLRLLLLLLLLRLRLRLLRLRLLRRRLRLLLRRLLLRLLLRRLLRRRRLRLLLLRLRRRRRLLLRRLRRLRRRLRLLRLLRLLRRLRLRLRLRRLLRLLLLRRRLRRLLLRLLRRLLRLRLLLLLRRLRLLRLLLLLLLLLRRLRRRRLLRRRRLRRRRLRRLLRRRLLLRLLLLRRLLLRLRLLRLRRLLLLRRRLLRRLLLRRLLRRLLLRRRLRRLLLLRRRRLRRLRRLLRLLRRLRRLLLRLLRRRRLRRLLLRRLLLRRRRRRRRRRRLLLRRLRLLLLRLRRLLLLLRRLRRLLLLRRLRLRRRLRRRRRLLRRRLLLLRLRLRLRLRLLRLRLLLRRLLRRLLRRLLRLRLRRRLRRRLLRLRLRLLLLRLRLRRRRLLLLLRLLRRRRLLLLLLRRRLRLRLRRLRRRRRRRRLRLRRLRRRLLRLLRRLLLLLLRLLRLRRRLLRRLLRLLLRRLRRLRLRLRRLLLRRLRRLLRLRLRRLRLLLLLLRLRLLLLRRRLRRRLLRLRLRLLRLLRLLRLLLLLLRLLRLLLRLLRLRRLLRRRLLLRLRLRRLLLLLLLLRLRRLLRRLRLRLRLRLRLRLLRLRRRRLRRRLLRLLRRLLLLRLLRLRRLRRLLRLLRLRLRRLRLRRRRLLRRLRRRRRRLLRLLLRRLRLRLLRLRLRLLRRLRRLLRRLRLLLLRLRLLLLRRLLLRRLLLRRLLRLLRRRLRRLRRLRLLRLLRLLRLRRRRRLRLLLLLRRRRRRLRLRLLRRLLLLLLRRLLLRRRLRLLLRLLRRRRRRLRRLLLRRRLRLRLLRLRLLLRLRRLRLLLLRLLLLRLLLLLRLLRRRLRRLRLRRRRRRLLRLRRLRRLRLLRLLLRLLRRRRRLLRRRLLLRLRLLRRLRLRLLRRLRLRLRLLLLLLRRRLLRRRRLLRRLLRLRLRLLRRRLRRLLRRRRLRLLRLLRRRRRRRRLRLRLRLRRRLRLRLRRLRRLRLLLRLRLRLRLRRLRRRLLRLRLLLLLRLLLRLLLLRLLLLLLLRRLLLLRLLRRLRRRRLRLLLLLLLRLLRLLRLLLLRRRRLRLRRRLLRLRRRLRRRRLRLRLRLRRRRRRRRLRLLLLLLLLLRRLRRLLLLRRRLRRLRLRLRRLRLLLRRRRRRLLLLRRRRRLLRRRLRRLRLLLLRLLLRLLLLRRRRLRRRRRRRRLRRLLLRRLLLLLRLLRLRLRLRRLRRRLRLLLRLLRRRRLLRRLLLRRLRLRLRRLRRLLLRLRRRLLRRLRLLLRLRRRLRLRLLRRRLRLLRRRLLLLRRLLLLRLLRRRRRLLLRRRLRLLLLRLLRLRRRRLRLLRLLLLLLRRLRRRRLLLRLLLRRLRRRRLLLLRRRRRRRRLLLLLLRRRRLLRLRRRLLLRRRLRLLRLLLLRRLRLRRRLLRLLLRLLRRRRRLLLLLRRRRRLLLLRLRRRRRLLRLRRLLLRLRLRLRLRRRRLLLLLLRLLLLRRRLRLRRLRLLRRRRLLRLLLRRRRLRRLLRRRRRRRRRLRLRRLRLRLRLLRRLRRRLRLLRLRLLRLRRLLRRRRRLLRLRLRRRRRRRRLLLRLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRRRLRLLLLRRLLLRLLLRRLLLRRRLRRLRLLRLLLLRLLLRRLRRRRRLLLLRLLRLLLRRLRRRLRRLRRLRRRRRLLLRLRLLRLLLRRRRLRLLRLLLRRRLLLLLLLLRLRLLLLRLLLLRRRLLLRLRLRLLLLLLRLLLLLLLRLRRLLRLLRRLRRLRLRLRRLRRRLLLLLRRRLLLLLRRRRRLLRLRRRLLLLRLLRLLRLLLLRLRLLLLLLLLLRLRLLLRRLLLLRLRRLLLRRRRLLLLLRLLLLLLRRLRRLRRRLRRLRRRRRRLRRLLLLRRLLRRLLLRLRLRLLLLLLRLRLLLRRRRLRLLRRLLLLRRLLLRRRLRRRRRLRLRRLRLLRLRRLRRLRLRLRRRRRRRRLRLRRLRLLLLRRRRLLLLLRRLRRRLRRRLRRLLRRRLLRRRLRLRRRLLRRRRLLLRRRRLRRRLLLRRRRRLRRRRRRLLRLLLRLLLRLRLLRLLLLLLLRLRLLLRRRLRLLLRLLRRRLLRRLRLLRRRLLLRLRLLLLRRLRRRRRLRLRRRLLRRRLRRRLLLLLLLRLRLRRRLRLRRRRLLRRRLRRLRRRRLLRLRRRLRRLLLRRRRLLRRRLRRLRLRLLRRLRLRLLRLRLRRRLLRLLLRLRRLRRLLLRLRRRRLRLRLRLLRLRLLLLLLLRRLLRLLRRRLLRLLLLRLRLRLRRRRLLLLRLLLLRRRRRRRRRRLRRRLLLRRLRRLLRLLRLRLLLLLRRLLLLLLRLRLRRRRRRLRLRRRLRRRLLRLLRLRLRLRRLRLLLRLLLRRRLLRRRLRLRLLLLLRLLLRRRLRLRLLLLLRLLRLLLLLRRLRRRRRLRLLRLRLRLRLLRLRLRLRLRLRLLLLLLRRLRRLLRLLRLLLLLRRRRLRLLLRRLLLLRLLRRRRRLRRLLRRRLRLRRRLLLRLLLLRRRRRLRLRLLRRLLLLRLLRRRRLLLLLLLRLRRRLRRRRLLRRRRLRLLLLRLLLRLRRRRLRRRLRRLRRRLRRLRLLLLRRLLLRRLLRRLRLLRLLLRLLRLLLRLLLRLLRLRRLRLLLLRLLLLLLLLLLRRLRLRRLRRRLRRLLLRLRLLLLRLRLLRLRLLRLLRRLRLRRRLRLRLLLRLLLLLRLRRRRLRLRLRLLRRLRLLRRRLLRLLLRLRLRRRRLRLLLLRLLLRLRLLRRRRLRLLLRRLRRLRLLRLLLRRRRLLRLLLRLLRRRRLRLRLRLRRLLLLLLRRRLRLRRLRRRLRLRRLRLRLLLRLRLLLLRLLRLRRLRRRLRRRLRRRLRLRLRLRRRLLLRRRRRLRRLLLLLLLRLRLLRLRLRLLRRLRRLRLRRLLLLRRRLRLRRLLRRRLRRLRRLLLLRRRLRLRLLLRRLRRRLRRRRLRRRRRRLRRRLRRRRLLRRRRLRRRRRLRRRRRLRRRLRLLLLRRLLRRRRRRLRRLLRRRLLRLRLLRRRRLLLRRLRRRLLRRLLRLRRRRLRRLRRRRLRLLLLLLRLLRLRRRLRRLLRRLRLRLLLRLRRLLLLRLRRRRRRLLRRLLRLRRLLRLLLLRRLLRRLLRLRRLLLRRLLRRRLRLLRLRLLLLRRLRRRLLLRRLRLLLRRRLRRLRRRRLRLRRRLRLLLRLRRRRRLRLLLLRRLLRRRLRRLRRRRRRRLRRLRRRLRLLRRLLRLLLRLRLLLLRLLLRRRRRRLRLLRLLRRLRLRRLRRRLRRLRRLRLRRLLLLLLRLLLRRLRLRLRLRRLRLLRLLRLRRRLLLRLRRLLRRRRRLLRRRRLLRRLRLLLRRLRLRLLLLRRLRLLRLLLLLRLLRRRRRLRRLRLLLLLRLLLRLRLLRRRRLLRLLLLRLRRLRLRRLLRLLRRLRLRLLRLRLRLRLRRRRRLRLLLLLLLLLLRRLLLLRLLRLLRRRRRLLLRLRLLRRLRRLLRRRRRLLRLRLRLLRLRLRRRRLLLLRLRRRRRLRRRRLRLRRRLRLRRRRLLRLRLRLRLLLRRLRLLLLLLLLRRRRLRLRRLRLRLRRLLLRLRRRLLRLLRRRRRLLRLLRRRRRLRRLRRRLLLRRRRLLLLLRRLLLRRRLRRLRRLRLRRLLRRLLLRLRLRRLLLLRRLRRRLLLRRLLLLRLLLRRRLLLRLRLRRRRRRRLRLRRRRLLLRRLRLLLRRLRLRRRLLRRRRLRLLRLLLRLRLLLRLLRRLLLRRRRRLLLLRRLRRLLRLRRRRLRLLLRRLRLLRRLRRRRRRRLLRLLRLLLLRRLLLLRRLRLLLLRRRRLLRRLLRLLLRLRRRRRRLLRLLLLLLLLRRLRRLLRRRLLRLLLLRLLRRRRLLLRLRLRRLLLRRLRRRLLLRLLLLRLLLRLRLRRLLRRLLLLRLLLRLRRRLLRRLLLRRLRRRRLRRLRRRRLRRLRLRLLRRRRRRLLLRLLLLRRRRLRLLRLRRLLLLRRRRLLLRRLLRRRLRRRLRLLRRLRLLRLRRLRRRRLLLRRLRRRLRLLLRRLRRRRRRLRRRLRLRRRRLLRLRRRLRRLRRRRLRRLLRRRLRLRLRLLLLLRLRRRRRLLRLLLRRLLRLLLLRLRRLLLRLRLLLLRLRRRRLRLRRLRRLLLLRRLRRRRLLLRRRRLRLRLLLRLLLLRRLLRLLRLLLRRLRRRLLLRLLRLLRLRLRRRRRLLLRLLLLLRLLRRRLRLLRRLRLLLLLRRRRLRRLLRLRRRLRLLRRLRRRRRLLLLRRLLLLRRLRRLLRLLRRLLRRLRLLLRRLRRRRRLRRLLRRRLLRLRLRRRRLLRLLLRRRRLLLRRLRRLLRRLRLRLRLRLRLRRLLRRRRLRLRLRRLRRLRRLLLRRLRLLLRRRRLRRRLRLRRLLRLLRLLRRRRRRRRRRLLLLLRLLRRLLRRLLRLLLLLLLRRLRRLLRRRRRLLLRLLLLLLRLRRLRLRRRLLRRRRLRRRLLRRLLRLLLRRRLLLRLRLLLLLLRRLRLLLLRRLLRLLLRRRLLLLRLLLRLRLRRLLRLLLRRRRRRRLLRLLRRRLLRRRRRRLLLRRLRLRLRRRLRRLRLLLRLLRRRRRRLLLLRLRLLLRLRLRRRLRLRLLLRLRRLLRRLRRLRRRRLRLLRRRLLRRRRRRLRRLLLLLLLLLLLLLLRRRRLLLLLRLLRRRLRRRLRLLLRRRRLLRRRLLLRRRLRRLLRLLRRRRLLRRRLRLRLLLRRLLRLLLLLLRLRRRRRLLRRLLRRRLLLLRLRRRRRLRLLRRLRRLLRLLLRLLLRRLLRRLLLRRRRLRRRRRLLLLRLRLLRLRLRLLRLRLRRRLRRRLRRLRRRLLRRLRLRRRLRLRRRLLRLRLRRRLLRLLRLLLLLLRRRRLLRRRRLLLLRLRLLLRLLLRRLRLLLRLRRRLLLRLRLRRRRRLLLRRRRLLLRRRLRRRRLRRRLLRRLRRLRLRRRLLRRRRRRLLRRRRRRRRLRLRLLRLLRRRRLLRRRLRRRRRRLLLRLLRRRLRRLRRRRLLLLLLRLRRRLRLLLLLLLRLLLLRLRLRRLLLLRLLLLLRLLLLRRRLRLLLLLLRLRLRLRLRLRLLRLLRLRLLRLLRLLRLLLRRLRRRLLLRLRRLLLLRRRLLLRLRRLRLLLLLRLRRRRRLRLRLRLLLLLLLLLLLRLRLRRRRLRLRLRLRLLLLRRLRLLRRLLRRRRRRRLRLLRLLRRRLRRLRRLRRRLLRRLLRRLLLLRLRRRLRRRLRLLRLRRLLRLRLRLLLRRLRLLLRLLLLLRRRRLRRRLRLRLLLLRRLLRRLRLLRRLLLLLRRRRRRLLLLLRLRRLRLRRLLRRRRRRRRRRRRRRRRLLLLLLLRRRRRLRLLRRLLLLLRRLLLLRLRRLRRRRLRLLLRLRLLRLRLLRRRLRLRLLRRRLRLLRLLLRLLRRRLRLLRLRRLRRRLRLLLLRLRRLRLLRLRRLLRLRRLRRRRLLLRLRRLLLLLRLLRRRLRRRLLRLRLLRRLLRRLRLRRLRRLRLRLRRLLLLRRLRRRRRRRRRRLRLLRRRLRRRLLLLRLLLLLLRRRLLRLRLLLRRLLRLLRRLLRRLLLRLRLRRLLRRLLLLLLRRRLLLRLLRLRRRRRLLLLRRLLRLRLLRRRRRRLRLRLRLLRLRLRLLLLRRRRRRLLRRRLRLLLLRRRLRLRLLLLRRLLLLLLRRLRLLLRLLRRLRRLRRRLLLLRRRLRLLLRLLLRRLRLRRLLLLLRRRLRRLLRLLLLRRLLLLRLRLLRLLLRLLRRRRRLRLLLLLRRRRLLRRLLLRLRLLLLLRLRRLLRLLRLRRLRLLLLRRLRLRLRLRLRRRRRRLLRRRLLRRRLLLLLLLRRRLLRLRLRRRRRLRLRRLRRRRRLLLRLLRLRRRLLLRRRLRRLLLLRLRLRLRLLLLLRLRRRLRLRRLRRLRRRLLLRLRLLLLLRLRRLLLRRRLRLRLRLRLRLRRRLLRLRLLLRRLRRLLLLLLLRLRLRRRLRRRLLRRLRLRRLLRLRRLLRLLRLLLRLRLLLLLRLRRLLLRRRRLLLLLRLRRRLRLRRLRLLLLLRLRRLRLLRRLLLRRRLRRRLRRRRLRRLRRLRRLLLLLLLLRRLRLLRLLRLRRRLRRLRRLLLRRRRRLRLLRLRRRRRLRRRRRLLLRLRLRLLLLLRLLRLLLLLRLLLRLRLLLRRRRLLRLLRLLLLLRRRRLLRRLLLLLLRRLLRRLRRRLRRLRLRLRRLRRRLRLRRRLRLLRRLRRRLLLRLRRLLLLRLLLRRLLRLRLRRRRRRRLLLLLRRRLLLLLLLLRRRRLRRLLLRLLRLRLRLLRLRLLRLRRRRRRRRLLLLLRLRLLRLLRLLRRLLRRLLLRLRRRRRLRRLRLLRLRRLLRLLRLRLRLRLRRRRRRLRRLLLRRLLRLRLRRLRLRLLLRRRRRRRRRRLRLRLLLRLRLLLRLLRRRLLLRLLLLRRRLLRRRLRRLRRLRRLLLLRLRRRLLLRLLRLLLLLLRLRLLLRRRRRLRRLLRRLRLLLLRLRRRRLRRLLLLLLLRLLLRLRLRLRRLRLRRLLLRRRLRLLRLRLLLLRRLRRLRLLLRRLRLRRLLLRRLRRLRRLLLLRRLLRLLRLRLLLLLLRRLLRLRLRLLRLLRLRLLLLRRRLRRRLRLLRRLRLLLRRLRRRLLRRRLLLLLRLLLRRRLRRRLLLLRLRRLLRLLLRLLLRRLLLLRLLLRRRLRRRLRRRLLLLRRRLLRLLLRLRLRLRLLLLLLLRRRRLRLLLLLLLLLLRLRRLRRLLRRLRRRLLRRRRRLRRRRRRLRRRLRLRRRRLRLRLRLLLLRRLRLLRRLRRLLLRLLLLLLRLLRLRLLLLLLLLRRLRRLRLRLLRLLRLRLLLRRRRLRRLRLLRRRLRRLLLRLRRRRRRRRRLLRLRLRRLRLRRRRLLRLLLLLRLLRRLLRRRRRLRLLLRRRRLLLRLLLRLLLRLRLLLLLLLRLLRLLLLRLLLRLLRLRLRRRLRLLLLLLLRRRLLRRRRRLLRLRRRRLRLRLLRLLRRRLLLRLLRLLRLLLLLLRLLRRRRRRRLRLLLRLRLRRRLRRRLRRLRLLRLLLRLLRLLLLLLLRLLLLLLRRRLLRRLLLRLLLRRLLRLLRRRRRLLRLRRLRRLLLRLLRRLLLRRRLRLLLRRRLLLLLRRLRLRLRLLLLRRLLLRLLRRRRRRLLRRRLLRLRRRLLLLRLLRRLLRRRRLLRLLLRRLRRLLRLLLLLRRLRRLLRRLRRRRLLLLLRLRRLLLRLLRLLRLRRLLRLRRRLLLRLRRRRRLRRRRLRRRRLRLRRRRLRLLRRRLRLLLRRRLRLRLLRRRLLRLRLRRLLLRRRLLRRRRLRLLLRLLRLLRRRLRRLLRRLLRLRRLLLRRRLRLRRRRRLLRRLLRRRLRRLLLLLRLLRRRRRLLLRRRRLRRLRRRRLRLLLRLLRLLRLRRLLRRLRRRRLLLLLLRLLRLLLLRRRLRLRRRLLRLRLLLRRRRRLLLRRLRRRRRLLRLRRLLLLRRRRRRLLLLRRLLLRRRLLLLLRRLRRRRRLRLRLRRRRLRLRLRLRLLRRLRLLLRRRLLRLRLLRLRLLLRRLLLLRLLRLRLRRRRRLRRLLLLLRRLLLLRLLLLLLRLRLRLRRRRRLRRRRRLRLLLRRRRRRRLLRRLRLLLLRLRLRRRRLLLLLRLRRRLRLLLLLLLRLLLRRLLRLRRLRRRLRRLRLLLRLRLRRLRRLRLLRLRLLRRLRRLLRRLLLRRRRRLLRRLLRLLLLLLRRLLLLRRRLRRRRRLLRRRRRLRRLRRLRRRRRRLRLRLLRRLRLRLLRRLRRRRRRRLLLLRRLLRRRRLLLLRRRRRRRRRRRRRLLRRLLRLRLRRLRLLRLRLLRRRRLRRRLRRLLRRRRLLRRRLRLRLLRLLLRRLLRLLRRRRLLRRRRLRLLRLRRLLRRLLLRLLLLRLRLRRLLLRRRLRRRRLLLRRLLRLLRRRLRLLLRRLRLRRLLLLLLRRLRRLLLRLLRLLLRLRRRLRRRLLRLLRRLLRLRRRLRRRRLLRRLRLLRRLLLRLRRRLRLRLRRRLLLLLLRRLRRRRLRLLLRLRRLRLLLLRRRRLLRRRRRRLLRLLLRLLRLLRLLRLRRRLLLLLRRRLRLRLRRLRLLLLRLLLLLLLRRRLRRRLLLRLLLLLRLRRLRLLRLRLRRRLRLRLRLLLRLLLLLRLRRLRLLLLRLRLLLRRLRRLLRRRLRLLLLLRRRRRRRRRLLLLRLRLRRRLLLRLLRLLRRRLRLRLLRRLRRRRRRLRRRLRLLRRLLLRLLLRRLLLRLLRLLLLRLLLLRRLRLRLLRLLLRLRLLLRRRLRRRLRRRRRLRLRRLLLRLRRLLLLRLRLRRRRRLLLRLLRLRRLLRLLRLLRRRLLLRRLRLRRLLLRLLLRRLRLRRRLLRRLRRRLLLLLRLRRLLLRLLRLRRLLRLLLRLLLRRRRRRRLRRRRRLLRLLRLLLRLLLLRRLLLRLLLRLLLLRLLRLRRRLRRRRRLLRRLLLLRRLRRLLRLRLLRLRLLLRRLRRLRLRRRLRLRLRRLLLRRLLRLRLLRLLLRLRLRRRRLLLRLRLRRRLRLLLRLLRRLLRRRLRLRRRLLRRRRLRRRLLRRLRLLLRRRRLLRLLRLLLLRRRLRLRRRRRLRLRLLLLRRRLRRLLRRRLRLLRRLRRRRLRRLLLLLLLRLLLRRRRLRRRLLRRRLRRLRLLLLLRLLLLLLRLRLLRLRLLLRRRLLRRRLLLRRRRRRLRRRLRRLRLRLLLRRRRLRLRLRLRLRLLLLRRLRLRRLLLRLLLRRLLRRRLRLRRLLRLRRLLRLLLLRLLLRRLRLRRRLRRRLLRLRRLLRLRRRLRLLLLRLRLLLRLLLRRRRLLLLRRRLRRLLLRRLLLRLLLLRLLRRLLRRLLRRRRRLRLLLRLRLLRLRRRRLRLLRLLLRRRLRRLRRRLRLRLLRRLLRRLLLLLRLLLRLRLRRRRRRRLRLRRLRLRLRLRLRRLRRLLRLRRLRLLLLLRLLLRLLRRRRLRLRRLRRLRRRRRRLRLRRLRRLRLRRLLRLLLRRRRRLRLLRLRRLLLLLLLLRRRRLLLLRRLLLRLRRLRLLLRRRLLRLRRLLRLLLRLRLRRLLRRLLRLLLRRRRLLLRLRLRLRRLLRRRLRRRLRRRRRLLLLLLLRLRLLLRLRLLLLLRRLRRRRLRLRLLLRLLLLLLLLLRRRLLRRLRRRRLLRLRLRRLLLRLLRRLLLRRLRLRRLLRLLLLRRRRLLLRLRRLRLRRRRRRRRLRLRRRLLLRRRRRRLRLLRLLLLLLLRLLRLLLLRRLLRLLRLRLLRRRLLLRRLRRRLLLRRRLRRLRRRLLRRLRLLLLRLLLRLLRLRRRRLLRRRRLRRLRLRLLLRLLLRLRRLLLLRRRRRRRRRRRLLRRLLRRRRRLRRRRRRRLRLRLLRLRLLLRRRLRRLRRRRRLRLRLRLRRRLRLRRLRLRLLRLRLLLLRRRLRLRLLRRLRLLLLLRRLRLLLLRLLLLLRRRRRLRLRLLLLLRRLRLLRLLLRLLLRRRLRRRLLRLRRRLRRRRLRLLLLLRRRLLLLRRLLLLRRRLRLLLLLLLRRLRLRRRLLRLLLRLLRRRRRLLRRLLRLRRRRLLRRRLRRRLLRLLRLLRRRRLRLLLRRRRRLRLLRRLLRLRRRLRLLLLRRLRRRLRRRRLRRRRLRRRLLRLLRRRRRRLLRRLLRLRRLRLRRLRRRLLLLRRRLRRLRRLLRRRRRLRRLRLRRRLRRRRLLLLLLLRLRRLRLRLLRRLRRRRLRLLRLLLLLLRLRLLLLLRRRRLLLLLLLLRRLLRLRRLRRLRLLRLLLRLLLLRLLRRRRRLRRLLLRRLLLRRLLLRRRLRLRRLLRRRLRRRLLLRRLRLRRRRLRLRRLRLLRLLLRRLLLLRLRLLLLRRLLLLRRRLLLLRLRRLLLRLLLLRLRRLRLRRLLRLLRLLRRLRLRLRRLRRLLLLLLLLRLLLLLRRRLRLRRLRRLLLLLRLLRLRRLRLRRRRLLLRLLLLLRLLLLLLRLLLLLRRLRLLRLLRLLLLLRLRLLLLRRLRRLRRRRLLRRRRRRRRRRLLLLLRLLRRRLRRRRLRLLRLLLRLLLRRLLRLLLLLRRLLLLRRRLLRLRLLRRRRRLRRRRRLLRLLLRRRLRLRRRLLRRRRRLLLLRRRLLLLRRRRRLRRRRRLRRLLRRRRRLLLRRRLLLRRLRLRLLLRRLRRLRLRRRRLLRRLRLLRLRRLRLRRRRLRLLRLRLLLRLRRLLLLLLLLLLLRRLLRRLLRRRRRLRRLLRLRRLRRLRRRLLLRLRLLRLRRLLRRLRLRLLRLLLRRRLRRRLLRLLLRRRLLRRRRRLRRRRLLRRRLRLLRLRRRLLLLRLRRRLLRRRRRRLRLRLRRLRLRRLRRRRRRLRLLRLRRLLRRLLRRRRRRRRLLLLLRRRRLRLRLRLLLLRRLLLLRRRLLRRRLLRRLLRLLLLRLLLLLRRRRLLLRRRRLLRRRLRRRRLRLRLRLLLRRLRRLLRRRLRLLLLLRLRLLRLRLRLRLRRRRRRLRRLRRLRRRLRRLLLLLLRLRRLRRLLLLRLRRRRLLRRLLLLRLRLLRLLLLRRLRLRLLLRLRRLRRRLLLRRLLRRRRLLLRLLRRLRRLLLLRLRLLLRLLLRLLRLRLRRRLLRLLLLLRRRLRRRLRLRRRRLLLLRLLRRRRRLLRLLRRRLLLRRLRLLRRLLLRLRRRLRLRLLRRLLLLLLLRRRLRLLLRLRRLRRRLRLLRLLRRRRLRRLLLRLLRRLRRLRLRLRLRRLRRLLRRLLLLLLRRLRRRLLLRLLRRLRLLLRRLRLLLRRLLRRLRRLRLRRLLLRLLRLLLLLRRLRRRRLRLRRRRLRLRLRLRRLLLRRRLLLRLLLLLLRLLRLRRRLLLLLLLRLLLLLRLRRRRRRRRLRRLRRRRLLRRRLLRRLLRLRLRLRLLLLLRLRLRLRRLLLRRRRRRLLLLRRRLLRRLRLLLRRRLRRRRLLRRLRLRRLRRRRRRLRLLLLLRLRRRLRRLLRRRLRRRRRLLRRLLRLRLLLLRRLRLRRLRRLLRRRLLRRRRLRLRRRRRLRLRLRRLLRRRLLRLLLRLLRLRLLLRLLRLLRRLRLLRLLLLRLLRRRRRLLLRRLRRRRRRLLLRRLLRLRLRLRRLRLRLRRLRLRRRRRRLRRRLRRRLLLLRLRLRRRLLLRLRLRLLLRLLLRRLRRRLRLLLRRLRRLLRRRLLRLRLRRRRRLLLRRLRRRLLRRLRRLRRRLRRRLRRLRLRRLLLLLLLLRLLLLLRLLLRRLRLRLLRRLRLLLLLRLLLLRRRLLRRLRRLRRRLLRLLRRRLLRRRLRLRRLLLRRLLLRRRRLLRLRLLRLRRLRLRLRLRRRRLLRRRRLRRLRRRRLRLRRRLRLRLLLRRRLRLRLLLLRRRRRRLLRRLRRLRLRLLRLLRRRRRRLLRLLRLLRRLLRLRLRLRLRRRLLRLLLRRLLRRLLLLRRLRRLRRRRRLLRRRLLRRLLRLLLRRRRRLRRLLRLRLLRLLRLRRRLLLRLRRRRLRRRLLRLRRRLLRRLLRRRRRLRLRRLLRRRLRLLRLRLLLLLLRRRRRRRRLRLRRLRRLLLRLRLRRRRLLLRLRRLRLRLLRLRRLLRLLRLLRLRLLLRRLRLRRRRRRRRRLLLLRLLLLLRRLLLLRLLRLLRRRRRLLLLLRLLRRLLLRLRRRLRRLRLRRRLLRLRRLRRLRLLLRRRLRLRRRLRRLRLRRRLLLRRRRLRRLRLLLRRLLLRRRLRLLLLLLRLRRLRRRRRRLRRRRLRLRLLRRLRRLLRRRRLRLRLLLRRLRLRRRRRRLLLLRRRLLLLLRRLLLRRLLRRLRLLRLRRLLRRLLLRLRRRRRLRRRRLLRRLRLRRLLRLRLLRRRLLLLRLRRRRRRRRLLLRLRRRRLRRRLRLRLRRLRLLRRLRLLRRLRLLRLRRLLRLRLRLLRRRLRRLRRRLLLLRRRRRLLRRRRRLRRRLLRRLRLLLRLRRLRRRLLLRLLRRLLLRRLRLLRRLLLLLLRRRRLLRRLLRLLLRLRRRRRRRLRLLRLLLRLRRRRRLLRRRLLRLLLLLLLLRRRRLLRLRLRRLLRRRLRRRLRLRLLLLRLLLLLLRLRLLRRLLRLRLLLLLRRLLRLLRLLRLRRRRRLRLRRRRRLRRLRLRLLRRRLLLLLRRLLRLRLLRRRLLLRLRLLRLRLRRLLLRLLLRRLLLLRRRRLRLLRLRRLLRRRLRLRLLLRLRRRLRLRLRRLRRLLRRLLRRLRLRRRRLLLLRRRRRRRLRLRRRRRLRRLLRLRRLRLLLLRLRLRRRLRRLLRRRRLLLRLLRRRLLRLRLRLRLLLLRRRLRLLRRLRRRLLLLRLRRRRRRLLRRRLRLRLLLRLLLRRRLLRLLLRLLRRLRRLLLLRLRRRLRLLRRRRRRLLLRRLLLLRLLRLLLRLLLRLRRLLLLLRLRRRRLLRLRRLRLRLRLRLLRRRLLLLRRLLLRRRLLRRLRLLRRRRRLLRLLLRLLRRRRLRRRLRRRRLRLLRLRRLRLLRLLRRRRRLRRRLLRRRRRRLRLRLRRRRRLRRRLLRRRLRRRRRLLRRLRRRLRRRLRLLLRRLRRRRRLRRRRLLRRLRLLRRLLLRLRRLRLLLLRRLRRRLLLRLRLLLLLLLRRLRRLLRLRRRLLLRLRLLRRRLRRLRRRRRRLRRRRLLRRLLRRLLRLLLLLLLLRRLRLLLRLLRLLLLLRLLRLRLLLLRRRLRLRLLLLLLRLRLLLLLLRLRRLRRRLRLRRLRRRLLLLRLRLRRRRLRLRLRRRLRRLRRLLRLLRLLRRRLLLLLLRLLLRLRLRRRRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLLLRLRRRRLRLRRLRLLRLLLRLLLRLRRLLLLLRRLRLRRRRLRRRRRRLRRLLRRRRLLRRRLRLLLRLLRRLRRLRLLLRRLLLLRRLLLLRLLRRLLRLRLRLRRRLRRLRLRRLRRLRLRLLRLLLRLRRRLRRRLRRLLRRLLRRLRLRLRRRRRLRRLLRLLLRRRRLLLRLLRLLLRRRLRRRRLLLLRRLLRRRRLRRLLRRRRRRLRLLLRRRRRLLLLLLLRLLLRRRLLRLLRRLLLLLRLLLRLLLRRLRRLLLRRLRLLLRRRLRRRRRLRLRRLRRLLRRRRLLLRLRRRRLLLLRLLRLRLRRLRLRRLRLLRLLRRRLLLLLRLLRLLRRRRLLRRRLRLLRRLLLRRRLRRRLRRLRLLLRRLLLRLLRRLLRLLLRRLLRLRRLRRRLRLLLRLRLLLLRRLRLLLRLRRLLLLLRRLLRRLRLRLRLLRLLRRLLLRLRRLLLLLLRRLRLRLLRRRRRLLLLLRRLLRRLLLLRLRRLLLLRRRRRLRLLLRLLLRLRLLRLLRRRLRRRRLLLRLRLRLLRRRRLLLLRRRLLLRRRRLLRLLRLLRRRLRRLRRLRRLLLLRLLRRLLLRRRLRLLRRRLLLLRLRRLLRLRRLRLRLLRRLLRRLLLLRRLRLLRLRRRLRRRLLRRLLRRLRLRRRLRLRLLRRRRRLLLLLRLLLLLRRRRLRLRRRRRLRRLLLRLRRLLRLLLLRRRRLRLLRLLLRLLLRLLLLLLRLLLRRRLLRLLLLRLLRLRLLLLLLRLRLLRRRRLLLRRLLLLLRLLRLRLRRRRLRRRLRRLLRRLRLRRRRRLLRLLRLRLRRRRRLRLRLRRRLLRLRRLRRRLRLRLLRLRLLRRLLRRRRRRLLRRLRRRLLRLRLRRRLLRLRRRRLRRLRLRRRRLLRRRLLLRLRLLRLRRLLLLRLLRLRLRLRRLLLLLRLRLRRLRLRRLLLRLLLRRRRRRLLLRLLRLRRLRRRLLLRRRLRLRLLLRRRLLLRRRRRLLRRRLLLLLLLRRRRRRLRRRLLLLRRRRRLRRLLLLLLRLRLLRLRRLRLRLRLRRRLLLLRRRLRLLRLLLRRRLRLRLLRRRLRRRLLRLLRRLRRLLRLRRLLLLLRRLRRRLLRRLRLLRRRRRLLLLLLLRRRRLLLRLLRRLRLLLLLRLRRLLRLRRLRRLRLRLLRLLRRLLRLLLLRRRRRLLRLRLLLRRLLLLLLLRRRLLLLLLRLRRRLRLRRLRRRRRLLLRRLRLRRLLLLLRRRRRLRRLRRLRRLRRRLRLRLRRRLRRRRLLLLRRRLLLRLRLLLLLRRRRLLLRLRLRLLRRLLLRLRLRLRRLRLRRLRLRLRLRLLLLRRLLRRRLRRLLRRRLRLLRLLRLRRLRRLLLRLRLLRLRRRLRLLRRLLRLLRLLRLRRLLRRLRLRRLLLRRLLRLLRLRLRRRLRRLRRLLRRLRLRRLRRRRRLRLLLLLLLRLLRRRLLLLLRRRLLRRRRRLLLRRRRRRLRRLLLRRRRLLRRRLLLRLRLRRRLRRLRRRLRRRLRLRLLLRRLLLLRRLLRLLRLRLLLLLRRRRRLRRLLLLLLRRRLRRLRRRLRLRLLRLLRLLRRLRLLRRLRLLLRLRRRRRLLLRLLRLRRRRLRRLLLLRLRLRRRRRLLLLLRLLLRLRLLLLLRRRLLRRRLRRLRRRLRLLRLRLLRLRRRRRRRRLRLRRRLRRLRLLLRLRLLLLRLLLRLRRRLRLLRLRLLLRLRLRRLLRRLLRLRRRRLRRRLLLRLLRRLLRLLLLLLRLLLLRRRRRRRRRRRLLLRRLRRRRLLLRLLLRRLRLRLLLLRRLLRRLLRRRLLLLRLRRRRRRRRRRRLRLRRLLRLLLRLLLLRRRLRRLLRLLRLLRLLRRLLRRLLLRRLRLLLLLRLLLRLLLRRRLRRLRRLLLRLLLLRLLLRLLLLLRLRRLRLRLRLLLLRRLLLRRLRRLRRLLLLRRLLRRLLLLLLLRLRRRLLLRRLRLLRLLLRRLLLLRRLLRRLRLLLRRLRLLLRRRRRRLLRRRLLLLLLLRLRRRRLRLRLRLLLRRLLLRLLRRLLRRLLLLLRLRRLLLRRLRRLLLLRRRRRLLRLLLRRRRRLRRLLLRLRRRRRLLLLLLLLRLLRLLRLLRRRRRRLRLRLLLRRRRLRRLRLLLRLRLLRRLLRLRLRLRLLLRRLRRLRRRLLRLRRRLLLLLLLLLLLLLLRLLLLLRRLRRLLLRLLRLRLLLRRLRRRRLLRLRRRLRLLRRLLLLLLRRLRLRLLRLRLRLLLLRLLLLRRLRLLLRLRLLRLLRRRRRLLRLLRRRRRLLLRRLLRLLRRRRLLLLLRLRLLLRLLLRRLLRLLLRRLRLRLLLLRRRLRRRRLLRRRRLLLRRLRRLLLLRLLRLLRLRLRRRLRRLLRRLRLLLLLLRRRRRRRRLLLRLLRLRRRLRLRLRRLRLLLLRLRLLRLLLRLLLRLLLRLLRRRLRRRRLRRLLLRLLLLLLRRLLLRLRLRRLRLRLLLLLLRLLLRRRLRRRLRRRRLRLLRRLRLRLRRLRRLRRLLRLRRRLRRRRLRRLRLLRRRLLRLRRLLLRLRLLRRLRRLLLRRLRRLLRLLRLLRRLLRRLRLLRLRRLRLLRRRRRLRRLRLLLLRLLRLLRLRRRRLLLRRRRRRRRRRRRLLRRLRRRLRRLRRLRLRLRRLLLRRLLLLRLRLRLLRLRLRRLLLRRRLLLRLLLLLLLLRLRLLRRRLRRLRRLLLRLRRLLLRRLLRLRRLLRLLRRLLRRRRRLLRRRRRLLRRRRRLLLRRLRLRRRRRRLLRLLLRRLRRRRLRRRRRRLLRLRRLLRLRRLLRRLLLRRRRRLRLRLLRLLLRLLRRRRLLLRRLLRRRRRLRRLRLLRLRRRRRRLLRLRLLLRRRRLLLLLRLLRRRRRLRLLLRLRRLLLLLRLRLLLRLRRLLRRRLLLLRLLRLRLLLRRLLRLLLLRLLLRRLRRLLRRLLLRRRLLLLRLRRLLLLLRLLLRRRRLLRRLRRLLRLLLLRRLRRLLRLLRLLLLRLLLRRRRLLLRRLLRLLLRLLLRLLRRLRLRRLLRRRRRRRRLRRLLLRRRLLLRLRRLRRLRLLRLLLRRRRLLRRLLLLRLRRLLRRLLRLRLLRLRLLLRRRRLLRRRRRRLRRRLRLLRLLRLRRRRLRRRRRLLRLLLLRLRRRLRRLRRRRLLLLRRLLLLRLLLLLRRLRLLLRRRLRRLRRLLLRRRLLRRRLLRLRLLRRLRLLRRLRRLLRRRRRRRRRRLLRLLLLLLRLLLRLRRRRRLLRRLRLRLLRLRRLLRLLLLRLLLLRLLLRLLLLRRLLLRRRRRLLRLLLLLRRRLRLRLRLLRRRRLLLLLRRRRLRLLLLRRLLLLRLRRRLRLRLLLRLRRLLRRRRRLRLRRRLRRRLLRRRRRLRRRLRRRLRLRRRLLLLLLLLLRRLRLRRLLRRLLRLLRLLRLLLLRRRRRRRLLRLLLRLLLRLRLLRLRRRRRLLLRRLRRLLLLLLRLLLLRLRLLLLLRLRLLRRLLRRLRLLLRRRRLRLLRLRLRLLLLRRLRLLLRRLLLLRRRLLRRLLRLLRLLLLRRLRLRRLRRRLLRRLRRRRRRRRRLRLLLLLLLRRRRRRLLRLRRRRLRLRLLRLLRRRRRRLRRRLRRLRRLLLRLLLLLLRRLRRLLLLLRLRLRRRLRLRLLRLLRRLRLLRLRRLRRRLRRRRLLRLRLLLLRLRRLLLRRRRRRRRRRRLLRLLLRRRLRRLLRLLRRLLRLRRLRLRRRLLLLLLLRLRLLLRLLLRLRLRRLLLLRRRRRLLRRLRLRRRLRRLLRLRLRLRRLRRLLLRLRLRRLLRLLLRLRLLRRLLLRLLLLLLLLRLLRRLLRRRRRLRLRRLLRRLRLLLRLLLRRRRRLRRLRRLLRRLRRRRRLRLLLRRLLLRRRRLRRLLRLLLLLRRLRRLLRLRLRLRRRLRLLRRLRRRLRRRRLLLRLRLLRLLLLLRRLLLRLRLLLRRRRRLRLLRLRLRLLRLRLRRRRRLRLLLLLLRRRLRRRRRLLLRLRRLRLRRRRLRRLLLLLLLRLLRRRLRLRRRLLRRRRRLLLRLRRLRRLLLRRLRLLRRLRRLRRRRRLRRLLLRRRRRRRRRRRRRRRLRLRLLLRLRRLLLRRLRRLRLLRRLRLLRLRLLRRLLRRLRLRLLLRRLLLLRRRLRLLLLRLLRRRLLLRRRRLLRLLLLRRLLRLRRRLLRRLLLLLLLLRRLLRRRLRLRLRRLRRRRLLRLLLRRLRRRLLLRRLLLRLLRLRRRRRLRLRRRRLRRRLRLLRLLRLLLLRRLRRLRRRLRLLRRRRLRRRLRLLLRRLLRLRLRRLRLRRLLLRRLRLRRRRLLRRLRRLLLRRLLRLRLLLRLLLRRLRRRLRRLLRRRRRRRLRRLLRLRRRLRRLLRRLRLLRRLRRRRLRLLRLRRRRLLLLLRRRRRRLRLRRRLLRLLRLRLLRRRLLLRLRLLLLLLLLRLLLRLLLLLLRLLLRRRRLRRLRRLLLRRLLRRLRRRLLRRRRLLLRLLLLRRLLRLRLRRLLLRRLLLLRRLRRRRLLRRLLLRLLLLRRRLLRRLRRRRLLRLRLLRLLLLLRRRLRRRRLRLRLLLRRLLRLRLRRLLRLRRLRRRRRRLRLLLLRRRRRLLLRLRRRLLLLRLRLLLLLLRLRLLRLRRLRLLRRLLLLRRRRRLRLLRRRLLRRRRLLRLRRLLLRLLRRLRRRRLLRLLRLLLLRLLLRRRLLLLLLRRLLRRLLRLLRLLRLRRRRLRRLLRRRLRLLLLLRRRLRLRRRRLRLRRLLRLRLLLRLRLLRLRRRRRRRLLRRLLRLRLLRRLLRRLRRLRLRLLRRRLRRRRRLRLRLRLLLRLLRRLRRRLRLLLRRRRLRRLRLLLLLRRLRLLRLLRRRRLLLRLLLLLRRLRRRLRRRLLRRRLLLLRLRLLRRLLLLLLLRLRLRLLLLRRLRRRRRLLLRLLLLRLRRRRRLLRRLLRLLLRRRRLRRLRLLRLLLLRLLRRRRRRLLLRLRRRLRLRRRLRRRRRLRRLLLLRRLRLLLRRLRRRLRLLRLRLLLLLLLRRRLLLRLLLRLLRLRRRRLLLRLLLLRRRLRRRRLLRRRRRRRRRLRRLRRLRLRRLLRLRRLRLRLLLLRLRLRLLRLRLLRLRRLRRRRRLRLLLLLRRRLLLLLLLLRLRLLRLLLLRRRRLRLRLRRLLLLLLRLLRRLRRRLLLRRLLLRRLLLLRRLRLLRLLLRLRRRLLLLRRLRLRRLRRLLRRRRLLRLLLRRLLRLRLRLLLLRRRRRLRRRLLLLLLRRRRLRRLLLRLRRLLLRLLLLRLLLLLLLRRRLLRLRLLRLRLRLLRRLRLLRLRLRLRLLRRLLRLLLRLRLRRRRLRRRLLLRRRRLLRLLLLRLLLLLLRLRRLRLRRLLRRLRLLRLRRLRLRRLRRRRLRRLLRRLRRRRRRRRLLRLLRRRRRRRRRRRRLLRRLLLLLLRRLLRLLLLRRLLLRLLRRLLLLLLLLRLRRLRRRRLLRLRLLRRRRLRLRLLLRRLRLLLRLLRRLLRRRRRRRLRRRLLLRRLRRRRRLLLLRLRLLLLRLLLRLLRRRLRRLRLRRLRRLLRLRLLRLLRLRLRRRLRRLLRLRRRLRLLRLLLLRRRLLLRLRRRLRLRRRRRRLRRLLRLRRLLRRRLLLLRRLRLLRLRLLLRRLRLRRLRLLRRRRLRRRRRRLRLRRRLLLRLRLLLRLRLRLRRLLLRRLLRRLLLLLLRRRRLRLRRRRRRLRLRLLRRLRRLRRRRRLRLRRLRRLLRLLLRRRLRRLRRLLLRLLRRRRLRLRLLLLLRLLLRRRRLRRRRRLLLLLRLLLLRLLLLRRRRRLRRRRRRRLRLLLRRRLLLLLLRLRRLLLRLLLRRRLRLRLLLRLRRLRLRRRLRLLRLRRLLLRLRRRRRRLRRLLLRLRRRRRLLRRLLRRLRRLRLLLLRLRLRLRLRLLLRLLRLLLLLLRRRRRLRRRRRRRRLLLRRLRLRRLLRRLRRRRLLRLLRLLLRLLRLLRLLLRRRLRRLLLRLRRRLLLRLRLRRRRRLRLLRLLRLLLRLLLRRRRLLLRRLRLLRRLRRRLRLRRRRRRLLRLRRLLLLRRLLRRLLRLRRLLRRLLLLRLLLRRRLRRLRLLLLRRLRRLRLRLRRRRLRLLLLLLLLRLLRRLRRRLLRRLLRRLLRRRRRLLRLLRRRLLRLRRLLLRRLLLRRRRLRLRLRRLRRRRLRLRLLRLRRRLLLRRRLRLRRLRLRLLLLLLRLLRLRRRRLLLRLLLLLRRLLRRRRRRRRRLRRLLLRRRLRRLLLLRLLRLRRRLRLRLRLRRRLRLRRLLLRRLLRRLLLLLRLLRRRLRLLRRRRLRRRRLRRRLRLRLLRRLRRRLLLLRLLRLLRRLRLLRRRRRRRRLRLLLRRLRLRRLLLRRLRLRRLRRLLRRLLLLLRRLRRLRRRRLRRLLRRLRRRRLRRLLLLLLRLRRLRRRLRLLRRLRLLLLLRRRLLRLRLRLLLRLRRRRLRRRLLRRLRLLRLRLRRLRLLRRLLRRLLRRRLLRLRRRLLLRLLRLRRRRRLLLRLLLRRLLRLLLRRLRRRRRLLLLRLRRRLLLLLLLRLRRRRLRRRLLLLRLLLRLRLRRRRLRLRRRLRLLLLLRLRLLLLLRLRLLLRRLRLLRLLRLRRRRLLLRRRLRRLLLLRRLRRLRRLLRRRLLRRLRRRLLRRRRLLRRLLRRLLLLRRRLLLLRLRLRLRRRLLLLRRRRRLRLRRRRLRLLLLLRLRLRLRLRRRRLLRRRLRRRLLLRRRRRRLLRRLLRRLRLLLLLLLLRRRRRLLLLLRLLRLLLRRRLRRRRRRLLLLLLRRLRLLRLLLLRRLRRLLLRRRRLRRRLLRRRLRLRLLRRLRLRRRLRLRLLLRRRRRRRRRLLLLLRRLRRLLLRLRRRLRLRLLRRRRLLRRRRLLRLLRLLLRLRRRRLRRRRRLRRRLLRLRRLRRRLRRLRRRRRLLLLRRRRLLLRLLRRRRRLLRLRLLRLRRLLRRLRLRRRLLRRRRLLRLRLRLLRRLLLLRRRRRLLRLRLRLLLLRRLLRRLLLRLRRLLLRRLLRRLLRLLRRLRRLRRLLLRRLRLRRRLRLLRLLLRLLLRRLLLRLRRRLRLRLLLRRRLRLLRRLRRLRRLLRLLRLRLRRLLRRRLLRRRRRLLRRLRLRRLLLLRRLRRLRRLRRRRRLLLRRRLLLRLLRLRRLLRRLLLRLLRLLLRLRLRLLRRRLRLRRLRLLRRLRLRLLLRLLLLRLRLLLLRLRRRLRLRLLLLRLRRRRLRRRLLLRLRLLRLLRRLRLLLRLRRLRRRRLRRLRRRLLLRRLRRLRRLLRLLRRRRLLLRRRRLLRRRLLRRLRRRLRLRLLRRRLRRRLLLRRLLLRLRLLRLLLLLLLRRLRLLLRRLRLLLRLRRLLRRRRRLLRRLRRLRLRRLLLRLRLLRLLLRLLRLLRLRLLRLLLLLLRRRRLLLLRRRRLLLLRLRRLLLRLLLRRRLRRRRLLLLLRLLLRLLRRLLLRRRLLRRLRRRRRRRRLRLRLRLLLLLLLLRRLLRRLLLRRLLRLRLRRRRLLLLRRLLRLLLRLLRLLRRRRLLLRRLRRLLLRLLRLRRRLRLRRRRLRRLRRRRRLLRRLLRRRRLRRLRLLLLRRRRRRRLLLLRRRRLRRLLRRRRLRRLLRRLLLRRRLRLLRRRRRLLLRLLRRLLRRLRLRLRLLLLLLRLRLLRLRLLRLRLLRLRRRLRRLLLRRLRLRLLLRLLLRRRLLRLLLRRRLRRLLLRRLRRRRRRRRLRRRRLRLLRRRLLLLLRRRLLLRLLLRLRRRLLLLLLRRLRRLRLLRLRLRLRLRLLRRLRRRRRLRLRRLRLLRRLLRLRRRRRLRRLRLRLRRRRRLRRRLRRLRRRLLRLRRLRLRRLLRRRRLLRRRLRRLRRRRRLLLLRRLRLRRRRRLRRLLRRRRRLLRRLLRRRRLLLRLLLRLLLRRLRLLRRRRLLRRLLLLLLLLRLLRLRLLLRRRLLRRRLLRLLLRLRRLLRRLRLLRLLLRRLLRRLRLRRRRLLRRRRLRRRRRRLRLLRRRRLRRLRLLRLLLLLRRRLRRRRLLRLRLLRRLLRLRLLLLRRRRRRRLLRLLLRLRLLLLRLRLLRLLLLLRLRRLLLRRLLLLLLLRRRLLLLRLRLLLRRLRRRRRRRRLLRLLLLRRLLLRRRLLLLLRLRRLLRRRLLLRLRLLLRRLRRLRLRLRLRLRLRLRRRRRRLRRRRLLRLLRRRLLLLRLRLRLRRRRRLLRRLLRRRRRLLLRRLRLRRRRRRRLLLLLRRRRRLRRLRLLRLRLRLLRLLLLRRLLRRLLRLLLRLRRLLRRLLRRRRRRLLLRLRLLLLLLLRRRLRRLRRLLRLRLLRRRRRLRLRRRLRLRLRRLLLRRRLLLRLRLLLLRRLLRRRRLLRLRRRLRRRRLRLLLRRRRRRLLLLRLLLRRLRLLRRLRRLLLRRLLLLLRRLRLLLRLLLRLLRRRLRRRLLRRLRLRLRRRLLRRRRLRRRLLRRLLLLRRLLLRRRRRRLLLLRLRRLLLLRLLLLLLLRLRLLRRLLLLLLRRLRRLRRRRRLLLRLRLLLRLLLRLRLRLRLRLRLLLLRRRLLRLRRRLLRRRRRRLLRRRRLRRRLRLLRRLLLLRLRRLRRLLRLRRLRLRRRRLLRRLRRRRLLLRLLRRLRLRLRRLLLLRRLLLRLRRLRLRLRLLLLLLRRLRRLLLLLLRRLLLLRRRLRLRLLLLRLRRRRLRRLRRRLRRRLRLLRLLRLRLRRRRRRLLLLRRRLLRLLRLLRLRLLLLRRLRLLLRLRRLLLLRRLRLRLLRRRLRLLRRRLLLRLRRRLRLLLRLRLRLLRRLRRLLLLRRLLLLLLLRRRLLRRLRRRRRRLRLLRRLRRLRLLLLLLRLLLRLLRLLLLRRRRLRLRLRLLLRRLLLLLRRLLRRRLLRRRRRRLLRLLLRRRLLLLLLLLRLRLRRLRLRLRLLRLLRLRRRLLLLRRRRLRLRRLLRRRLRLLRLLLRLRLLRRRLRRRLRRLLRLLRLRRRRRLLLRLRLLLRRRRRRRLRLLLRRRRRLRLLRRLRLLRLRRRLLRRLLRLRLRRLRLLLRRRRLLRRLRRRRLRLRLRRLRRRRLRRRRRLRRRLRLRRRLLRLRLLLLLRLLRRRLRRLRLLLLLLLRLRLLRRLRLLLRRLLRRRRLRLLRLLLRLRRLRRRLRLLRRRLLLLRLRRRLLLRRRRRLLLRRRLLLLRLLLRLRRRRRLLLLRRRRLLLLRLRRLRLRLRLLRLLRLRLRLRRRLRLLLRLRRLRLLLLLLLRRLRLRLLLRRLLLRLLRLLRRLRRLLRLRRRLLLRRRLRRRRLRRLRLLRLRLRLLRRRLLLLRRLLLRLLRRLLLLLLRRLRRLRLRRRRRLRRRRLLRLRRRLLLLLLLRRLRLRLRLLLRLRLRLRRRRRRRRRLLLLRLLRRLLLLRRRRRRRRRLRRRLLLRLLLLRLRLRRRLRRLRRLRLRLRRLRLLLRLRLRRRRLLLLLRRLLRLRRLRLLRRRRLRLRRLRRLLLRRLLLLLRLRLRRLLLRRLRLRLRLRRRRRRRLLRLRLRRLLRRRLRLLRRLRRRLRRLLRLRLRLLLLRRRLRLLRRRRRLLLRRRRRRRLRRRLLLLLLLRRRRRRLRRRRRRRLRRLRLLLLRRLLLRRRRRRRLRLRLRLLLRRLRRRLLLLLRRLLLRRRRRLLLRRLLRRLRRRLLRRRRLRLRRLLRRLLRLRRLRRRRLRRRRRLRLRRRLRRLLLLRRLLRRLRRRRLRRLRRRRRLRRLLRLRRRRRLLRRRLRRRLRLLLLLRLLLLLLLLRLLLLLLLLRLLRRRLRRLRRRRLRRRRLLLLLRRRLRRRRRRRLRRRLLLRRRLLLLLRRRLLRRRRLRLRRLLLLRRLRRRLLLLRRLRLRRRLRRRLLRLRLLLRLRLLRLRRRRRLRRRLRLLRRRLLLRLRLRLRRLRLRRLLRLRLRRRRLLRLRLRRLRLLLLLLRRLLRRLRLRLLRRLLRLLRRLRRRLLRLRLLLLRLRRRRLRLRLLLRRLLRRRLLLLRLRRRRRRRRLRRRLRRLLLRLRLLRLRLRRRLRLRLRLRRLLRRRRRLLRRLLLRLRRLLLRRRRRRRLLLRRRLRRRRRRLRRLLLLRLLRLLLLLLRLRLLLLRRRLLLRLLLRLLRRRLLRRLLLLRLLRLRLLLLLRRRRRRLRRLRRLRLLRRLLRRLLLLRRLLRRLRLRLRLRRLRLRRRRLRLLRRRLLRLRLLRLRLRRLRLRLRRLLRLRLLRLLLRRLRRLLRRLRLRRLLLRRLRRLLRLRRLRRLLRLLRLRRRLRLRLLLRLRRRRLRLLLLRLLRLLRLLLLLRLRRRRLRLRRRLRLLRLRLLRLLLRLRLLRRLLRRRLRLRRRLRLLRRRRRLRLRRRRRLLLRRLLLLLLLRLRLLLLLRRRRRLLRRLLRRRLLLRRLRLRLLLRLLRRLRLRLRLLLLLLRRLLLRLLRLLRRLLLRRLLLLRRLLLRLRLLLLRLLRRRRLLLLLLRRRRRLRLRRLRRRLRLRRRLLRRRLRLLLRRLLLRRRLLLLRRRRLLLLLLRRRLRRRRLRRLLLLRLRRLRRLLLLLLRRLLLLRLRRRLRLLRRRRRLLLLLRRRRRLLRRLLRRLRRLLRRRLLRRLRRRLLLLRRRLLRRRLRLLRRLLLRLLRRRRRLRRLRLLRLRLRRLRLLLLLLRLRRLLRRLRLRLRLLLRRLLLRRRRRRLLRRLRLRRLRRRRLLRRRRLRRLLLLRRRLLLLRLRRLRRLRRLLLRLRLLLLRRRLLRRLRRLLRLRLLRRLRLRRLLLRRLRRLRLLRLLRLRRRRRRRRLRRLRLLRLRLLLLLRLRRRRLRLRLRRRRRLRRLRLLRRLRRRLLLLRRLRLRLLRRRLRLLLLLRLRLRLRLLRLRRLRRLLRLLLRLLRLLLRLRLLRLRLRLLRRRRLLRRLRRLLLLRLRRLLLLLRLRRRLRRRLRLLLRRRRRLRRRRRLLRRLRLRRRLRRLRLRRLLLRRLRRRLLLRRRLRLLRLRRLLRLRLRLLRRRLRRLRLRLLLRLRLLLRLLRRRRLLLLLLLRRRLRLRRLRRLRLRRLRRRRLRLRLLRRLRRLLRLRRLLLRRRRLRRLLLLRRRLLLLLLLRLLRLRRLRLRLRLLLLLLLLRRLLLRLLRLLLLRRLRRLLRLLLLRRLLRRRLLLRRLRRLLRLLRLLLLRRLLRRRLRRLLRLLLLRLLLLLLRLLRLLLLRRLLLRRRLLRRRLLLLLLLRRLRRLRRLRLLRRLRRRRRLLRLRRLLLRRLLLLLLRLLRLLRLRRLLLRRRRLLLRRLRLLLLRRRRLRRRRRLRRLLLLLRRRRLLLRRRRRLRRRLRRLLLLLLRLLRLRRRRRRLRLLLRRLRRRLRRLRRRLRLRLRRLLLLRLLLRRRRLRLLLRLRLRRRRRLRLRRRRLRRLLLRLLRRRRLRLLRRLRRLLRRRLRRLRRRLLRLLLRLLRLLRRRRRRRRLLLRLLLRLLRRRRLRRLLLLRLRLLRRLLRLRLLRRLLLRRRRRLLRRLLLLRRRLLRRRLLRRRRLLLLRLRLRRLRLLRLRRLRLRRLRLRRLLRLLLRRLRRLLRLRRLRLRLRLRRRLLRRLRRLRRLLRRRRRRRLLRLLLLLLLRLRLRLRRLLRRLLRLRRRLLLLLLRLRRLRLLRRLLLLLLLRRRLLRLRRLRRLRLRRLRRRLLLLRLLLLLLRRRRLLLRLRRLRRLLRRLRLLRRRRRLRLLLLRLRLLRLRRLRLRRRRRLRLRRRLLRRLRRLRLLRLLRRLRLRRLRRRLRRRLLRRLLLLRLLRLRLRLLLRLRRRLLRLLRRRRRRRRLRRLRRLRRRRLRRRLRRRLRLLLLLLRLLRRRLRRLLLRLRLRLRRRLRLLRRRRLRRLRLRRLRRLRLLLRRRLLRRLRLRLLRRRLLLLRRRRRRRLRRRLLLRRLRLLRRRRLLLLRLLRRRLLLRLRRRRLLLLLLRLRLLLLLRLLRRLRRLLLLRRRRRLLLRLLLLRRLRRRRLLRRRLLRLRRLLLLLRRRLLLRRRRRLRLLRRLRRRLRLLRLLRRLRLRLLRRLLLLRRRLLLRRRRLRLRLLLRLRRLLLRLRLLRRLLRRRLRRLRLRRRLRLLRRRLRRRLRRLLLRLRLRRLRRRRRRLRLRLLLLRRLRLLLRLRRLLLRLLLLRLLLRLRRLRLLLRRLLRRLRRLRRLRLRLRLLRRRLRRRRRLRLLLLLRLRLRLRRRRLLRLLRRLRLRLRRLRRLRRLLRLRLRRLRLRLRLRLLRRRLRLLRRLRRLRRLRLRLRRLLRRLRRLRRRRRLRRRRLRRLRRRRRRRRRRRRRRLRLLLRLRRLLRRRLRRRRLLLLLLLLRLRLLRRLLRRRRLRRLRRLRLLRRLRRLLLRLRLLRLRLLLRLLRLLLLLLRRRRLRLLRRLLRRLLLRLLLLLRLLRRLLRLRLRRLRLRRRRRLRLRRLRRRLLLRRRRLLLRRLRLLRRRRLRRRRRLRLLLLLRLLRLLLLLRLLRRLRRRRLLRRRRLRRRRRLLLLRLLRLRRRRLLLLLRLLRRRLLLRLRLLRLLRRLRLRRLLLRRLLLRRLLRRLRRRLRRLLRRRLRRRLLRLLLRRRRLLRLLRRRRLLRRLRRLRLLLRRLRRRRLLRLRRLLRLRLRRRRRLLRRLRLRLRRRRLLRRLRLLRLLRLLRLLLRLLLLRLLLLLLLLRLRRLRRLLLLLLLRRLRLRLLRRLRLLLRLLRLRRLRRLRRRRLLLRRLLLLRRRRRLRLLRRLLLRLRRRRRRRRRRRRRRRLRRLRRLLRLLLLRRRRRRRRRRLRLLRRRRRRLRLRRLRRLRRLLRLRRRLRLLLLRLRLRLLLLLLLRRLLLRRRRLLLLLRLRLRRLRLLRLLRRRLLLRRLRRLLLLRLRRLRRRRLLRRRRLLLLLLRRLRRLRLRRLRRRLLLRRLLLLLLLLRLLRRLLLRRLRRLRRLRLRLRLLRLLLRRRLRLRRLLLRRRLLRRRRLRLRLRLLRLLRRRLRLLLLRRRRLRRRLRRLLRLRLLRLLLRLRRRLRLRLLRRRLRRLRRLRLLLRRLLLLRLRRRRRRRLRLLRRRLRRLRRRRLRRRRRLLRRLRRRRLLLRLLLLLRRRLLLLRRRLLRRRLLLLLLRRLRLLLRRRLLLLRLRLLRRRLLRLRLLLLRRRLLLRRRLLLRLLRRLLLLLLRRRRLRRLLLLRRLLLRRRRLRRRRLLRRLRRRLRLRRLRRRRRRLRLLLLRLRLRLLLRRLRRRLLLLRLRRRLLLLLRRLLLLRLLRLLLRLRRRLRLLRRLLRRRRLRRRLLLRLLRLLRRRRRRLLLLLLRRRRRLRRLLRLLRLLLRRLLLLRLRRLRLLRLRRRRLLLLLLLLRRRLLLLRLRLRLLLLRLLLRRLRRLRLRRRRLRLLLLRLLLLLRRRLLRRRLLLRRLLLLRLLRLLRLLLRLRRRLRLLRRRRRRLLLRLRRLRRLLLLLLRRLLRRRLRRRLLRRRRRLRLRRRLRLLRRRRRRRLRLRLRRLLRLLLLLRLLLLLLLLRLRLLLRLLRLRRRLLRRLRLLRLLLRLRLLLLLLRRLLRLRRRRRRLRRRLLLRRRRRRRLLLLRLLLLRLRLRRLRLRRLLRRRRRRLLRRLRRLLRLRRLLLRLLRLLRLRLRRRRLLRLLRRLRRRRLRLRLRLRRLLLLLRRRLLRLRLLRRLRLRLLLRRLLLLLLLRLLRLRRRRLLRLRLLRLLRLRLRLLLLLLRLRLRLLRLRRRRLLRLRLRRRLLRLRLRRLLRLLRRRLRLLLLLRLLRLLRRRLRRLRLLRLLRLLLLRLLRLLRRLLLRLLRRLRRLRRRRLLLRRLRRRRRR
