3
200000 1000000000
9202017 559610479 218811503 722574431 623477015 243703883 39459713 407513777 199827181 9992649 855004931 777018879 797256601 871892735 547647733 254502719 949399707 389523971 794928279 341490159 3063613 562335227 241616759 441607445 858796941 730638351 45983851 874201151 317989223 914240115 809986701 907236997 756826983 989585247 891513921 819245445 48690167 206912535 73911863 325467747 321921097 552224229 304584797 530244303 125970769 847415065 366756597 643347455 215707861 916493329 933668225 419356083 643764311 243170861 874149323 629998381 13839405 34396887 789605611 684384319 630207595 731127937 336255549 81859647 308580339 510883241 703339105 794651401 199641965 301432269 701428809 818741765 79272009 76717175 697083429 830878497 165434815 161194045 407227507 413632465 167700433 855767989 593256183 332718103 306405959 794954373 374500285 710473591 71972271 18549335 384130585 56465921 914510947 40766937 276936105 184314697 806436227 772347337 684403023 676001135 599657973 691771369 813281335 374032407 392305517 986662915 722123993 62339953 932883299 665830121 691887085 974716213 454682643 136719219 456883065 103436189 33654667 777650055 928259529 580675699 713038485 425693967 699448947 816568835 981663183 400332537 496477521 364558371 827021975 181505603 707276167 631134005 809410579 966069487 386690691 628418843 240233015 835917063 260859641 181103171 772183225 467637661 159002083 811714727 11206171 161795531 878230409 250332355 674231971 656998833 533805171 90902173 636638049 627949951 821522553 787166917 348240177 355717217 232932789 753691471 742514095 185871767 708136333 322466011 362485319 321680735 180884907 751108493 465636645 668911619 621436165 765618199 789978181 521540313 32220887 506755755 829887589 477419321 382527395 677338121 656068623 989482373 79805497 500897913 509811857 619800615 126673067 356030151 728857863 202738323 338626391 386416459 420535117 684138561 572283871 285387489 953118989 730555829 425355311 853534193 652244151 294289785 382464893 303226217 11659909 460062495 728884549 804534719 123740533 61931585 538509387 290507249 279215697 785381761 670105501 440104069 156972199 564369289 261241227 57220235 461772241 515137037 933899957 229823127 393129967 354792645 651768061 243045321 838183657 186315381 399308433 681749189 268163951 593804775 256696547 5870269 7657465 738995437 329384369 842676835 351165897 592448351 953893377 248026873 980404197 373167139 330327323 26687809 365994015 354221603 324328855 888751247 663344655 695790927 577251919 35317683 587676181 679218081 474933095 952932881 456078425 80514589 338955597 39462027 467457483 869144525 185778613 380546705 173813027 307607747 708756635 966008601 152338401 753893657 321180481 658570657 562691407 211785713 422247735 516254511 100120957 570719349 578097999 683589971 649741891 466436313 759414949 737422625 446771263 410129237 131489695 11303481 278830045 129142061 816007399 955887039 309576777 368089003 123476083 752442213 191977599 973344545 244036223 379035741 138862655 987336681 912687759 707793001 882136335 177167205 431738991 561582797 324257599 203603711 908910899 919609687 915432171 687353643 513687097 335831903 486186223 514221155 183018531 781100737 741634037 127936551 596761565 111791845 290689391 721713155 989723551 35455417 313399441 912369801 914837985 118995635 260426081 547740243 255449193 189750739 927702945 722199811 532002115 660379291 33993703 708877891 300520389 418428189 773031047 509327047 779229065 753365229 417765539 490859335 197784947 466619435 304063267 449506697 958219953 157090941 147025335 551884627 705130421 147767311 269436377 142719351 22760767 277181595 550153159 232096979 886569807 312822875 137034121 704968521 42782773 196867865 745020913 390627519 104177539 65870627 21148055 439476267 561278741 78999627 146684891 104734853 331630095 780226293 778511333 578727379 849675233 646374659 402152357 66360347 303813945 369284837 643547859 508173425 801450265 734886545 14915569 807192047 288448963 509530245 36163397 577969847 111096259 587045577 840956897 207618803 790220013 901559273 116040349 126565335 306498909 935305211 353505559 564736157 791370361 97473951 864731323 520368517 417935853 86255355 872074679 618969819 998030507 888878779 973926915 138471921 833504241 152405785 530429535 989911073 563681347 185215697 36769621 905700813 503418989 161490985 991346741 396478305 768950403 677933551 7278103 885988941 590748899 152630395 871371481 285842955 777552175 743882409 55276069 895187231 737759061 20639459 603260013 881708565 191592583 532728851 242983911 63172731 55537731 835760817 471243667 770448877 331116367 465486267 184342587 36241677 295100595 792988089 853200239 386744965 444723399 239937463 161429637 984637449 385978405 594804811 168647583 618768723 157846705 300683413 80545957 463273763 528995481 219666235 476267081 307279941 575513425 548670313 572038399 254889099 411309717 815193049 413916683 907236815 849988455 504701895 925311605 785776373 332055831 254790137 315149323 822952163 572531767 426940349 57302119 725691791 266518435 623329259 106943465 591653619 346539905 339943905 6148793 384949775 345289275 803256451 574038983 740492783 358682503 867234113 689714637 889434789 726008161 572956947 129756233 339642445 544187661 356047219 977840771 541328901 50956823 330611561 450269837 813542651 24657747 569028741 967380031 123352927 217707997 935129053 591570489 369459563 672415771 142501133 204617441 723913317 72189625 160691005 235647339 219453331 376447913 864905243 297908429 61223753 642912553 661771995 326273225 938081249 231831229 687073087 814534373 846755005 759817779 373849227 301971827 720629065 57768091 958660751 415676555 570658805 751806805 905001631 221111563 786555197 596896515 551465113 856809887 584620193 445463187 564678119 966318515 40877 728344633 475419763 528132227 763242739 964983919 600434613 259981327 721784079 853504251 841687981 527206941 844128671 110499307 336233949 903985981 917503057 648411793 681708119 29700043 299080661 894365833 843711153 908639459 674443495 438651575 489196295 989904239 926965575 920107081 79768833 718361377 174217921 658606003 872570061 669345647 61605415 783446961 934236193 840602265 459165781 454797383 115508025 639200937 68841769 606476737 587374049 178071149 521156241 430502835 173463649 285741183 168969597 173610489 380487315 279114815 106023657 336553401 855109845 230083285 476481749 887049821 188474635 351964211 75332429 574718619 81058215 953912845 396099427 447591279 602130587 18807015 71487027 245047069 326442601 95799049 133237211 727656497 632757523 233286017 78374025 719281281 991556395 741666089 961334125 705339941 742208199 81496481 362342339 201470085 348164739 553093713 185306571 663906637 96810631 348163433 96498131 565182833 22052225 674410209 415203113 792769579 173121447 353826171 525796649 517495809 342216119 111805885 920610871 487233471 124327927 184130809 37934265 101995387 924504375 153104967 824498727 880698767 883727307 377031557 86477301 838889375 625877651 692255327 462955691 410068889 621622771 196450627 946153679 550622385 351223003 170541161 145852405 753473123 775012803 971812049 278644665 50933105 758520229 91432263 367373497 4849387 257912075 280225621 37798819 569429283 461243649 146436697 457427495 762612917 388004383 961641583 22217729 442444167 257592193 12537219 649341427 787847107 448816591 300548161 617073349 180596959 713408567 805238565 858583627 878765719 494715247 222052719 668580961 257926637 318081717 181528611 788720101 186079793 814809295 542457623 596345285 76458999 441413901 613375455 527143921 595817495 417801283 861498589 866336357 916606649 273357265 607030331 574269987 190025 256018589 934862565 440081459 383614073 534223891 543639447 377118377 855868231 390462253 374124495 30256033 566262263 208875365 715126485 912076345 215139349 237757381 845344957 139236255 455434359 564938713 414081371 180779523 578094133 153295033 176639825 797274529 238546361 907201025 301803783 899680187 646759849 333555929 759508397 834917273 285029887 713141999 5389883 623819153 815597299 315119481 895941235 126083577 398469133 293046837 975554525 849942071 623345941 2134123 1525959 223346099 485329187 550018021 184825163 484081887 134077329 516590079 579556423 67092023 409922821 365042323 562232423 639976763 575756905 327178503 808662297 172917113 888728563 883296077 676968853 770493311 74982941 750657239 451631069 101560299 652675759 474766247 96472503 684108379 521503667 944095041 934501301 389786237 945828477 996421555 687385647 272113411 66431145 466851477 515533891 542202533 573484317 109697539 996522205 626011429 718906627 538464165 222845355 736987217 751889105 817124777 473474597 711546103 786495299 757989317 6629003 75709429 421812829 798370873 728345831 740112681 910613611 10826951 322931721 870199937 734680321 361486785 57793159 249109231 407539709 115568891 960675781 923534699 559933057 257003221 685040871 811170295 862831099 526835509 129710559 227560097 927874333 125478535 649336935 365415031 285659877 293813445 58762493 536592023 15314841 188007531 917391339 289834783 621683137 457905535 793581121 999596093 44412725 672781967 987021013 159750435 463117325 203684275 414023497 976618249 606508979 721004935 90896133 669077555 453909967 481380405 715862585 259162345 781702997 121532007 721080031 39268993 932203909 78222421 911162805 892586577 436963553 395144893 893794115 486414527 996450867 150319589 135347933 611107379 338980243 175379101 17930647 415691807 711213403 803777851 146098515 583926271 805326129 902653595 589336505 418342485 330488063 102154019 656641337 186945451 671729147 422248901 828151307 649102225 109983649 412875509 223925041 197512613 247808693 76865967 179611505 36721797 61292097 498619007 923361885 802537185 518430367 553111149 466528077 620548197 798508133 827321875 920774751 833368783 238047099 850944653 400305023 630258401 217086987 881621125 739599707 425509733 717799821 481794853 666847339 124484651 364604345 779249445 777538033 381335825 183829397 815683011 534883571 987418357 112427629 662297543 181357379 635741895 727731413 477316221 480913015 995464819 537846187 660589243 840667891 581003767 307614993 884449761 197405915 184189525 707009909 596980949 472031011 43113623 78894219 591017221 507354753 718146765 586229325 385675109 294791797 106959125 879036929 476227959 358998089 444742287 422524213 44862015 856914443 427722341 30920379 558734669 19774871 601604809 754789295 438698421 302216585 260245495 252867189 493020949 909678155 863219505 506155963 980586647 235367183 801212353 433845621 13730277 62286025 2789879 784448991 45761079 412428095 947588145 471085691 5146957 795581939 493124559 547505433 434837609 282874683 908273211 120514763 533502301 830888747 709367273 974500589 130751359 382804645 133038929 297385509 375412907 9987665 833195511 205629789 763040841 154803103 78279523 218929355 664733253 720978887 588611115 942364907 805883417 184248011 116992743 616949633 648860097 292647027 584473913 269373593 614428867 553166157 839799499 629796743 355752751 893903795 948572239 449404393 867218073 819943109 830595203 227374753 85802783 678664553 194074917 955822301 452068971 780364627 101265407 637029135 705249959 217961979 260818919 973453301 663941003 833729437 446802357 668266901 210835799 78383175 906022731 684874807 9119183 186064069 238230675 453247857 97062209 574808495 818383999 56953121 552631683 83843177 504262669 759545963 308521205 209387031 332439867 109127351 728440701 787826861 806153747 248050879 223072137 769612769 547414955 812757885 24775951 345738293 951961371 435731763 194035341 802644463 750298245 980502129 336382985 795601951 229058579 770510087 514507283 278714273 927874297 914209047 282463935 294220817 424389231 695991807 474445995 525644507 221559481 613849967 622858241 972206123 781984289 25403483 696331627 789050365 775369207 864271871 232147235 909383951 184951193 434967263 74137571 530374123 362674535 937251271 104654837 577975775 511385547 484312267 901908005 436502023 535184441 627549767 258319051 322108479 954336809 37772769 637718211 685150257 762741279 636722053 651555445 954703437 571601061 917173861 833311951 25806029 530835277 412705279 730690119 898707631 936812977 870837527 701418459 933861565 420684915 418187961 941467153 253202565 542687293 274557241 619609081 7862625 57448643 127170357 303338023 769924465 777554877 445303951 80085435 905786013 967901679 986936693 963947353 547098005 271886883 983060827 498738225 739870417 413713963 861758971 910313723 709652883 321122273 254221915 918651121 666993889 842410023 912367561 224974045 341529229 751576551 337859797 172019211 115117615 512314645 287690335 286873939 139562023 791141801 732767883 268070929 501168285 408484007 528668611 138691887 631647361 570289433 695227837 620753429 870602891 748265745 294747763 629136831 885359163 948341929 834669357 209131945 877200091 576439555 582210931 920683227 811630203 255261001 61694493 341151969 377553651 116470703 390867015 609770193 53818081 473623661 569860689 649236555 304607921 709565641 335748333 430755443 763476881 641529351 515428363 837923067 711222391 86389887 922869737 73835797 845565737 826914953 718503435 104585347 909314859 869414791 878839357 362722953 761056461 899350245 581939091 652254965 738050091 655750931 537094505 400964895 335878689 99090059 724920421 247488227 128333657 568509649 852898163 196573097 917925189 993093999 465218757 367934815 447730969 230660855 735320281 405209979 133647579 47098883 791107957 314670587 27518029 24976949 536110753 189102695 693531653 738204983 168699315 656206537 572355159 676609469 147280969 162437309 448893541 544277121 558452549 608194653 834625815 738703171 421307861 323108687 197487645 244453839 834751085 343066565 514604785 655379703 798705607 629692785 853445585 325332885 276110827 635330197 549464773 992771467 880443169 6375669 468761247 283851971 703399169 298390751 748922359 792961073 445762917 662426155 595662381 371923151 783002995 636626743 124652137 737559709 359417493 581599719 807232667 362420647 40421761 998573227 360901243 491333887 107226931 362408825 117259915 966470079 364208621 237077711 787258129 377793545 162613823 433353397 968705823 413236233 813321211 178231221 538116493 111751407 752187199 113958379 949988857 999715317 309509485 540063729 30830031 381915487 449329201 137070573 389956413 838378871 636163201 48205969 628206139 986012559 82164121 190090769 280835465 585888513 346334717 732127017 954395571 967014959 635261049 444306467 9113603 291774341 991971107 359144909 61027223 75505267 22552147 217810555 923298379 361529461 346711987 318544651 316685259 865158667 697015593 522138085 5499011 995059137 39425007 174210551 307492527 697474345 419934589 274468281 625451341 944306653 300610713 585309733 333925159 862246527 578284625 895047107 256190925 209191355 970726645 68267427 150473365 950274369 733149477 669762651 859397025 318623435 456612037 327035143 206322905 522471199 98016767 834988111 171550959 664213251 913367111 791823711 314195543 77192267 842861405 293069041 231042645 649693393 784435779 860630081 155266033 224023415 636670019 983621653 905813241 920939305 389085685 305449403 225832199 758563799 759368243 593423883 958188667 360040827 614719267 182269539 496850301 748289819 758625071 596576679 136430333 472299453 102836237 588360519 435963317 200516469 530254265 5218361 65342755 22209629 165599607 611094013 894032015 33566103 861839059 188583829 12386315 296365135 188290721 965097619 317962607 944136373 42378239 828453389 562493787 660978437 14226255 719920031 667787317 790786687 471437117 236042353 327829297 488918639 594443201 238621743 149978437 411896615 553390355 861453331 619896371 484581633 269182649 605063129 248268161 70761825 752113279 119551687 396128129 768583085 149909371 32093357 24487499 860847707 146472197 222680799 761192125 348136421 138305479 9892667 459906947 880212939 916104361 627332907 406558217 241364891 206392799 264555673 609872779 145722851 221354985 900022013 370990601 448130879 11167879 77947477 279493449 493243729 546236361 24327209 44232667 174562245 940883711 476449925 790788635 770962763 144782281 771471105 14691621 905773727 723065099 180941753 790600675 163197313 86029295 586668117 685166087 864392637 896249067 329436931 229840135 849058855 564224187 215592311 11627811 83086741 426167649 316966899 974972005 613414891 808582957 659654203 627400091 952827157 701199793 897573023 507675999 797395971 598738121 468766451 180186897 669129137 149533083 909296023 477324249 211916319 117327251 678526575 451044777 444379483 960246627 458504685 775217717 814533235 897938441 645755907 214068225 405573763 279059913 402567985 323365717 70474669 66469167 958006143 438482751 784362525 238680079 458969465 343153305 292929283 192498823 715811127 715012355 693881755 976346617 872371541 85798373 296155687 146676243 932141563 996959599 598472431 241639879 202361303 115304857 802348359 849218131 251787551 413460773 95238793 353924669 504862353 695010969 835513625 246505549 80338547 552289607 782514015 337367707 884446099 448541255 688785613 622032767 604234315 824530295 357138655 633347747 755029875 573001347 273307157 820591599 138006391 290066905 210389755 641551001 877811521 574266801 3064613 369666587 891557195 157307661 424344617 957226301 944730767 75464883 583610027 326083335 131078551 973340211 39264087 880903633 809796463 700752105 847896543 430507061 132855471 423237361 847843321 224520217 996751987 764468279 742938221 482000807 875906915 167250791 277152769 554502741 702022317 473958141 381211273 301531103 993750279 301285945 266429409 641803593 958453679 311101983 959247079 866130911 830937963 314188421 928724617 463409717 261367691 68875519 81294521 927493417 621547235 892788207 18160493 347227355 596938963 879791999 593000877 110671805 928031295 532585115 435779711 631438207 122853017 122962943 405749241 920250399 639374035 39024937 202256945 215633635 429203055 58237281 329236045 770166611 182813809 296002235 673613683 671646789 566668391 635738379 301310427 62634199 959054185 304311539 212534715 861122923 150408979 855041243 226703957 249465519 250650253 124915 591871735 484613783 102758277 412757811 713369071 990734173 854497073 796316253 130461081 42818695 115077967 948269817 556727641 215070179 792662823 894192469 835529879 213529731 342417027 575513483 408867269 837141443 65057471 445793913 780425055 603722311 373412787 263263947 298866919 504572669 895821003 573736431 74517989 479857689 718478323 685009693 252031727 99915287 155160735 971680855 573566107 452139705 815650001 350911331 484775055 772886543 68097037 929370835 524703347 304839531 297583201 623621375 536168697 136524393 328138597 654531333 295228125 129187311 810405685 555565009 770722785 501892393 910764921 490845969 663783885 693634697 166543967 476594749 103047541 24565965 795816861 170116501 908691893 860299257 362890097 425738019 389770861 670322265 738441123 274468791 389826439 505164673 918937215 784978919 63091189 730785103 569175003 114760471 286045875 836975333 389301783 439876715 528780227 947077551 562957593 660023253 918572845 873123429 102644557 868376847 741221383 812565503 308213933 554687639 422289767 177462467 698223027 956834487 366481267 401955135 531445353 555036799 295109715 613207363 183713117 646007493 641726777 169523439 149691555 908256043 107146081 126714789 47792857 853563673 358286093 72431891 678810663 405314239 371933317 832585261 335596347 980716567 81989919 309497391 788111437 749773279 561935921 353503131 201217047 904789153 701029921 277166401 815085281 915284395 562284375 334906161 787778427 540261399 53107015 110857677 922318393 725040069 710668649 359035571 378980859 250927709 482521663 206436821 207412007 745043535 68915799 366127201 888312491 461180371 549647167 491201497 123516669 61876715 130885269 471120639 138427161 348904797 943508217 635335391 55241609 430943675 889017621 378812365 657339739 240375389 657761435 555179623 831435555 142050147 324166471 510888077 217645567 468246195 394672603 909999217 990361239 253638913 353939745 793813891 542028315 19213507 642113769 471851905 942748989 514540859 109598481 373426543 920669501 802972527 934158457 823038107 584029411 531521329 828023819 53684629 344931195 625024023 177126329 57470781 414401499 953022085 114857855 354519477 675741539 548759199 519754847 709009771 364673785 463063385 636721507 981997073 594772491 935824745 472492699 604187559 941205389 526537807 631262757 377122157 433485569 914348373 864821025 407116529 171069803 176053387 786820281 803169545 424515675 381145031 602370337 907717839 979194597 40105387 196779665 304712361 348726439 848179871 85648461 476737345 542751947 975036885 868991901 140712075 358277883 267759681 253385431 807277255 560951919 599983529 261586001 699127671 293178597 980684687 794748785 643283045 360665509 836053065 637618591 293914793 344853115 899856875 143621967 634915231 698588861 760985431 744269049 687251943 542090317 1274165 303542817 787335283 646442635 229119221 302624337 114254707 826074475 576218575 946014233 609510757 986989665 816532933 346106391 729568269 778375531 730347167 392367083 100493175 261218319 667365611 834572095 170170103 914979933 699396867 892648647 467653163 657015273 371269639 20204859 224301045 355054289 315694301 70264415 880370561 965266111 506477881 715955197 899292487 208676829 331987091 46149861 303407103 156458467 305574183 788655605 290584495 594657553 407105283 661083405 427798179 945669417 137277683 556362263 862615153 229879933 898922895 769958919 227097331 803144931 12707387 279494101 254665549 260812983 329731099 418969477 122783981 882019809 419573027 819086113 794736263 163260111 793009929 784891833 760534805 324636535 420736591 28654187 898155231 426182743 820796731 410799959 667181165 597642613 193359581 613450919 842516887 852577631 645351441 507168655 558618743 188669999 894216819 306794823 350836851 537033853 24152943 200383507 892966197 331077237 545023793 644123197 687529907 288796353 551114165 561770263 796315433 324541337 298463161 591503865 178801689 772619197 143694791 774615369 115038547 84841329 312690477 947392369 940038889 512625539 513969415 615191519 233600825 780181577 599791921 58792979 315086309 926552741 341681493 724526219 533236441 260586745 951569891 228877267 57029451 35156021 618690837 456175483 83472567 43438285 764271081 524150049 23843809 838530499 240458025 958735205 180648919 203720605 700826723 191284977 988263145 516268389 85902577 585638265 751970743 487955383 631393011 624928439 628688931 859652523 290376785 191553899 554493019 546024941 905240507 46266975 438536657 998174119 654843817 22323561 947989059 72306067 870235997 744516705 856361143 930117355 973091805 830588969 918929525 712038521 687827707 9415083 152662549 165645193 300525647 349525723 783824497 667180275 765942841 276724659 510395309 434445843 759586529 413050163 858052151 499709905 376227639 427696741 885945283 568429467 783598579 98046815 560953933 441780327 643358869 549371449 124099351 785681843 22303847 58605077 711161265 584691335 280937337 244630559 134931181 430163053 329404323 328932997 512523239 508607617 447586691 550257031 201736453 506599003 644419461 983433315 320237809 841594151 244498647 815603301 207203745 707791503 318720113 551557599 678167377 251418061 721579027 643185961 467015045 563541661 692022087 859108779 154470921 366839363 728428635 989511881 960723953 473265811 33259371 524808953 294464155 818177757 584879955 335533747 105948841 802269445 203427517 910868859 293505799 765573741 656039195 773755611 797862893 817232645 561720739 60112741 819049939 776542787 293173333 214847411 600046719 129079845 631334137 676942695 644027389 477943857 553765923 445422637 965341091 215353975 312251431 819912885 543909643 677029517 33426471 356979129 76291865 37955725 931794699 510278909 543859451 524316707 199227011 90058315 275440933 303379835 538728457 716072053 704635985 546738249 379943387 406710357 750019717 105036495 928215553 663891917 642463247 156952785 458099533 152461513 251855489 20221597 113715799 225402937 303267255 532663307 413267071 496023319 312726229 21384567 539079917 390980455 278643531 276539083 129407377 448201523 951107529 66387569 316126755 245754253 720906059 363202657 420776229 753171855 429963289 349590809 201483485 766357339 812841661 174277791 675002461 426396957 194429195 628877699 103021693 24995845 645550879 829711835 801513179 867545421 799087199 782523969 791392483 412072251 96010359 375359713 308158147 510263317 507463257 635335783 57997427 55686959 104608579 807508743 712725173 998298595 684983225 902986115 765940239 155579027 746345095 28264479 662969809 122201513 198939585 714315691 222077719 710018713 436580293 908296313 298450877 247017181 503149109 354783085 391493487 630909173 761429247 351143657 766515353 327149933 528350549 8928733 883493239 11271127 215559863 67925695 862903047 562753485 16322021 159213199 501043219 345435633 476068845 618005455 190795307 168627951 964049189 15404945 509046949 213946999 956475431 766464617 82038179 384054853 801748183 337179001 919500045 85532441 247530851 492430689 581860757 921641919 736441663 259085141 271968687 923222537 683301927 358688265 353079967 14622161 767936797 40706233 590032749 840813561 856134513 916153391 78272487 191925613 494003637 664476601 766193575 89702941 723346117 520130603 722724621 938157061 300020423 271496419 152290881 225511973 452489765 739287755 544814131 540053385 764408981 870306125 872150941 996623939 470294547 126258017 29853181 824662637 20433379 711758981 727252123 678409513 782909841 446801857 233369481 412280227 498632177 148258465 381723295 30742027 112661023 750659643 378653821 187259037 577098881 248756273 325672329 423241881 66912195 731542435 504313079 153937739 109864407 185371717 125416383 126334213 47811835 889821003 58221981 377977379 417835699 630591091 144711197 412862467 885658829 15537923 243187087 324769811 984917081 825605833 276027915 600896707 501511863 959261 670291567 978533517 726953609 104380893 63919463 496048375 313306813 713298541 935089249 152825735 420261767 894451903 336171157 66755281 318429025 975993413 792584195 597595503 689731091 103983359 343063669 388196101 947831717 355141749 117672569 128499513 550314863 988739763 172755051 134514881 10611979 549080399 743960935 99182167 963383645 643836011 690143831 85817789 64256917 4172713 971211501 773628603 154375201 501004087 854936223 817619493 523446211 978492623 161464749 816326869 670846589 650880685 576437793 933058733 747458203 130137239 575953609 155385753 840883633 673551581 958130751 625084553 294847387 403864403 960575971 367941753 89441663 610612313 646353117 841567083 920541383 328938451 336313119 146201959 299242537 99207217 339760221 722341249 253978785 25537899 747620123 393431763 561984627 484724731 323091361 244075905 987918891 161263083 495703805 169398193 925944735 948024775 718820361 868506267 15915239 131883941 615388773 453330291 762888555 489751591 526308217 821047425 118424279 991401839 544953717 351847435 282040863 91143723 748272209 95163749 329142397 398302357 511417039 583462379 877296759 949359465 30564725 840525307 38922459 16945391 331144085 778506243 436522937 771628529 762601031 279415155 474981233 320394953 887045481 988016071 475986853 855767637 72579751 969788287 630638659 944610555 152533615 867778857 873811583 283920807 706661113 828992083 657400277 376197841 712155975 13114521 290016007 477706617 607424031 325059743 847076133 940407843 192394001 219301645 70788225 866761693 967759225 423430549 754818487 615160125 849907059 674499571 883332781 865523045 59662059 576040679 531056013 952679159 669219981 507244863 85385677 176586019 786151637 173170377 503725353 319619231 53565699 331036001 926531237 131337897 87073819 132730347 816680843 411905543 334001139 81368911 730370677 386226697 629919263 896742783 691115065 133424515 670139137 391682679 257105151 829433813 612491459 737770807 217412403 663123427 987605073 862757069 709245063 119626015 731278439 250049351 81587449 152478331 901600387 833534145 900582861 599201657 99299309 218519647 211707535 534102299 102624953 573388617 396703765 45883125 994322619 496499121 994411895 841276439 140802709 299312595 657003807 771510821 980219055 327084783 64300981 467074113 786263609 975965267 374228781 668159515 92200493 513076301 670372293 262953705 750508615 136359739 251498755 563351145 785363477 367060603 794345647 674757601 456579555 824504699 988053985 421220129 952913355 488480429 882760179 706300797 234669741 554686599 977558411 29803221 742024495 750683281 317173139 892185743 269834949 783010897 739706433 222916759 517127335 874385501 237494799 611223143 922111185 199316811 816152773 801337849 409367311 11837121 897367149 232043223 694484465 301058151 525074523 808875279 375659983 901004015 154570283 77065267 172008903 258315029 714913987 750162535 131659461 90255515 304252237 123312973 721436279 202267465 350214207 694969109 344582229 362958325 953833045 397004661 822762143 76725109 266616723 841150123 801791327 251442095 955108421 77160063 833214821 530070155 878493697 605434683 95963975 241829627 367789215 833648315 704041065 757548027 85555015 152823129 784994287 115105677 692398437 555087611 650684875 420025785 655784363 93368851 892815799 300415381 818854169 385434773 639614001 553940023 823337967 152210173 982018947 312052165 623148731 221125973 487182525 674756711 34084691 199077931 636096693 719759695 675640785 377260945 845974797 894737337 932908953 87656491 453538605 512037863 927980633 421048859 878806341 828491299 372162821 464376849 243988815 99881917 163997911 218771011 258928649 237352467 552226391 821400945 792910333 133419395 160436301 834389469 515646585 415905403 460414673 266150489 79016087 973595757 685228605 972694329 306305079 921885905 296186935 202222941 261469441 338173995 470765737 439961899 886727013 33071363 267929801 665884049 24991643 163381999 838498323 20668163 282917029 149970309 887686987 654572163 701069641 878660459 688784763 386947733 204493081 180589385 513632509 164139591 124303213 803220179 853084775 444480561 516322405 906703297 466730401 24583025 799091175 700068053 998569175 401533611 487991463 617415901 453302139 275625743 8745243 488784297 13491531 686792533 397279365 82627857 309646155 711861943 272637931 172560379 624088263 896031229 80476959 832511823 656362067 727802999 302879671 628305153 553768141 462988027 910555671 566802185 637304919 31933157 511531107 688004715 638131551 723240221 717700495 691550255 31686553 599699215 906183761 648536683 24936703 39868853 220226089 468852533 988326615 969011339 694275169 61478323 868653231 275329687 302997257 689837325 131850073 913429351 988642295 591183223 634193905 158354451 96099277 347028777 637872347 164570681 610204915 633885031 600922821 867336957 347535003 489984377 445721507 107447825 579465659 905206197 401894833 150420647 505211923 276919923 348569201 282952319 587603243 289927957 198111667 295240929 311407447 126932741 811070601 643168665 915679403 431646901 484357199 617464829 762154505 273860257 495393707 694459373 412423193 245595211 84406663 637363407 891298379 45487933 296649241 51001489 480243161 450535945 826054109 941046441 744697535 43501383 615191703 743360277 509987019 92664477 507979859 680812379 604880521 229447603 819558503 110642569 740676179 592831805 631713899 758206775 451341641 173440499 379596615 76957315 702973523 945345433 417326119 224251665 242570015 849576953 855163773 400604435 156334379 482708453 531797511 689154619 351795377 446031925 740061643 778059977 471616447 289270479 68016913 161480837 608752417 620225947 3687279 434242491 778276719 466917773 679349443 514024515 797966349 472637853 491503153 112843385 43600927 283323855 930841891 122892357 659159449 105060397 107966541 372890133 797559345 364062153 45807791 629114333 261018729 937455547 593741961 483489823 23209607 267275305 99283051 779009249 355858331 932392253 656918567 683454637 423671425 438634533 741578713 251681693 988682453 60355105 841378533 447219279 343697923 38926701 783243513 770302697 260054583 208782937 648553737 987157015 583631213 267201077 705514065 305247249 164154467 256215643 494548821 742158231 333790627 807380781 919156961 478959339 672563325 571998485 545888521 212471009 369439751 280705927 284473385 343905225 371659811 947881979 766357479 111475333 430994553 769092341 663268911 228983675 262047609 292494591 865364531 794600857 910305117 815079339 589729137 115851605 149288739 174592145 720771757 702850989 169938837 524847703 46838515 816643369 429832257 817195943 57885847 554846931 237245569 729163311 78206519 847470405 818718325 648724399 166660021 725718941 932897797 263244517 432821055 597904513 873810913 394056861 888920649 822680349 775545985 945256615 638193805 314255401 984881447 825810145 676980497 306027749 961516249 15296043 931388195 929423381 48947561 637234545 156410195 349171975 672937583 569027745 477771393 124933779 210978891 951661499 436295889 576448021 305448741 412200893 800161453 144201845 75143149 51652019 55359947 334475553 128307035 460491695 340854821 642331407 891346671 362886089 589126915 5388733 203032565 957441319 883385839 792546353 303349879 830798579 156861371 923078139 741135955 427769181 568133001 533881391 343617573 897421983 806846903 661085805 514591833 170823165 324490487 624673243 259760669 232742593 560115001 615159845 321862249 204534589 886647995 103479429 245468413 135993291 410529537 613845685 328340323 997685197 405842391 761177087 855369193 678074541 316334161 727504943 170075819 931516639 182849995 239693981 151194245 503539421 538493675 315537703 555650593 457938983 436828829 286696241 854875377 129238089 200731923 69121195 44719659 70099923 864826573 456323339 317604303 321182051 325055883 894308431 689884069 252641435 504910683 556873213 694427201 577755937 684622737 112627237 503947255 889269163 508380619 681511515 51710953 641612529 746165997 238525119 27030271 619435703 216526879 71342839 713588969 416066759 733188059 446625583 573883681 845934067 982590683 145586977 541935077 170047765 255092001 775670025 66744637 204889615 530278653 649949869 506836987 286920397 176383487 621415003 239284919 829045311 815268871 557955051 322570961 750997343 357360697 969399225 825662833 236916787 400983039 4162989 763709575 245525183 533370383 653502517 3129291 365493787 215645029 936496455 880992191 703841119 933571141 743523171 744191657 833712303 336137017 243829387 844645275 30477361 852405785 204865361 486789485 31463707 510792449 742320585 294006717 676903591 769586003 642227347 512488951 912257301 362223291 806239189 693606985 937890993 712921135 803964477 309482667 973186765 418261739 226482687 522810335 315962051 151620979 436971997 27753067 652441333 23043731 549839387 731653535 822385615 980611681 837024135 18226327 756130497 269051189 136633465 585220911 782101829 129641145 512695759 659327763 994919903 308539091 526329325 266279087 374674713 201057469 572912579 510080063 242783877 401535471 349971399 202391233 557335485 491942191 778138871 255602943 39265125 607485835 851128283 416169609 871574563 859059539 238812031 8700085 165878701 206244647 939668089 378267557 387004861 927795947 894190569 391215425 37785363 317419209 532747893 358032955 547639931 360860727 208704843 698522375 463860679 393703151 698166047 222443241 136032977 546329593 239363891 992943849 92580477 161758877 955207243 366005973 204773297 633809779 573499319 472530503 71674979 690186069 899904587 264328607 842210957 339447913 13425509 105950981 664286511 899938585 304289775 463583593 894815573 272053531 243074899 103205253 561167121 490187883 755365001 607913687 14185085 757504589 643986703 682530983 894635197 187942477 970429933 429171463 633127671 835380031 260910255 754242511 118068577 383912513 92142699 456104863 25824821 790063029 166443201 615758045 362888883 183433287 802050775 101385917 538866729 574472687 197501531 890464823 509653733 811419877 238058115 487704839 327149891 408565423 772196109 380787385 904362149 385990937 78221631 600798621 3240567 525335865 462902503 847837643 718243113 384811111 721229149 575965729 248182071 514978637 414574719 147003211 324985889 505128147 871374257 910793399 790925683 62382893 871011555 925546909 614817727 254491867 641612685 504390653 611205535 43591069 540863913 488781217 522633399 664957827 888330433 494484759 706409135 291013085 756866273 986312891 348806713 902465611 860394911 497438633 847698959 624787889 770566939 940124877 960094199 224797497 122265851 778104787 100639671 369168729 35386221 186775607 557714979 331292877 49757735 882270775 62256149 185956759 921818471 75262941 104267633 34603527 871518963 236636151 788072479 45307823 531712795 889516831 34727185 763546221 122427827 813671605 176937281 694381409 514602777 371093985 63361205 568790013 703128887 351587989 701594483 199784689 254771831 422855813 303517327 909000507 129611985 883514421 272118563 62323999 510655685 799562221 803456851 356297513 146856535 760065211 325381447 999423277 990985749 724569977 383799857 879660873 889415701 528292295 398524237 200120543 769405687 991534349 890568923 643646877 279707873 59072891 258863399 616544885 791768705 799363337 29920133 588172965 133975053 344406649 369736523 549026995 953606723 426544721 116694237 111108967 100305257 368722403 310349991 562075865 80657487 904491591 374081561 105958243 415072585 793230683 708326063 839518889 947927351 639020235 175898347 747431577 69146237 463307013 654248789 490606183 405066253 516883521 32686977 354637709 592969305 927522177 336238859 464021715 998717027 496449931 376262289 486346561 814399149 858336751 884945089 103133999 208704587 788297737 864701259 535135031 470572493 262702581 774642155 443871039 196784725 848098207 845069665 265856369 19887243 157806003 365358203 748593987 515854231 815114413 24958727 185654385 679082037 31885773 355261665 687116287 81494945 700917271 475155181 978842937 769057955 674094945 153710099 504249011 406112901 689623359 796372037 418416459 501102627 458356243 401570175 522992419 155484373 399888903 856250049 733214887 473942919 203549703 801616665 554725261 925892003 302682319 304007829 763293651 877719075 366607837 430505299 389542585 765067905 923725435 289151601 263348685 746721735 60520631 181745949 390686179 385103233 845293163 560609159 337821209 309973703 871971383 956149739 755732177 88322871 713795203 241918859 57233593 317556213 214977663 30143407 495056837 63485617 700922661 97861805 411099695 211541665 194907697 322978523 874901373 158012291 124525361 542442399 816905085 365345949 797037681 334004319 370419009 80075711 625788427 69461907 548370469 853309501 85346527 541209009 34269389 664699383 177183635 408929851 70522919 894754387 665905051 654384319 61219943 483411261 263186479 726032331 486007305 393388079 43316555 419839997 498084559 633794851 222573243 959455987 774300361 355324835 360787215 585692763 250009929 846540731 404401823 17165031 240731117 88963331 879023241 484885837 275200405 641786777 695873465 610642773 897021299 187249953 125261277 670768839 556270583 50514891 250148461 12416115 534924767 627607373 966789033 273627445 236860207 747271653 548422555 281116401 265893939 79548761 32205075 470816143 340869247 631161849 464318119 808278017 760795121 426532251 861654971 192899907 793447339 932279961 704130931 627812183 311526681 426382559 334934977 482909767 234636019 399584473 336175711 296280867 817431089 24190587 338359245 767572745 741574937 155974215 868362319 96094231 619873337 841340993 765265147 690829947 336485729 181849847 172042405 38369639 975989425 417492609 682397935 917359123 355592075 238865277 666956609 30723777 246845853 584556559 802238411 333131711 210977755 320794343 497713799 718636635 612102017 831258171 434826803 307143155 24230673 54240457 456169817 775724263 362315611 775416537 724210503 516661665 656962161 105101111 42374423 544786835 852468399 346806841 828098729 638270521 89492409 392216255 958412197 548546581 722172287 117963055 461661819 175078321 629376817 829713013 878809955 719489693 120033867 938682123 315903839 895865463 220751253 506691565 105498421 557428189 320028185 373964705 164959863 454603645 527203371 776501 69730429 866251017 372194409 481980225 64643431 83631161 10946229 604636387 563978011 62996433 822678331 686088383 24203853 573432985 491743601 250248709 247458163 506208359 689829139 688457579 38999503 733920017 729288485 503310897 596632679 679702397 977336053 39845145 900423437 978834067 222923027 695409013 87465815 581950023 959499871 293766171 696662953 351504017 143302907 428115559 49258023 416992373 446785877 155645759 139569605 398782203 36998431 186128405 753555769 50333241 502087257 500954589 969520643 776332871 891148355 289908245 23425389 214256197 411103851 941395395 42091399 78930787 846332839 117547637 87146535 62820813 668415249 246955843 656056303 378450881 681376527 28173771 112594247 189287041 904044619 570480945 398700385 476939095 69037753 864165669 774225715 844266131 553030809 784705759 375595645 112536723 731082093 913717273 442934471 710481079 18424577 135360541 646456933 870649961 814396007 653694647 616148331 800365597 500777217 419985725 354643131 283210315 164396911 112678799 652300541 261763703 144770717 613771027 260988321 842727977 569123521 25286583 932982753 651933687 171177559 181831409 538304953 111485049 907572515 505658045 231598839 439779665 269647153 912219303 735889959 352547881 622466005 19749559 118903715 528836019 890917549 136059015 341533323 823080109 637797531 194526773 981514183 964968147 526631115 659270501 190248199 889751541 39799733 159343687 573266883 151884515 909701137 217504915 794746939 693646455 322344933 515285123 415188091 387722897 687349629 238800865 984224079 319258401 3815023 330397945 645150543 881886995 95186581 502300067 512505311 49131879 676423443 359904315 514603043 204326937 455585623 613449385 431301647 115581241 257099797 582036313 37931865 828658135 61865031 377559109 421084803 394778381 841695285 792092649 465169875 879205629 449623655 15007307 748793433 978296785 902380725 659018747 170090737 256213181 457609017 302085389 433863479 373616377 908182873 963010081 960928919 987393225 570336447 116482395 474673981 659614327 898886241 604334445 643222309 397736275 136405371 986022537 604197133 558355643 544137359 431485297 187580799 572729103 186165869 743614055 154921931 550025913 243317543 376433213 521671943 958721325 737029915 332353353 396935445 751847907 504560107 493732967 101632925 288855391 164237187 54774783 685209871 678250027 893905177 647675647 149294501 845767641 899634729 892861405 764029021 879937539 155182457 56153495 541369345 32216907 455920145 259435187 780272159 26939995 686710343 662610497 422348305 817994983 794886329 377275605 62503927 453136039 674141001 660463503 935197113 248170591 371867685 160853779 504673287 654675673 429178047 761076883 133095769 673524711 683893463 142407873 786452209 219657059 401665901 180563679 44898773 742385711 591370703 899567537 616704983 793831733 284533907 902656133 855666319 694217833 781648019 216841777 757550685 111002563 96773619 160130583 272235369 954120263 187790113 656674585 512404131 163020031 71872465 550437031 617666243 939141117 647799295 169696183 734593353 784724315 707736301 213935559 145060737 691724347 993302571 8384989 75202933 365987783 657369739 671847817 738011395 898718771 923117865 486051807 47385799 772511159 694604395 140064895 71200045 902765975 613959931 414207631 435998563 746985757 304251087 563981243 497470561 111203995 473675811 361324347 563174887 73583211 629635195 434867919 644866431 897346031 849452451 262663611 498500471 570051731 850548399 169900493 5908459 93759685 479688957 788054621 703666615 2711301 994823471 67451719 953607045 803093201 40345651 47973875 873315527 825595317 476836411 39568975 696144051 358137923 161384389 719095249 237783369 968923925 60280469 461620857 452499537 626103757 998115511 285029833 186208351 481402389 371048321 305418195 847577031 244775585 340725389 132111915 785121195 50572331 152872639 152917745 560830707 502272115 339000133 864749515 172376911 831258437 374373011 351628517 32015929 985206643 782104931 82228217 461260783 489032663 147301309 870903105 117361273 332520531 754362857 777165959 537429673 585703121 73764223 841836057 608237335 225814085 714459225 375461833 567290659 383693737 335391645 556859387 978063349 263744253 67823797 687628433 464023421 744616525 335923799 660823547 146897267 223453355 164601213 350808623 531763289 64573233 83656303 656103851 770155637 968508417 836913079 426719351 303067865 376742725 466878761 779233055 314239069 425862193 932366561 391922617 53519009 954542591 431889477 406864101 320068363 201964783 654126849 195591369 802137039 894847309 592761351 367012881 839796451 834521195 337464981 558256375 279147785 388465571 806635311 602946103 398612167 740191575 532112545 866663959 302426989 147083251 620106495 913352037 327970327 281983207 767275687 765040761 192131233 216644525 938134331 102567471 978283191 470110923 946080425 246237425 603349701 62468295 10299427 871621545 546477831 860429621 835441961 894705359 63735931 509785519 921032315 963738977 227762667 728274647 891054375 184194535 844225767 205961561 559556483 845623661 80207045 145078501 51848745 4896393 179202471 530639157 569296125 680762459 972476277 84688653 818394669 826376073 842380001 480598839 351907117 498792769 505358431 190118279 84436409 988579895 281547059 848449491 215265491 830018477 666051685 656916223 785104843 251876967 541726659 169493493 85598003 101994931 926866663 236914859 242836455 271377513 575432753 76804373 830912525 412830183 371694025 83115065 463447567 705258257 967197343 87506723 563460515 748277591 243091821 407752161 22386373 720866225 375112625 166484623 605638329 265066905 314711731 161271375 851737867 933156377 275482757 250878029 737456783 985059517 790979327 640641209 889816673 252335259 920452801 604899789 654007015 960741203 574502449 899095759 607098573 63706635 626166403 576071941 777721861 39730289 811880111 388504259 819905741 347020729 745761905 561625187 322847403 559061925 114831189 507276103 580187495 204399481 277826987 178812635 981982231 219556101 818484107 610641807 603489305 676862877 557125075 556686303 235415055 211595041 768210735 669950283 428915943 808696565 384028429 750887263 935766741 520268553 458826917 758770863 668090963 880975059 246804471 741081553 355799849 640881235 846360781 770586217 466390367 252836107 544848311 245450787 387351629 216689421 42175755 184000943 249029517 80746479 146433515 914298313 411692547 504149453 92508481 966705 458303199 362154575 196873913 44139699 375272591 930511267 817172943 230744609 179475925 384863103 295886017 104627543 277144755 294087713 914205081 253862963 751837557 355467599 412286757 560454819 261953967 990763351 135142399 418053527 267208509 902766097 393255815 941936651 161679173 66232283 815153381 225412607 915954993 433806491 11519499 741930879 809558967 236169405 168596141 802307487 837188563 217458745 646568783 467598709 389729737 676300687 278382649 197519653 584542247 229180097 877131385 574408923 249322685 350312033 455538921 423078343 188321193 699375749 249716521 466281765 729122387 118641097 847547041 815176501 68250721 562942037 315795841 203684933 55694029 928250071 536805825 702626723 922575567 980114821 770934819 612171947 839568109 657810717 310645549 656161729 939886069 897602533 682996785 722736459 134838263 896073389 111561287 819769025 942143827 390747593 11860813 588060567 145441707 272503833 891183855 763408469 359602413 410669569 551142811 75531137 264819277 528117875 534990217 82566319 429538631 85775329 941815739 334301563 492935325 149918539 133466871 520870019 572478815 223214393 781539021 702966389 582253535 343787703 413272729 271483649 930782905 404036701 502806647 240857571 41703379 493360455 821559379 734839261 906666327 947967517 574293721 430145975 860251323 517684749 242152069 17522501 928007099 467805645 987184791 643947619 840228187 952144027 26543635 963599855 224440551 454516543 158397135 5058775 591821043 160307459 170786911 842299659 111449179 101419713 429740839 683648647 602538309 920639447 735203147 676491853 80807453 843455275 545326013 563157861 686466197 532047401 11392311 790782435 98334891 634385355 18673463 269391843 82169251 23325579 86358791 139777155 589311753 404425843 674548405 569497841 902068147 726727695 74678811 389445471 347704507 465092471 724964825 269607427 517934725 58923079 382676055 841471013 672698815 537852839 622554309 677734667 217448539 71531333 315232285 105467659 188607641 961247831 137761819 749012091 994502136 497535131 543193165 114178241 900274761 51672921 263151359 439359813 382534303 14547037 921865291 250080377 410895445 448755453 846538513 849148121 225479185 498895129 447924727 576531431 923127997 251812373 1211505 574309163 947922575 125481955 492407223 895449913 834700801 135050229 904860101 196807853 242266843 804547149 629795431 82045221 462910247 587529327 118588973 715766863 704019001 768999017 50242927 954300637 114141613 448716243 946369355 987073927 804909673 778993865 909863597 366955535 179889559 302624501 894890307 277039683 68118957 401940609 554024581 162493169 608852327 613931813 604420275 783151863 247507657 835496735 928520151 726119475 624245279 447471669 845109953 580856467 720155903 735983799 22835719 334035209 291793729 275435641 891570957 728370829 978109965 753533915 950827767 345723681 427260623 330195651 347040697 448150227 577495097 521169311 803827975 912811697 552285003 193513571 85806439 599731673 431245893 426099601 90254619 466995819 35262389 697446189 385549625 845295249 499524465 83395525 990130325 122460029 4837267 819562353 384350417 992212587 964498815 79557837 380532565 164547997 803075299 653805571 532985937 258412379 569637555 639441853 19156927 444328699 69692457 207134259 435459165 911343059 820865485 348466211 921234613 398927433 829942887 804323285 29265941 918795973 626770959 389170707 138002327 724243641 339243295 427519289 639578907 639366051 561477437 79376417 541513801 266821119 867877971 679191859 508155281 820799069 504763287 136986971 612943659 156704843 954154629 541079315 871105561 360368999 654836705 626502999 712994081 533267537 848612023 495492269 652397013 197963187 563445083 214133283 216982925 117460287 981386345 888112721 38261353 836957361 988655559 110815827 634558543 557692619 192525729 603882707 683943923 390578775 414168937 185427195 767358411 894949157 302712029 753476483 711284505 897998611 977164033 129711529 777522915 322083585 644025633 157527093 114774267 66936281 159116243 727292019 72412919 929346957 456586735 154919225 64542011 284658201 809517981 799772135 696447979 844836479 18093385 665500515 393063931 249085897 124530343 575539995 652158497 610591751 348474289 263368709 170140637 650056023 674150831 32307613 507856505 32379097 338951721 804234991 299222533 716388791 775988727 239521667 23078999 982378019 675289651 353983091 656675345 309204571 915468609 127809885 631039899 511540123 771173327 687426405 45717031 102997811 432225745 872505915 569496747 307279731 517787011 125821717 698738407 297448627 987506791 783947187 644760675 78675545 670533709 487372631 479234419 593400781 325800519 260014035 199448107 57598339 500332465 48823421 977100141 881475059 555950897 247738673 79444961 645935265 606288817 624464727 697070839 990080791 794940265 775477469 913722857 877919205 582914767 813056823 356852915 41412009 60594093 216019559 495214883 247491075 555298317 404512753 721021381 79752861 683648837 650019813 234727667 470823979 374464237 55324631 631742925 91836261 514411501 720067559 532449595 103951375 509003121 461333433 141054189 555837425 278805483 13392253 814860891 224115169 868063769 268843755 397417927 464551607 923977729 320453693 749867831 382748245 597811179 349811517 186148733 132830885 468817261 428015159 853497135 46857883 207300197 866411777 640162225 273900335 347528695 737409019 547492905 179392101 610261901 267810059 79818373 610677317 919504347 332753055 777836161 252094437 492443105 68685485 335817885 937166429 910004191 769089459 22095135 925689295 532167781 509451191 616701719 192878181 848465733 422112585 680259937 885835603 940463771 889056893 795557273 953200593 411432907 482675699 882177835 946173987 678479493 955629519 965360707 308923027 539517879 593511105 177096925 279581299 615451299 478110977 76068791 656034587 908599243 220041033 303591259 422540017 623082491 35924451 538504473 115586655 734548295 609697179 678331911 966539475 898833419 837940937 913310215 720551885 421509613 32909897 963419841 197763019 704128729 466184835 430195365 601426775 376815617 779709029 865715181 76909575 152180451 927409253 618246551 221919091 451347011 830155649 206066285 495578685 796730157 531940415 263030781 597868303 419684343 886441903 302181281 12160413 642233145 302959717 494380921 499526047 646438619 406830977 418085741 971407833 591897353 814860711 320009261 886131989 965367095 431352329 49947697 168456997 485907743 652944217 247045307 479170531 237535175 388420313 175478483 869319217 660121213 363499339 215027271 569600761 805089745 195061251 11632303 796251183 407057571 840387025 679500911 399611339 60056855 240593945 554192813 467375313 23675799 819579837 882086233 432338507 933425625 266962477 467183147 867732043 434884055 142649951 467276707 372518123 658425561 678677457 472521485 551575373 243853417 106409353 400841843 612486299 884930395 948413207 555872691 895783689 21227211 884168591 965907817 13813969 865897247 781997201 530571265 279722803 34109185 526850369 699434153 461530491 860289639 397302609 272553561 448028153 235072909 225687539 212629201 635154699 445041655 384960745 919551899 409527313 231482225 67581815 286817541 159877751 525911311 505053547 499707691 708779181 291586605 525548573 510114537 394447149 217010545 628618601 456349417 368873339 451469255 107243703 779793053 868115233 309569889 764161525 675148603 123283633 536177855 378122393 332825283 778082501 439473057 263178401 869913341 551743231 191903765 881291157 99802237 783970059 428860271 391380353 743788951 845501847 400340301 302621179 224583021 997019491 761592467 92924707 315356903 313476141 981800555 625229981 307767733 953450433 33638729 256437915 25584465 56055025 815535085 602585809 20526585 877614231 82994775 845491579 112757685 464054421 207627479 181100643 762782039 989460693 780900093 80574421 814647159 268718667 972763817 802213289 750881141 377626097 453183743 818664509 90598009 529128391 482860905 480288629 343971443 56204761 385949341 49508289 711653147 354327353 80679831 694788375 798934771 252294913 429618331 402889717 274410049 910096211 188499507 686640739 225517079 257607259 136579127 3861229 612104525 262777161 904793283 138786729 166492035 868364119 245153081 654572855 161097759 992678601 676478789 249046461 930871637 454203881 837908957 948494823 865952027 256344073 679128637 33690607 148766771 903602307 332599529 250666639 725315363 539625915 459924141 144894993 983196987 851051031 358366623 626812227 909302679 484374285 349395991 706063993 297508371 381403159 581210047 434683025 557155419 29794741 871723133 478326771 97445083 117420659 429474699 31019407 582994895 563708899 476401249 545517527 157205557 941584287 427863493 768235467 277876951 366947913 236255429 506469363 3923781 667729549 730104753 702853465 393576149 242283547 2427177 496262297 215446441 267282605 451751697 739325645 124869033 521635593 799890323 124134557 275672967 299171829 505059877 857916725 844100023 763838277 156321409 745213775 203002237 115050195 571796911 7103527 82239969 469609857 187930359 418536067 968082097 595583547 656144625 19954609 42963335 647539953 32648313 601322121 510776515 286800797 821997999 755894377 913056397 509537093 735688965 15093301 959282645 437964015 627534891 316945757 926420821 570629807 190818077 961667799 745244811 787978911 213650211 971009571 589590207 298121697 387303367 389052483 97293315 498136993 324681693 942460617 27261999 563554831 585729667 31697611 68134883 771811175 358726171 129335781 956952965 192575721 81829713 662331711 594810953 889395681 560280093 674721925 487502119 529282721 519278263 408405745 730062299 389257091 531718309 880110655 694084081 133292523 804364211 991381941 921342905 995219775 17914615 919784739 916721483 915081719 623890379 229635549 932801413 174995591 639373011 604769217 336407827 833866359 842148605 984130105 312648547 89212749 954003067 647612207 514269101 526840221 617764301 216896027 298940401 68512769 670175411 665365245 255955961 176916507 120905021 598246231 749521493 492849559 653638331 496432443 740991835 180064037 469952205 585466943 391423021 20665217 789278295 147336831 707409845 464664683 844333187 923887523 300471199 632011185 228488135 475642841 507886951 67397665 28623583 630760149 694981963 157904023 241019341 761164505 895760213 918731509 810147553 463716779 16323667 242352423 737789869 371465109 638894815 798017053 658142735 382039665 602269785 47481043 808278823 821044893 142137835 325134665 414003303 674324477 369478017 847370637 916512895 13595395 651782869 301164205 30803565 796830625 1348713 405836741 171929205 338505815 754587269 575680249 527907107 432178989 672335927 948128879 364308555 87949487 288274521 391628125 636930059 41649909 405710987 345149181 39245765 415082651 100678197 725457297 747180327 17052105 382049671 789066081 709516579 424087853 596716153 909806529 338167545 458030845 496751053 219720203 850596649 630319095 60234761 630938275 531757185 36273761 942126207 770422257 267097879 233126667 672372807 513788775 820783429 229255753 661010239 928295041 866467503 849333497 438893843 406144959 83924291 415994757 95497265 167039919 619522101 78525655 599561425 806785503 140711167 928202089 636136437 169932267 869804137 282132021 797932643 423805559 425019259 646053317 421670827 90978345 232963725 88697637 803140905 982786745 92050491 60244717 591271161 636049883 291753573 88129593 31566599 360873559 203432763 778187697 260995583 460130547 695192113 791028355 628953181 222770053 832116995 371905381 172970337 860786147 62415029 287531925 665491473 815263985 494587027 790206425 388789309 965043099 99349297 358549377 407161727 276512211 882844013 592624481 268201017 532968335 363457385 599989977 632297615 926549463 262927761 894887631 386878835 638049201 42158491 638927535 482980767 334558515 210639237 660869489 553002641 916863603 456447119 530750613 82677651 650452119 913183303 261799711 730977971 310025415 341117313 642183837 157555659 846561589 988455771 996513831 5258107 77975069 73154615 1127769 151974443 115623103 115898051 564234075 396495115 252132969 202202867 466053595 652586261 200749417 98204417 293703695 715974149 533407259 271786099 290972597 679056745 104535523 680056599 340086805 82888077 754622505 585916927 218796281 329776779 266297183 576940679 34282941 256380739 578621953 104353107 752297019 32403547 966478225 992205137 960944601 754253127 898773911 621928117 364583561 713757503 991760553 931160571 529856445 785856575 81827165 622200039 934663031 692345875 954149209 321907075 668178747 928003403 327926341 171727143 482427671 294728255 842311891 724132719 711525027 655421455 588105663 589353275 413322747 744697761 324974795 932929981 480578247 240968361 449990079 10850661 167164725 359632029 684140401 606561521 302415611 28327357 709182135 834401893 799815257 974776339 832889719 111981069 532979985 23554159 270272409 212107133 318990197 604824935 21923855 223158931 377257305 627440223 458053589 366552177 582194461 739905659 975805165 252333187 719366311 911203759 246607199 591926145 119794787 789677487 993226305 245872739 982052939 325876481 176895145 930143599 499301595 403496423 574172861 203925299 112872985 942386039 750697637 903342463 76240019 296076421 616551315 517470323 533673569 817115827 517395651 329363825 906462239 310149993 104349815 942575655 325388277 266630873 497535737 668749705 652343443 264565495 253350297 371755219 867708459 948499591 147810741 113097351 553836413 846882833 815301035 569821557 138480847 928140515 487644137 131428271 723544305 414341143 819342817 392864145 187629625 858819981 235285771 193892031 573988227 278934765 646179307 105552681 441807669 696625831 886030601 265946111 542838337 586617587 303182843 719085757 200932123 77893843 364447831 212673067 185845439 43135757 300269763 902606675 460926391 767623475 717701607 406539401 21924113 637096605 835604853 770696811 768849761 167779691 20034347 604716763 165561797 951774595 880577477 968637445 606249703 519075737 7244819 776823135 879018993 360330787 735952867 441866917 268478363 676679779 648621331 601166045 443834659 297230175 666716803 855718735 160936785 846055657 75746077 82811025 773312369 60903063 373762259 687341953 603154521 407652557 780932003 614243905 912442217 126188975 699590281 124595519 145835399 262193713 672877717 333514285 588386337 946153737 833880535 807642891 275055147 706198455 186374247 335962905 583181607 181767045 404940651 615904741 267733017 579249795 193668107 390450245 311171217 101571719 664763003 209145683 980410275 403431475 216813299 350074741 80781549 852186607 991553719 518089557 543864217 95189741 581937423 205122281 855011153 511904291 659616337 161275499 254886221 850777425 130471637 318935907 893143371 10640895 775629819 960872347 358653075 328155777 490133299 206287399 567755505 103884523 360978665 640842851 36584381 777725983 929538459 693538549 609993939 863488197 410586315 816373959 256963995 968493133 553086467 426409487 696898049 811814385 207932371 349999945 237921151 650287535 94440665 767373881 716671505 781250383 970726069 313578219 68046141 870201699 38670609 826452659 138714387 779244611 258248353 82899247 891335463 594306831 811973149 774105409 366398359 197305519 88842057 734449685 531002893 587043539 585268719 747599395 131509427 412678899 921051871 68027427 798646593 401265489 33462519 551120411 357873143 618927091 871485463 9875031 675732631 307813803 130249257 816493165 475997045 126045455 224905249 577550391 132940897 604522883 411867383 112211161 390836157 955176493 376764079 137286081 778047855 418845947 631787859 943379875 355114469 92073897 707785715 620251001 791142677 440101047 691098029 998254987 430550909 48758379 215366817 91590241 277248291 895595991 69064441 934680019 444747415 229184977 271508457 645942779 73378797 49626619 77588649 100732479 123075011 174028735 345342333 384289353 173243459 98528073 511191215 620224783 638952983 351941269 188614545 28852173 12373369 575967329 748652413 49349383 556556067 819068215 887675093 186083207 402430303 30190183 663698947 781167973 296289529 657664775 201471611 26232573 833465929 680007417 684751797 399983601 739804715 353805797 187717173 480613421 610541831 296077373 618083461 86980327 546861003 889109557 746725941 324563869 173464301 422209745 551186147 512378127 906248043 803225817 578968367 918497355 942527435 98544091 426949061 220858789 563672349 427135793 171313235 539451835 158635509 554504443 461377689 287523951 168158577 483411745 309246293 432791535 720810043 790786131 266051409 353218989 802195837 27538185 621578851 855121769 822428145 518626949 909191779 50043427 72816849 355821519 792278067 189332265 813975271 326178997 593655997 174153489 696892287 764148431 398524917 577210037 13556593 840606849 522603477 202897977 583377433 524922865 868926301 670294539 55630943 848582671 870920601 987775455 415083441 491337107 759870617 125523377 500098821 964471293 821592187 840851139 795624409 791472281 845191263 409839269 131652917 776087921 42133873 599624233 185621667 20496483 724834273 698200171 999009599 524275723 759106025 40203217 24316067 339228885 941762253 970008837 817974773 557186031 949004759 248767997 828628711 423933009 230563161 847044341 538452651 211117499 349719981 929186673 933943043 900665783 676113461 768430397 473755955 337708691 881734747 433622381 137191689 448630379 823629459 186428255 455099869 769952795 497454421 528023989 979710859 472743501 748652583 128191837 743501179 394469491 903234701 921046153 39250331 481663427 744463135 978454967 66799457 282872381 61030517 626068651 560310987 71840169 253403697 145499507 195758433 805387931 642749439 82431839 747008813 293744999 452572815 586229263 388501963 950956847 313218203 857636965 462840661 321041627 489146343 35580303 253346673 970668059 271804989 536590337 620261457 795703401 579616879 582229621 653097383 931507203 29610839 777884403 573294517 385112305 915219671 690480579 743487551 985733125 507246811 254310525 778008979 50673623 579684947 442491131 236135817 587376583 869063737 719156835 609844861 276546301 431510161 388509727 424917593 148399977 751411557 412029669 250144647 891815619 550119879 998317999 347533311 126427533 513101521 419315397 511558207 602690061 217957029 435057329 688687693 428388693 405233007 361265479 231144121 595139645 767625823 533171875 822537113 678078565 226531503 189176875 903240073 751460659 424023717 254541195 322421423 36158683 38845575 258906037 471910333 665214803 224085417 568687079 464542951 528892765 531089765 499452581 948481257 196323199 103137821 992851131 721520653 32057097 288017979 657493053 402720545 350272279 500736307 981312393 812884087 10388869 406621823 701524545 869654259 535450111 946770079 283137107 891457271 966741745 874432031 471589105 936948595 98473111 710459537 472442267 375994079 492554735 554081679 915548433 542449205 925524931 568993213 561607777 707217917 516727203 144808897 334755297 917636423 900226277 967334225 507754539 929802921 918116779 99587111 309703459 743534911 839662557 54084867 2815223 296459695 880607277 770919089 316311835 664831275 387014927 385583875 890560843 354696807 438261191 180424147 181892745 134996641 423944029 627356675 721414181 76595871 708233631 342354047 91973809 696341935 803871783 246050615 232504585 257538729 943174997 758212647 779391315 876560107 264546129 962054223 959521785 66573657 694167307 247948987 231135921 999727971 917344573 162378621 828962679 596545023 593384805 855403183 469589903 628142253 361495755 903831413 689056901 613347951 279845249 966361333 366173485 626213079 869763935 381586789 316428451 120110843 905139973 783951615 923184461 330818679 80978137 814107395 684173271 633168499 924503567 931848893 873394739 516495003 523321247 887293057 585742495 392751657 577509189 449637029 526719137 674591449 986432141 633847437 275019777 746031089 759313863 527793061 613753301 318516543 939706635 678617181 543582075 322219035 970812215 92648751 570466197 925470307 800067831 349855137 83201297 745960315 456563129 580993849 99971619 459459413 882251957 887886475 631480133 444563811 811258347 735040561 150152767 645449637 547795237 435785679 568108825 843952035 888748787 85251339 494115627 313365865 483409323 816710301 685395983 348860559 394164335 280474425 342342827 532564785 977055273 676707495 93670441 519120119 9093253 362454189 44868863 258643469 141180671 169708575 839364071 503690285 671716309 505838551 563096297 427104147 282816785 765302201 521548367 368448517 561137537 903071147 138886573 192524755 533568447 446730405 88143583 667726545 564813099 929325979 762217227 334584671 156802799 51416725 685733275 167970657 230562039 239222169 9107783 8599879 726059261 454398907 643899655 537273609 553568643 844534805 787490593 803790113 403079889 497419979 419460129 360695193 21439477 828890117 844139483 855778557 497782729 233455861 630072941 935731557 972138477 622131415 350412089 467065197 407446473 812250603 855511019 57219901 333799309 788592253 789582203 912333699 145780529 457020383 660897057 268901491 970295159 41967981 813331299 130955471 513072357 152782213 142384911 272410333 53503693 97584789 130507317 475843943 344919111 524283405 698739509 484291783 499902259 508573033 705504691 808831963 849796919 27093291 698963865 684691721 125639879 135020507 618047515 762262845 941167129 254658317 217081017 963639535 558959151 603845723 838516275 857644831 820519375 339038825 432804249 792311889 759934089 835369951 258549565 310448019 798741945 679282287 237628859 964271485 959213435 642740181 928562425 963270955 529640891 898948817 196550945 680470341 458682661 812806705 48895401 424191225 758364725 21133763 888738381 598141181 741208619 439273315 279384081 512288399 680579085 836394485 370657345 978435701 608301995 543160417 534123889 831081983 432126111 742023833 444204157 642003457 427448651 364196505 383015819 9402331 694970323 44027745 342565639 282036849 41900841 37603839 320258723 817825589 430385671 338363009 53303389 776460569 144156139 649142019 391388025 264249759 527777311 769634985 779568003 483493835 444220081 884206235 186504017 683936043 390017915 118210827 874655741 414249687 308774685 519028277 431317995 992631915 228979711 515536731 582994889 731428623 702255953 496797637 819670409 140426353 489806349 740038599 56216427 769382343 66447857 265428413 617397487 357956815 109553797 364950277 483328483 528411855 714411547 594357517 943111517 807489943 407445707 326960199 614391479 253077627 463073653 470897451 703411863 585446747 100251839 471629627 846325735 660884893 155256861 103384069 647013085 817198381 897484999 292348951 833924595 91584389 127214265 635542541 801319153 985986209 728846271 569415563 820580321 516664325 269788777 49779257 817255447 234666949 248057615 100660937 71249711 671824755 587039953 120245239 102749711 128937261 41901717 929836933 337243105 31739035 535933967 277754683 910584603 505908715 87954101 859261423 78615161 639496403 69902023 625919607 884086271 334217105 908790351 728248505 520471545 337424365 241721885 608369821 944073725 820559923 863724743 83804437 296620003 950054457 382269361 527255325 796362451 572778079 64139775 566684343 529159737 37696139 661691301 868505579 236708039 515469609 847881303 610939343 342696829 948775475 304545435 155223929 787667611 92164643 102608563 156975887 289640111 402014979 371787189 738171577 766287759 983095137 65400437 746060715 567773525 920095057 836939925 489978653 960556901 228427121 112327549 280202577 840422253 254607849 950483295 644218005 88660065 453830503 861905455 61841463 335200635 453906977 560080561 866132885 302089027 529147095 199529325 906407183 128062593 54625227 88993201 166869775 402838861 902313935 159953559 856937735 560128001 728590647 484279295 666852979 749896771 236663523 849788305 848840661 513249277 604352825 364867005 636383157 916893285 223557927 458542779 37406121 382986999 43041057 826406285 899900231 18531447 66109481 75895033 983749941 801558513 459018435 850692241 500721691 11499449 650900991 470397357 171674029 599965803 658304113 64184941 315383203 123353069 572071223 207408823 36595905 781343339 444008697 761332543 301570511 904867671 538947301 698643067 400614051 678944879 39195571 967534509 419284243 766235831 750693021 329151963 170035717 74173307 81550957 98064087 95657569 510335313 723078253 925408311 977313307 243751697 296720761 880220255 365571883 24167653 1095403 352344435 8793237 419216691 489681323 821417575 741722977 661893045 86408997 210786801 533291941 892941923 945237587 862834065 251443575 755596421 628988593 540635281 160782333 136380835 975895365 258377473 273056863 228639893 604437407 669045943 254939857 294629493 115604689 492248149 658155915 695634855 144652927 752240197 969910225 879677145 695681483 173854131 546638061 578208767 346204263 378270107 847542063 279318357 432886149 720343995 670300405 267237469 360424165 707947419 892901279 396387559 645998543 660422543 174898839 948083717 451464207 527642027 887103055 729427731 924912891 605234897 827004741 618718391 958958707 192137641 858641653 352635355 389236701 134650787 417415919 437373111 935713063 16608249 619871683 590335939 961164231 808302761 121664009 71729859 149326779 579158395 73449831 13776327 591127177 314375937 566460807 975764515 912655423 802402195 541654807 85170543 728974965 109571665 396651733 471994515 546851657 177346083 134580355 803174587 999037537 29309625 66180075 442617945 751744489 479180171 653253087 829958701 753351065 278830299 393683767 389802551 31084977 824861871 870176729 825490629 89260019 801357785 721594797 3362157 855357617 645916911 337441191 288441863 699813825 948790101 727957183 877349309 585281407 132343857 383790841 249391095 357768147 492716913 229389919 346870121 20343595 115698897 269146627 9408275 513962877 288434385 603182333 554305845 723257671 540194231 708747123 881603679 222726799 350657685 937990031 20520547 378803683 902964801 339162751 397734749 985123675 522634845 974047107 426199217 223112597 142299731 896382169 641682959 244758199 531037775 988789963 241997415 903394157 265151565 630910639 322173173 700053487 962397963 575216605 256971329 590274813 820930835 310976183 61540629 590185179 708203445 308857767 205015941 41395287 388494855 731660321 656986605 120894919 815101419 193794973 442376691 334767629 292679433 702347935 221043587 267284875 782442963 233951665 857535951 415870767 58057853 314595941 846224469 704612723 604776459 149985365 642416089 396017491 73585477 776477219 509544295 551292759 626865081 1085049 694546261 91885193 638051521 985163019 526251579 759826307 254888573 21212049 853469697 876298083 251986133 266630863 225393875 219455695 439185529 543918479 807316005 12240627 618517985 3257251 491841457 37488777 453677135 592516323 815224957 68448459 58811595 438013493 940248023 402089091 312807715 835887235 959267407 657495805 386714351 862642621 893129413 933319441 523749011 176056797 453263709 193254427 608354357 587340263 190636161 838755587 486352069 969434853 933378535 635383095 573897467 309032169 553196937 360818093 340485721 108681741 442548911 721552355 726046245 42562419 394715875 548252385 876631663 716704837 220756729 65479729 957659411 360003255 927468557 460203757 309375149 94948609 997252229 124585651 353761705 869728359 36925707 912757929 225924405 303568435 250102165 401520251 968552009 925719735 345533535 500354403 985991333 746291277 872210157 610998555 645001171 728409687 787374859 377982701 109337635 110439999 955329485 471429799 401561515 246130809 860754063 228931995 451512653 693261695 780515321 819990445 651776433 364972753 118440177 724134975 15974473 406559227 105237935 71252289 804525643 310154127 896566961 59670057 837356983 488991783 603633079 794217717 308499031 955816293 28705999 267439915 373658297 104451827 556136271 30209243 898093367 614992773 129133775 944955289 835551473 121881043 325290041 984522117 180176591 64353699 579898549 59727429 833002625 703625403 939029175 280120839 454832001 496133101 384479487 60583551 367257101 929289239 938644365 688049647 557051949 393734427 514937009 465677339 419187379 388236511 971159547 743294801 500325431 951470169 805118285 485221225 509400601 353127041 979937221 186458303 810093953 857723741 587437779 674868539 400996959 880713971 202112299 694207819 592242283 456104535 139972553 577561831 769255463 563405987 371950833 588114569 229385689 930927609 680999725 986487865 685901971 441202819 239668823 822513799 819760941 285442421 812022405 93890951 845551943 436180489 4526879 210359769 867292743 96904831 973454799 121346467 475373665 712806179 315594123 279862675 164149643 234782023 422023055 261543389 586555015 719487045 178674783 665765187 18171867 722354815 787583689 753659913 646848727 913254497 519194333 505486589 579703447 518828891 380653307 597019255 218650871 661778663 251145413 17252181 421449123 554087817 488571431 632956923 291723527 240261581 909527129 646082905 692258655 649481537 791724755 630552549 789089705 348113793 278162013 748667551 620995759 759211823 776592383 85770761 902558209 833654005 738586639 527817525 150548725 249174151 538250027 429565623 718330797 60774303 758075191 265503663 48760849 747233533 647433821 684105411 128150227 534745965 590179859 238038817 105857127 316170433 687974419 793592703 130252305 478067411 500942693 946851609 574112985 577552519 847314257 778177721 124828813 619816131 260114031 11727277 73026247 564881789 83690907 907313865 146470887 615258799 681386229 351459691 99251221 407953753 137683695 223047805 775992385 307616391 183299385 317590377 961052453 687566923 180365263 154338599 614737983 935427265 602282489 93754677 946037463 157942535 421220161 660114075 318959871 127390795 810920059 777688293 153299599 59831997 345793221 737138473 847522343 599227543 48784001 592557831 291559983 633955615 328882269 592356261 840952277 327273883 617098827 707582641 226728983 699249759 584924297 962072929 535584943 451646405 748176539 421361011 638603049 150825263 319232077 365143597 839838165 91097609 671790773 350548829 256455371 179386051 640001325 367602779 990189289 229894617 61215321 983539461 148953307 700710603 319617831 391258303 644971535 812415269 766617545 691909499 841547197 930387321 408038079 86793899 652807653 301309539 659680713 953043535 612359249 831289729 816011511 259157999 623157649 470395009 363352985 633919383 370590203 633906195 434626385 737221341 154621105 115924723 946132221 953548771 922839709 312427745 46640077 57452617 395692395 553799593 479188533 508524611 478812823 477918237 42643185 189325189 928825951 551801111 69666819 336597069 407553229 740527227 797027259 951396449 259632815 842113073 822791083 74190353 592219295 866502443 49781169 157753137 704471549 681564261 340438253 461881887 672054259 461924319 764008657 77136069 648141933 788093349 345608717 71761293 346609957 745491657 69765023 236988529 866766493 99078247 436000203 378672619 988698909 1575581 3876125 739187717 168978867 179050905 488060265 236389707 879714105 464427147 162269901 32337875 95693135 635074223 232356011 742148159 893800797 215181381 858766513 39262385 408803219 394952091 815984593 436104663 391974377 140791295 16198475 754166763 768661793 527474381 718869407 907936681 46525889 402741863 359169435 763131223 685288219 458980665 427288917 528896453 888080455 407788723 174023463 487504711 766228261 929456209 434751669 281414845 503520091 608603797 402391021 253509259 620513117 715400711 503597571 234975651 988322145 254340155 455976561 846570615 300935273 397643981 883081215 407147017 540937019 700408923 334483383 141189853 255998825 123557779 24089579 996556801 180663369 101006885 517806397 111509515 157367805 123318733 797249931 792439325 486920303 234392909 405771527 696083161 620246605 537145197 297736993 445227375 81496077 784008193 88625557 713011347 843865845 623998181 347552619 650015625 364821001 893490423 964596205 170298129 580610329 889169701 403434927 356934269 708086719 600438111 498094991 387160737 600429661 112645025 118862767 34032861 997336855 337876717 391748731 727102485 55168223 252490315 398205355 769576891 539431535 426381263 229610807 809485505 786825541 673158549 185107045 389636777 566435499 27568315 912052417 653261941 600544431 815094383 677664543 414373817 828038443 708208353 901408413 399143301 461634239 969776717 782220189 231634813 769766867 911476725 578676941 65641155 927338391 164225825 620070945 638210311 433770245 549984295 268531155 460363647 197431259 303256413 753073515 296961513 472374177 37306921 936654513 642099595 275110057 333382131 775513789 535556149 122860299 78096173 629853417 817615163 15845287 574878291 944596953 688568445 719559971 804975845 132388987 759283553 982207731 774324337 56384259 989229523 142492239 577168773 771474925 513880909 327664947 520139967 823442173 390677961 210674029 92323261 257388093 111742161 514124167 338102317 44846341 452538995 720944607 329566401 284692721 995395649 732150675 296139825 220345057 467824735 293187977 507061311 771874311 566220911 161263477 78664377 242225363 75325089 381132493 747714157 575576067 461032619 492133329 457378873 762459547 423140555 164281995 308820987 871283175 913369801 541686219 364968353 692705915 639782639 932329511 602882589 774550837 391753497 989709571 601927783 935185207 690894241 557454211 816288385 760921583 37510765 532256667 535153785 69592079 660313583 933624063 240393053 245083285 712012825 875799605 131513931 32572869 331338605 832812415 595017057 106371629 579779567 618803699 890579661 178053533 105140781 564070501 865060289 90902069 408385599 770386039 128190325 547429721 102946499 493910929 822693421 142007985 676776925 651470309 951399985 690237751 907150909 566910311 375876823 265332261 76973593 428193499 454616437 319572989 363390511 757569225 553807985 691038607 9361607 239347839 411743283 442711277 10020013 902636311 554470445 148597875 424227895 505376369 893480411 761568709 87238725 513197109 18949055 818320083 604603709 892848851 338354275 760171725 834791949 819027587 768426839 84849455 730926889 656079943 668076089 676038337 318629779 321813221 436650407 44883085 959930319 421525487 144505425 162506983 848460523 967790269 755125219 858715757 782064511 798856047 995459611 150450433 952784553 342403051 321141179 859945679 406699277 351999205 741629835 474164557 654545883 643470035 260327265 534382647 742705609 555945719 334959381 508659859 714150423 465789015 578922375 650568105 822191495 62615749 584953765 18269199 526450027 579689943 392052065 358063779 22521497 355060209 34141875 197452167 950888045 89291575 611077791 204180777 709686223 974362781 365393455 756908859 189546539 679640281 342049139 847916477 802756731 634739051 522513033 581866991 215925307 729238941 60342929 333518177 84334705 251530111 306777781 529993955 962233003 740185319 367302951 596648853 970092033 629628023 761970211 150982107 38267921 658107033 726939883 420875871 58503679 678249593 150624457 392153367 128879995 185537299 637453837 608372797 621322173 153892901 796647701 452607321 14459519 305080119 392505153 723260469 365822731 293936797 432580091 223285733 25806637 498961003 793605047 753075653 57508411 488210307 84057325 884655739 975819285 645090445 813670689 733317361 70082081 434808569 49636827 930327901 177694797 797838337 312794033 712273979 385984527 870779299 375202619 427545423 484866917 599550375 839758363 544285349 773530069 653919391 709834747 535826833 638786413 645483747 629926285 741561777 123444165 988594067 968584591 833138151 393349371 83900823 36115903 675119967 65486003 20160159 897799143 318121105 222725919 955992611 342884061 404934197 378881009 262531685 939547513 446184529 204910441 49663851 206157213 356672819 771613519 640451079 156042547 515626091 614485999 306671823 467671341 791255513 494639393 276418855 768504457 480531615 756671809 661704757 479296325 569375275 160324151 525632999 744408939 388240177 289598065 232036857 880936977 582885547 505664483 905635563 509449295 837107937 834111759 731558659 273835591 126238299 480411131 627451219 121751587 204718321 986741041 557502129 332291351 890873533 993598155 780379327 630608475 367633189 129843559 263640295 619301427 616697811 756186921 739882325 105239273 95760829 900269251 433227269 342740429 620848671 352908903 231558581 224547901 402945405 290572503 317770479 513753241 136341153 875925077 240703235 45053771 537483173 639106483 877974279 233258439 927827167 792642887 607497949 368887685 21401079 477896685 988836397 74706185 413537495 993807373 397917033 774893789 170918583 931805333 603130053 318226579 394873615 654692859 466149701 839283653 265218213 471302973 886537649 512906517 889417349 657566945 948812695 627309869 975629059 47645687 595898961 253998529 992154813 751224083 556333055 161036425 608499093 324521301 825656969 19337801 899520441 61616995 206492319 786779595 704033947 449279081 204706489 94952161 147587067 813410079 84545049 363667813 740197593 689365701 757332423 783603769 434878595 850793503 118457745 395726407 976245647 676031611 161867535 541170051 467446487 27728049 883153061 894255589 28681855 706222109 998219897 290418289 177372917 882115495 998507899 338166833 818504685 268958397 460053603 848953655 731253603 963200085 350777523 620587421 333492889 433368045 292366257 382595717 682835743 230409867 847593837 509066521 406867399 799676351 312755139 116198797 134706093 248080541 156363601 150079513 567101239 511201477 679917693 643437571 850126607 537918301 631871099 388297871 525091117 709864977 563615297 189315605 355531207 543211035 264088463 833236205 65139303 724152629 900827119 998748793 923917527 506227369 539223473 861072421 583259691 562182211 27003115 23337569 181935553 379651419 412546175 270893991 426108475 10512845 291734805 401141627 829879431 217561347 883572767 263759719 665155799 375108327 203917523 28451325 707902889 460446449 146738993 143255511 415984321 926742303 52995 62694039 799205933 126306039 884344023 96171495 783898429 377355401 77099271 812476027 457740177 646799209 988909747 426103565 749349387 190918583 213642947 705392989 95342041 645448473 96378599 677821751 476625775 215868347 235046553 27255149 72333703 780519767 979298839 90598617 751304233 123868201 71334249 915840861 882432413 810300405 976563041 452576483 768349563 776549135 346723991 185869407 313981341 486116169 350604395 984160971 133365545 703021313 444782085 787106855 112508809 272915487 325964117 964906623 834593139 222351121 716903443 564799205 369249249 174036941 162301633 649303667 435896603 288891091 559596965 198423883 799656363 475331621 643621329 687613337 151930725 941457493 381105181 940102795 855481957 502024055 833681961 604960609 30741521 503883819 805374299 321778265 888677909 121255575 914416103 959222719 169215843 876748647 229956547 623677157 65084729 356066517 479744945 258128677 951298075 141697437 909004343 218586849 30494421 988366341 615347877 191068805 884926843 249847003 305262103 615832449 794729579 851398263 621265513 157500753 932981063 828023223 244078919 714481269 45434365 721498879 118557 849295737 516173247 404003135 424090151 909444079 573239821 272199917 167144291 545675121 59078567 797963527 344261019 371442849 500241819 121327637 381852767 221167659 615201343 59634979 515065605 768475071 672343085 340756167 747719599 952982295 52052297 278372897 342405189 297502457 193244609 567573463 660100473 468791851 763291913 255780119 382446015 337057921 359447261 687764629 430941789 962120661 376326207 977877395 305116757 366565641 797192319 25075925 870963579 176701193 967341615 215457195 883805031 486281669 169155627 978700009 693993081 374147895 994669721 415562733 541614297 455671909 513033699 197677471 578702713 218213973 311136703 21695343 51893005 668838683 857347113 283506255 693416729 133441233 550991973 644239807 257796835 889296537 307379711 113104583 9944701 504279455 78226891 959275763 113711039 802619411 809049319 563623769 491205449 465993777 344423347 291734425 26184067 812833593 930709729 694754521 842237851 828167799 751677537 832834759 254930063 441101373 902580339 377356441 211510297 633849061 208276119 529986059 629062085 5979603 273116827 565646953 681331683 299184749 454057875 540613499 724376715 763928873 19753693 18010267 668815515 157168769 153178907 59135399 750640831 889871349 959063355 79402499 766437989 28886291 577082225 330220959 482019525 443334249 475406391 127681523 913796063 19440275 62708053 619280633 648652669 126880051 804220115 53703739 32478767 704029685 665592841 645681093 812220491 111366025 137291921 143956781 654681331 469859499 655761745 132145299 455578897 406896411 423062899 550026653 260848209 814826661 467631469 813148793 813111855 923229725 889537529 694354653 477571817 570506841 937722655 713315591 772979337 151097149 418916649 803845821 324713949 599101621 746022827 526130765 708407679 559642033 165167745 669149073 744317137 260596013 440782545 57966817 382068471 554070825 451496965 315939881 427316195 544461233 603384021 624629715 178171213 427726297 291622457 745390551 366787511 706010807 35633783 719485621 677310313 827497583 334353947 471984751 751480689 389997869 984736505 232363929 580419753 549193249 757723439 700775491 641658545 551879303 245774367 57704207 326839025 765350561 291760501 558230563 802643353 962627767 599265833 679666733 211535521 877259293 230019955 324556643 588562635 175125549 558308313 750768771 678224541 843276107 368483369 545938387 35321193 728983519 98899059 57721379 478953031 232447323 212535575 921244103 39342359 440805691 176220089 107049375 249120639 184241151 691361859 841634319 318938099 533529139 938477545 442758665 800765097 154631019 996388907 540002303 281884835 602490173 607125449 93439731 119026343 112586317 329986003 992017767 420749383 852510023 493634715 834168429 379679449 827090909 202488509 856202395 616851583 280951237 812226079 908514061 664477475 892795335 862451947 114565739 576393075 101220009 946747543 523339747 910876645 882787903 832598239 641865259 333422015 378139237 422824135 364577409 490587141 904265209 447713179 687718829 557782663 512568297 702965743 526228217 148804831 674638373 695867551 614999871 821752687 244195497 37685201 318916573 82943067 74869879 584046065 643760057 210691221 72863383 154324145 65474623 163317975 1640223 512789007 818467433 885767839 974686245 126681423 703949233 993616695 672196815 94475261 696520481 704810157 223829059 353521391 565830725 657132251 581649081 572715327 60178997 59760225 678575207 426235729 505383053 400728487 583773327 837828051 302627959 288412637 168708223 374782647 972396445 371878909 226152069 771092029 627634487 254865349 936669437 589458405 637170435 344955581 853424459 556019583 449291847 103530295 815943895 644640795 218175187 434970955 617973779 310828825 790184443 62896089 751448443 210242333 931755423 179576711 89572497 488256273 894874403 174884297 686686429 542473003 796645497 718513111 763866357 451648997 11037461 717537709 586712431 82200327 419106035 37347609 396902897 341741211 73317277 141767845 649672227 258742261 973818655 293906607 718294199 903727281 946990353 372127829 58632809 227450805 322673041 528989309 202298107 827989547 385613891 728629467 171050037 121826441 44173143 651112677 861598443 519352203 713461891 117375195 786799097 115943733 239930885 663364295 761680703 775917011 971718563 16734585 19439269 4457723 516523437 164592007 970887971 449007749 49066487 343664213 366098351 740225945 962404577 374417671 311965261 690034083 752546385 37549969 587477253 698656597 574849205 601062823 844422891 517151663 830731777 654391247 351860507 583035121 523342519 879590987 696936885 698280873 960560347 328999985 769252579 408202157 965602555 297288789 669284823 841254679 768879407 422485593 309483981 240613707 167523861 530522021 42278663 321894391 418030033 855622251 542480333 463894031 115673875 827676831 821148021 988098253 138600465 129933061 882465109 575749817 505297289 718500901 929513939 265253019 40191939 808129357 866442071 422698123 762426763 640503703 749887317 115136227 786059575 109475555 515729733 411171657 846064039 657826009 438341033 278687143 170785089 489710057 266592015 919366451 552831217 437362251 144531205 382767465 637662001 867117825 600521513 378754829 885049085 240217297 964155419 961164587 83123419 101586765 135955589 123099159 131803097 909862861 805350425 5759085 665205903 572714097 152850067 720035859 931029531 527895327 320054965 235801909 826037537 633388171 966328137 49996613 314120913 387724075 515655711 289382913 484227041 764710977 478442261 565238381 648257425 69445843 699623691 756212693 944017571 683254963 744607979 344099023 192652905 887182199 560478887 912712755 918160823 106015107 491757627 130466859 577686511 300566779 533983401 832925981 689843185 385422547 845650683 247728323 759540529 338024897 354655041 805532437 496070307 606539589 515038105 462702939 551094725 653121705 531436323 632304413 476290973 354015229 586801417 243500339 955985337 951859479 966947199 259466935 943305009 531111577 905265853 426556429 28228515 205217517 542972935 987148771 377124915 645177151 206645925 307755053 796926097 976011 275103981 714064679 901311987 988841103 457628981 477165651 624554521 448766677 416325859 978120577 995819077 866731435 877228383 533158339 874879561 506474283 597856541 588195957 446332795 685431861 681197205 233422909 350799799 990950769 357439819 305832967 177468005 527334479 515289289 408798213 859456371 954920969 84728735 884931253 26159701 927924893 706149483 408320985 155453197 32393171 254261453 135160705 584973087 848945725 96400495 141078273 795143835 759464499 823795205 830572529 569691925 282552021 889718343 802072377 490055341 348430091 699864825 61068805 331424519 410501765 407494629 130424007 303147603 135444667 459868123 44030527 792505417 414844911 664358329 16875117 872825635 386277415 75538271 874147231 305040555 157615157 143159991 591214955 254013229 761749167 827456181 48879017 924381823 301443321 627602001 229664131 999271683 578210873 250628495 10485345 638555291 451347549 637387385 334792951 3531189 276655393 515030047 974092357 675027531 136653061 536377247 55285387 9380057 908334671 940431129 579206745 254115685 371541009 703211703 397097345 920439935 988447521 586890669 820392991 339454011 89171233 864473907 734890391 891724089 724251515 534108045 364792217 302580637 510578267 454255365 231291157 843526681 133433789 189916909 511592775 201800415 951506015 145205405 248172727 815731375 216637131 557437563 186791983 186572753 235596369 387809521 710988227 164925713 345375751 774408557 265934287 111956167 645588943 468928879 558554617 368897487 300371793 697207669 316017197 288137873 52152063 156706827 330582429 390572539 473485581 277249217 819054023 797804675 426149503 910365493 993448815 773373735 752623645 632160775 677149089 970745965 113991541 373423073 447261363 238602597 261134817 197211767 617132349 128221347 488927617 554334081 987666729 255772999 555431485 982377411 315697309 117730293 264187589 863736327 248917267 782514143 167923089 88188959 752860739 126755767 383327715 57169893 399968051 599432383 163501763 695547963 144019761 491051451 925907455 312353291 962574543 402873849 703883055 966542153 712278249 493751375 201699511 972250093 866156963 486792223 708382909 65951997 693494635 558096971 630340145 168298877 760713717 656906307 33574859 303306629 313303867 126533885 990038285 633530669 705157 506950647 934696253 44833175 348485981 342775863 664151147 900096495 507971735 821058893 381877875 138384995 993858383 52521037 831995891 591956787 640059371 31662295 284864849 4499869 914299157 557867023 581630913 545624813 444085443 126392231 456262201 677168501 493877553 748140241 173274233 840080781 520159715 793551183 135002123 638053021 95070885 336183397 145782079 47169545 699060875 44760033 472812587 732873799 76709107 559481627 82664369 911366095 787772543 831436783 451671163 689766437 959735835 392196549 236529141 540376275 293231103 387431563 8937819 688346219 512289955 202009527 609750187 345232263 517005773 279466825 156599727 738515913 327316361 341047491 818203381 74685149 50343725 216156727 111793879 285502835 282145361 988982585 572788853 587832389 885444063 675231721 622704823 636242199 182114559 30689261 432720717 983042483 274471461 435357041 847778737 813737707 896868881 759343663 240173089 797291929 401893571 215001697 251099813 788229535 584337035 958576593 469736977 949441769 602399993 327188685 312598263 785191527 129912815 226681639 295339709 308500243 786834059 535208771 104983177 986876657 996586557 662860035 967633995 575111179 806971321 795732183 110404539 830001523 369884667 115028661 740449115 7852099 639907655 210855195 708862833 989992605 305505833 478650385 237559567 936878765 897295989 838828067 545140493 777154979 649032775 287588199 199228171 840521401 538069253 131754621 751906415 348848179 645603417 207648139 120726893 261232221 450444089 305685309 79648763 957097603 204203235 149804493 614725851 125256199 979251159 764756471 946701971 234161989 788338915 181731329 425844339 56086697 387622939 130407609 345193367 458861991 950207453 429202039 806624731 434097593 458977739 492635159 852396779 991197535 791657427 184794115 172410675 428424485 705560871 806103333 303379183 429081757 84633413 135288309 226407711 258180961 861924595 272241521 785731207 10356755 61140281 514246689 704729277 605345631 748781167 251447569 304934165 974825205 290518319 949215447 566055345 278862993 396493149 54769811 942947961 829453555 261539623 287617771 888060447 220999911 280426497 446622987 179497751 229706303 955985829 603710893 902361255 886210773 33236763 551162381 619521489 561408907 861974957 959346417 719350889 633085773 250629101 197139879 108680199 312488971 730184381 78731527 338939659 219350977 467339323 133894767 375302557 423196527 88309465 173941955 176756911 880475681 243814471 633009011 893766389 430893033 94415491 393271671 114561011 7077089 613833423 85673033 432513775 687500843 421822651 307801331 968238075 218166515 47791899 603822847 277288687 985109353 260525319 998999433 252243563 240615369 700411623 327061547 920280791 221006163 805436263 966567949 273685347 177989971 998182009 684083933 564615431 649048603 394784859 600102863 32636803 995574791 347344529 239201957 775368291 341194869 62724327 834272419 50482161 347002579 932137075 882872729 2934859 359682961 960276111 105534171 616171085 154458409 109073887 722865223 65210531 749944609 169081681 987846983 60227259 927170815 43927831 221072325 782954445 754438999 712253873 790555961 634104281 970721987 702538975 306518435 837604521 888063207 301510321 496793733 297984205 404725609 395012215 835725297 310489755 199121663 913554899 525295485 475205429 764477539 295263139 301817669 477050757 576081237 883394839 897404657 506681655 763352483 955419811 290948271 975126471 137359899 810992899 375281717 430756211 785456537 362331195 21053377 231918149 713767935 187624597 388427033 669799179 994183481 455035817 997762699 655189599 318906423 525845843 129523183 697870243 111214581 610390197 88448931 971096571 606680181 481575739 157352331 920941401 439185855 270895003 517783577 484451701 155414247 702760145 860680511 907618001 492324615 964959521 13131135 533238709 944732739 35951383 993096923 543164207 484341441 414823559 554946533 395550233 192526777 171719567 891247795 346663443 599813215 439757201 282320353 901800069 662635259 140661307 191099799 872695199 923541971 360033407 506267779 231542617 352368187 8692637 82277083 297540725 133994383 92549141 578499933 716245881 705760301 126503093 906605647 771761591 132667523 377242515 86606977 576930887 494542849 941969673 929139271 797057289 702548003 402622139 586982529 894366627 137383273 874125463 947095443 190819465 915268193 276468689 151837293 797972977 484200089 866729955 288352135 221114077 390051757 554023317 217016795 885459475 299858497 637317105 524509171 884687141 389512445 41301321 110287067 766312297 187505555 100300863 304321835 768782083 978027967 109059249 233421823 933964247 349418561 325576913 558082559 968920729 383170533 971275279 686582361 577998781 47718527 221989927 651715011 361843337 536220133 951550497 550921083 650378241 564386557 581252423 253650503 713559541 862601389 170202669 178244983 557462527 846872813 500853169 573704159 493915265 523328435 707711477 219527391 615839135 563957249 281933669 575227229 412097099 920101605 517267897 115905733 167738687 218007661 676952809 93013009 316057593 710329525 685057595 73514683 534995395 993641697 811189051 316640205 252838571 522885145 264603837 939930323 52889227 523758735 963549663 317434085 109141507 82685567 492907779 721627551 568387963 103205161 736480983 477631529 711700515 553190363 163707727 96610865 920047861 894677219 69272741 642760941 246998447 994165919 967906401 557954075 65501657 254673517 378053195 376467715 427639749 826925499 222588795 148995441 21317515 874030329 824175435 703391931 42874891 690660515 823317087 5231809 359485421 398148155 961854373 65242343 792682143 896972617 198738257 864966431 724450143 641433187 273760223 105869531 276461095 206997535 211346195 793880093 518450885 467764259 72611575 140911721 232450499 202031639 503447267 114748877 7853439 327455405 638450291 321043937 797383447 530436769 298799241 46562497 351597425 690879925 875596369 809583637 739125313 643046321 374992961 231398923 719905533 431603563 879609621 933156443 657402341 418577849 430054609 589157183 258860291 862948481 325229505 855484031 589323047 51153835 236876153 250899563 582727399 100194857 61720023 89723607 397401511 366101751 818876925 361956387 448440459 212921879 409613145 225577013 931455367 896083857 681652893 229271929 224485455 376826491 552190151 273964521 185782633 352807403 108070939 324508673 187651863 842347527 409015079 158237127 558005871 576669943 195726267 335977929 821471813 332937197 873603575 251266079 410250299 551574565 969581887 470615397 228492729 539863009 836567357 183997381 100183793 900596075 810105573 823030249 690386903 374047251 919381367 160096777 763038511 999265591 232548211 274943203 809505153 145283381 387778985 603721405 412282395 405339771 335470123 432981607 421997079 229920379 416605525 786883639 405613397 13658285 461866189 754134281 662414717 140581269 322216573 501439299 74140927 208238523 646717339 33321943 32509971 104453813 654966179 7663929 59209147 988520985 960503639 107150439 682423997 590038669 349304775 487666663 710284459 671526585 548802885 248325319 317323997 122638417 712028783 722224031 346558835 760524045 258126119 309115787 336051283 918665135 658858905 752329013 666401329 443739397 367590715 545726407 83028355 717863135 934699979 350902777 574965131 454060309 501940297 917391625 732623183 39787661 323182595 768954303 142760097 503220783 184021901 842378599 360618775 425094127 738918853 761504471 706413845 383282629 861757645 296329583 820164287 505563315 77993747 32734741 718990089 152518599 961462857 206777911 829588649 913884433 299783279 143953609 883506463 565492393 747433669 561076557 636930485 864183733 465877723 606863047 61654139 645219677 18660737 428607175 728817479 368780757 537926103 835703905 313266875 516266837 822732353 243444019 950674241 878208801 664080233 378263655 590793221 978806401 105429829 313006503 661660163 587141579 101767695 824290859 712792313 772191063 191304527 249575347 716444785 995668615 497083599 962466689 307287737 113857221 729666979 104311655 817656299 107677827 32870183 153674939 54651623 188859965 287475201 843414361 998322773 14032245 118108955 298913961 872651685 999530421 385346219 556190871 467141649 15115663 465444653 985402013 28658071 195793819 168453733 192219319 67653631 80410495 384346719 244333675 380213211 892486371 315378287 48671177 614282627 602975867 352748083 332470885 392436759 453596927 373660301 498573917 942001791 690580531 630514859 807994715 872259179 614111201 295066367 350675849 369229651 585595097 887745095 69316767 977227129 73027577 407520903 19268829 867394787 195075873 809545741 451657735 446137443 632635963 785620585 813290603 83691151 688908347 33237883 797032927 157000907 860622361 31625317 219325635 635403325 276097497 204557461 125683965 784510675 539699077 85055167 593618171 923328585 346381871 576316893 581018803 416369951 100892911 57723959 965647011 365043099 268015083 694735445 968813265 237529295 953252685 286323215 232808397 701003153 517284931 9981823 272380843 904228739 663675915 618350091 736192267 940530703 61837543 540396893 350335505 781397857 818461473 749578859 776283501 172718965 379028491 119839857 768037207 289269515 946654463 774712819 835640457 825608359 553787487 579134909 679247181 660528031 400405653 666987491 643141231 498365191 432291093 619132609 290866759 337897153 615124823 517511677 949278641 837108853 603417055 65900417 878501141 253772949 295187767 219991173 28715361 388087637 549501681 377373825 977338123 494530489 884711589 122210363 243872529 651815049 38396665 791258303 559964153 923734355 555496087 175035489 592021715 474598769 615091501 150444991 535510067 765200131 63495291 15961787 762811193 792316913 151656767 463992707 258231945 724387563 713180229 7248777 860130645 659790955 133203805 178799757 184285775 912056749 935687269 821784975 822250679 520007103 330793533 229943261 644788053 807356013 205844433 494834189 608013685 475167567 901390095 39741689 879058927 753231049 45865975 132889799 581027359 522510593 162639239 400963553 690440943 285476071 360564939 578079227 320192967 219519795 485183443 902631189 208828835 82128231 953415357 544355953 209655297 738449097 627920041 705187737 759552483 822124907 942531267 62992229 401568475 221000483 331404603 230085359 93088765 282008725 857842251 705408157 533466857 983902757 242283319 835672347 59060931 402453255 390353737 257818715 134410557 902669873 335544531 736263833 495745929 440386403 595323439 557981021 298050921 505860647 779168959 927399025 884264481 986149581 453614061 154698475 93194623 236660587 831859245 2380835 591477467 909553891 304730617 427710657 853369361 10768863 114668753 316702129 835560073 253856203 412528193 193501989 93480497 259124195 968251097 906986395 968968319 966785061 586276663 480197847 224300401 737909851 967891709 980785383 831055503 245929235 667600849 109527835 263883747 633021607 103722089 842128659 116641033 877600823 139845501 437988785 859831835 428757163 813644497 500672035 526077631 43636147 946656303 678815965 927477031 225618633 667166825 408647833 413810437 852616747 42673753 716703583 895561371 138078689 727656417 351768951 82687917 512641215 178334445 839895673 904882313 931770199 422576749 925351999 224461063 596360975 420237659 777931247 598303109 483986189 445408699 931759347 297541607 259759937 52253079 847829505 614742685 437481829 205509121 424587797 189699997 938580981 355464211 12738929 480656741 381769533 524339697 362326181 301799933 822832717 810581953 984561027 977598959 987900413 31054009 196232745 229955415 97922541 720829971 686179319 431989455 483024771 368953871 718792863 966537341 879822579 221588729 679372561 199724307 700043315 561248803 264299147 164066501 559554565 580521703 143052177 855018063 978062575 60707751 367106799 481836027 165600321 792747215 977776825 932222615 628321559 415546319 384846157 551500407 183251277 741430305 891782221 81251449 635067535 836904521 694714279 331964165 436841801 893444817 439481485 88926475 979798967 266746187 174448255 293403901 96251609 776915793 170709565 992639963 335443315 229409671 548637909 932634667 852389659 482128531 94339229 339045117 420358949 28251691 81784367 609187047 65735091 661572617 816386927 807956741 551209645 108797677 962004107 5123071 94090437 780088739 697828599 788294401 178317937 964482557 998026863 637612229 977887473 974282197 848736245 501401735 760014669 558263823 153606873 902914317 913021271 318598033 216239021 906635685 131730599 216200273 759790925 54564135 875797917 25927753 386212831 441939185 204114017 687880313 405856205 164489191 764230629 785070061 808444109 731862393 121282781 676243127 144153307 132092573 282927821 71790321 79884091 45147859 154573563 322032063 138322297 827958045 878568313 211209287 138920553 512953101 59743775 392527551 664615209 963342777 837139341 461895521 836226587 776234173 830438955 429251949 748197867 733487425 932861737 180451889 76776079 615983857 582793599 978909179 37229125 420981511 135867629 245704999 66988173 437930815 954445567 7907095 715646261 887947487 756153855 728985399 127937873 72889783 659090443 64916983 448557119 273360155 100073471 731946963 551355553 254887657 510566023 353658955 407664997 994559627 286248721 581846763 320865471 640170475 133702869 593328197 347062569 469577857 682781651 886630643 263253099 516208205 779247061 518552217 187237005 97753809 969722219 38297311 715732199 281060895 574570219 556756599 192101651 265607117 197053815 233070619 30330871 355253751 718201849 614931857 617774269 119766085 805117469 897577119 358093275 401130725 597960543 650484249 67123723 187581835 670985213 770851545 460232021 64379513 416034305 325164739 825231363 176808307 397213753 105702333 837059497 169586377 265873215 236539071 984123939 646353487 988716661 318474941 337036439 579189861 672035071 27231167 665950321 533568239 344181455 923771851 315958371 181810783 930187679 121587189 576849259 261442215 624654827 3601239 252732365 206389831 431901697 802183189 341736469 497300807 360425197 374112855 706221079 436914739 10176905 748499791 338526193 733827363 306187637 356843065 854356741 233369267 615978009 618519381 239768831 832407307 694923685 632176879 498763991 318763225 549391889 191809627 887716293 557675091 763139103 492901615 73455183 890187831 67639893 932008719 229666627 882634955 92450821 963509543 613841073 700093661 829427783 262217895 490019577 552390855 268026619 545441035 996735423 390350177 689342919 400053461 328220909 127286039 564912927 66863245 60259255 837988563 689871161 301398983 855290269 755140879 128377623 871744029 917335903 410109637 179946367 815681587 285574669 37994623 757668867 870767281 622102521 982374729 181401593 392605001 241914815 989980603 343762821 897070007 302673221 390490353 936836235 780038843 596307637 25724819 259759039 731453731 867313029 613195983 165195671 180764349 136975729 548292955 661992787 651353957 559952765 292013685 616564221 440867327 6841077 908607715 300009315 268897139 201856621 313171957 686914847 829445555 863889089 640111743 480694675 245094075 296142359 380900321 609888483 542229899 668018395 764348159 614227457 755191089 663961279 492163403 196341671 239276475 384750529 991131575 371872595 386506055 158350629 535492037 105153103 701127411 76228729 268206201 749488809 234429421 548806797 29772129 311403579 619249253 218174593 441686421 435897765 550079639 582097079 128894641 318241103 519906245 309005789 326408157 3806825 241000759 827514341 485124295 136509421 911891265 19147535 476281509 11247513 714309695 200089307 708113205 690805493 853256079 439384857 29975487 304574547 980378271 121201881 843710989 550401995 372675553 977012603 389330299 103982141 373015501 115828131 770053089 917311057 964337637 601110075 28738219 784417655 590340023 828190585 870926789 241130215 768664529 355711449 953303715 864446625 822022865 964249373 186395463 244978289 358807125 808709461 353533749 446799585 862022667 473652179 943300731 323685455 697016483 908510259 373271217 579740121 834264281 609122651 412563955 671828069 478195311 514898549 558823401 565189543 633114927 66564089 814799553 409521941 98484201 488321695 776105521 404886255 636468089 471718507 754743927 163331391 859950019 121683887 865503067 762804437 639997103 346480633 472196905 540688455 783560495 455958311 851399095 344311033 166348351 658913375 445093733 233577487 935674849 371625741 20021273 908492157 281254431 806528485 626028607 58562809 731149321 632907745 249977297 913894659 790515389 935921479 921739083 341964259 480151129 983249059 777651889 660937389 515311371 109674443 859109527 821690933 81434629 532282073 96197391 829159965 962111615 534265137 419528375 654407117 155585211 930392193 569729975 871185271 679715591 479162301 132589245 902623503 421032113 594681375 671809537 794025305 492811031 751383087 590489149 518528733 492743833 364606133 566620601 249648361 783192993 541586889 36934981 535679127 652646817 360568773 399498039 392247239 397893141 155280975 720706667 505562657 578337663 326447441 743894343 735663125 797680231 5557249 512807101 544592347 996994659 519792091 384836417 181856373 943489803 324397475 46193615 177050281 38587647 947953253 182442225 988699145 819017965 642903157 14713781 671274989 806764167 376085103 588773039 731376757 501002629 208813625 710371069 417364361 522944171 939315711 876140871 682771927 761554625 573126451 437668541 521267677 357961117 691284371 148465169 420084949 745636629 944986659 24510595 158400971 705147407 112721967 618926811 684161679 540233587 344814157 964207717 384078519 928398133 359378261 690156535 20033703 413832525 858011505 572870385 141302915 963422399 301860103 511774777 579206463 237058195 887017425 393000253 139642257 294109407 344017863 975761137 939686649 991386555 614557233 171563223 996274369 67295815 198973591 940187635 879305977 774003123 385359825 652039637 187284343 837384747 276803321 337169809 871503581 971982829 238856819 420833989 225173 183809083 776488685 97162395 432281803 279855199 745462875 561457341 714215291 759066793 97873657 881441891 402397539 739663735 607209547 359340875 916635661 152800809 667479579 752496829 82807239 457031721 125169537 888134277 690943659 849478635 253956055 592524281 615415193 6649831 609015747 664531707 956455225 676307361 927623729 893284587 838679803 558862497 833813843 824128445 834430489 611535741 323445159 657872101 733504145 985677005 470351089 377139809 715429419 593263665 530936637 781582263 327452537 435252057 163483103 416125175 250847955 746668785 137802355 86599093 899108697 492484537 423147999 892489743 116207091 34296173 564558671 814862255 487422545 605783517 47718709 294835903 249162219 171912665 777089105 916518647 823246595 868411449 214216867 928164503 465456031 682553571 244686969 392684897 548091025 103841729 566969193 101473191 166058095 74981313 186575181 510519103 557125789 612872675 424517449 211611781 996888641 23434275 765352139 775063393 988558153 621438097 897291909 199998529 956409715 38341693 192912759 312287515 889220921 748577857 463113185 829562477 336839911 415041215 167172179 118766653 861942669 954737121 662602911 695343897 311837697 468508379 35056865 452133659 782311397 845415653 477167743 130807515 158931107 512946243 899483939 204054149 637343847 261891389 341548995 502422723 947965229 125701417 391155097 752797645 232009141 667388767 752504621 799030371 351220355 785392705 499742537 810553545 123405037 58757177 817254913 338162637 565253127 874021051 133191603 892107205 982366131 176953663 909704703 828811155 816881049 66133065 331174615 493121945 502366763 45881443 91384683 322010823 996609437 483783967 918375737 147262353 91112691 873737239 674232581 634647803 394139381 575518701 141225947 604935045 718094129 950880075 542105617 864337471 487195905 837608933 92194367 788613571 534857349 191171955 188691023 998646057 518544293 301924537 914484327 233941277 228890897 102671489 475021313 950303945 582774083 421522077 535775445 262050023 583464311 243808999 871103467 893029553 239479995 145774145 223697035 454059249 586730715 414865813 379800909 780031731 688968561 477121239 861953803 141385615 991459547 820218879 807174121 643887649 334849349 137701905 883414101 352047505 157991325 815698967 609319427 129597773 721788571 79021603 982014701 319822411 83018689 437359695 852494939 117361161 548916309 131529149 946845143 534811023 526888041 398658967 311365173 863473255 844806611 70417937 517332625 50626989 102325559 196090723 413335377 445010681 334134009 38145745 118933791 306938743 200429133 974468005 37155313 388059857 850491433 110709809 767932931 448042561 492776525 807845583 139574489 66321795 660130371 752888033 757017663 747781083 578741851 805036499 271568201 822152477 567945899 247731219 646453077 307731609 32377365 440526369 968378117 886151731 447183683 987811195 367808325 716068173 884370337 646269357 588082253 630382039 163958379 247092041 120474261 865035079 77855135 478247657 468995555 382311323 864660231 514272815 109285443 216235097 537700657 921629893 66206987 187479953 811234423 226203487 676955605 114658009 184719865 965621431 162612613 568116811 653194911 682736269 950704457 442241427 430218267 767377069 344433043 229763805 370446305 818231785 918999331 929591773 528404533 921590043 291829241 89733333 764963101 450877477 967060581 474433417 207601005 499008753 547935225 839429703 686847417 719950963 432990353 996997863 557636961 755128741 13535569 977530821 395584401 160116359 351918503 510182603 716992055 156360997 394414663 751119459 842226957 174802065 97478189 367083141 610683535 237721573 403276189 814880175 924052235 480563523 194147619 558660071 45005195 741398741 392839827 890033597 214587117 517151695 892629513 749646663 386010831 353535851 105058539 761568545 705575063 102617065 744601315 873357169 549078649 314391445 76608745 952683241 898088043 532139969 361769013 929199547 891325743 482549703 23733069 211026089 191546699 519534089 243619069 764388855 203288593 515545331 648059225 149897845 751733399 153000437 534863551 592118901 40050879 329360009 233789137 494091483 851213875 695232309 772405629 789692425 592485215 579256959 71716341 428763375 402508927 951106555 511357879 2051 196496019 623360323 528807817 951128645 393359455 633272057 701384307 196466743 994055545 329381321 325478093 351234795 582562613 968277347 786364209 435680503 216596405 432931713 866405251 570439543 218711267 840993511 745098737 590525713 108896107 674384479 110463471 410389751 641108937 732912059 176838455 5266397 228589883 590541015 458083537 82393855 258844873 984395409 543911431 587770153 44818501 562866133 21648235 233552803 55624521 849467545 89195487 444829511 767317551 559246033 619004801 925366129 631846693 28990851 639242947 352798475 595451675 242796475 113547605 420118399 19239109 909457287 900292405 618744261 73591719 184699139 537707429 619188059 89398535 741348689 171427381 547776841 347335927 65826717 890535353 188803867 526086991 999006743 336413513 736469481 260919471 686713081 752756557 547003215 673499519 17387401 374261361 30755443 156054255 878499085 708510887 111843079 86286327 197080025 685987373 801493055 649068119 32868935 208561287 245290969 144759195 618318265 166970753 623468827 145931277 469249947 893425713 404313043 61859275 525657693 471585265 763646297 559171507 639939195 802992997 935361419 325629035 524583797 492543867 148339661 692804967 459481815 851167333 323614737 914577885 697778997 267539107 968973257 320867277 438390053 207771637 859493109 253481729 72246859 410045035 125788445 238002697 412222035 31995223 459724365 696586043 544368109 683029077 620606491 511666105 887772117 215566409 825403049 80810093 609733579 226404961 108635545 657249027 826279835 141518609 91297049 393045751 974702615 79837973 958075619 910033543 340127259 117968497 897022259 58533821 702043525 533172591 751237071 129927527 993926211 318930855 89990919 673252897 524400453 802375925 617566383 330890567 737235847 347730555 504836903 49518083 343706889 737998245 998968403 40855109 57734103 816970025 278382755 659470791 869977349 367430147 27287055 842201863 66832809 107576439 905266961 548203085 139199463 705935633 8541619 677996715 980381163 829005223 230662785 690267897 553108709 842597969 588782993 556346071 930618385 579952247 78924165 425377709 362562479 54606789 367652479 626704299 281221133 236065069 561297711 631255753 192106617 462842863 682125257 972517833 520537167 201675403 544628495 750035761 633779699 35177935 221079879 494716499 147097547 100851665 802852667 755202631 792522063 822585579 644179781 331090669 989149683 670506177 408333891 441817579 535498815 370935105 580748443 240291765 733279929 242602911 447307065 365366913 955027701 520164181 603889301 124009297 278599311 881586475 33464239 862841579 255688229 474688043 601608459 370709729 64587877 439323303 267118007 576366217 722033407 25890625 138767433 473424903 891429807 947739607 352860643 553783103 419797303 424591003 849208615 860510437 494526559 729826045 31748421 464352111 422236411 559272121 8676595 325584413 848512743 924579031 72737135 272094201 981103361 66620065 965477759 790358737 351532087 784573099 180355699 860988481 974922361 367923667 62405919 55933605 225187267 970178619 679153891 258823719 438254871 104776271 694088355 601092535 8548221 53626823 305148369 943989263 698669833 469661851 41663839 748418221 569885655 716020753 306022095 729250523 573168389 323619765 596251941 981030567 480488385 556145755 576727535 677555179 772963389 881880865 242434115 516335431 107953839 763981929 984748483 267642659 404655199 341500641 584714129 491980975 804767379 437066877 810152285 687506149 634125729 296921463 790210653 984001923 506495967 316268375 566504527 88753169 440356019 956513253 887508601 962302177 61184901 901997113 246156971 580147211 151925959 346263469 491185209 385380463 497603829 230875365 625995011 842816181 390551953 753436369 663329903 919038029 942907939 353457567 379794537 736232047 763720511 695788497 306351723 760609051 983395201 435054889 328299631 586765853 584323719 309772721 40639999 265573377 146674175 812833473 536483113 872247071 196112539 962724341 188555647 9609883 921996563 563349551 73243941 511076185 119959849 525969051 114792381 588298509 349007531 423172527 613321079 422355757 374340199 195537447 188746761 951984633 834801979 67226631 490933169 828573051 298609925 666202011 874471479 340017795 795022771 699855991 100149733 171269545 822779959 142368377 441570967 428109387 732276105 627606211 656781479 13052307 819300267 779766979 469101563 842161523 424689835 442127659 334287109 357965729 921441175 733489401 608185273 974124189 261780365 266173043 261814419 628011185 640146605 64116257 252815261 873293547 916311329 530188249 306494821 973979685 38652955 282127801 733232125 305264127 298931415 154584869 122083849 694980065 909453207 68892615 41623979 235553789 192144547 42372243 87467923 390951495 117476689 10777801 596075511 790950275 332305143 312258793 781048727 982817849 443391995 262490051 556326069 688900023 54244549 383532393 539210275 99281175 514350279 493823031 126383157 948217401 37912445 143997395 687289803 36327109 844539753 599628839 506757963 683415339 761807125 939602025 706297763 393086371 60374545 55984149 142251847 715131695 876329467 65025005 334410041 985478293 854220659 546973953 47677437 747201383 5080355 249833891 468813475 291910909 187698877 558281841 679348669 268864375 527124477 187022157 757235823 933934781 437323173 827119203 837713243 324298621 28996735 462082859 889346481 854065205 217409627 200077149 853477929 862102047 777629463 579963391 25467901 888952903 843612563 65944157 225925621 789724285 535975097 333765899 28645217 659202137 252125307 366077159 901085975 30268985 578971349 397008403 941764723 858742855 926062281 97197309 959742045 639502709 940638561 611382105 438146113 681637497 248170157 780753697 229885209 880350931 667914443 182319515 300096609 645734861 20828379 145113173 350466847 302792055 444991495 592071711 358616289 383232935 38367873 440492569 257200831 912324351 880507015 795435175 808924759 210459113 150169429 640154739 979129037 976247697 853251643 358970739 504942547 115332339 147211145 207756257 923686555 835708877 598610839 644562757 82007269 455945641 38644683 654592873 672771577 601126613 401186189 990734689 161144739 495352171 741658449 58572937 534721337 345091659 824619407 640630663 154562715 223886877 356741579 372238661 138033967 955131985 788508047 386380281 169172195 515428385 243877227 286387231 266899245 321577867 747022845 168924027 331282955 46070359 786468581 154799129 765409539 51804951 352305613 499700557 444832291 540126243 495354217 904870069 497856771 793493659 539159153 825781555 914303937 482375527 586213545 463404021 953103361 757085239 520973273 863285613 493294069 417384067 338930903 963139161 109717327 673715853 735290491 24020157 293502543 453274715 743120551 910688999 120434877 437146303 556793157 601331815 439322853 602036817 667853129 190368029 1487007 934441583 969407915 905153579 891412551 6142533 301145199 914640127 39532997 48457665 223529885 448871501 74278279 981270171 434127947 687485711 667034499 280537427 126555025 239955853 317710901 109208115 821373841 869846607 137986473 198869579 29761653 624667437 250375271 265901169 905212273 599689793 999747209 998768201 868043197 231778545 473839277 795850039 607955869 916614887 330132729 136305517 207429979 646912281 184678425 266120421 46589511 621804227 787970117 356819551 96742847 43990633 974762557 802064479 322722339 125949655 737610819 702451771 16079327 213826081 384857387 544153863 57161825 816188067 418157893 568415397 455490857 318425091 958041459 379194045 127958197 839192107 450159643 306558401 204967823 478413395 336170539 128593381 198699853 709705715 381163545 345267757 869240711 663207377 596893923 250016609 548711135 756150009 524606225 307441423 456543231 503484863 153647021 378999953 563511451 721323713 421644625 339595783 799754347 889694689 5708571 974541657 420049971 587950413 505229233 248664887 610863293 866817143 781601855 678430235 34089947 215569695 866294655 480226625 405993319 874658373 544922795 684224951 827119683 116721463 121173133 746296137 670073177 534830219 269815921 28851089 37263517 411162395 537952559 899779309 709976071 355696909 20921891 278879625 369379995 503322315 666143797 502213715 314817891 91611145 196021459 235243523 837661297 325569223 997393139 286887451 771650527 283489351 206974995 750996961 674950351 147745299 123650361 573748071 39805547 312657667 418462197 480100483 149688551 580760113 734633819 298935257 163581053 834019331 314306315 261437389 622090349 909032741 627191339 602294163 331875331 451932041 370648679 26221601 888678287 555538285 455951609 347730743 297107823 466032723 627547547 756145759 991543043 620556299 233595287 971657193 296384951 12214697 687075513 33629163 977217019 405979781 60981337 718952263 529450569 142809415 680260181 520481959 722697765 160981211 792071697 358298487 836822297 750300019 692946301 412277491 433477559 31422349 113539087 632140569 341668505 817665261 535474117 906686899 242652001 301723041 475342373 63696719 293548987 34175225 174533439 687342151 4006485 976078485 358365351 485071803 427106799 63216471 111877757 377665171 868523079 832929389 970191463 84522625 763535657 677824587 981294225 633955065 308714855 208682411 313377461 269759551 537924571 193683093 851245839 44828249 965097063 811516753 895929701 587651611 800901365 563421047 520882693 471390233 949426809 154435809 651770055 312305075 398228461 211618485 108818951 994346517 589692753 888900189 873239469 563532077 518808753 875823247 405254183 989376181 691677983 491395655 35313515 772536617 182130101 840274375 49726969 630231767 708593813 665261983 973689811 968744649 940846571 322404769 458208651 371551709 290033895 852360171 506416949 219225009 256353987 774506973 629340529 785627563 389976515 317207337 223672421 195422207 22777393 923012287 308192959 70665379 375845727 912495581 547409587 187134041 219647143 373157127 281511171 674073511 782651501 664500489 947274739 155853791 918985495 160057337 867973713 754832407 978600987 758149679 532893301 384518705 319092979 187906899 981187900 299566039 548531231 812335953 687231245 429376373 392620075 255532893 490298069 990986055 130449065 943905009 499500299 417278541 798350643 830294227 738649773 229899595 356296811 608729617 75391043 811442647 753623805 397210875 523806425 162067269 5256345 913397297 953770757 330139575 326675705 861985687 974583783 586908439 731499747 660256599 94131237 155172881 491578141 424389349 581084397 830073121 205875579 192726529 264133875 96883077 279062487 8144299 898637689 59213381 415854355 683553587 635325251 357773107 584939035 943063339 127751585 273478633 454277343 301346415 335917415 877275841 754617689 213298981 708566003 852233193 303236239 980114359 751517743 574047313 744323463 207394779 47911813 812180141 883375701 16443277 792132845 190795905 741642003 165801489 383672805 502270739 415441123 903949043 221842805 879400053 23662321 772268807 953643305 562347135 700351853 60445035 528905239 230086609 872974483 529217665 306998239 785406675 436574115 708958965 4193703 339802293 835721705 673802431 544390941 792550511 729182647 906685463 403651959 889010625 476013415 682708099 660783731 172906039 733416029 914607055 347698519 447781915 762744319 319800079 572705777 589294987 660304579 716862881 288868249 842179429 918300963 955871785 744959021 500162127 275195553 291775887 36706577 339291581 745233093 36816397 76794421 113902821 737165859 992613915 401492241 716896711 587672405 750743937 837824415 390023213 833243133 29158471 500288873 583583911 213472711 448557509 748210811 676157835 821539683 745733525 94280299 889323515 961873805 956412061 314505049 885756641 535305221 189873671 294257899 965197289 286894745 131300937 530206543 182392975 460321303 109250077 223135291 440572689 477550427 231121803 733616109 782043513 90842695 692753117 292933163 551162517 548291783 267234727 669672773 231281409 975247819 242975685 860191503 857529369 743000655 480061021 720420327 447021319 484230739 500387035 895813047 825098683 583025637 741746673 478208745 447616495 473999379 296959645 546350453 815272993 808497657 788442915 466608603 937429657 814749113 463158287 541726751 731377769 26270591 582420789 707688143 931987561 430743163 789034163 705804289 653898297 838854121 426399723 816226901 746396481 435417099 50698891 553679857 444515761 763877161 382478725 46792067 214792065 739716759 850468887 857319745 502771571 186104751 58241733 161383913 550866445 222317781 738447453 968480193 347231393 737674353 300375279 769872793 651855943 863149557 767875291 587369413 984706783 804179677 716777413 890966309 180717071 927097257 481348503 326155805 426094667 411212005 587346309 455569823 304189385 743559205 590277391 668949533 927315339 302929663 999187191 9760409 154238039 652689945 132213831 334812053 944245695 466914841 918294359 412427301 510635289 215313591 422647489 985308889 588885641 62731687 249116779 393159893 356970483 624339377 150308479 898970299 532590603 260080027 525124723 210415033 37156679 23912251 308802051 958215305 795032807 90874983 90753587 86637671 209468917 60631555 761067599 455737371 547255359 39106811 545259243 959852783 242603873 345420609 835139299 507873215 972830135 878275275 7600221 119061475 576508267 980085409 175841733 547927111 276319597 170841545 453123789 605509205 524647031 339990105 355101043 773450503 910703623 656306791 775800059 431301591 842513767 720016665 806631155 4148175 161874597 262584215 235608619 553251453 378148251 249482259 808483267 819623667 5742825 534345417 278684701 906491605 572667639 37782265 978914791 578240325 401930997 338650097 72267539 485713395 290494941 897067519 238024161 965152277 62930797 79606143 448246225 362825577 307099949 397979093 556002483 255929141 329303919 973845097 647136151 521326921 479568971 789405613 909878749 131497721 744821921 155505693 739699753 733599269 794025753 569650491 466760037 727368243 136321827 20216463 338315719 957724943 110713335 706041007 292277195 858660403 115408277 772403761 967066931 960277913 673528265 668531387 763680271 761883339 58950943 393145845 625747377 381370325 353672687 594906257 801637813 441715279 667853149 557495115 216595201 801673303 480671309 171889125 799460031 387090833 539741811 689951783 279461223 915339821 819651909 199412453 722651057 707452385 121051397 416949499 821711779 21397227 158622647 886646345 570284937 943992081 63550001 465919673 543970039 464557731 418358025 480928061 434538441 967717239 252251549 38360785 512216871 663142889 181554967 91407735 436704375 735208927 426982761 266287927 966332531 766559691 796468297 960864551 546709523 856340895 510905911 893080669 486431645 660291549 280948605 890853119 105843101 188569225 960255785 691701045 495746537 850658865 253857813 130523185 347857051 932704493 514939361 729048367 280658711 336289627 66095093 102885489 17078539 194730399 379833475 322047551 139446123 901614697 552253311 320156143 883039601 933559279 750011309 486951639 597748645 516510959 570702229 579303773 857737935 149060017 107747973 263699433 563528967 964095745 341113751 473107951 653613735 949374773 191598251 534277863 130923861 383271725 873569129 152621397 228851451 108189519 536601665 435519425 291026127 320654471 236703083 823262657 121122893 934393167 198472169 889417451 315695161 332545699 627287169 650645989 474951071 382702857 915778757 716616535 854290643 546928015 70398477 365217523 828010609 339156685 399176825 230962295 328320095 962458593 946321393 128026783 243047625 498444655 523228451 953373755 650069793 408169639 163754125 377154841 391580453 152056383 642917225 103151895 733605337 542838135 336910531 510589205 54672521 792258833 402992235 529625085 77270475 695103071 150965241 399028161 171132537 121831479 190831563 113497183 56014519 108299765 875768333 351732435 526995187 440498815 965299627 403227693 413910239 203957063 81146721 280635005 143984249 324587329 880060077 981876699 500563719 863331307 430603481 32978285 88135185 592285771 537485301 10407515 698363503 349960687 621795287 295676121 53639995 686705647 441718049 139493663 391814361 845149673 617834045 357106289 939635191 230237441 558978135 442455063 256051849 737349863 402599019 287775335 988003531 322590931 679311927 168492985 426128961 237206655 963026757 196112237 665884341 730666805 200792547 560371955 998458687 148588737 797842475 130757815 843774779 273638521 853161213 443400503 705289033 823862333 389352705 768325109 499880539 902092147 691469223 454520955 136504481 277094409 600000041 419721049 343518873 796578677 652890757 911821101 436645383 306940851 369160323 414438807 623682295 815720527 43066549 809975361 78086333 262128465 292831091 918681055 603282165 360678995 237348829 425884969 465844869 276835187 831705819 81917411 996544665 533345877 463751197 747301335 738203556 524875051 815523099 538497493 586392675 65668007 521820183 666969275 442063577 399207433 512842519 494560361 889370451 106575897 146338541 479899337 905480039 225929251 875122225 559767247 477821679 377414655 293430849 776049011 901056783 744982025 108182089 876447417 975733557 252315177 128158775 686899883 928769043 826914507 201366467 127799897 633193129 494674921 854371181 250723553 186810679 856228351 336406911 226363491 436854349 631314707 704967433 799909129 971761597 660362165 188900065 712038407 108466083 584014329 170610859 898572949 272047973 52977791 627423179 776939767 937696429 614070635 354247797 728148855 877238385 806802799 703936157 717057383 227669997 583770813 231757577 683275809 649306019 512081431 495256123 978048519 533549667 797407167 484930441 197960067 88605759 338083463 663377927 169473033 915432853 141302981 684436887 119700753 225422855 766871381 322778081 352139551 668005761 948156575 576000343 807860925 743896377 17289105 613581869 632983931 599906475 812880033 437581671 102254327 273658011 472393933 739025869 810916305 734418453 88625819 912212205 669967541 433289583 916898587 281298977 584050001 188121409 540574945 790401929 452146533 15307125 696887565 262157069 340146607 123758641 113363523 485760349 586212601 619264239 732778933 619027187 452881177 98357607 802752021 53796107 684904935 518035617 322177189 557321907 412160581 610895845 87671849 349213623 600580893 775736267 446329839 887931825 763551331 578839853 846625487 51519231 830318609 236107311 597286437 18651597 935540007 33229631 705629913 512218889 878272689 313345553 561074777 804560235 975222463 886391457 60830107 98491509 352126319 647061041 635272733 899534189 737211873 501792337 109824229 467564133 738838337 315343827 89317251 72275763 234825149 384761811 655121163 877826683 128285077 157255351 168721693 92719265 94578183 761871145 465126623 525232345 685390431 752882463 975550973 787578905 975454447 254640341 301104561 252731425 781029393 438962127 870650293 80896123 756635431 435027417 238503763 102414711 541710747 647706631 41864279 703239979 348781537 567435703 93384729 288310393 441425009 342376331 626432629 639529483 622253263 334082159 241024723 573242701 930110085 893231259 307720995 674843003 145567781 458247303 818192599 370035859 488911945 629389817 304857071 583639135 676359315 27387645 818216945 424292717 410966191 938319593 601539309 431796759 216331597 679790423 522581111 949451645 236948775 15046443 425091759 862796935 37299713 987671955 720041787 678473959 843397541 453381377 350827591 607959569 848660709 418194485 930708365 959287881 594533531 548042543 394733383 129983383 586043561 735872575 818844991 45566665 263897339 252937975 108209603 348903033 433443969 822379827 5807269 164334085 204395573 979572247 266301001 862982297 321485851 455951121 300831377 852750371 10204221 969423573 478052333 663282781 419486125 469945951 983554131 688191939 914140549 361526259 311846977 145529507 427136487 889120285 160768959 820512263 731022079 581538481 744069977 553930957 284669437 69944779 450469669 863876243 426354715 144642257 332033475 729514175 541488543 962386797 783365465 484752773 650014415 968873111 189753491 495040731 598440703 742427015 659622827 314522499 751979913 71842499 625783133 673468419 731622095 816123671 196650479 272351661 347758907 335610519 811252271 115088279 910163521 371305377 166752373 496522659 849911131 235885527 843787677 838219131 849469193 122754343 232160785 165691787 548817367 243171011 440783547 574772751 33956695 919604777 164971027 298036231 404264227 978281503 47686935 304390711 122771423 419388845 758158927 354155573 532207153 922887979 74474183 119329621 538449871 912658227 389046549 247547321 34363507 127603625 694044249 766687051 546027229 328769723 676824377 994336439 870575065 204889053 217853155 656712313 164833081 617342153 639050251 135760847 473342679 364373639 733614067 53107137 300036501 624225889 777570143 94915619 534575711 548026603 478840223 58792585 964092197 637529345 976011141 189067093 317158371 156426951 77722741 289202351 939183513 482422445 134060881 774476167 190384979 617610851 246787979 204006037 581922083 35637223 771033621 509614939 719354147 253243517 486340207 948033311 463599223 221267375 604741025 150451187 257069637 323043415 899543351 404366255 590312643 861355915 30531143 750629619 269034539 525349299 784100977 612683815 967142333 436847483 99110107 110841467 155317445 343001301 507515187 367828711 452193175 85080063 497482925 283046699 984533641 211165821 103013643 607285971 785533183 123839517 247881617 709804073 924033637 899288047 452613135 389254987 166098731 470864723 611828697 507363095 727402443 812316395 963839183 401741875 198867403 272391077 828076629 875038739 85537457 732037557 516191835 821542381 219069713 520572821 981426263 431395265 365439877 114969867 233176649 549669721 666533809 223418405 370842549 676131141 249526587 599857717 453725353 844643803 338303195 270181079 942343355 21465661 587126085 727086319 466088459 34819413 357427777 468122539 167130175 700373199 59032469 162083199 656422277 788013095 508860949 406436647 48815507 974377371 876939419 805852327 747506343 918741813 148953355 436118601 93695623 523122627 838104907 749069733 127852417 782304737 271259217 577334935 891772269 291705067 481076503 931354689 772446377 198982667 916533663 695532047 77969179 40730929 550123505 288301239 621942063 438716439 998030113 519491893 787664605 978751291 474691145 33638349 376802981 184550629 388313485 256537867 411249801 986263591 423812373 175777989 920898843 890724825 615858195 291971859 35094641 173679515 369068993 83050845 544060711 765235413 617857125 582989647 814709093 694640567 563281989 568677851 399260121 176238649 759817909 586094145 604567737 930994973 348228881 574886657 949063363 598340329 630399415 516809961 692020285 147323119 909099797 453354511 505825271 858277447 260832411 232424141 303543365 817266897 890578885 907747527 968663047 335995443 387255059 985785835 510836129 511329505 956204307 227112301 338553861 985180433 955541331 153406665 323393957 428433349 65188207 565240513 519874945 743658947 841553419 158595173 7253537 707750557 965678543 672366087 935502993 345693097 382285933 1577027 524997481 130300171 84458913 342373117 493566917 996891815 99123755 694238309 515763789 37415217 256954073 48688107 868725807 846325535 246607225 957216589 963407393 393135537 212964327 385211277 408531809 491506673 417296135 381997563 820928695 104178093 361763265 581139753 610561389 45008513 592992263 686690805 934248541 325357769 609987541 45925505 935592677 47123119 425457195 842663225 39026155 184684835 142805015 491618773 434856667 43242719 147160999 874547789 595715247 973037409 32570103 687017959 588751073 530355699 859934507 479932975 417311355 377776803 633453419 527145467 691677449 837931851 543583209 363403363 273201571 260809355 967029985 615486929 552715749 159194827 990066069 905805035 752294647 941289275 705725261 864232875 235237511 611718357 586730589 338791497 962607051 315647319 552587041 497629261 695550083 923283529 688140535 984033663 271267825 753164285 853054797 148332279 484401127 696010891 451785877 484015631 261977529 321469139 36773703 435587947 783089991 179805565 915137253 789007867 98821109 504702457 408450301 115458029 750882741 762962815 693141533 254042563 4390393 968725009 740655329 894551871 564818627 866063733 125722349 400487533 436654999 487559741 177831401 136767137 965036675 459058879 552981127 554450807 98016543 536357919 42454403 444105685 70549383 781877569 258988703 295313637 497439589 800995801 983316387 281166109 138774243 193225053 94838629 440356153 168080825 94178831 777242811 202614077 390826533 314827253 640301451 915751285 775929325 616623071 123021245 945921397 665024353 534365289 909613123 723497243 537315925 949874927 41002521 330203017 89012009 551991451 690045761 204470317 852079555 826905439 137936323 646446009 893041809 509124337 102703285 936173867 954438535 959122897 160707885 206349001 525230887 5362761 672134993 802777371 608858997 157323111 564604745 865846263 613799679 157489669 821696585 313924475 653855709 323469251 120877961 592800523 990097579 424270857 465441611 830408273 324614035 431203593 262113245 691505217 28212031 73859767 244696717 746966555 205570023 119648215 925954233 377791583 135027273 308848881 12237503 627170781 681810605 413585235 55735055 732584615 686580189 669356567 486483221 677186329 361915445 1230109 546915919 298324185 349133455 336663565 775381311 641981393 276413779 983716183 315510893 823676215 480953709 605498675 44524399 554713223 314201943 51697827 393655259 389586051 382383629 672383085 32534103 350917179 966204437 124932643 431491467 830389761 987416189 326932765 439095083 284345459 863075805 433814395 285999343 666734451 238928211 736241445 300513691 937047853 318706051 340463305 284170231 411921689 193023389 122602213 98012121 666613999 960512087 25075891 556727575 32133557 821381871 274643775 563538583 720534199 588637229 177061465 560363329 442356361 972806493 381139353 131737865 416857609 540324181 485115741 12974055 472548185 358659445 676560337 747327711 654243559 266179235 469262305 816007929 241330279 100820045 221939273 504082507 267189203 309352809 223954055 499943147 876442737 617015667 26227685 923549183 922457551 539846519 678179443 352156335 353736893 828723965 258430471 164338991 490704987 435182367 995355971 596270007 217789709 77521275 848742545 136164235 700262269 816440117 687591709 270280181 396991393 212305405 823154659 836577093 594175923 859786505 240941217 867743193 691721019 303795737 204223713 955994897 447535107 122465391 229389553 9920087 760185631 24497629 967430379 4466205 366353899 581116345 817506735 142980321 664680205 422906847 332036069 504431135 358476143 952847799 996507901 733020519 67066183 883994415 998140977 517993289 912229137 880305083 877902719 450781789 718360721 864929629 575179951 51718729 987772371 381588888 662378579 615738551 892817451 5274751 729741507 556615765 823518519 640332195 521086239 565822945 628649433 282836773 595658319 376609565 345081151 156666025 818065411 303612371 327246299 687880287 616290739 361040085 77795435 559976959 959717281 357266171 55404275 229717443 437617619 653628971 792232385 822776181 487544603 633942093 486260325 320774497 467921937 663097941 850030271 146807645 767230995 126888763 19619313 406192075 245455437 208034051 280982377 686380171 161414829 762538935 604287451 239195665 161817835 372641385 533902403 293923409 455670663 67692593 562628835 682343881 294881483 198529333 322421835 32761983 915221447 767145375 913195595 987250435 576998737 754665629 546867971 265717609 102870797 985289583 638028247 976044113 540365407 150485075 27224689 641881055 358097787 7698835 31976391 932557507 768874069 343693445 564382997 652471093 853021107 515808385 29865695 499979247 508676631 803764713 498849777 566164795 249579223 188324647 443302495 512577509 151235847 997686703 687274629 974088261 38439561 880724217 43158025 385716535 616307461 301924233 15285463 544506147 699700461 470871529 541101089 541657335 281117301 665118635 138034533 515997993 617043105 154510951 468062055 732473015 721521721 957766851 395577651 886772775 282524875 78055785 115701533 671292553 154549681 238233609 181596099 89582705 318393099 651000413 189489927 405062399 792649921 118373673 143201047 638332119 931789187 496793399 877654885 302206763 16580555 947748953 995024305 928368813 156652757 325132903 427456251 948908703 811009967 476947527 997146771 795097539 758130725 835503331 490192137 789116269 659327441 248671787 357999933 205008493 20008209 176810521 316119891 488333863 978094097 34552753 946191285 64050557 852400063 406797309 142923287 874378719 193891027 894732047 87895673 38974019 982840015 856036095 720680477 798264359 609623289 27538165 792824973 657983121 994605923 857017877 729691297 438427921 336529891 649773717 483666293 501970107 955567901 227978413 623165801 85951791 103671669 206257057 822398255 26818449 605017119 478986427 711384759 455879059 800805905 667117645 960547391 364105319 814999307 189650097 19333961 205196751 32837271 669405001 425967525 368854799 198981893 35448191 199953511 821316085 733673579 999413703 108771559 407865817 409296811 156950683 360365517 894248599 52285807 399467899 234524165 931857303 639812899 102252019 520400321 570543815 939978243 412475541 809300351 253539229 160590349 591201787 537921797 62369303 785997579 330574279 414793307 394446269 750433675 320592803 422116567 66151067 555825639 403145283 626843159 401740359 269299007 927925343 183796989 289867489 480685691 814071741 134752951 112999437 533296461 34845219 77605305 285964797 934601513 360234595 858864317 308918885 128895059 656580443 651516363 893541249 232989907 611369709 702329643 235492123 794250615 76919551 273519221 871845247 751666393 964759687 827851139 567615109 956413015 549133437 454471547 176352395 96695581 343871207 975355847 365414773 389745433 561407435 283293981 930671539 888421381 251771965 426417273 360706363 792532573 80875863 396814365 907759243 755428463 605738299 200331929 835318699 664975687 613891091 730251711 689946407 737244605 615896339 830351789 421429013 885761909 261635957 255516611 848813589 313370579 158057849 855215027 848001101 184511243 449043307 24733293 939968105 978161939 996447901 857380655 556952227 970202797 767341161 811400317 93600183 857547359 358587185 4478243 79700459 169726843 146556769 116175159 244143117 291007767 264102505 912089873 885597301 383557909 761610179 970054233 751026687 256865567 922059251 790751483 443154197 1532323 603907459 388411947 115735201 393476823 600364037 807644515 540317979 728906689 262067989 97040745 879247745 127374115 546404177 222712139 654680155 842630291 681716581 327840089 160700083 295189349 487763717 54052403 865555237 399936955 229478379 98313661 181317323 579371903 579969239 680454177 89424461 567671645 869383829 247441619 630160599 153032657 870599927 971122067 97541411 206741017 427008471 554020195 81242733 653157693 733637145 528200077 36943739 558641425 331338915 532735145 946230683 505196841 40001899 800309649 152014245 156403175 541918315 906037867 738123511 606804339 784502947 927746465 504038005 861131453 182228767 752204009 657330063 709709949 928767985 971223103 203904317 144357429 394057013 688083175 442817273 451846955 373889033 736389741 390804427 485479281 58019227 662678437 639220547 817668831 44049435 823157165 341293687 118985749 731258307 101778151 235875587 491275131 479356889 574221311 812026895 95907393 409914275 676392685 954841929 59260255 911350133 777759209 745000421 78658711 976862633 815157881 281033637 795140463 626105761 592063593 630880205 49386039 148065993 893920463 278318637 540306699 389580689 711541507 154554905 583305929 47744629 224978351 162609007 20130839 8589557 132502969 400417689 68993641 776131229 799206235 267327105 16782069 812865023 849701647 992356767 153543099 963560887 224650391 777197299 742518917 266280291 761600513 66906111 286851043 977160369 9755299 533659861 82047531 864821329 795637271 839613707 189466753 877203709 402835267 472327357 848879561 171424379 361869137 447945619 474449333 589678737 280628919 707993531 31916991 761076243 692791857 561423081 804119077 642178011 138768833 923131231 611900145 712748493 444060087 496537827 309926641 743764433 310889893 84777919 860144833 324808921 948210535 520300493 637900221 36518367 9517603 524983147 298177295 99308777 646745413 477631613 902915751 599439357 714898815 850609525 596993087 524522031 128828879 139364933 477071445 191891611 342235257 582630765 344852785 779112287 420683785 641055989 567573989 384523945 178125395 522175337 772195657 743936425 816248693 826343649 142766845 628912539 170854609 439536633 548478569 40469695 826554389 497519321 973688253 563600225 375008307 371370543 903440113 339381461 85601385 334599217 825244871 386178673 152772925 527228829 859759557 688372377 856124279 438239929 973216061 407092665 262011693 214867541 672067655 233582401 993225405 645882565 237293763 318339245 835745739 541643495 125486167 589798527 432617537 923266341 525265783 173474623 114654549 922736745 818779225 26241 58094721 521191725 876351999 437556193 372279949 675394667 731580207 837014525 181902465 508198061 282687867 937202563 656551605 772648703 922379321 723752995 562267075 402525177 929813389 819001753 671601041 977923255 635647323 549609127 96775753 279577057 367483479 183418901 925163873 223641765 872650487 401463735 204821653 820947385 391475835 588024679 664369385 121386587 420259821 447278601 211298729 963873617 353456923 59195013 708028777 13051883 960805281 540520653 325657349 598753021 166200795 535505117 371972259 594800615 283504115 152610231 389388975 60416399 639880921 816134755 466540763 913129313 904190279 642826485 981098789 276532821 220559547 265345417 567920337 354249707 647105663 52846909 947494765 829560615 944689313 954356543 269165001 674012055 583196411 320874943 170259717 403628115 517720109 73465593 484828547 250275063 473747615 21192239 318334961 432567979 216146817 829321385 3444289 772229405 898315725 829250237 164849331 154141059 529241409 574067905 84613319 93861787 464414565 752210971 747553869 1152685 461850763 492734515 77681749 599859331 427657419 946887035 346111039 996127865 973074181 421395055 401387695 345074281 939591137 439488655 657527439 946104761 83575503 173149545 667764245 445040218 543611143 514013579 288922045 847253953 539421835 149308307 30244169 643373037 593573153 120375583 108587209 633645667 451261275 828852701 570265999 65004849 528801679 310817407 161456439 832277487 205022433 260352957 249781927 952429241 546669109 236460377 733350667 355438903 744499007 898132769 484088533 562962839 586244469 282270179 79084739 807518095 693720857 609500285 635197145 942510431 210262065 866265805 433719139 722334409 212141453 664801985 161715701 31349279 352599497 261330763 861553261 77975861 525462081 304611683 99022317 19615339 929117215 313141515 996311521 563001255 326383445 689084497 671443201 204573525 870221721 821399619 585619013 165231 873275243 670495743 53652467 111937137 446475029 552511395 728762519 828078177 400508325 46026077 140246023 477993933 840264181 116431967 174850141 727272141 757930917 761938913 730034941 431450109 485390877 828222503 154274709 77540229 285759887 785927033 688960793 40946709 472270319 217303853 308889795 343482335 716189697 627554457 694699291 836169123 505335373 803624483 56647403 311696807 684636193 304725043 712538693 21400251 722385559 751273531 991720843 345840949 375570319 26201527 358144603 185608177 463574705 276066601 686875301 919524693 634925165 146747163 789792157 894056019 508884731 372445981 624401087 526095711 754880861 210009805 881286351 536145781 750924379 954368713 503456473 798026527 475481985 645645761 612499761 906450795 542615085 329237345 957957747 186246381 333576829 674242919 808151173 919524035 945150553 369794197 249001363 348802967 7736431 678367155 713948943 742279315 411915069 571506839 186763447 845343343 861058045 391983385 861647759 704832105 875550139 689090585 115221731 808331081 184131143 957817989 465996105 572381787 323737913 221923407 875107739 3719797 76385007 221751663 633940989 107682551 394599317 651994345 71614685 440393415 396680727 849516999 722808813 580411219 738625329 132632601 163717419 602443151 616276065 498335229 589995997 948121853 286936817 581634707 21853579 357799585 511144177 232526085 567431949 117174283 879681079 130096005 186399101 482960463 49544549 679060047 684314943 233921291 469325029 186776741 417685763 252334953 468179427 370634705 203354295 413117715 932662619 560013347 591899293 685680961 657499915 815308281 43459127 930575283 747936381 460177075 805978447 855543211 624436735 594078139 127880957 723668731 562038699 409837957 133943453 870144249 967225441 203346057 551324879 471089025 700924105 98180683 594924677 749165563 639195219 689546835 801206767 786223699 458940473 627171639 101383051 211725315 985280121 145707919 887056669 847475975 444030683 281890557 725396657 202536677 579406321 46502699 458715547 571410861 140926483 298938059 814396279 311120627 45697121 491751067 198479149 465258197 274983363 906388569 998638051 142729469 902018025 798685647 96280595 90816917 290997323 258406355 98489461 299847765 399695659 901027133 699371279 248826237 89460879 416437743 579629 551796943 74696521 88227283 180575077 814424223 504192497 660023259 449750673 426181821 78914021 457682693 388878037 241679755 392662097 523514703 743633311 145267951 252810531 500924099 434205603 801961815 416781331 242067063 852191707 33812153 989636513 994388867 396165263 282445715 578638871 177735689 41027655 537104875 304364677 774211635 188849371 173368913 225847745 567035189 738584165 474415833 532176751 355459655 959706187 710597665 430429427 99300269 351237175 718166611 804717185 939282353 442312991 255246361 567368205 252703139 698012735 934483373 79115357 443927265 527467545 147952585 979572211 330732491 609250173 371834039 493725733 212247243 569185917 992879939 715393543 89300821 968958839 188797893 919329147 108039393 654408205 124861721 348960809 19914739 369149483 437750695 296862851 819348245 412715783 864407645 370807485 3642329 591735837 914804145 183855067 846977497 901260337 369100961 647793317 432139703 658146385 517863859 519198377 877262365 395154637 873777143 549143361 916285631 262101573 174639617 884369037 959220053 667428507 513439471 557289077 460189859 105776125 830954347 588288425 691062643 506758109 107873951 202582691 300153239 486258681 869008197 821145759 571266281 929655127 969364119 447855275 468876363 917101375 445758303 916591763 404982439 604591177 768680169 326089201 84424689 399993679 400005133 959471907 684763681 173000821 579220519 240360533 924153915 134365737 164119071 426384501 971957065 287838751 758440803 567528507 810309981 883178579 289834217 464306985 859087505 793424903 262791215 376742533 255153671 325326539 522712125 69797985 976763113 734884209 207165597 209218707 829946731 12698901 665575531 427568575 420567493 131097629 383812929 391004745 647522621 885750067 167640133 819084645 165674263 296761933 115072297 492911113 499868587 110230439 486837535 581502965 941402961 408240837 340239849 18575539 572249963 620968307 922472651 899391635 972545381 930986181 70807443 904011179 335906223 436079129 476778905 709467357 485697219 348914705 164894393 338448083 656752677 200682393 332471899 156124921 358536031 33790185 807448685 887482507 672491779 202484345 762525285 94011783 209182635 997144591 719527489 293663671 609009913 753360311 362655625 352046505 659074711 60639943 525760583 579694007 514479417 407716569 131940887 615408897 32814489 753238225 939668243 962277999 754554743 934628317 759178465 30466483 827040927 905783919 425782707 845957185 603808227 901385543 403484475 541570141 947566109 280068709 332107707 796605455 997065519 732454425 327090935 747121701 9787651 991749621 790888765 324081465 225552013 604054997 334092389 983472809 167683783 944222429 104068811 98326945 124579761 479978109 690660441 637953039 923409239 485764963 74082681 859210669 202585291 754097809 785101859 400824567 808814375 804062281 74692821 524253243 103366797 472226583 910705045 327568517 612064041 217088719 767849203 887974573 928235049 948232077 480077573 21510743 750230221 676864695 476408935 133463273 79823187 51150327 303078719 960597137 953328135 781517893 653168191 446593867 665876539 612987097 580837787 312166359 414803785 643180089 552796175 363556539 254660499 467151153 523347429 336269129 369621893 143721429 181896683 280705175 988943503 517234819 772805237 334530185 405592619 973704413 4151905 584431811 748651743 304445649 467539479 155074489 773173553 644009361 520612485 276640671 187508917 756053147 989575715 249326971 483177221 909815477 45432811 969269777 462061763 347283687 834089061 497302769 269951643 695735177 479553697 230999925 653486653 436653877 198820149 517911997 4606819 918721999 238712637 7194035 948849875 165770629 202367839 106911747 476723027 48039883 496247501 110918953 924766903 834755163 744825915 42686563 974583513 622408253 476732647 392500921 643407515 46141115 154474391 872364031 714922217 344226921 299914137 834976713 435599795 82187299 702044613 172743801 184340211 928818703 514672505 528454199 37565359 899720855 464031641 28088819 210523373 949892465 330186645 443257445 147071169 956166809 209520227 850480911 562616645 349332307 880197507 808676151 726880155 113537835 104421879 679791855 368668399 679909621 384363857 688283663 137236337 551391693 270690983 460760887 798448989 157851161 971100565 277769423 843482611 625768069 297803587 691539463 103737471 215158531 369679709 994367447 873050451 669965777 227322141 763450369 161881801 345076339 724027455 604355595 47204933 775012023 103042569 334756935 348378925 394896813 214815819 600372939 839084535 135433397 560232537 508656763 398548765 46509169 330978833 713867771 306773023 740169167 922146013 750355647 882554507 811136771 126551719 79934973 17094895 208482439 768192231 504117685 523576807 243220513 501020059 167575473 276316949 583311839 447618635 495474305 443085349 672427283 885154051 779979387 180294599 852329817 281040219 683738819 664370871 858904981 156619631 759397437 652627637 660224245 37266663 78967451 547864973 22094829 554193391 445667159 848684051 818364729 6881857 342086319 347467549 415900893 954480665 373566125 498984079 328078629 921913661 253133855 573810261 609728421 939538941 298109857 928654175 37079609 152740397 328738447 264185001 151110663 413957677 549360659 739521075 746629241 948667361 764509725 302094857 689869893 885247417 587182695 887655743 297100391 681062829 35564911 676511979 502867235 270993975 593239933 256178481 418860293 425921889 641517987 640567357 208838627 863911863 22237369 160012095 586580949 910137681 956126303 315968883 88714307 20541131 812009469 953458969 127299801 906713165 639034307 667072127 252273803 647389317 912895913 984482035 764873363 679302569 771653745 568644049 372932471 694424181 882435745 969274749 703528963 244641077 732303243 585381983 778382413 972502193 321537095 858579945 357842095 706801987 533693109 918218647 323297485 680071113 988181115 816564201 249709717 701736617 847873549 499464555 13819707 213577935 344079777 234851761 332753467 506760373 861722681 770682961 74259031 648158549 978356379 962333167 411102879 846527801 308596825 918716727 305219429 252157805 500636873 938462169 734361413 142966921 17515023 769012113 851724325 58603945 624244239 971702561 407353903 941229429 813893501 567800657 1245401 234814235 898978511 859876341 563016159 746633041 52599109 820383465 203748419 530214741 58546665 487395595 300663637 625600493 358253193 760516425 133730215 826736233 254456001 130506131 574221335 988803997 879781101 479560677 673585863 921589481 290476855 538897217 67915811 505128753 306301071 280471727 426159587 192517095 332034479 151685701 158420479 815061501 537382421 40919577 297519037 114769653 688241931 127595343 583089833 884901843 547340447 98160915 221748121 232588837 969401003 495238039 884922277 610336003 492015567 581362451 486570295 358275081 962849395 402453193 951388405 645264991 263304647 932253191 740635353 759866803 687874757 211154203 281823515 390675771 660747051 442864737 870683459 437644981 498892929 31561021 182678809 162511207 503461657 378280727 235935669 811536673 633458955 382015585 363536497 105789239 309117239 699936151 978143731 999197065 371669061 146143291 530310949 147187069 112205733 80368085 498758715 485848319 970664079 547583225 215332277 311094153 858341637 139904067 998858581 986953495 806789325 116456275 656754983 673274159 20748409 282341843 40038015 758283743 314249823 237550197 530696441 729381567 946183075 43454965 89766779 980262379 575282473 950468115 764989231 852613387 281410213 402031261 483637387 725441101 309114253 112013409 590427211 281753447 101769763 607540285 416069747 191456919 877619309 871229967 206007119 604688805 362495803 271146949 429282931 192818397 406882601 858520657 111080381 697175061 411636627 384560811 656263247 890879917 776024995 658622167 204830103 320813451 789880139 601433309 718692423 302574107 544496705 960171985 777753949 962553175 568628997 949950159 868189983 17377721 479703009 561781239 517894165 41003339 874096099 158575475 827742231 385570459 97831909 60277365 35733309 513222589 213290375 289563193 552545009 7402319 16553011 91619073 983883995 278756217 719981077 376625941 352420335 623197417 24750375 214369739 394757485 458539989 578010155 441339001 778803157 658601725 357660073 655157637 913437175 905389219 708676847 765426007 845875173 232965529 678184215 344659299 554079739 993566259 723141633 401864993 193162719 552793937 283229013 406831379 81847675 885364057 708405123 425921991 723024389 155355449 126216899 806014155 708411641 643660645 257523735 30793149 693908763 734587615 313200199 29858109 902302069 177499691 307479777 956561397 514484833 51428441 267836733 955550103 657473141 953360381 820029823 69176287 16793497 977387061 744186765 802092943 689620983 569750953 756781079 595000689 881313031 964374409 584343445 878585173 771951745 731899527 892764487 152994585 848369003 797687779 331102775 44192669 709530897 192368741 307493429 342065611 254452231 622671191 961812185 372851093 778130731 469753237 648547457 726356215 407907487 60656249 403487065 93271795 321453777 146620651 61247565 634685075 685457269 992865367 215488025 799508455 496217221 433212855 342166077 893536013 238824775 193294983 528339965 896328485 280741193 100216269 951304047 183608665 518632795 487252761 661136999 106827741 395564701 49603455 20338057 354808041 400288627 981979293 285843257 79722431 707172487 974192027 227990697 606594989 284725199 532646953 79803603 584219395 67444103 462288761 646787957 720069657 212118321 587364171 821789209 730926165 597974685 946313959 904349965 106766623 192744157 590964761 959721067 564758763 723466573 92431927 40452371 15064113 98257555 299781923 323985837 212236917 957666713 288630333 559309737 389640001 432385173 429433209 901431873 65930021 499201027 885513803 715417459 728075455 806682023 285713585 805940999 380012463 15396237 727637553 684973455 319810463 419257097 447611097 328061795 275548995 576460729 739338307 272424867 335419731 221411455 126852743 292103479 825942419 557419145 502677841 797599183 559889869 931163721 442051787 131971299 461285585 669355133 770438317 963595445 411173757 730825515 671168311 791512907 200256433 946044059 474858027 890502519 741229399 235392099 635650523 936859089 573496675 958460001 203398173 122383287 323803341 35328439 405961549 183726165 880554905 285970899 611500371 746164633 63111633 35639657 595987613 340544827 99939973 271797621 812028193 420834235 756263123 425726521 312866141 422835043 22950107 355422277 168288599 98858307 742176967 657332585 100794269 290836017 374564299 968583111 570377799 614260689 706667295 336498877 64973299 483816327 693720327 854612987 189706439 180136327 185905613 918790261 527538031 376683973 719964867 574124391 421434403 86107399 266004801 662891349 664610723 985824207 620383149 530478859 90123315 885528947 263718513 48861341 974110369 754992903 931561211 478113895 458743619 625049197 222338763 651502607 225301755 259216205 659292767 346370945 475732011 166560793 179153473 422073327 981961667 541363461 587289607 219618519 202501687 147772181 991583049 416113405 203416201 447485201 949284521 431605613 281229631 962285703 545452241 875961467 631487331 416498897 427532661 238263493 739923855 808867855 59326541 474112045 474515169 427726377 660988445 112131297 852114943 327252943 227028911 763332693 639114261 669432187 701619413 963842627 601233885 429437547 865838953 410731953 107659409 940741543 374063181 712900589 181710075 606347521 528067179 925709703 343919719 691399185 93693367 997321055 389350317 562856245 768845353 153820057 685812777 630407321 512265927 541125791 779249347 898565419 303654549 266679335 862882025 270521763 645627819 986102827 513082769 597836163 158146593 444819955 775563833 46183441 899086617 473070343 168147945 488447839 749782973 869845055 598181419 405539651 90252353 936253623 245883929 820462177 852865759 571359951 490700625 811307293 878574295 447576377 623347961 913787563 258717045 460261349 787139773 931164673 9907979 978866961 459970519 859976927 155234801 626906177 104449537 376314575 786923919 245566273 625322629 841676833 77632841 102835493 614556465 772175595 576144789 817757513 602534231 148115471 288548587 870227027 547697371 676685879 978442959 699586863 320836383 241826511 345398987 517821967 643955731 726837523 604028785 216981873 329245997 210180865 594975067 580558619 767857771 407183459 496276011 111350549 342750035 479693255 284216205 607945397 467442165 493984647 149665329 91358617 217169381 388772547 264263377 709195427 506415939 628455011 603371313 397567233 849589685 952487961 837801755 173587751 828461417 634355033 100519265 976703951 160842771 148321895 50729693 379607809 404422645 563073867 400522097 737234181 265823443 416570579 951938313 244531571 435261179 318559641 427681429 422403109 352464965 387688699 145101583 945637953 724611341 91735077 361538683 62933809 729407803 291892485 856238307 14970795 578995007 600125269 285088601 906527915 815707403 187185041 643537655 672277107 718139167 617869831 368924127 219282835 401835393 803668419 466740797 482443229 800490177 921388445 566719809 127657327 175591155 435892537 299273253 158290347 792958135 777020925 617240877 315202621 34097715 290002967 706258083 468872219 192601621 767536515 232418265 75315841 432457873 327573249 774150697 447699955 963708521 978928919 292366327 519169853 804327393 739623703 361645481 120471669 418604999 82294807 170904757 143602675 400146547 937831419 801523349 258268511 622999747 679012967 191979977 562020517 794307355 6288335 262861021 433034489 891958379 293040743 614508899 732990421 56647977 749434677 358876405 610166783 317053525 759722237 893517877 2070661 886164593 829057359 493366735 101203383 898048655 306321285 955524467 740433461 734047043 442655167 812073693 494200803 190071725 700646887 948062413 304469739 176539251 783537833 640022031 291583681 134616259 202638977 707766389 899509541 787663699 615694509 189825497 836020505 182920031 983254581 605398301 409610727 32983985 518348013 194822957 559082023 19433367 202014825 581779449 544578739 173771749 281735435 129408893 792997809 172909049 768529147 546041017 530625419 907072701 768910121 475488953 37787639 777286043 689445453 151465359 814910193 726787467 742293993 501254485 936133565 895004683 453747011 471031085 837064167 29860899 519658605 370408515 494556227 927559007 371669823 373688519 130070511 499566293 961813081 27485429 933690701 666443303 778428451 100615693 616819977 882131061 934538701 869667163 149780251 825271667 659523663 873494833 797643195 905948757 4007275 298799595 992975983 201300185 792238247 429949159 999762691 491875397 973753429 600303507 304509581 966705767 938469515 271216223 959725157 960440471 251746861 931147205 608915765 740069555 661622239 916987211 852868069 741547039 918268181 290478199 561801897 419899597 409389829 740367837 885649409 592514095 881850799 16197655 444694445 776554053 706282205 100356809 807141307 842436759 962628383 864844185 42443137 585216817 278835403 705072445 749328025 1693097 375590661 190957167 389644777 531270177 437954737 536622319 834736795 655786553 595917697 371539083 921637669 732557349 141722863 121990673 444297283 32143257 590502201 626374237 352960503 125479123 766114409 634481489 580058257 302771097 556610893 687996633 12170147 252131387 49124993 884590053 396764425 7149197 368702305 719448945 954488297 404979437 645821719 415480701 147664303 533850437 430611347 768819223 420265229 396564991 373507727 861359693 228687617 681276693 508217993 695292219 23644623 217841921 395064265 789058821 55994371 789792717 42567009 693908433 947545457 537736709 556117545 987961047 597488695 65848767 640835009 418270539 757065143 45082013 622412177 27019637 729591199 328817601 356578249 937731483 190885601 680498905 781357665 210232081 449858235 639342367 448857627 274894131 586201011 70211407 273932669 64220255 655462033 396997553 263575001 788658947 824306029 392952079 915379271 213005455 283136671 988782019 594343079 829499007 433049553 284165291 542941343 571434323 634732267 284023341 816946339 739391897 57230627 337041205 690110697 179649247 56121843 952658491 804365427 346815169 35570211 369884223 823697415 351862243 165742779 492404677 176744759 867441387 51850771 720399323 441950041 766450065 727513285 151780631 824522385 87328651 428376759 188105371 543886019 730087323 546750995 661605641 788247715 878173325 371897935 930297233 666867367 472594997 202423591 896897257 408854543 693349993 509952415 478749263 818998757 404146191 10308867 538099849 361597431 385290253 665020391 941222631 857797601 954748507 733920551 831940157 219296767 967400687 178219241 211181035 441643131 12885195 351298969 556642517 147824711 367259901 188548841 922641005 30675479 486830995 470188759 269824421 319225199 345065641 524629673 326573055 969373591 383338851 810818535 858564733 391103133 126640873 513751911 49414323 472509019 612664173 70757447 283720113 959488369 748113195 630638313 203569947 842827335 4113763 300615163 135179795 179815949 278624611 745642865 262355017 236572605 38446969 955853701 163394291 137515797 388503555 347380669 154542031 604156317 838906463 915972583 361691683 285833639 833296379 286152467 745706431 51207499 394160455 523280547 303437303 827612009 861935807 659656501 546261675 645671081 338025957 635154361 169970497 649988731 195646017 531069027 849527717 304817687 822076009 322007471 799109457 914150783 674114803 263316319 908104255 635426937 107612037 394663299 894034937 856648599 575972295 770456429 232461453 45220143 803855979 593426105 874212237 349738085 224024621 438278733 686998301 999691805 546662095 589405525 718694111 493719563 574108697 155744835 265285891 174807461 686102753 704815573 836710719 140679469 764667389 611644431 891020753 59142825 192080723 254181693 245361281 801235177 831492811 534311155 239997337 240074377 83874647 444004111 801877749 732498149 545774067 789187251 976939247 247283495 484667041 982506827 168290157 450635073 985711977 456524175 447687393 385592553 592435041 315932279 630765373 890132639 664269727 807371337 68716291 989502125 849360457 513819539 271579703 804547617 523835783 727579685 808540519 905712597 7304843 720262687 851331243 16110953 752035473 510448355 356344993 913509959 976153051 443984415 583565165 271111835 807795379 902491335 177819583 238761567 331903593 719938581 72052173 701307477 345549403 271387281 452083285 883452165 969043687 683398917 90324383 273483197 492080763 253919619 456143479 585193879 104586889 201508461 388468531 222270579 795112585 395707745 350910131 294870521 611305727 33606223 671960413 994191513 427683443 105809003 330563615 56841355 813645947 715539761 210800493 39698641 266906797 960762213 439996489 399434291 983289775 405720595 173758263 550913599 551654953 781806479 50128709 223820365 597677519 652797045 450258699 213711489 752292953 608098987 685144487 5001921 901841033 299301981 502173117 759078333 382527789 880324349 58194045 731258349 690127893 813960777 587706525 272161425 93388057 738135365 63298909 814699187 675213087 25471807 62675327 269534243 162351375 904949447 543852629 98544249 65741533 538043581 15776437 245249555 360558209 551583043 512802299 118114589 508764925 996433095 867826447 307225219 72246111 118180603 269214045 287137537 189147575 858934239 339540447 986250263 961766941 582323891 269189649 245915401 576854967 602576133 341812473 674349549 437122477 156327339 81358373 497864855 239498291 262464959 235057837 623276971 51737985 76150695 229446191 564951437 155583707 893540877 307702223 303312751 790910345 772220645 635098429 110155 385143777 176370799 980279217 935643103 931170363 919435821 222449381 712771509 329229815 809826281 52340259 117227547 443447429 737450683 561183031 709362475 166469713 531977215 181613431 706032581 678252505 577232981 128892099 610974353 89272479 674498223 919527553 415219455 129036333 653032765 679264415 185283657 393063701 334165117 14420627 748457069 459042799 110989363 551551579 321195315 519601249 387312747 867244925 939193645 901476371 579712121 710884359 401347251 556097465 68080635 899289489 602260709 620569099 111412691 210635321 147769003 161304269 681880365 17456547 116481461 375873481 306800257 619895809 80840571 80750031 161086087 268886789 824471103 871972797 565992773 670088943 55821319 841458035 419995911 944010631 797166501 173861083 427361635 524318489 308781489 565051625 989232691 816130941 551420809 929922709 737194139 44516111 671674969 737847779 821241865 409262007 275744271 679447773 957303089 812626915 777713763 900057749 186008333 588565895 774081493 820569123 380581349 490189605 112953007 183074733 890663489 121089731 953304577 753903963 588207609 592238315 977679521 702156385 641450279 803293111 795302963 736496631 688841521 36412869 287754779 124584545 2875841 361103161 431665293 161415657 451819469 544277701 823900029 71684065 899049105 454764187 971736497 250730915 786972815 199198077 955127213 655820177 739356823 758534573 742447297 277364245 823785147 369977855 507382279 892096675 351471449 585892035 555084639 63418035 626770451 416424667 85551731 492857033 135581909 446927021 107867567 876149615 812375765 610217767 383093581 764860471 870225295 922994367 518549073 589163705 906696135 817323123 980951933 943040411 454604939 946518217 122671205 279079815 992490539 691819729 127138401 212525099 850304839 900444959 513969041 223775559 814398913 970982099 344903645 426228121 612727239 452633235 560285173 93410797 92157131 993271691 269266003 293345811 427568267 221226611 13877301 743888361 796393997 207527563 882169507 939390031 564891801 624364183 591073135 354516529 730641607 985339877 438822449 748660605 972164465 130778957 574321479 544236595 356488379 812884011 411257053 56624465 939012883 212537703 753466849 183006691 136752685 639378543 766649611 94160889 939699717 66729017 488698333 909817777 272466909 843171395 712396701 959009835 549577541 348875667 336311389 938365587 263430927 814126521 981465587 105337113 398593623 462458825 209527555 653610999 834261891 373730659 410075121 940508273 362378045 19119021 105796081 801060305 982299003 895137875 722444281 673184361 952213625 945518735 197389769 659644051 516684219 386747931 863361259 694545329 746456333 545032769 82973615 144631085 626831747 737173709 596603435 767183739 249833083 547934487 463376193 494791445 956823191 963965179 245668763 616249211 369098947 65367011 366378661 837932601 604674871 466351033 317711771 996078047 680247403 587096053 959043707 300185867 152112677 528942229 26075407 755823965 248501873 664186143 614132197 713046145 878340773 907952547 109411159 729052455 977800795 323206069 170250373 155049993 226400887 283826037 671443031 497133803 893577255 814477961 99940479 565327767 826238943 962246429 950974577 251888351 635382361 997748971 412653169 470982557 896929179 274793519 35404935 658112435 499001331 523357869 15501697 553574157 509029107 664444601 158343673 654353563 245783159 901042213 883094863 156376407 406885795 953262415 941040297 633058117 876703719 344561695 395896315 281716847 598606833 456893187 715649277 43014119 276995779 131106801 876945451 1972423 790092447 185906537 920733651 132722995 195213329 213037933 209157377 260783953 154728685 80011407 463192717 876384855 944044367 748621539 796246043 426479999 260490397 316347657 619151633 781281033 292764803 217005863 829590429 421166401 588814323 551058411 747937723 382016889 189932075 43187081 183452715 713044235 506505647 784105667 11742067 772370009 918765899 259628509 278145765 407066575 987882259 739322277 154283415 57998043 808308069 270101619 302498157 318880509 407037923 677733669 330301451 285608627 770183803 570785823 183415781 808897673 348502623 295484497 32985391 349781009 877447439 704541745 948536047 580837 382617931 35892925 949020649 975125417 96554017 409723517 297564077 69060867 627912679 523319933 352955285 383072937 5100343 766114643 605283777 154530901 669870069 547255839 941447707 52869319 427395151 361730439 709666127 818317003 64000441 933059257 690395097 770862131 746074095 792553065 257600247 386613465 231143411 624434649 787723185 6753185 900497685 823566285 260268507 810220913 394142183 345097109 409493257 822068799 540236101 473716229 876837789 611922437 665775957 357868155 880500159 858113987 233263233 426705887 38436959 868821637 124411519 168893856 82884149 644463709 389970763 164929715 694871235 605808997 516405801 353566357 592089423 965753025 220489893 41323599 99873259 526041495 935989139 890560365 873473135 8949277 874288143 957034757 268392827 76787853 909540479 750299319 439775607 470834215 342513039 1279401 41575315 861228089 150094641 915505545 952054983 858949393 366678947 751418765 407550165 276366603 199183465 652100977 116095299 206671241 662683473 53913729 724025443 748087287 184275819 228664453 121557067 263599813 821592087 408429783 541673439 164761199 235167223 559460693 862194627 911960693 407947257 565757283 991865195 355890787 153698385 542694641 565328909 541479115 298591609 859482999 736688553 873413191 872890169 44998383 438026761 303906427 441985945 580817123 169071549 818830605 224559089 111884639 749067547 918869173 25897435 197035001 255948103 460058151 50169915 829742289 726077221 669572395 375031361 84450701 936458855 259414919 35058779 702293083 651646599 862899727 591469899 473065713 551589827 232968605 537004819 300947853 172937765 195735061 811500031 640460789 322683005 446077789 175248291 712093303 656050017 874794605 888611291 200042733 720097843 367748153 556725197 652564911 691802139 995946185 652518115 386534057 655104777 690351139 745246675 575916101 210639031 929113947 266551705 228655739 30427555 144514443 514219129 610076619 224715797 886907607 795350271 457127479 936930079 276709223 903042305 836679251 819673497 863265901 843491991 124063279 882307363 573149477 335576361 150662765 396084005 502318031 209531491 419135795 193247183 858715319 411451193 283620143 836417817 804116785 445859557 556158615 32923589 953488019 484189677 743582761 402580059 854771009 197782303 223259691 713658407 181745575 50790539 851205997 571325511 784104757 196289169 764106819 237831833 293003623 757331155 4986253 818693317 947338431 965224255 458603439 402388793 919632837 727323401 999099803 207058993 311873549 495845805 393752003 723072685 696471345 689008621 431513897 307827059 130916821 774406361 454710863 936736277 389896353 321776323 104639049 767027689 478323015 111114311 783209895 892531987 755958659 606416715 519437707 556672887 50866709 735231481 601590427 462027209 402741707 242665927 518013957 668715647 260313715 823349873 188051583 432339161 921830889 559015673 921302343 534238177 465057041 263272111 723810597 726137189 963658451 297582631 896306019 215161089 315486497 216871993 25644253 578207505 884009975 873203981 279441643 280548799 482496597 541762319 637671033 879172093 747037001 101464561 25494769 805554815 751803105 938790321 639979853 159751881 855032633 777563539 966566663 644316195 229815669 884837155 214685993 971798683 631253181 504229687 266887487 268110347 706650947 563504359 933792353 976454419 941689667 516893341 154303019 560204827 696438783 580254463 338582471 11519573 800801983 789844999 182105823 81996981 496628695 572696557 724245675 857216767 299734947 245479993 764698857 187698361 735234945 573999283 375873759 276168245 753243359 319531635 175372381 289152907 611272751 342014163 531743927 737011099 827642857 657428601 36230605 129173773 617547663 849153103 182871301 55806289 224785071 38023307 92308555 644974495 486221783 136915879 705460505 737692153 132715939 97631595 87258473 269452837 249284023 800639457 445515461 739206325 346389947 976856669 274098489 643005439 439122017 778331771 112418909 697061671 625288293 110311713 555259471 901544209 359599497 507317113 255271091 882520433 331668375 625502201 60808121 235531197 645292895 673326429 8762135 693056055 876241341 877381033 975313163 787524837 315377813 669099305 645702491 511067799 406107599 424281969 331854423 805100009 439701597 122698335 900589523 211118647 283371835 925317397 4168751 395920043 788689515 242588417 959298385 823298359 302462967 672885973 660435879 459273105 492117231 764273553 683385637 101837881 991147121 70782837 991575117 201990521 983768219 350634255 944780067 846465119 934221211 989703733 689232949 230388165 63314595 684238079 401353115 842769227 906304747 53862615 406230003 772528219 911897781 410165093 688559457 125696289 502320207 859267485 209210005 700093335 605662471 810895039 885197253 773755519 129520187 924314957 195026863 280210017 106200139 663484433 323107483 747728011 119828897 578642211 245792085 31463447 928367535 250607837 102318131 281479909 874908657 848557285 650120213 757621917 162288361 30269221 708052321 590843823 529108255 762244819 66288899 240879699 453692969 434076011 891036021 50908043 619700639 686500785 362931635 349336607 538951201 513127599 786646595 417181597 37446237 387553471 719238195 601218909 995656197 623900279 31184923 475421571 277459153 496477631 905358105 78603253 365459333 417925825 136122833 946875235 919087849 695368949 1465203 704796741 787594963 192965651 928048309 372373467 347173657 797429537 216743639 328905519 858716321 234354027 851755163 654059537 928172627 933815685 926048083 537116185 823991843 566963277 189458899 969502629 410370057 642233829 279987069 331186913 327040777 159542459 436789553 738754745 533251627 308482691 630937187 768053225 234259333 794899767 431163399 243734001 269697839 619122205 632067995 704057877 622886985 771197123 837173285 415336043 525159425 480717819 991563059 326220487 843015817 862073057 720166877 265377741 966990361 901696473 54016961 822462945 805270005 882506129 108238851 381133365 367553895 446256637 203780691 461366211 909052607 594884441 81535975 660968521 337360987 195672871 715715199 349021521 576841627 7845175 719718237 910140201 98554857 972817051 98803283 488502763 381642169 546463919 679333047 292035703 592515459 200641049 298830437 90372469 732725963 622514627 339955909 266319957 374303513 86290915 211564485 810425937 107115779 895009525 812737241 543382887 300282145 903161533 676123651 299377503 275201299 430052679 489535689 412759755 410070665 53874665 249332533 470982659 620297775 580249659 585409249 205999654 359332547 743728933 789162987 863374879 477227527 82804691 527375863 539627419 684584389 159374519 562912053 429933587 458068175 714179727 861247837 694097353 677756413 690388833 939578025 145274563 236667701 623870837 370670819 358293459 164979809 3451489 50349143 34164625 657641583 753228291 961792731 89098587 11282525 41615231 712887505 301525597 912937517 271730749 430107 475816581 801437161 457460983 352785191 803089803 125900451 458429607 461112303 603878383 83588981 708587919 821448943 3765755 508039297 990398527 239584301 213781695 251106289 251036807 948880953 732215569 903883511 751705737 413813543 871297173 253110993 586468771 493503383 327932079 1835453 860521861 518883757 45334419 648435717 82138915 177751067 75702581 403869951 208286649 325585683 603545691 837626883 771192267 790379861 794531209 447260531 131808293 534186793 23088143 7941049 245479131 546433371 371703559 928470601 836342345 662658115 597313617 581652123 462989333 529159869 27725207 673789235 524386859 669495089 739987269 945750683 536376765 335532173 784905111 184641125 691585097 620185927 835622795 451648555 916382867 912343133 468286441 727629455 406429095 813060181 930342467 795244091 528923609 272488511 701770737 730776291 598327239 881791663 849893139 15471167 943474515 745785029 300089745 821105939 246931627 802431781 758352411 818534441 468579651 599427841 913585963 395512659 388834517 825167115 426945023 988723817 532993127 403149957 44509087 321804371 105664327 505711155 113799133 94341621 765911045 181521251 551410257 471182149 326575489 881512171 986299737 416566843 128075743 665721389 416903969 575731163 801082249 357015051 74585239 510747439 886963765 608896501 870391411 908749385 757318109 359996641 431071287 39621955 745312201 212324429 220673833 554213183 629135235 58714431 818761563 124929895 786301917 66689863 823025315 780043759 534944249 705695097 941528997 609878287 758898229 51233141 804662981 53402635 596122435 791223391 501201207 416546349 703543059 982627305 463702513 846029255 176793059 503955269 200962227 744408883 569115959 416832565 937536263 87185363 630585563 698016765 22080829 898170643 765005795 553325675 464899947 306777953 829873579 555137751 914029171 965309757 521606873 753221405 814000895 933348389 547593817 153583269 188149371 422321573 867163229 10733917 459521571 817500239 171463523 400553659 149397493 705590461 55110961 144493759 40820155 252646545 933589967 596168427 544645635 111892853 276068499 275001169 817583911 732355101 196243227 714803589 241216583 127373123 479586891 403820455 822188619 291044007 903245131 844854109 665393381 148080661 99408021 936532179 88144265 698670175 128497379 989295555 46338683 201629279 838193207 47275623 775973315 896657911 937780959 271876233 756819503 123235089 41247857 569004663 906937945 416915105 935541447 796853763 893277089 637263777 644909831 575762321 870101293 816934417 723955355 869344515 293783281 369938941 84872761 267907273 820191909 250290295 848724189 930528473 204475077 10597017 366132425 383486385 368514463 262768773 444179085 478837081 899151423 735393381 323638267 557779549 949299581 151937389 511530289 158409939 967854845 239499991 912937873 804585307 776766501 711568611 158912199 737302555 945772835 461573085 670475721 873196991 665062901 731326231 73232339 524269185 866964821 601715691 281012073 384390429 479625167 387326651 750770519 755921369 329545907 560127987 507540403 228588931 674654487 957600003 49110229 175599219 316408543 668804965 901762663 239404421 396392367 302336415 117567567 405582627 886557691 216501303 223550407 497416247 565251065 921994433 867135559 997805369 86581929 220219607 189646485 553659175 876874965 21106459 959317951 704096393 593576459 544188983 701193749 102764139 40910245 556551647 739793975 939714915 436915141 184817101 770205193 933592721 670538319 259177665 874428341 909788315 527095285 770130311 160769199 320658093 665558321 15131121 595399351 565226369 931462977 228639707 553615055 115327059 209500461 64671779 340298305 848146409 640642249 710875061 476314533 585616785 560080297 628650629 720510421 730444323 420800559 627444877 304288503 125537533 518492291 471641293 250493301 35579139 330231189 120424019 668099333 25976229 617922077 250251565 215341987 881956315 702904221 143463799 498843283 942340895 658929499 330335827 748167521 893395067 155491179 897341677 72813281 476019067 839601055 657412981 278121009 913874229 266871965 503235109 394812851 70167369 827951307 884655171 828179475 400042717 118740313 121365781 47732041 483428255 468913983 305362671 413016461 425746627 691878975 743212075 975884389 794520587 324195807 289059371 509955485 916150459 514054257 286164571 706291787 995741347 108585995 444186411 818601927 616676119 236188561 489957143 607083707 299507189 255020455 824814495 743781903 144089767 30542273 554397775 509453815 521484567 876850965 338075067 736043251 202493629 338707875 766447225 700280515 558645145 902589237 650417197 76752247 812347181 895048283 932652675 632055391 551204235 821520235 181782059 92648731 960987209 606185353 714003425 945922703 654275459 534580633 386035045 881311717 873120993 182581069 239374979 598028691 411001489 797449247 421717517 801407573 395703881 107955277 390751455 273680429 183914567 985579489 719631575 933391211 517230161 464768427 967686627 345930657 59289781 652706881 802604275 885573291 239926603 857725189 294137603 745082799 412771953 260973855 777817107 294054425 549492235 431995519 587485231 162313371 794523787 62799071 53753961 914560051 411849187 156693693 799956445 772262181 164282517 68191329 818757801 561471997 323216547 449527005 591449339 45405327 292115615 309069577 130960899 139241721 744536223 417172101 658059005 94496413 565608767 379478201 518979113 922065193 412980391 215968213 323226069 434064271 900897669 544248787 691313999 569787661 540995087 801460079 103311859 237865001 872820483 115175735 923002917 807310763 180032679 921543799 528436299 270637483 961486795 808134727 119375837 754675843 535256771 633448075 738462799 8088535 42239599 24232681 106496041 669051797 543636275 633470415 75601393 848196849 26231295 23953275 741090619 380851045 613178699 28626663 511963555 458331577 414951953 291099871 922243015 916378357 503094491 99455731 374011989 198664049 622591157 376074361 413090045 155069895 442712631 952147349 858450811 120384989 25741949 22649899 409303185 13190621 401423919 647861999 259766535 699476797 77232763 286342743 355193009 817576889 306211351 445850531 469004651 797290069 61345345 26961885 955730451 60031581 804144063 515033811 424221591 59351653 872042977 368962593 675865063 845258059 997968763 119776803 455148799 925740849 311013869 471244035 85850081 172613251 521628189 54157235 730602389 43232503 731596151 70124263 870273583 388667017 283537141 924999203 376724427 234818687 901078033 789444783 325923207 409115233 417402325 794286233 545117329 833645317 156949453 361850811 323190043 627043209 660499217 309668533 299867483 745196111 417711421 450926063 349693081 806600709 290715513 445403291 532693019 423461535 763193715 180838829 642544695 168295511 43768417 76370153 354870595 286718643 157037569 766704597 862430885 603453825 742115739 402946755 342107589 8169427 726807803 675021771 30079765 387622661 733380983 296094157 637810449 474298299 269907183 102388081 98726203 391065315 63857351 688540199 823259931 822632113 489897713 670933799 329012037 538726305 424307935 18145907 947697237 545622389 836960403 479730641 125054441 634421309 357686161 38600659 870502319 782070603 70782951 978571471 742679641 795510331 828371245 679593449 369958559 870532595 528060799 721337861 825378883 359049119 371944581 529802967 984003347 718514609 230440047 972520917 220273117 636457191 744345327 761122625 764735359 160075077 658968645 565775137 248325591 762774807 798025271 525028933 73334995 55714801 448376085 225716041 727796581 179340721 810340019 151466889 623044229 492176761 57794929 966437935 29382709 787742389 326546741 542137133 12228739 626042909 303004779 918667833 322567805 875804329 388932365 698879955 415911745 626927263 613117847 941371461 994803437 183078541 264418831 935861405 831445423 472724035 200172803 466481589 172313273 571479009 403939979 558548781 39889731 42970825 34682179 950640239 209309585 237370537 78210901 240082343 233785835 323739253 470037355 616721105 422103975 972930409 829349821 552318123 61941275 557852167 446742281 975628221 349216685 989739295 179960727 338290521 822530245 761499329 216134193 245303447 483116245 939650895 47660851 779609943 651880281 673722983 521474935 359634241 212960979 970020347 21350757 527631557 774648269 354637115 18177513 926977565 135207383 302497699 228270973 890841157 311169167 954106363 605942045 322747915 531709077 433490253 905429839 135757563 781221011 406355949 515705121 839844461 539709499 320043641 811148587 797043333 156364617 227563217 611168905 136128809 78275711 675822375 922933221 851391241 382306471 642570475 223269481 706908829 841867153 600234459 319423181 525236005 158940443 772089595 221371983 415895467 452163619 687356313 890571191 823716863 678709145 548854853 847772753 140962233 829336425 277006815 68152563 984570167 110589841 838022793 956918525 347015845 985704211 283837105 336475477 139846383 738566393 134689289 128683369 532966609 559029075 547658897 66091055 998729675 93550143 347848585 28640547 168049443 923518173 681022079 759987023 969571049 210007639 380539977 130069569 681532151 882475231 398904321 23980301 961667055 409172145 596403725 474021713 205414965 198532367 649073431 581875767 917356795 559340355 677183763 782254441 780001083 221829023 8227905 966793759 831012531 287784571 762566691 605383193 307976941 726225213 698978435 135692953 801503799 96205645 921640057 318492017 965643947 488413983 454429025 408645623 57241385 618736939 111581659 439568903 120718937 625391349 430539481 197687049 172006829 490467847 706001547 173385451 55630425 296563953 299637103 683662113 960206433 983269457 517464905 31338925 630968203 930908615 502326309 624480275 295981673 491277053 476183383 738936931 808961363 298564775 71336573 753926193 775081321 204105085 173475449 625581469 169867667 500259139 609555063 932998219 969158017 155054017 24043247 209663595 530943659 114377677 50030233 793445301 574697299 1698367 630818683 754522211 272434047 273472761 459618273 217468991 196853249 74339813 510115681 773738389 185550705 943510007 983138261 157926971 919768365 943386151 966049377 676171409 835856993 574068857 80366707 418740861 750452475 779043061 563294911 477106285 261278387 30751921 72284223 509278807 345107977 911035077 728949563 732780217 790821703 626615123 288723003 428100505 944957309 735749765 384812823 283882375 50608513 905676687 114000361 651628695 468292855 954094505 189049879 843552105 901128515 985742615 63906123 848033825 968453785 710999587 620290683 821775727 939039471 402466333 618233571 84890507 439012613 825065059 897095429 518110511 991982949 157676885 65037233 463619749 224779101 800140127 426231033 827251385 175239687 827415023 769972027 371391427 450707267 497219717 462040089 403474591 234280123 535140255 530586495 991278005 272058587 884650439 837278371 523102707 226527199 84852371 352371457 957597135 989130949 989939099 109052253 369866823 889460309 847469953 25727685 470634465 605735457 871296239 559890825 429414317 40600449 312257433 531077705 98459711 538205845 937065271 775748839 301747383 815123269 661659789 345588113 652329913 853701697 990090853 739293625 426271863 634398211 370476689 898647837 509236131 111055305 914224363 887012035 828707967 310709403 797870677 276331507 147676109 537173067 496273849 428228933 283351777 532858481 314337547 472671123 599284875 63595883 390437955 516165889 240060463 251146085 97125477 729043965 806226095 226827597 888124539 44937787 1953659 336861659 884410007 682503095 921726343 710094993 285060307 272050099 689098327 365979317 283341905 196095935 752763115 440657497 371250235 166287533 447943381 995229523 669401797 19251097 955922217 911876167 568994857 235578089 481286023 860697497 147774375 473627975 564838163 127766141 968251531 404409513 233430399 761817065 364129573 47399755 916911613 417662877 767710163 344145073 673560143 356146467 106728437 934583463 681585081 416648395 823647991 309070913 228005897 925950123 421850953 15185117 627068055 118592423 800221541 246398237 136259903 670931043 753309903 112166893 224218985 356468817 44488977 919390597 962876675 11935403 806072509 218598493 992948099 812085103 653244013 973633083 285907687 641384551 980391363 225838891 58088119 922823201 518429801 845632643 405475583 147805943 409091347 456782813 476845397 472979977 414524539 873681949 570180057 871890497 20172897 616709233 370962991 149940043 674195089 228765517 48732809 807622817 192198621 177443179 662816921 461666949 226936607 38728913 305279649 997340415 12783673 946484685 803177573 733811421 250871573 378604017 667648051 577519801 798571687 164117273 87125475 431755763 91921897 737419881 336562131 153103793 81412315 227487057 747557863 389624295 281960841 142099073 724035727 578489421 869752581 895384309 192042433 604656993 616020585 429151989 727976955 665798507 608991191 780144907 693495621 109149565 503114107 378351371 987216425 304901741 148477061 354317585 645608131 396899295 316300335 95432835 485109165 906384185 709522109 559037709 890552589 825094313 139783801 515360673 271424405 565093933 846673077 731033981 696499577 365269631 717892811 241671973 222331253 879562795 18798367 482966885 920642515 681600129 336352279 381668433 611207009 581270167 7143209 412806215 679371891 88599121 691092431 445351145 497792487 676015955 985279625 921458725 907305509 624338961 332178915 301379885 153399837 189697729 159304559 20915073 369763393 463775331 138245831 916289505 392004497 993574337 755748493 799329627 649510547 757661289 455980909 754527813 563647063 621091253 515483415 94802745 189988211 668152775 285967173 410129947 441840387 759570563 392063165 275899161 990635439 296727195 152442949 667817383 856036515 980265609 222033329 438239617 611929753 498800523 550427867 69918121 729526477 910377129 765270181 19939183 129163269 842247607 696731131 82692965 571235727 337341001 713829069 78415463 910728771 178428609 701222677 105932443 240569215 945528135 344872409 884539499 207620135 9199819 601347615 376345485 689630123 818590213 602052091 603858941 287090945 351019127 980374919 642840831 108552617 978914153 863938533 614001183 460277413 832520425 956148801 255044145 485558663 805381839 694239947 956149841 880096613 262725567 145116607 989368549 54442971 39665695 212343389 868955289 104625681 783731487 573408753 42211679 242544563 116464567 458486989 322412405 189919227 814027689 579048779 353340001 508443301 883398267 238101199 868656619 975382263 871293567 708969663 781887785 732416193 97740747 869068177 356846457 237402967 474454851 186722239 47634301 411199127 258003339 668025033 737467427 944446955 803246615 472183869 12975519 862172477 383493661 619660969 716934763 15706629 547920285 776588969 482290255 648114243 460767841 834050527 590795091 576035193 100672249 543470071 599884495 90763705 486776251 42815393 488847453 429647513 597097419 75505561 551121633 8136757 474794509 241725855 313520011 503256629 416274485 809619327 26087113 317890247 691590071 840226317 43776349 806747551 90990295 784503327 749016905 168882943 997497757 42544025 257746649 994682027 495257817 912063591 190288289 393324275 992020769 589431161 838931325 824213419 624273367 943410635 177280403 421013811 516943395 339403613 985519949 466526575 745363957 621277757 459412833 782462161 774593287 889591161 45356235 909440843 501768663 548862509 587294671 126726493 50067629 144090747 108072185 831108367 755604635 969263247 413113375 906626797 409890937 205370265 889323353 766891791 230329831 771610837 73877521 337488913 288478285 558290565 931688429 546551323 500706267 634531569 60229095 345252315 822377611 557767533 947076919 995543943 912458521 463373139 898576483 8196573 199152659 380674311 550803001 723921699 504175813 164384497 425303241 98783271 43024455 996512899 155280499 275029827 899266173 816765241 478164697 756537167 188485901 193051027 414202345 797029047 608750693 533159965 372604631 783633509 269822147 415072875 89362719 334711507 440333601 384062483 117996931 431785211 703160395 441090491 330308371 936886119 184825297 196111881 56630305 731203875 580247305 371039925 428771657 245298375 323906583 667260787 524953201 569579887 513982687 220407051 430061507 632056259 296074773 848031811 607099573 815876849 790988847 487478513 885410563 638005679 720971885 169394923 440931249 263255867 69539801 793879829 222083593 921156187 501000257 617252443 936972965 767079519 63019329 397487791 321644123 125751835 707781941 795998215 613609811 531829487 617526855 380167531 836524025 631227327 866855785 99072993 591804927 792107517 339376975 175979391 662336355 310233755 438827389 476810843 65855337 816565531 259088699 320633755 877043101 221298817 644835479 759176293 49959125 742382171 699124075 256545009 106150953 563787201 93774423 80039285 735538179 352900687 671066051 235169075 74276107 317269805 928333537 987560825 606777653 898992649 370172069 192264853 538472641 613145625 803224275 23557859 791806255 160228123 449182449 132182471 990638669 246635095 594650449 614967977 263396145 53399447 397960715 398149627 647094581 30889527 653061631 512173625 732720895 587702287 753021397 683458789 727921017 981344907 197520637 867703687 217588441 77880727 661467311 88223925 345855385 298598055 205458157 80730885 890340737 538156989 105526653 19019293 254719131 789172317 235589873 365852069 811499067 879392917 572183455 655522895 594292733 807466493 357549227 409916631 474570439 498090161 651299067 619332863 864422339 370304601 756791357 38351503 20265831 652492579 557600749 752311899 135732847 989897925 466719307 585247551 175438559 995715455 75885405 536848667 206961411 353867027 945443827 824153049 85642865 449044435 164399273 330851435 705473793 348158867 96745691 359397837 396643803 762651827 712378291 434356225 360384107 423388441 540904739 746383119 693877091 994889009 129026785 37584397 573495235 946633973 465955181 355490321 804045771 239863521 442800913 861050689 133641225 365020409 547469531 947670469 326585939 583175121 870923173 559718095 556374723 818333051 310143761 131785115 526863037 819840149 283346563 579872363 681572847 628981063 91262509 75263879 106448717 883801663 685013513 877237317 322441233 15753653 425182933 291885563 513796803 356473955 637522713 519403279 78732331 578769041 123395111 55455209 914778721 972354831 865089815 136461821 234537919 197294643 244800457 896533187 113720811 334623961 770095589 215991485 350015695 810398055 484010971 771576441 835739553 482137295 534611941 506475399 998516189 886026117 269766399 342148479 417532487 460483717 650340343 464692487 905458155 709821529 627591257 500078279 502778653 947692047 1695101 158781041 360945785 15738427 148414343 242361793 835382757 255073275 639165021 45235065 822938509 322975223 823976623 291471971 987725539 111399263 589731573 754021455 556203941 378656485 583229039 381287707 988850391 391234505 308431399 211474855 136684997 791496915 440639981 34037469 155815683 369466191 832881497 84527791 370739567 199526931 735126217 986464027 605636907 658949247 769399401 802743069 141858469 40811897 174893349 658214341 645070225 513614959 225525689 976549153 840112105 773164117 655994277 939741519 126870259 375561901 303312431 897524591 816403517 274904187 893128039 963506859 394716313 999015247 799641895 262719287 367035171 827341373 8582161 755293003 161160767 926893795 639686281 786532395 338192027 293537899 889419201 810242847 715735595 93062271 313733299 449608317 742793003 777422423 582678301 790808731 641340701 480889265 47458441 398620383 518827985 487509461 429351237 340899505 315380825 795308175 108774251 234353285 832795665 321260855 30233051 566586579 872257951 181966761 51514685 890324255 44958189 771716429 371544835 243583219 324213041 429481487 891144801 870016735 136268263 311804265 388621659 118976385 707269075 938779479 505934263 241136761 372909313 11600735 548973065 412965233 660946119 67799441 354651811 660547357 541886653 88696193 480300715 858496053 805580747 792447821 439342855 265470077 562849053 835399839 196615015 635295679 136476965 728909729 795816259 690433227 419714209 11916811 878559453 878392447 462732695 988780573 179543611 207349435 838225487 546007961 354918959 201443177 424518239 503641297 186182481 104834941 60953509 922077083 595670783 581092335 827440453 669781075 719686245 308589763 639751849 817547489 554049905 473835523 113966725 906626483 535605211 388540607 830925785 591518399 432653347 10282517 290552037 880515715 418828435 508348965 949414969 991994117 672778811 640510233 968649639 598936277 207864305 651542565 193171787 766428167 262666585 246582913 827085449 374249273 672900567 557593713 207207185 814949525 687053727 951861311 466751441 690300101 921372327 393678653 434193419 424819203 884400559 472697541 335648833 130606857 385242433 497799991 545547071 293887009 425744555 827821315 307497241 587420695 26684167 366624151 289092139 385403713 413209141 760495725 626317339 230036609 213498335 469325833 421140693 320369721 683023985 617683701 487965067 229603161 477250087 395190977 410678715 889197143 398893567 195833611 318527017 121611825 344949441 506204787 811916257 107992429 779351551 584073635 758994745 371273497 454784785 876874319 448144073 485589455 309510679 850948145 36724857 971748519 590824697 952834569 838512757 573277773 488131687 956536993 238498353 391278571 514035931 488091087 887510375 249997371 747856787 354913643 604288797 618382967 572757399 524536407 248202913 982763369 633907897 180389757 404754563 659795037 375256209 340244177 942185379 361449003 978511229 811227213 738286629 950740015 988098985 639309041 956719219 872304977 113821187 515358151 69009987 979777791 920287555 133721317 848220559 400375855 619947243 571653731 911561631 610138207 993604673 26451811 563980797 784579223 988268887 739100945 43851643 690220641 24368643 977740187 986739515 142255321 536623337 659698497 154610587 400808855 794505837 794402113 610161485 186298823 801133507 379504359 745697345 139893525 983544289 583816837 821135541 325757621 445674631 728877685 734340141 215796841 577012543 715189785 883986549 512151411 204195417 14469851 460805793 585432487 357807595 449905455 322438669 945631317 455462617 989065613 454166367 443566433 875511751 498675577 760931715 975372845 631246375 119788157 163339947 178495657 193472819 811038507 640068951 288122443 516669673 703791133 250983239 565214481 17735443 214116597 193510537 499018883 118843967 749172063 700827249 436636843 962005191 229937675 298685085 284149541 455438795 729151411 344184305 324892169 72139829 420105243 814042517 583815427 635570609 872067341 159533571 237411391 401738681 433480539 42334197 144619889 840730255 240722911 555911021 733757659 142263867 313180283 26034363 289443905 689064331 886172443 707813231 700239857 943145241 11183791 493370729 230035907 332182085 836489265 641621453 782168083 843075125 423905189 830227973 731527371 847368927 538577173 677850311 915091029 894512117 965777811 519815951 765063849 332505083 654273081 947653921 756093509 867872567 910740777 776954247 581472559 14398651 356360335 998495769 619174903 256359773 510524315 637757683 160419507 939625153 764530567 258092919 816440831 604271181 504701081 668216657 442638337 124416559 220346135 643562871 899436907 486062181 883431509 408388389 662084207 426293161 731293101 780610271 848200143 929697927 138281857 900700017 330014159 532149839 29216315 551722737 442034495 273272343 403425103 446193079 292937841 96882627 635604023 40197997 532986441 599126263 726854003 849844729 522768681 486281255 490830735 944810133 149277697 966064009 401473565 127076537 594515783 979291677 737419959 355080491 542898683 159473325 313404415 346200825 24651935 719806151 471208609 102666355 833234501 344403397 419895373 349069881 512327043 20562377 850053823 844829743 635074421 789747895 687554231 381754495 765156545 70425921 944935681 270044831 276800153 426401761 652384111 735666761 199675313 102541269 905091035 816339077 71531847 482853925 385112871 461430427 988541985 518180517 516520511 20053795 11692941 424840425 259338515 445171447 382369891 432602451 247923103 998674493 348885503 986564107 505346787 779288417 254963019 978970113 322905579 357671957 800438705 199881709 683789001 799066709 28791337 43972945 742577047 656578921 367828531 337970037 865720185 482212571 197069521 276081767 874816405 491921791 941961109 66909695 794076705 683861619 255134613 552390881 559311191 104161305 140559469 350610803 725191287 960490269 150270787 672322277 960816333 965163895 736415177 72556079 264588459 361006431 535119667 81730835 731992173 463352923 733118271 541971735 596708721 74902583 538471219 134290061 31581477 373608457 903168733 707196299 516896761 414276395 803216789 114224373 235557479 188312129 884246841 101027183 915348469 197696569 554348333 258794605 174789161 766760261 600343907 294738725 654583703 949103589 702320461 523823511 925762777 690878425 676276971 302529421 138902419 813142321 21468613 386318743 697994091 232802621 508085735 845997579 382711063 933628317 807516393 339227149 367790929 330947381 543892711 448496769 382295003 262822191 584971657 138632475 578927229 264456193 661008635 455566159 819432971 150549607 481802999 83814755 817594207 669688419 420160441 831319385 821863517 755805765 364615431 37121031 49028331 475933599 454061873 687169025 88284671 711573071 889549835 33262761 990556819 640579445 361489397 384083239 959529641 768816259 180411091 879663979 432140361 185258537 500888853 420823343 390423175 752742245 100528307 910600945 756945021 997109371 504441383 985510137 721873999 778798071 466027899 791175769 313144355 455597997 852737851 567974889 431528241 558574523 841847167 348857673 30492333 322809731 224311011 419864545 460391135 694887091 824965007 404836833 865703437 109525565 240697905 948069699 490448779 293096287 860217597 182247619 942623413 166973087 718058677 73167599 699281897 614631621 601980319 240292627 973001621 46178793 577832069 85201991 612313385 474582629 776354753 923164271 667192865 820141021 347584561 160510257 258643709 107897407 306744891 118265083 498553931 372917439 267728075 585301003 973068697 59858135 742515801 967948123 654379651 100799823 653852645 113914807 711232941 925677359 645350899 343990959 863743423 260753615 537612177 459620249 862013035 432321225 536172885 250019993 164395885 426007299 243709537 262061459 240851333 607136167 873475415 569108795 405415297 982171691 52448615 435818503 798368559 308053579 698718535 110183223 576114795 286104331 721467445 434341845 965621273 91569079 576641271 337132465 52248353 446774499 702107357 220130401 303238005 58147181 776793787 206000199 321225489 164263799 536596465 143326091 854268149 6549869 620265315 691212575 872799791 445638405 847612035 17726903 952330445 703857213 668013635 456693975 721961707 568788565 279870501 138660807 683937709 473487067 620194605 28305557 326166587 683055779 824809193 686603547 881876167 725987531 213920367 616171513 240111501 378228661 106855777 427914135 403000783 998547471 444450017 976466727 618416341 521236941 782362783 16753053 450906355 539302185 864195537 884233917 954425989 781966249 363706421 103017997 96439529 301865755 777190673 207901663 775810445 347242641 200523829 725444171 523302627 816970087 76493045 947076145 730719585 225095745 329139505 430574649 494801039 788029965 403236431 642143187 133208053 196734207 62674491 526570551 903549475 266140563 602874479 569705831 212078517 876118411 802878695 687508265 805209167 139860215 949813543 409904655 879150489 589001513 707647299 824489583 316590660 474710463 14971083 532947821 739220239 327353753 408362467 12308975 656915385 504023529 270530605 406241699 214071307 416613151 855463385 573547525 232864475 721716217 581278365 282386773 40634111 630145659 619291319 734617 478599773 442328817 305540591 976179105 446457053 470585583 313845905 445420041 571305841 963471443 612486259 650410029 928188181 647138367 784862709 677730615 531593163 283825695 702662907 744316697 555403163 364849835 278142967 644507017 120647067 720952027 214943453 427881223 526295777 921341685 118079017 991761885 902757267 647510919 740847589 207236889 255179737 60085857 600699551 658466709 399731941 34472867 885184105 962837747 8229877 775787695 288628199 717614231 462697285 217333555 226369339 755201715 620470565 838068771 364965141 2366785 477137123 394927291 85334955 858865407 788556765 963115389 783017917 702625909 88256625 467536697 505820045 1396981 172332813 979936769 778863597 778357655 555519267 143345713 643634481 26209339 508915243 811207021 219982905 87222409 324561577 658373541 222522219 378672369 154279205 849781769 404262837 413969837 35914037 361636373 818270603 317055417 824053871 270340241 927564271 782403043 582833529 718895239 508190053 822670263 860790011 461003339 361567997 116517517 533542569 376250491 469515593 361679497 927523387 515756793 220277613 49298321 552692853 70500849 677002763 206943829 644340767 116247769 684870739 25532749 75321615 222459757 681284349 817935801 959318299 13680817 561026371 249200805 404176681 343584243 696588269 558952411 733851169 142371267 261119563 476308217 361234935 679381761 951382323 623668315 333042851 632921551 381814785 792070189 625827625 916213403 562446749 627905883 824153233 547119895 606184307 531554977 290874097 796187459 961606269 381050751 374941791 185012319 9477175 794232123 134513665 260666361 546575271 40679397 257496831 343579879 211116635 96260951 128712077 782073923 649299819 822177331 852680163 675183731 370711157 981865693 149086533 855577121 149812893 633607815 872758525 812645699 670727061 138870827 358787419 594401811 884988047 462934407 136211645 742639129 871417163 504642085 325846147 494985503 911198481 731201619 27584535 245238839 53983661 176330283 325738987 78617795 940747381 469790349 6499965 814676835 925799753 1177121 830449481 914725123 529946511 343432793 339451359 854515161 956073269 825937001 796334799 633385057 330558385 748892245 438878897 866205279 249709825 233859555 489981739 801539551 99970731 62557607 401715685 422470709 312928957 499664371 775894419 711034623 255499471 312583661 274386669 814777119 352393983 812812411 157744567 132825025 554246385 893923149 922995643 732346205 658185943 747076059 297307083 83346091 642969187 488289895 891077823 773188017 165511637 480192247 335950461 961128123 58152181 506674781 25661165 703178591 569857551 279433521 643925251 548534135 661207291 121288401 889839031 224142887 249260565 595975273 575193357 802880733 239624005 410296807 116160783 496396365 602503417 51572483 563129551 187894641 616611111 301397565 926912869 721636497 152071245 62689759 12208375 196504629 554182769 461913849 886456751 682175029 16240673 589568097 956832955 624001707 118480757 299571131 118608731 189927165 783350539 460673131 147462093 636331733 314168073 268061349 854157915 842128681 535992859 309004383 763964507 72048949 175204985 507766361 58252069 147239805 297757923 941611805 340154139 709383371 11276189 823825913 836703399 531247927 731612533 863899143 213212989 230948125 506661569 183790375 330892885 129047071 79009379 104885507 919976051 614877737 384995005 702666759 700909089 911508081 230296765 366616175 183046385 715049589 368955101 194282297 878203 968564469 48968729 704146221 538700645 803130623 904847609 381178333 360226905 81248487 624304263 724911265 644018951 499814731 858704221 415055769 849706281 281074189 438481049 678715053 750789507 876680027 615580897 602927245 766843615 752635047 274230113 934318515 820264205 226559409 263248595 660147037 94100971 900979065 615907953 183919763 77852249 72971085 931870469 467164967 365738307 732460483 200459227 872747697 671271577 908001205 715674059 585785233 264433237 21890887 203561009 351177709 759503739 76780263 139758581 699445433 883116821 666674761 653269637 324569259 580354869 968333161 914720471 736216389 56006643 662475657 772481641 308579789 501805175 397011513 719840833 86071893 810900965 367982155 475528175 506023091 780733043 991738075 945537671 702142347 148419673 645538895 767879593 753125185 573102299 501372753 990334075 28421897 693250371 97757143 646604969 76537305 570974179 542981661 631741805 831966065 456409877 299644839 812847745 357441371 833295419 805872705 376960815 313203175 305845951 72175871 200664387 908329771 788696341 909454143 513751573 953223179 102277559 886983587 315038083 615450411 532622373 661432089 464881905 380401661 884590571 692470227 633811535 974381499 450558363 24095311 569658131 832714339 699286989 751110225 482978107 590035903 307208233 6408167 358996557 32569437 191606355 536343137 966138457 190512279 153963777 551663967 802496243 580546445 433200363 305060291 141541435 394004521 456622039 385897147 794039255 623378455 239897481 7765691 321513971 282437329 943653593 564181629 919862345 706396313 346871967 404937737 796503317 542922103 924669119 787931047 202343453 605286457 918574367 575329519 466897327 897374585 847508661 66058683 572297123 787945623 665572473 554841393 366582869 274453179 242854001 634331835 564540845 651984853 600330403 950391567 502744601 83183005 611780641 286138663 267924369 122388629 251832841 420710731 73841295 30023427 616919677 539020293 166713115 149883897 856462755 512998697 617142213 138931789 352917169 176501459 72150689 751764387 581261025 440970345 915439183 876759393 698010227 541907351 279059189 210152887 895948723 275689807 561117505 654018717 407928307 922205903 361435495 447260883 500541069 958214299 420279337 417463523 857535459 471753087 21538251 959419421 273859681 950121871 565490459 577943959 104009079 456833833 390122609 450295605 452714655 48436207 406111915 203687579 740493405 220012495 261607469 391074877 779085115 397043195 431144423 732930129 125956299 333648883 635069519 873081815 847746729 159972983 306835557 774534041 598230899 587740309 538916523 580829989 896905685 529791139 548343859 351172565 599758723 883079995 141357969 164495307 149532727 689228353 265277413 992460523 90343601 522837987 283657173 550242279 385486269 53378965 952665743 146552121 677578029 418182931 544260807 484586015 537218267 128650591 575010751 219945379 961530283 246147017 577376315 911471507 200385155 334407395 746269579 925246857 498127705 813792137 103102595 756650981 963623975 969846241 805073025 314688207 561500653 716319317 651535471 23552311 955635639 779965595 989947319 346079701 829199255 933931183 635898193 66905643 287188393 598938581 637710523 590426497 515222795 375874457 867394301 751800293 125184233 672181967 347363747 90222895 742148985 84874899 839448515 81604611 284622063 348089675 286594813 267562183 823146131 837668259 862668919 181052075 796851627 195977101 148862431 773234855 190577803 914555207 12783211 521312381 611437453 507015767 246888409 647157683 875542547 54743685 202727791 659666075 338368905 982718695 622665467 135137099 144278111 387945691 846724053 175042727 326515473 282796291 289257435 791930195 399392031 301050957 142210161 747030211 547884565 864266989 712219527 880320045 351451781 131349341 776112789 246046099 594744075 61338981 683304853 147523257 609834821 152831245 187655697 882932789 32870625 944090029 470113813 889767003 331370127 666770655 359346487 404397135 423123721 280263047 744165783 776568565 842813461 808777429 539473115 551262209 755050361 779002681 609115953 731519207 410157577 151645551 837625423 388137965 773777055 41855359 41802355 758970645 893963039 39069619 389146979 593710901 977569137 929189791 341106031 211721441 331156103 774910239 824824427 618858363 981910875 861989209 370639541 145616939 114963955 737059255 554050615 588779745 360998485 136835825 431606107 555646295 569412501 609875455 954143769 937690635 131579087 251619621 543694065 819226437 471327265 318324469 661985767 620908057 954227129 492748605 782329225 818206041 154469063 371711515 928643565 338553003 12670599 222120695 43447733 430155637 535737145 276157303 424169217 294773223 200392489 503074965 810220677 147376123 234666411 134307721 827156597 948687981 280070165 615048921 561716623 123625931 50836171 655486803 270813721 807091041 469810233 475748103 73108195 52398663 104209871 720659029 320553537 574944865 120503561 266608353 166955795 38522197 857483369 648320661 621139389 790255505 716748919 673234085 903964977 108456275 473429703 850431633 269916129 621224853 24264949 531011353 312358095 33904419 687154079 31069517 517753981 567192461 983426419 664505727 789212671 375677481 695335969 94848587 729831909 290259739 23339365 857574295 671458643 967706695 304749569 3913101 756883691 288631905 810056381 509592995 755637213 492071903 69323117 896391061 865941213 175516161 343818731 258516583 629526317 114896337 157584667 959414629 32272275 386077983 358323685 506111779 96417113 113795457 45167675 176435837 208315739 597825881 556077081 385165209 731115761 122757327 475439233 344653027 31072519 302200021 832899707 722292749 939720455 809074207 652680731 296382229 586231275 392393777 217567101 622630207 447768879 983004243 724031935 691837463 949571543 859621011 127993359 792502387 726498679 868655307 223643293 870050157 650593055 11503515 807280549 282166121 296879219 587096939 433004649 75064597 417050261 977304429 578784305 726096995 357892405 547590293 826015059 736410003 878035849 627133607 565908005 808104485 296656207 15200553 16703501 343568359 760261581 461630061 319069297 521739759 102978259 206357131 342013897 174686103 402798005 35889763 863883915 44195717 235657299 843399837 416574521 628356771 207499795 971224233 565696097 162052391 950182113 715846591 402186641 998381451 859952695 979938273 64178279 956838807 832203279 355390165 348616833 639517013 399262707 213134637 747557261 108754969 932041199 956268863 316176445 275515263 425189275 205752879 199171401 493035629 151565589 825762531 793328243 647860237 973185025 218481417 128979849 963357909 717663375 961989149 122816345 944970113 464924277 440544351 755423423 710225941 574386673 193145813 269690271 960761053 124714187 839177039 991477217 867576175 492197197 911124329 721272441 805642147 420351827 936559487 303891039 680221345 988495671 616036029 429086101 660220885 907657951 676060943 600345129 726394865 292906173 719779377 235105065 711462901 402127043 609475745 584488883 537252385 844731763 532961961 577863141 358783235 406807761 560727895 306266093 172982385 24243563 685014917 978024189 709845125 144631129 663324885 657256525 829797027 899567929 259775147 569268255 780493945 755875119 879723833 241963713 218562299 145551851 675214969 548008833 196205923 29720483 430460201 530196413 597419065 405301013 179529169 928301013 171693637 298101897 939941315 927919667 188878239 360462539 204379671 347151433 922422945 69029937 361527981 678635411 418762993 487836571 740968749 811469971 92763769 566844783 420754439 359198163 948489839 739686553 993566069 722510051 958990415 688525203 632397427 158749025 116156125 999153497 358132175 319971307 501871909 180762737 641944341 870903599 125463931 94664169 665413021 293451487 755480187 287489625 757376907 475267251 942973963 369343711 418049733 495014767 767428695 265517599 941577723 969239003 533167825 211859273 585038757 296779213 299307831 24001299 252667651 736593693 882867341 873966781 240769825 196254379 249167391 637321993 140274121 116816229 554531971 481631049 284489881 122602813 495433361 880426067 394356717 966021163 856881265 130288515 719340017 763907891 969377935 494924735 282894225 326024029 299173535 157553785 574057865 15610047 368981659 869809829 177628505 495503217 171090379 736461761 66996807 343709843 617780151 39136979 558233187 964844885 5287223 867483497 397165959 504913379 907900773 170698907 698889813 129557627 79108773 242907143 567897393 267038815 295850917 895494865 776658253 370729689 867947097 528239785 272356771 724801081 538745597 80159943 79001585 801791197 608330003 75954405 77096385 769403941 963566699 884453453 755153249 770312059 734010903 858484427 426748651 800587603 59266931 218814901 233665343 158212133 381424421 352254187 618693381 568822645 96804887 59896787 207318447 723995339 399404673 899325531 839292529 283612861 489787097 23505913 430712143 195097571 918474473 515908265 876056079 371604959 676609723 509495287 796848965 85136475 985130405 551334379 234581827 594637833 228625215 929154079 963369775 754358695 965731441 488556209 611157487 83498737 979938919 801193285 672754995 737512375 457386899 276830733 215771763 976781513 762320053 43105467 525728753 434086657 98027469 619854223 515596211 145835583 320210217 635635281 583614603 26365043 182999133 362438989 418229009 173669001 998702407 593374811 39824035 134550401 2782987 89770967 918778989 191423833 962355475 838323625 953460317 867075099 79428115 175194175 593533483 107288797 835965195 853075341 505840727 487918263 461023291 863003669 7888683 587095499 664087603 240153053 948889015 676068931 144764613 298255215 862715601 166582099 290430989 247924453 255383069 968269875 488458607 939442909 639554303 475869479 296158875 632216443 368338347 302054009 676581505 572802417 609397271 549080953 177879133 258384625 176653059 541894533 134058679 767780541 618468089 275853053 563049561 123606807 796733767 480001611 919322455 934301905 975447303 324744931 432785421 417514561 940777497 509486653 451979297 560163907 707171879 220141789 198888319 793761599 19480989 930506573 991371097 881343523 314102455 147919135 114026797 60391781 675500147 696357357 142146495 143907331 117853593 669245017 489748507 280147587 212548539 737873165 900768407 345968629 572202545 3914685 485677515 751916781 465827611 786692129 123720607 384637579 130315361 180086525 860223551 820506995 839887027 8701723 436921119 112218327 576551563 977624653 436231673 525553513 820023079 326048365 863696339 955464299 856314255 785597021 392263163 547118753 399591829 612143879 697478401 145653081 598318801 659985503 21469637 619694955 877850019 574788701 534179435 883679795 414497841 886276613 751189341 100590233 168738159 293162081 356519505 183656971 945082899 28365187 286385985 993600895 763145631 5302661 523421045 931876979 806382937 119140233 299157623 441787885 110270803 828293817 207283995 236713341 615782755 342961481 289089149 55650359 234552877 693578609 188606723 481211323 961920533 165232757 62014807 593083183 846432335 123266463 711322479 766555711 177356241 972381505 709273991 685785637 713440349 479318965 112496931 883317403 155253623 303443549 736871439 702492395 681190773 482658981 225342815 68751073 66149483 784764155 2454127 274100693 50522941 350554591 107053029 261029795 760892559 507888335 981211821 271227829 244227027 934118743 420371193 64923637 333946947 693492745 659411785 351332827 329782237 131086207 337962845 822060389 138187371 654341467 322728259 557412377 324627067 952696135 806749777 780540935 353592423 11584503 925816351 125806787 719611729 119701541 332069783 972180589 559393309 455242641 702280673 902196907 895867517 685950983 948880241 179351465 921029097 183603289 583996679 105813281 950309027 948753761 292483235 717188941 112390323 264519937 843675797 133161463 515513063 527962403 518569069 6971757 332880857 579658939 563658251 212349315 162380009 844095683 904602771 165995159 20909887 775793467 253559151 989886097 676973259 808145967 217987925 387901919 928855365 650979505 357444417 550039159 819256111 945243611 586628983 38066391 856837327 406626255 349738113 54059271 152131895 385770167 311039543 932485011 858847549 430755271 854489781 801322641 99628165 984720441 333416797 770308257 89919093 120550477 415437275 695379945 149230397 649728591 102666533 69387029 285976789 156434321 48107639 905797215 894688253 294326637 526347349 318009475 70040383 58121285 391536525 571436999 341119467 534590597 817808431 536432889 424109335 296654749 991525531 662313585 737229991 272668423 583039603 316874507 698495551 298996553 400463267 750505265 838306899 642421481 610832739 474777037 900735257 622187899 899240235 616225111 744834961 751472793 105424833 376298701 818728069 864197861 364139059 372017847 680785795 100357899 939700945 46306337 122500069 974979259 95393339 12221345 291834829 328204719 968314965 416169559 59491103 186272939 808834889 707022057 907657357 61785723 223364237 920725125 232087697 908243693 356925403 631287775 617031785 290371037 273335355 903827001 483955999 771086893 785519861 388422743 324515969 847757001 883744417 365087625 522125353 962631585 425563163 859830433 484669047 792674991 186648451 665119491 644277651 70555897 459135819 820050833 397274221 639505797 641169187 308804541 601345981 851375207 542445831 227186809 184312581 10047417 288679487 134339397 941313421 931736221 360236117 635902249 584665955 769026623 325709341 93324721 180453471 742785743 234162869 322919411 916607781 287993479 910948991 929982351 356660251 736211117 295625257 678090155 927618673 235039367 506029477 382298101 46536991 961562729 318488369 293962147 961151463 746396845 215103569 99582065 776393807 36617911 835771601 284051881 256285865 653448685 461183943 55899929 939485963 448453317 854777485 610082837 634279001 559714233 73159111 726520445 680213303 722566729 266288739 466383285 626835225 537393155 638188691 53515693 829074741 89191285 381574871 631244251 284151181 35653435 176210159 331555391 476164581 530943735 738375915 694501469 310506707 995838549 888829979 284053059 548415147 667993093 578240543 750918023 672954001 253637315 274314715 141905481 180918633 469445199 961654905 566809647 736153831 766898805 985266287 990196071 111263871 543603207 998654585 640783271 116762231 167001057 940968089 207153965 283461329 795729377 419553055 360075711 677418083 757954037 437286301 683742635 288406977 410288909 171699697 866170057 993552973 601500197 849929531 303494519 25403183 384016701 213561069 510602139 387361367 978973793 682988983 484557217 143284607 740095141 10044055 268488065 898303781 748028703 98169809 730872763 537213329 951931891 840102385 23823953 61197271 505056589 623296203 577477589 777253065 899096157 913188989 267932765 175278605 55991391 991731817 373037701 35235081 914915731 910826557 520111733 946994157 121735751 641353963 797451483 697562291 57261001 6210995 947352557 318556695 154468725 183574293 688414825 359119015 256647087 688909791 177989269 692860847 238735581 125785127 599862081 53307975 659961975 149858375 401068737 391785555 16493043 299316707 833459701 81644409 561854931 532628201 648306497 124309033 983924899 345925261 569148823 659792539 325208055 839308361 810629481 230049231 75451237 901678821 698757559 323483791 862945169 445386601 553939721 904034411 332512039 273226797 712757355 939062457 961745879 36072397 761415797 636509085 696416093 254708777 655136835 972887803 878326395 310974321 443165821 515545991 290795001 164711705 243945041 751633847 201419179 940663517 125275253 940282059 85871981 94968257 771800615 72480205 877418013 937564945 900422703 10484365 685237417 811181921 669672919 137131169 975842561 678561679 668500985 46522475 205668641 623383997 410609139 988787219 852117003 323888727 337576619 902931595 290172103 589654803 188371341 338991239 961467755 922690543 483148179 231580555 341389837 115429931 126336055 877531871 850654673 546129237 502734979 514986129 226430947 327286849 240036355 762531963 426810485 964012557 563686351 157104445 559583679 148752667 692141955 775007039 6538499 329159705 261275207 566620083 681414031 463053563 117927881 329440141 802577329 216066555 35270463 168826513 557847493 652210335 557551209 3289157 274980143 852889781 92644489 883289341 849758039 108283215 995046257 928304843 362617519 117296585 542410869 238534293 241980851 171327175 186386805 340997889 461255653 997342007 152485845 534607743 981548749 317581133 656372103 148328775 954023679 360994693 164507133 296167003 718319383 715040163 828095801 889073793 113207477 633044401 886079679 844627531 898166657 115777287 620545693 838487055 903798323 407317825 413452907 828169969 202931073 666992959 670714437 2475479 755118381 896136243 79344085 565949039 580763397 315273869 58038597 434357301 943305175 236440331 177207885 533349737 893751425 11774385 264543019 985297425 36941537 664207563 103186853 157407485 477305061 933647853 493767179 214951113 983573887 494359797 998850609 387817681 862009767 803798789 509991543 981349441 414696799 932498827 371595971 790535429 931686069 626711865 290784643 139197145 35269815 699081997 468179115 265752635 536930947 270467403 76154045 761949557 436811833 320657025 386846141 82675605 201867779 353941119 86584377 626601333 349180691 106693989 376046153 977402551 887028389 848560279 760480393 805582015 799976187 845615549 102997795 430214591 353590365 169050577 550089409 271271857 955665441 252739085 370219419 528154963 306139037 477095155 663016047 155151661 750267191 248920915 292602757 136869521 957355351 183573311 391626665 970438807 229687665 699463443 565895985 420045087 296703741 648334963 969114365 949168081 419832957 260921679 170562931 109844253 302130303 305775831 65726847 503970621 325128849 339634823 331142043 926060845 347070033 669185831 196903619 118265275 870710879 753803713 916290941 195270259 136938853 989893801 74246359 489221293 358413589 178605693 814866281 476175501 457535275 22406431 265347153 925595129 158556265 945079483 548890675 669676961 964436889 24926919 830998079 751610365 199854219 7698687 212539691 159007821 556675357 752313449 164750901 935891357 564786223 905126989 226071589 358345655 93457579 79457089 31188039 120860729 670870147 51142179 764523889 440651135 300066227 555296021 600619779 44427701 774205757 654790277 740314595 624382407 55522859 899173925 979137919 568541297 783980173 161778165 436680909 321829683 577647233 263602485 593674569 865356627 704655143 372097397 626791423 180844769 746297769 610236805 281346167 528133559 476035129 289806469 611102155 653746295 363962645 452152025 971877273 24173957 600588665 675307819 676405509 5558291 937036469 422821745 209161151 371395867 374298393 731384805 204821757 558745179 367773949 259636751 393488511 462763357 751561159 320939449 423688071 848790639 174095583 222709751 434056167 537569195 586336441 291414053 978518261 640889841 882607053 305535209 930395789 202350057 468620703 109441837 410366487 962345221 582372281 932723495 55589761 21076089 120842411 3246419 314489919 123261513 67894035 737063285 289153107 981341757 349971601 237213081 398799681 822540003 219490511 282850067 90220825 899800211 66809473 403727745 74926447 313005681 121638495 953820613 733884003 736156003 197420589 824011531 656672153 34203929 176018355 436690379 592697153 904297227 959545799 827329725 48184083 873482107 81620289 93598183 985546057 129540719 883443203 116907415 630508461 199670457 673888247 50695517 330802315 726325489 85795857 272804633 706440633 544667253 400281417 941584365 226211737 671834737 795843491 860591431 246354955 698190547 366990121 651009499 995921795 715645267 495460587 749322403 680008693 480865905 939394055 657084391 361121247 899646583 262809245 806390319 843653959 788306549 331443415 625980755 506925757 721416001 224796649 707624301 104962645 866731135 322319115 711517667 779516079 677155731 853272193 361763935 244528623 63849649 197789845 250969559 433780423 809368015 614840985 937370503 375536489 767641517 311931877 527324147 330180757 964010197 177421023 463749605 617166483 542309525 623051761 293560181 620804655 999704583 888979593 31335679 500826049 502758669 255689767 827704869 204943397 878452555 942107977 370842323 574380483 953184563 632338553 740559937 239417225 88999167 758226253 695387111 216962541 852301741 393686365 373609611 817500653 225267717 41228619 29522745 293988879 502935961 562766273 711287877 53466979 786283971 56336499 864544845 390815869 422625949 934361369 769522483 23480445 526829077 117015671 658707237 887661063 960426715 330054487 906966421 274959949 283834211 211949963 678112835 543158273 969385713 654195949 828213295 651616357 62824587 753503839 676874919 620750907 374732803 719552203 807098433 974919383 355151601 78054949 865539031 860415241 418996661 147923045 552932237 106448949 191922805 337615503 153515473 758410045 494616613 245200301 366683223 391392145 195280251 811489233 54961947 575923239 575809529 934997269 553278815 585875581 161474277 357485211 874388659 294940057 565724753 83250061 382090217 245717259 949228053 688885279 23055901 692156903 319712975 432950923 212843445 627536845 388059883 510348305 197802843 849919457 651704213 122563581 256230149 633241045 62822857 333277343 885638383 149903579 697318215 386869333 142905501 656903349 608139155 267518591 483416027 265925799 655742723 458446473 131123133 183854719 389189547 126312163 169323937 468836757 305627759 313370119 27278377 442083269 80442355 907267449 238515267 452247671 761473449 34426563 39474209 867155865 362033867 148963959 484052033 736858785 867884887 440216367 474462311 493090701 433053463 129546893 312274081 73022437 775261337 489218109 215775807 776983989 612659769 812196589 669959393 800244371 872598291 911367517 899431273 820076703 8804369 861103435 662883077 338533245 954131171 938624131 988351529 459038559 900290817 964915671 652342159 238844921 984756909 141214241 404577087 540504967 413043183 828330307 865021825 544528339 513031573 313324841 23733741 710514985 963355193 940139713 838477917 266708321 939323195 918393611 708363255 505752793 15855555 831229957 319746085 460402549 26918849 323080123 88717725 61403045 165555437 677433663 836573017 119160671 738373577 750404523 704359841 425605409 283984027 199080225 313520895 267456243 205427317 676444621 252115271 327662945 691113007 568428255 596952725 7690369 549013863 962941329 146315855 959186675 660147593 211432999 463881761 867548381 718127811 784953579 174269181 278455531 949650189 994762543 851275809 516992343 866314535 901984333 5789201 400186589 75889051 322115241 546936729 607146947 875091385 566165673 147453133 259533015 989751959 238411715 707644427 492374129 656656921 696026993 535823605 625886061 932607459 965610547 118549369 589031989 336602217 996636821 939960009 516718515 128190433 68137001 971879525 911054943 304819531 790209673 214165773 42744119 922213745 425527383 363719631 3155651 240109537 98150463 167791873 664453133 798711799 534752753 316167485 649992113 72932303 17376551 826695783 540247241 231267667 741053095 100271277 196135933 494021427 612739383 755348867 260246649 64827881 305710251 952713893 838347511 232741555 118690013 286679829 662479539 157834907 560664751 361437731 982840435 470661999 18460429 304009825 818007429 908078793 714967527 453367467 960988865 129733385 620060983 816281895 283611525 698747479 751527939 190344767 943988405 994725283 146595153 49804713 867911105 130860453 964436789 637959521 331497889 920567775 67758537 84168875 313977295 116305305 123971119 48304915 786860883 450369249 449014675 581361005 493074365 983508881 171147301 566437077 625624611 3137095 236883489 203692977 618734625 124680559 735678663 949628077 341328607 667412535 27876707 855606203 971245067 678322071 463557191 949524763 459774169 837637457 555303373 719418957 69542155 88014571 102202201 233457439 370716133 972247735 282348113 10782885 137669431 79193291 877504301 801760317 326413397 511478795 215140961 600959113 536446749 764676891 588824949 850888311 814900985 257091439 849116655 541722683 600453075 50998333 75896931 698065999 781492515 378533255 989004651 899440763 652162281 768868627 485811369 158682823 401144999 219088753 334122953 360685707 317360751 513038589 752677243 907817313 366600663 716720339 912754299 77769263 740378875 162297309 297261193 971845151 567543683 604466125 822224243 118917543 973008285 236941847 920776711 832074113 907004159 861845249 451850529 893831605 601167333 147035277 313208483 697664141 449583643 501147025 689685113 546677149 512285161 570664609 298309523 873866945 701961513 571894559 814762733 40961311 715598393 767945267 165128839 949774881 313998077 328779213 225964143 492048511 30965223 438409127 796016563 406788401 12593385 466557503 493538159 736346237 422823555 383664605 432720839 208423663 285039293 296328085 168112353 116803163 770446371 950318139 190312949 707209439 809918157 14766447 37908023 500863965 90705751 601173149 908383215 474483969 417395177 727912947 403318627 334904643 715824945 696024427 883410407 384941019 811404645 39779777 244574423 683777359 76566339 216379267 488725137 952487533 489663761 385891837 34534275 237232453 132054943 735343687 356750109 889874487 290184513 243488837 895470811 390978279 288604885 968990109 114874685 539386687 706405573 919498943 446075089 224127603 38542843 188469219 5858597 755414019 968811761 274493449 449036245 217456303 685403809 912297467 82510725 607792007 532594069 275466569 807968475 239874781 645577433 169596747 410317199 295701837 626317061 839502367 506408791 342913725 647240501 628612015 957488885 388845911 102244369 472546477 255452981 443520657 725295303 6389135 925789675 12522023 692518413 975550357 986611437 651876637 222219553 120752585 820789025 316946623 392438473 563961339 132421485 869275041 541679189 93319617 747314633 386707103 944253081 235998077 265564203 746634719 280363765 695914327 532485525 716798413 22743119 38183489 444837139 36629531 455306259 901312751 691783865 587093191 178053433 558880487 788754589 746330389 652217153 556956011 653413349 880453265 914652975 789708431 383767481 116780049 167045777 912599597 276603467 681820335 933529727 478066401 44861911 296438479 209432725 28102421 583801757 795202847 832498171 781214713 70792427 931625873 536739935 79759493 617307663 23253093 878296823 227112571 878359911 754610459 85640577 755300705 662453329 465431939 961584453 931043211 981927995 778969261 451786765 739658507 401971605 512173049 848068917 933406407 324866779 920421387 272579735 811589989 341834639 832333261 936293273 110278741 925661497 175882613 806764589 273620175 357089903 352266109 620250053 788468949 435660231 595568045 932269155 589105197 502694119 488190479 30169483 554945385 727503223 23348727 969786699 281857761 439553577 118935297 654580027 990097331 103408057 314406419 448431479 554804939 226656233 19886679 609187239 420055509 288780417 998479939 464451577 513176653 805403223 437138067 664566819 152960627 269053505 951016779 674198629 409881677 206661157 53590199 593009793 904540843 144077803 744937069 528738505 489694761 160005253 301036101 36357393 598601763 157916911 334814567 323997625 227725765 537052971 313392447 247830183 201362683 480286017 554262143 172683847 927234945 894042183 496200743 100721299 131081173 39782739 269358711 708799495 443563073 638057099 987358717 704907945 8579027 665109015 102720655 550181639 458745703 567787305 800436295 709501753 470868121 395129597 982708873 748990427 421618899 704511445 468156675 153236757 113862725 318870523 90010281 511115671 606523113 316760767 279895733 337692563 28530557 975009151 473623983 825024457 347636361 836744857 894628959 176124031 379957599 844565115 375795933 887606405 185228567 809990807 611198851 807544369 319835025 912467557 92252151 803269727 441260661 602318441 240900131 932732789 834949683 488807211 934645565 927450725 783763717 791542849 942046913 529258915 36968935 320563009 542093683 291626027 632708519 78956753 213340255 5067399 223728593 26181529 709819865 817514949 138333631 298521421 215018621 756589689 239640975 257362341 78529585 480401345 434548525 248776035 123203873 568389703 742591815 568325973 866359487 400397109 386422357 754913611 808704201 923977027 979370903 373703965 187988035 157494703 46683161 846588849 773220985 494313793 46132133 412506607 113857537 39520069 88089049 187771339 938494387 151345297 635366673 450359101 5945785 507133573 191262073 974709063 274674297 883123207 325801469 922421495 575260077 651267717 808840025 109590621 828187469 191060211 937000717 487529873 691373729 677639379 385303647 935611833 307456817 944506665 703821663 765171197 586771925 544776581 844622825 297620625 311288231 950839035 213380249 822325677 214305035 405120297 497732569 600897685 618252463 408170297 776212185 495007377 147106439 606865109 273062035 253545463 138972879 340091189 629002949 372209951 197138185 643651609 178828537 423240041 133415685 716147395 410912637 323304005 973366229 125561605 877807723 380226591 932879061 872080949 950243491 579288949 38633131 751476271 982031053 892133321 239796803 758809691 27647067 381149861 77613007 529741477 940507777 986435739 282628045 307222663 746804035 369641027 185920511 130260477 90383977 880009027 952639093 507405965 919875201 842451267 600255107 66849351 546154469 971609847 57018305 606868671 642865587 28621079 654290711 391130643 269455063 935608679 145629617 960993261 60260095 547806641 845675009 594675319 864859555 946606789 179638471 604642665 653390085 647114113 475612163 316315395 244138795 855463877 82337795 334570761 747615975 456639867 843683933 284102601 866199761 472549271 633214697 937051417 169983047 122787601 887173329 34257753 549318773 505482733 701283709 727650415 287792457 956831285 178957217 256040137 672578683 100545787 620740669 596125789 951804555 288201559 919471505 261467049 32484291 188765551 146929197 499209907 445861683 474163051 344171491 404711947 832665011 237276799 49970895 648836549 998898913 578854371 719287381 941960831 998912551 820322779 179053605 746155619 122036151 605399217 896479535 42426907 425416071 458281399 876985007 757521377 677957207 697306183 147302189 904006767 645166769 165654211 16959347 828943375 138777571 499965845 415548309 765081997 524719879 282583601 154292719 849011009 458125823 400260111 618356775 623118855 638616175 469252531 28923433 455076423 12402377 141305255 641510695 379267311 991166279 842123131 777990815 792636533 443993319 913832141 266580309 532036055 57574513 139704893 982121045 955253659 993421177 193154167 938137589 793682129 609022803 541321001 426966733 480345613 596951071 94852115 883730631 677963887 509711817 976587251 782843913 328628379 76662529 600003477 248698381 269864385 147537467 313737929 472639627 592112793 251163323 383384941 830816393 257648733 985886087 309351521 679012693 294822871 874852465 727143057 397779327 287417939 126297361 338297835 681495015 985504425 372488647 398503535 364967089 577155637 697316025 551125275 355786311 416314335 972697819 340479227 754473567 847768341 219875 632240159 167792883 900079821 578965075 231891109 50164043 370608773 639135857 216512941 496477937 264078661 358320463 38571619 21257913 944425113 32649413 783599351 328863679 365069207 903359345 743546275 599520361 815120863 137291199 999358379 233555297 787047573 780524763 24535641 794306717 669717355 339814849 710507007 928149081 114251155 321530417 528204023 992990745 612462287 293535663 756825763 201753001 374123107 45723281 128670317 752061469 70707229 725821163 569946313 286472915 750183253 567251873 791355951 90245741 847908839 761807191 844777509 190820823 706040123 111153535 541502513 352789831 477121343 337413971 94356709 496301883 120396649 307033809 468732639 614492019 997520311 903835075 606855103 43307517 415152561 155678903 838845745 868177455 203307873 17661961 275635685 84124577 919730275 611328725 161107093 882390845 808113873 233950213 529406213 858870315 704124497 179645769 496116991 481467103 209717525 42233369 698149205 900677657 983984335 102411447 797940961 927248857 199675329 956928299 323818373 583087215 318177711 930363459 634415917 38305131 146560743 331657369 320680649 742826159 243879745 251912589 282045267 274028889 61016859 294241863 697025231 865756377 829957209 345126583 195609927 829883875 133705067 568598677 944426957 697709427 234769479 263409763 134569339 512209869 302856043 605984359 844211317 884595069 702194399 425652147 350068961 775732311 274687277 311761695 401418741 578279543 351008881 845588041 632611049 158953795 479316293 833898141 152459267 862316133 980550095 163641417 955592073 471871187 890664641 751472965 949632207 328489929 896199247 819617361 592204079 747375563 286372661 51611127 531079435 774513063 585273277 639559559 422827725 939877229 938948277 733378583 6460393 921791357 382784625 506519947 32016345 89052025 352982991 114818951 372872477 871426893 224001847 795613311 167593537 46730289 152362903 244838057 992472791 920754077 883593575 682407173 854214265 909953113 537375649 535280221 296955339 435710829 851277517 179750975 487765363 477601073 509919227 511095815 309564199 635438653 469166017 409222609 950783649 289359995 320203067 79955847 460142753 617411603 920921359 831516121 796869619 735260283 59536495 906975041 540858473 606368109 390275599 603298557 455671261 624073713 805280557 424017431 726445363 624565583 562937487 942753373 51161425 812045343 294123395 287316841 407187501 18873661 313098465 555621275 372056001 316395721 6985223 441634075 751573261 272422197 215865305 489336537 677123869 883310641 238560199 398401933 391541763 173568955 887737543 851259577 257187801 984035605 743465561 910366629 981021123 924433359 664789887 964348511 867184359 908769467 57787851 505034945 701880187 926474487 27379795 817498985 439899065 535733989 80733363 27184323 221496033 115457331 468523539 668318205 89654337 85375443 928694303 676495375 223724071 492907267 352102929 168056507 157103855 50223175 976400805 118168455 923731451 574879083 78106657 454622405 28025527 423228805 512322901 231798923 137709971 506331119 237873813 954842557 802979083 299744589 349008319 813925119 301091487 111814285 245600317 287129029 428978139 18141153 679065593 585628485 400046417 779622345 920504427 508820865 937114523 274848773 897417617 44770879 749495901 763424421 637042931 969820175 983855933 874478841 766662813 893837133 535454451 494252707 581726247 826108181 703056435 386003585 491638701 32547921 292042437 849617347 962882263 118572211 709675119 535243997 906181075 50181039 2563589 313046155 812921941 745227147 971443297 86475473 917832351 262767689 154118503 475866105 838890613 158185151 551619837 324460955 516271655 891802497 907592219 263402899 559293833 76955121 467519413 922859779 351402235 66532151 635582931 29778775 896433249 517617987 843922555 360999749 262183979 225373135 801553601 893910473 275108945 547652441 24268223 134651687 216513869 644063273 242979225 647318507 631370537 852247891 684594295 302196713 243312241 543117227 672639883 38741311 103775549 593645265 946453009 310213967 714338345 244880945 536147529 732139463 282929501 404970489 468025983 624465305 788327303 659261987 800086023 506511365 341649629 219134315 109525559 876559243 575929373 63736415 218567027 752209657 243339149 682997835 791832103 562639461 95002619 977003079 451623875 897569833 900446657 547615287 707811779 774183913 142162359 669233601 379275945 395948435 404044361 384963925 18996477 781239387 258241633 113963307 325461075 156842939 818049145 823676995 26239045 501073531 102473099 370251623 770652023 607635877 744009761 192373287 777081489 809911179 215452487 549268955 721721669 382876367 379293077 330356897 495576911 36599119 321424423 336213603 846668143 466830141 484938661 510983635 232356467 551564297 398573373 459175271 382745641 632403311 834682789 543866463 359916141 504248439 175216667 211952581 374841379 619569771 760954725 118708073 259700275 897232863 842165459 965412065 302084239 3437489 583241529 39067791 970561843 742248963 455732215 488198299 134018847 696951105 509285361 722162167 898142561 890328355 381108377 720583511 767300615 722042273 439021793 958919745 416779565 574212609 822449739 746951159 320887799 409358287 59527643 8777869 362291085 520035295 530308895 845148637 677864993 868250447 270135087 680892035 990825455 196429441 216894887 792906473 624993849 29095971 46344623 598524479 978772039 963444265 867440885 575370109 635575405 944753869 907335855 938894949 817223431 247107479 350743195 798345853 491838835 508272719 383495167 132345369 320592671 795828749 707483307 18471755 507130493 166434859 921668595 448575737 503108101 452653901 253750199 724294089 951170873 591322721 787590493 928464171 394284455 719836571 17841873 301202519 990311389 380546935 749996941 316855631 357742199 471409081 935735693 345965017 972004121 665206891 280605783 234911879 923427179 346290917 757286905 216711601 873474079 120464579 523902475 793039989 613249521 729625317 137283241 983501247 713330339 808222333 283407739 212604219 640651773 138067451 755848367 430523493 50378965 798139933 882476539 2113917 575148033 713982695 267147165 499590793 956884839 620792997 5599069 532715611 401876719 18729195 636462471 559625609 453389195 368427927 759967217 821666165 456536631 281688523 456375547 408192329 323250421 15634677 108817035 533772017 296622031 886927815 138995469 278311465 585350613 256873279 678851195 640344431 219522595 733512609 159766351 932575501 31528669 463301499 546731923 684516369 317572651 218565789 186532821 387163991 218999617 785592103 385649705 880350331 588695895 691398269 673432877 814731495 584292527 293510217 783053577 647782091 740558231 911600511 943092843 299009569 256986461 283493215 453449097 508681639 506010463 278616681 459673891 664033253 958716925 175573357 875588475 867046957 524174753 117067901 822362979 376545687 755175869 785322997 895427887 649289731 296432589 43357561 821232063 656238361 622687315 469603065 410747769 334891849 655156695 317535141 911214411 662487757 51448815 854003451 416714153 555773089 481091633 739533757 86383509 711489427 369510211 789962491 45908883 956793135 555216845 967882503 71866547 683785935 563363203 963793023 637734793 888956049 967334941 366528837 868030259 595403361 770618975 461814149 493937241 682503917 248980241 963523765 759203371 571807917 333351945 812695699 673597275 685853923 202072349 397008927 105996585 456094357 908161331 794562727 174039133 95963539 164357427 575088831 216366147 809487737 316320529 979672389 708176817 542794403 942146245 265452123 965182471 114341693 383919443 481954415 235484715 162123829 698799043 375701811 985357707 929564225 386430507 681044647 961274651 479112935 842148003 103219723 854683741 62063979 446318155 728341743 396167253 922471389 202856529 105038883 399146131 642727961 173998823 868337351 289856043 854098107 513767493 375493951 210265787 624003629 967399343 210269237 527059307 775607711 898680943 402113951 794594795 344111627 548042453 737201079 746955117 426678063 934046015 672253957 134469041 333299349 396642573 497877075 68693503 498655371 352633257 248011189 107032099 304873259 819246983 619949959 321530227 609412949 228758815 613238895 275523537 785705395 903051253 706627927 384221853 582236593 595933585 236056181 48842187 397003913 378935945 146348613 985799375 400585277 591693173 128994955 351774631 33411221 655878645 591663443 865284569 869099039 701243833 101466609 608555893 214554421 369650029 437314051 251013135 824258293 897505231 840846443 882666437 471683659 452751009 494669911 204653633 542465253 590311341 680777273 401197485 279207995 689298373 899491535 958405057 448572559 234451905 660295197 297114301 191568871 69101959 888254577 920004195 859458837 135401729 817970011 543101701 841991345 417134877 342306491 93198969 938329627 276544729 557521331 839256859 945033849 599165495 116268465 214404819 57046975 917271873 741667177 155940879 838621603 986921225 544021973 459879621 72129189 900053161 696042813 792232307 342071567 343548993 549996073 401597471 926857201 7221249 679478385 933942615 471468579 968160021 542187055 710132533 918197571 725908157 22137545 654215249 261343419 457281335 513037801 13558999 909311165 418084557 842756741 612690289 615189823 824710869 651839449 216096855 65591553 726586023 925725289 988316233 210136717 412563109 989948159 916056459 373913905 976079673 987509173 262767339 787841543 53054935 348453601 554484415 505850097 603124215 407226411 594405353 495944595 314495517 780866941 53494987 586142303 954100435 937425423 357567573 969763215 858988971 620446041 741382907 980974113 128975935 14619681 638334399 74100957 218643761 86193011 443655463 793860951 945108267 194667939 374262845 890296547 738512353 922203983 75263389 719406497 241133835 790820441 279939679 779784061 934577517 572515055 543527727 539944743 646361041 736951427 115947831 549480723 244317705 280883925 588728625 757069957 186345453 437474533 18322007 807934083 328676963 630238209 900297587 852532959 674096213 37063359 503326673 5386545 912896947 761837561 952697417 721720281 261842039 898250707 710638647 714344701 664924581 241122493 557268611 575899025 889798215 98730085 553107099 54764107 815317103 158872269 375294325 656724653 642523191 713219383 792665743 494724605 995382465 530160941 283657969 172786253 55519031 13522823 424908837 931057525 412329421 179944287 935099719 461798419 643523259 367601435 121658351 356651667 203041605 964408165 739196233 919881761 162576565 704940597 299928319 195219385 169953629 812497345 420712011 202335515 621242263 573396883 279177961 378815437 503184069 108381045 744011805 318333983 996802641 469805693 74171323 274228779 333552303 451468803 821578003 573530323 64499289 567709871 40075785 85198011 521801935 595606893 671339007 652149077 460634525 163328623 990657765 760017371 429241685 984895539 425789489 806726731 597410449 32066173 817837537 30947439 541193459 685631835 433903995 725479637 937711141 518010397 666203919 730013145 172064475 998025827 150044721 516663447 581567439 156194575 828979969 256225785 596763329 840119119 309598501 884597679 967208829 484028311 378989259 587970865 544703189 289631393 159014311 305495745 142434721 96855157 29838843 177765479 997422537 79690587 335843211 570347761 970606897 408223467 175478437 91226361 804487375 68759295 670444833 224247775 361768349 508478141 866686811 438778571 840910235 394771343 321193275 256825773 766660821 400265259 146862385 221824573 815822429 633628043 105131823 880462077 994020173 919316983 156206517 168573491 500473287 116159481 91770569 868436209 609122805 151453029 596269819 396827151 454630155 613121111 362378335 546110251 981762115 821448245 728966549 437633457 83254237 846067883 620398275 672315343 884015141 515566251 350158999 88327549 416538733 195118963 684344133 41243003 924124175 502969735 595242383 715349587 87220589 80768947 372486585 541917013 39202547 478199819 60246673 542524311 378494993 991856365 186725999 575724797 761581121 646147067 919029297 274056491 613711881 728110883 964536379 604348053 190705647 354214807 327804797 190799729 743995271 193379031 787296365 477287103 746377835 377310115 211901451 997637449 912320829 259397385 676993753 729183901 935974567 63375711 330101225 159856663 989123165 41701695 985780175 851440083 520498713 261679757 909047211 76179899 758552219 700137335 512580643 271491711 791802031 958577521 346648677 430796953 95662119 9156151 844532519 871631175 135838431 132896459 655318437 584555923 895693749 327109757 570256041 393886027 856384917 505075679 853875073 122246153 682305651 63881165 754277121 925596205 172878921 374835309 899378823 697893855 679128087 298040361 339805437 365632015 841377513 139629751 241204173 868636533 526679251 162622995 424746479 150948755 683725291 277356929 809776353 58209713 793007445 472973965 143891371 921911261 265179197 137305611 810247129 100490737 710144723 868603673 38196865 185813131 393666897 806418969 453925701 501657111 534245629 887735223 915048261 275660739 53252381 385818601 97692725 117364871 727049733 514261741 171683145 490339365 961193487 809636419 238762559 545834531 122445469 606217657 584430685 221825747 486456603 550487139 234274673 655739467 737404409 775609247 586622163 932701551 893664179 321653263 914681441 6627557 171328969 498021025 217345919 485895195 282265543 759875465 914873375 471615565 731014207 34595137 681674675 834511739 440627661 576448401 218072123 484800363 375897103 321376385 141717311 462562477 392776371 184265065 589351115 791972765 496039017 748157411 661047413 402108759 866873325 382787797 869269599 112551621 78794495 255427433 362939435 189630873 867199339 350299157 27763719 723692871 480932867 761937299 374264237 239448597 299980707 995377643 330494297 782967813 744767017 75211623 990627025 271502317 404026243 496960923 145118821 85128801 860062881 372485219 246158825 222768835 833732223 743278821 287094715 615340091 254072093 905539723 821326277 998210233 592877703 539069965 968539761 409034231 309476303 754119267 615001529 986537075 646566417 911775699 657696791 193826933 942188395 910499561 505866133 784586513 966533643 149553017 408721599 591422235 990597409 12883873 99708331 477712435 128509929 878937283 702457083 622877125 629309603 38737547 11251921 644066303 388929437 799933425 749551579 864540379 432979493 496356397 68434515 314097941 718525847 923848645 344786165 38436667 967996503 564897159 895620617 952851609 94554315 103714691 753114713 117175879 722277483 70442009 384522303 183005225 173694635 101514989 934613145 571039717 798688787 889917929 888550861 319777259 738103081 559948865 704022215 496013427 941339521 831885685 722376191 648120445 439119543 466736197 342962805 737570003 831525737 363436993 86489773 884228357 666501701 297200187 239069109 277769835 414837499 447884367 844904995 659807011 867086151 1015779 720119577 327082775 951836651 576284449 752133433 572142329 390093231 524443007 762150835 260728127 294382183 671444665 58014525 378093353 989095407 149649875 4207381 938580929 646195493 16743961 807251969 28334295 576571127 291766303 161253713 556590593 292203349 530804417 543201240 609957281 845908027 247745061 231936249 38727135 204901035 45926071 980682645 508681645 21139885 489469481 957061407 500703679 821241173 681662073 265211529 135941531 321817023 187640043 802847573 71650435 672881673 925720843 512074885 257950349 343393121 477002671 421897645 975890317 604727799 248462833 793065949 181635621 184549383 97885749 32344761 995297981 110958803 466236713 638570851 474453637 729708963 638410943 943152523 362897525 794608845 136129335 374336615 31011407 32105127 150924817 481015221 820441499 803479703 78293789 365752507 415677095 770251781 660126571 987381577 313629579 665783651 366556763 936078003 333270315 586374445 501059217 631215321 667845165 822385381 621723383 413514017 57597441 42892307 273098179 684927863 320940511 651717451 444122991 528805205 340310985 155789097 86895043 40460469 948592517 514785099 822290121 77424417 254706085 942715231 719042517 60055207 924079745 275208727 241619587 696238297 108306743 154654251 258213305 740536795 899893939 761818461 442243745 592502607 325071521 184904571 900416947 110026085 307894909 318987091 459943333 67823059 912201351 796301763 896767105 967574743 877051589 722957993 276803217 683968057 135219209 619493875 351805291 916542531 907351273 545903763 78526183 576644305 651428039 313241473 380467757 582286397 557700813 411851455 72089257 458610285 730554599 652329563 302077199 150877139 626966737 952413539 83939417 291218019 758107913 912180469 460600525 384873113 514469849 955549487 211749623 765431935 55538255 71289919 680590509 48545955 447628103 177534295 176298505 64245015 481198173 865825199 715194479 420470399 350990075 49261963 197265293 177433853 338133841 691725107 144877143 778558785 404838233 462286333 209096711 999564161 536665041 458281279 952460581 117236349 711906113 808838495 158509689 847601271 146679547 571071685 639293979 801081409 533466647 133385443 478184549 502858287 987763317 758712117 683915005 632772385 102383037 233093693 905466317 803150205 989640799 716975749 988094987 972150321 490329749 762170781 214495539 767607729 611844957 709874979 984749577 591221503 214962559 475696567 692637593 518015135 315413645 381778947 530187831 764566943 855838687 252713913 455600255 102993559 864275859 859908757 501327959 401374885 980325269 489795929 471623147 776866413 550315155 55370447 291767981 594695455 279521029 536760007 591324251 18860915 601254445 534641439 954382841 734372515 526429457 136647349 840975571 997238135 160935809 37489273 689030527 990942015 28874009 888438871 697372373 273136337 916132405 480543309 791464191 850885001 656698625 969124189 339620451 390943823 917359723 114558097 418058939 331542671 215510825 358302201 664408575 976678723 652409537 97592243 87703927 691648999 990088311 6250719 718077099 326292865 922549851 591445671 3446387 807871903 577394249 890395453 344451049 847716697 701505757 114783965 826027889 585513037 849510529 851769033 656559545 777866655 40545895 200040523 148129461 956172545 421618563 84438453 681629857 796979621 370084249 352098143 706207487 95638347 93548081 43849391 570570143 87674683 459603353 56003853 68554131 783582529 307398635 531348717 280250423 260500147 458074631 640686279 582517809 303340913 852294807 333981727 456320621 643926241 275443975 702328959 791960349 127832817 540681361 377782903 482114751 693166359 525513527 995208869 319656215 625090897 470707905 261162665 923061809 511443749 330838973 142065709 481175393 972218529 15199877 690317285 144132675 621925725 258175031 841965705 199826877 31889271 654685119 5076957 581915387 398794899 972874955 382629289 186705519 10191587 909101267 238440643 827900121 346357273 270290457 827900419 534190649 630970485 294971555 130534219 556224221 858476991 619448643 428779141 450717787 327020099 845859473 251030179 81557131 282361305 973806573 416925347 449441431 606818525 672773245 724491907 728344039 560485175 939707445 469620301 426573103 186464085 58379467 117422359 862127471 650367787 677750463 371744761 135170279 158394683 532994651 56444693 829555751 984827275 936222383 81883285 431146241 866115237 433477267 352415149 358662033 948605603 70807461 760550805 129550651 494417955 880845647 424417425 128726447 522172747 382022595 708917483 80212445 187687623 715319543 690521587 328003329 691675343 807125419 129741063 964269987 322288163 206231657 500223623 868574861 925045509 325942911 114673885 660450771 617504329 708856071 388153213 451063763 889530431 533809635 883946975 25877037 890367433 299495095 570766471 4211923 388309325 284570613 926268927 982085365 240029625 854332375 936465369 310529553 316657027 652867931 799832495 451550443 488103849 315070793 2332707 370836623 58524849 415139637 6045151 435892051 542605739 581524083 567816343 739779023 170961707 41240357 645662211 396164077 913128017 448818993 585865959 768629715 753496003 701623629 577462797 687849211 491451053 341800939 904766279 33347869 800017863 989772367 188049519 384987969 137107537 591786879 489072231 1347247 570193167 361897805 770422809 950830079 41936207 505152849 34801017 518683659 719729129 330468843 443054207 550180087 383016505 666937665 287449647 872513841 774817575 79192647 854143379 157274221 69663777 772364725 173812413 580269221 239959069 794742023 792928199 11391265 598757017 232756617 232486867 818641259 757562523 325074251 896380427 179218007 299884979 530481189 959273635 412036865 621811957 821149877 800339925 997330383 155414017 501702503 761466593 586525035 23018493 636258663 989697299 119248331 647444117 636941745 547304123 804822827 850917635 578178053 775893047 845095183 665589505 792116713 648477927 829864259 152771545 821159341 478949943 76069083 248661335 472718187 114371223 941748533 44796115 873691141 703235713 782639859 717846059 999088159 342806905 381183233 645215427 324238637 557876489 974614935 503602827 908615779 242096579 178315053 646170361 346592197 967791169 181068169 165045259 4357403 336274981 777826487 168284999 85038835 643618585 859965453 943194813 269978537 571131857 831311651 576071169 169462873 5012743 715705571 945306931 567343597 107283579 616898677 645452281 749949461 679268345 702023245 135613055 649962571 615649875 840083755 428961919 596232907 338831459 979808527 554154037 997667747 925637131 675884617 769706855 235823519 501782837 901101163 66815587 374856537 783289557 968072017 234778369 579400753 841590245 249299487 708502941 83389775 841195109 349720131 87463967 285704355 86709857 288323185 540500725 739642341 245417707 507934629 579662869 973199255 694469405 663987747 932437503 446141439 137412889 813141111 160643765 888895535 775702795 777494645 884038857 921829119 672069155 405549113 300526159 216377869 998427035 293468457 696341479 427358405 424853431 290726127 82657719 610562901 224191169 936027267 879924845 57610165 901556747 806793501 873053757 99248293 756369135 263669059 545330153 144985775 881138641 242011585 6288821 139743523 109794583 302849707 118034031 346013463 611565111 524888671 415716463 572280431 954713259 688858751 44375187 29181135 12141811 305374457 838346559 91562155 272218523 745877247 108755811 274973241 731756597 928745487 166067061 809793145 587153499 228901103 707590771 759574581 585845935 693045927 498224357 509871867 450325469 589680527 351751127 355637799 903400853 795824193 733947359 830702037 109556625 417943713 989472285 561909231 512571543 679292125 661680951 45681445 766124397 930331241 200851547 197982193 470170599 41253119 416916029 779640209 532435423 268537767 867419167 402782479 644460599 820249003 437300421 896259129 63245275 369746333 456160639 326628009 782308539 171338335 361876769 103435455 137710801 928605199 426845449 850166435 381862691 330189087 807812127 108135749 531052215 627797823 627005395 766109023 823203233 848666733 480403223 344009325 494937595 852182507 268658027 405126077 688257767 777251657 978750423 818878811 934969745 805891931 312841703 766484257 220400681 57732409 758022321 823620013 706280171 426701643 705427413 893080939 244706071 172176957 596528249 397586313 961616377 127286273 892258891 838004479 390117859 160110805 59884673 1641359 616201519 728433725 266194135 308188863 250294081 244485637 615653529 911890657 861627263 414467395 639349647 729068555 723641951 776452433 195713299 473639201 357118043 998692051 394007811 811902153 903489779 836276919 437274307 383103089 55415733 450319151 104227907 739459413 986446639 871335611 929481467 925169013 341599229 857095451 456352485 398540951 178793409 11379807 364241803 768008523 787464743 164604377 793144569 488476653 764331999 508283173 99513029 316030873 817365925 524264743 705707279 833768761 213232953 499030797 368791421 899632255 83445351 218856779 506515517 28273889 116256259 950468765 947534085 47246495 831794915 455867143 934170643 740327873 511461611 757388499 906143533 763554587 845892615 361471897 198943907 103568705 8730919 583104821 169520713 561576341 869801287 409096905 557575293 398106431 308458087 490304449 131451177 704309295 993624213 233309907 751451831 303428127 93713119 671151355 650602783 337711501 537238113 395959421 43853537 687214785 979250493 632062437 393751041 38394575 506858399 347537671 678433549 1462923 660051127 223129601 858499099 642830741 632363457 537534517 291537867 630914393 678194943 859801937 188375619 102062085 230062777 782430279 711904817 118807443 57969219 770358871 803516875 901765313 459882231 706163713 343474127 637464599 498958649 756791827 313178755 803359975 48158065 211979939 600997047 573079623 245891345 784456715 74060479 438564379 953045909 674852335 95859067 233017353 765528957 99348029 768532815 223526017 109126485 393392681 432558381 353068987 492742321 689337133 525182855 287260855 278448423 308005393 468132703 934859327 109036379 494227935 730709815 271981539 373197305 255727337 993506339 606004475 289953459 880248273 719059123 438839205 363709759 740508277 346149385 592488395 38705253 176707335 474778829 417438239 196737259 627066103 904333863 23950615 91458727 650082817 758180563 630197235 178990447 573153069 723756045 893138365 432060455 740030917 203068573 954973765 822727611 159137885 757328333 20737825 950620701 30224339 491418745 222509235 477101379 840389193 724328441 361364259 772671541 817675307 329965881 1882979 834180089 771743537 583627171 637049385 67725477 659170643 5594161 955982581 79574607 704858583 270831197 137111311 308040221 24472649 326366001 221954187 789875509 826090877 463566393 540666685 542931407 86337681 363034765 166155207 353743905 70985703 913346507 782314129 911961453 21378093 934867735 805541579 186679553 27390295 187818529 159798637 459777323 573070751 249837599 921775673 513296967 966641293 886023375 49212087 730222521 340779497 694573943 838174517 825339625 454024395 465512935 12223435 625499209 500554893 603772787 735690589 324970581 807709651 574554619 291230353 728720527 851845003 272928485 557074135 338052735 408481769 834570269 81923431 360495803 951345513 9172765 128911939 381407705 315012559 737969631 517664561 885450623 129243429 759119853 984507075 951695701 545845955 775231315 214675793 714406413 201535045 136853929 106692601 670465635 424715917 150880013 145508775 646425625 411575495 137548067 429382151 300121847 120171369 46444571 257750167 422813649 554007855 346913195 646211985 36398467 795978781 529723409 694573313 332215789 333635711 518888211 514890679 276300537 991133161 108843777 135983689 649409433 292677177 994894257 930576409 112572617 519955089 146695037 729278545 30465675 225171551 169152593 416939741 367689447 869068373 219813529 48002425 879738611 131453297 607367753 680020643 944748485 240143353 571021795 954084517 670114691 857760885 145719147 596377741 838292053 988553403 378036079 845854007 87911789 967075561 704528903 129657407 223587847 333383779 379334609 156343567 230006885 653983443 221876977 141265879 646470351 600382253 51592727 371218577 28669595 53485745 446132601 399127035 690446111 657084383 255480277 89780893 97840321 439875975 359860595 245865419 509816297 54761915 728432927 303405207 911220747 817477335 841867567 752816359 249681055 306767489 888950915 628751969 287233063 746159779 547716481 17373045 119743793 309144179 867446037 285739101 443340107 991682925 305712569 505387543 348524563 881367635 88558185 892903275 292634665 839884341 421230507 400409067 812901431 669310821 241985165 15976175 876413935 789514369 857310119 587679893 378370829 97850731 952034839 649873097 521830995 312643151 287613569 688337977 755056779 236505763 216337941 71250269 335504773 665026597 594668937 997155703 86317855 417040853 476290077 550702989 758284345 144021249 285835923 484079471 822810045 23224893 773500477 669046969 666757533 282552935 752744431 849354183 471179733 972341153 989145355 712579269 338759527 559961689 122914417 85071009 660367197 810853441 21881749 190710803 18167239 201693529 775150955 451582107 50728643 643455201 174479729 14668163 324633969 470567017 489468589 319495385 43039995 512392897 811811501 55295097 121457045 874854665 604750473 471143679 173216119 755702181 198491615 91094229 723244005 392521023 776731603 787696941 603825191 345438157 754776085 342656763 518551187 358015881 751151581 485545475 676023167 500091387 296464613 447077837 165969489 157928173 780466805 512686247 918812273 295998323 320206429 913624235 923324499 130965225 640700403 653466811 675955311 398093813 594442515 881113467 958167113 347894657 526469925 56085597 466389867 368466883 673644055 125081 200109157 808856887 994315615 700189745 431281109 331404705 690894585 831474925 740723035 6058253 185405553 85339483 792524961 263240911 345425359 109504981 113839707 297636485 864742061 414897017 993752897 325067537 731487017 789527347 508040471 486925217 264110311 852582577 662194599 829326503 420472855 456933229 474909633 686258401 14423153 821280675 830829635 163711059 302322223 116721503 457030413 168065355 561405211 779210097 696526345 288381273 735461249 471878257 827244587 874106461 321568055 170317247 329498219 101035897 191973023 716274305 399519949 860822555 808665499 40358571 664353627 782388471 599215769 116205555 146360613 668859143 256239507 323168475 470016329 256571027 707762437 250474921 886933991 559451683 153227509 290353005 80497961 697906063 373754867 984659203 795328579 424625905 724524563 432591367 490945645 551896495 750259189 924003299 732701163 491643251 567561661 427228361 900782855 230481715 280853533 712622255 151722771 551555627 466331975 298069 594564455 323323615 55166971 830949957 19749481 599978011 423094913 201743821 71532675 657240051 434477989 884850185 775124259 709434051 57143231 121358549 184065481 827403825 590206379 847997915 161050867 606179879 777678801 915798411 683159341 498047965 673261855 884481567 713800711 876653259 882493451 999111829 98069279 890550711 423127443 410642357 804993813 45019053 868996157 726992659 743250579 805730049 235014425 942648323 539073357 859148881 412132539 583504551 571855101 374050175 30025283 208599271 36938851 711069369 358651989 314077043 921634889 666674545 714876451 906317507 256412805 191103335 741264479 621881369 821993199 128746395 388448331 750076027 426840169 134480731 225407147 184697787 465368029 466500413 733489869 198582129 65613631 774215707 663437703 481614845 347769481 368338971 829258811 219145093 975922363 612436391 81609163 566075133 783548127 457731187 816863143 78080285 511780619 256425599 432980165 697260385 310028119 832729357 184892579 168840981 868134117 616075175 620246599 200426569 733509345 647200549 251360065 886893269 509143929 579469985 644769445 577337175 761837293 438381185 63372819 788770875 775094395 433762161 383308465 616643245 309609327 227711331 555311659 40776105 608955419 590368405 375406521 475381999 410589401 140425 591329051 110877189 744657163 283215119 736433045 542932795 788135963 653013307 409357557 109408429 959457405 573469285 952444051 205869367 927300265 67042613 451826763 211829635 29820451 305028247 496599429 486304003 599282293 179593917 871672879 453970667 211333681 374332453 705382335 376576319 361677809 704288403 530669621 14031815 156578647 908797973 357817619 185432337 593213967 717388283 111289451 558850937 832935113 242864613 462562257 970718235 554155583 915525301 930165605 17867233 907130933 969281945 432379085 558205051 711392373 380160261 598021173 50219363 432126929 222214579 321161559 686397653 311145763 881755563 637442157 158878943 944835149 573104949 211053889 840208973 117380411 593074665 100044833 126435257 280040669 883007393 463461599 330891907 97014317 223502211 911813087 792709587 285227823 132242681 291160323 185646489 787130861 880977593 266739899 136601485 725730681 534048191 46498045 266952753 242778349 5173325 938068039 134236619 674249835 558421235 693525153 432080749 881457183 854129539 960706199 272352751 99283769 761176603 525721151 422188271 319937779 905515035 268103737 509918681 77647763 260786997 13593771 925694171 988939615 834244697 394424385 765754861 901723051 930096837 513319733 690344911 587825105 320057085 917104195 777252107 75806259 324996557 943285169 732421873 859678011 756310859 906402381 552025753 483364957 777236943 862684783 75540961 451208467 809516289 278539507 409119347 849998813 800887501 163591747 637225665 447546183 54854247 961955145 557097217 433211619 505078601 973874813 698717747 958274123 118679609 486730973 861315361 272014369 415941189 75579633 341223257 936824081 311014845 322265541 579540535 742106827 586814784 648807919 778125783 170282251 253458611 603909263 237964323 26631825 304822851 298910795 915501003 248162857 796701023 539619921 415561 96030629 803992521 793541461 299422683 479985887 657218689 755633305 651067019 650337977 565741271 84968161 803482407 300856863 742516061 691102075 593065289 649696513 172465391 393118527 72533329 552564059 965036979 294672267 22894439 587830317 611727379 913943875 390278779 536302723 405122501 916930007 905298759 974589039 245049029 574510655 485385031 796214795 467907159 617661941 746080201 726697083 141749767 453634563 459596505 638844133 264543913 537139189 867512401 78125951 228058459 867699425 617291471 865327747 295928959 144016999 228875967 752824625 293600961 658785197 559289167 968271061 740381207 35822689 495618935 389390785 226276543 687759799 368548089 420943953 237903929 67234673 572603739 149675491 125284947 769085651 462336239 468102629 576686625 261317549 300157389 203729095 726045441 7819091 426369747 814103299 183512471 6893989 698866861 390433311 285087947 244633095 457251527 813968801 3061975 282714729 308193373 835718173 997681203 416936513 341317999 901187629 271187111 873588623 856342467 613112181 892658747 44138453 546785769 735276955 449935431 634921253 623231037 820047701 894792293 742772501 148734939 976733021 215362939 123835841 457715629 140494197 240883379 881000657 749669733 386295653 196718211 170420339 956766329 720119809 88427941 479169117 410077993 679807523 345449505 312272077 347409277 931724207 663580225 937491337 847246409 236973195 754896281 717098207 489981985 975522221 747570181 137371303 978243175 669819407 818154667 128453439 758306883 616285107 296292087 150992523 740499877 146966177 992433051 871564029 343094855 108061677 628229525 231327879 36058791 302117041 256219433 220223403 700158223 213133073 266233571 848652907 968788109 456833843 925591703 465094489 228114427 625007695 65026147 109192843 535180537 795859353 556254121 230550685 685390061 813390681 840725525 280696759 666015755 4245461 672946335 419017863 998814795 291709025 34849919 658140483 669810283 593246809 214601787 439827113 459346163 103080987 514266273 422936319 202168117 466764821 409788353 953386261 743856201 800159671 158269947 112690495 141918733 475595901 197104371 46764125 264989741 792716519 341525651 71701203 14900503 158442883 754969103 398982545 325765379 918404063 816974055 710120719 640273649 356154775 448638429 828803655 831511979 327471439 619041275 694589891 986134209 144837039 230440345 56216719 665260939 377554537 839294289 646447427 799084583 377520441 271027977 652010235 953755265 112218847 668232427 592601183 859501381 745513 885996141 553690269 360858351 505108197 439455051 321810027 272275133 482714351 921623689 878109447 847994809 188869931 370805619 621030199 662301619 926770305 826768541 621538891 990204481 219836643 144897763 505245975 459090373 98939981 797961323 818065147 460935271 146280383 793778081 860231389 866159385 938510919 735093303 662154793 63717009 790163443 607664683 78431193 832837711 486918367 594814657 982148967 447849883 226036271 669321607 786668509 327320713 473064203 327380813 157452487 955188973 286739365 46782771 609670461 460570473 156829241 835207067 288295643 379319909 778649609 190169907 380543177 508972305 572498525 680602093 84747445 152960613 876833161 521717769 195853269 457642531 978718185 355741959 984372199 361581523 713437915 793639095 787400755 918253507 980290509 149104681 367123077 773717517 613200689 325221565 987041843 684419983 459276157 515705111 773992221 183184629 802269753 748717601 543287975 76224429 584539883 48614929 152541379 323315439 864348713 11079523 346026211 952735421 996270217 19710425 649331465 713465565 658545073 953814915 175793337 495007713 48294217 641009075 270272513 489147937 320968195 710307845 930632825 488675003 753713819 284248415 721393213 511544475 983119571 196804331 758854391 846760303 723737715 503318817 632321745 811651759 892034129 160578745 785801603 736051355 989256515 417778103 357134667 45100349 271217967 582660717 802158575 294699877 252695549 73101417 312969663 608513449 847111839 854151561 831746703 963080043 110416401 256328435 115210943 197111253 117141589 448380435 564628533 996998355 903244147 974821277 316000095 395061793 39712897 211806347 904856625 379685949 743191189 400382243 365506861 7220081 624126421 164085745 112566359 123430603 940675689 61316299 57079869 377492263 235801475 553470923 247666935 92039201 170660959 876466773 436688161 477245219 556600639 189440535 502396133 4488285 27678829 388144133 985180909 245219785 863238457 942094681 75229553 673162277 231073537 383585435 244808495 713745401 997732899 385914003 938261615 123211929 514268429 424545113 159275515 684475673 575927601 349998407 475188271 823289177 899583495 213795843 609604069 34075397 947324947 308970359 842988933 917675659 779257821 523884761 261785595 988837413 452794619 624042917 224231873 665258705 577745667 33014431 279914963 785535319 783846043 850735315 234754743 851318601 574721131 630712981 422349179 834206719 824686631 244478593 536338615 499323287 34410887 1217149 484113287 65633277 162117455 385007797 375970453 37857247 226178631 413346971 302371595 729842613 690915397 614491629 958481825 16486081 110728478 411204015 576509845 301284873 459702203 174495533 361757615 658238301 158471937 324196093 403322683 892927065 183711461 257910263 985118991 805209433 858405215 164190789 265119883 65650825 810813299 565706317 563661461 620099287 817857065 192289737 876827291 550026491 289697175 135417009 876494227 341639797 277264851 359037005 570531065 631281807 230309379 470164005 169961943 498550103 499796815 999969553 604578235 21824169 951895531 13876779 951352249 450411297 937418767 994573783 777083247 504829737 853116671 803224259 968962055 413600243 162018307 474969827 673713963 183534195 206712177 622433395 391102483 900927085 914188705 895259895 505365631 911961449 725018101 706646073 43866545 304974773 84792279 593402193 951187323 911669101 213060025 868634523 994737459 625200493 263852569 562805175 949631669 230700127 428345459 618183831 790203753 274005427 483338839 658007147 81599805 455134369 805737557 714795441 822128037 75073835 152030469 908572205 912056995 596127513 498272781 720007659 746309051 912845049 519463701 552419391 514736893 247931173 9352401 847156421 654280189 686377659 766027769 442515043 634026203 127801511 816843345 390799941 590583099 263578263 918169507 434245341 510352205 744714757 850553025 734680811 909040329 394214701 928020099 204316271 885542377 339697691 765346511 754382263 671288439 12927391 708462989 868376665 328421055 792589905 887321009 931114031 309259415 780616081 459056691 709631581 859816031 709461125 91980567 25923153 702233597 112884513 551948903 716677821 824783839 36574491 266767669 656991393 956078587 213070069 210767001 978420797 636275407 79481589 164302009 553648673 631257185 934299691 325161919 979516447 459442497 390982515 761551577 333571155 757896579 39664233 734293831 858909731 239111623 286569079 582009671 136601913 744776753 291724751 938097443 113144459 815688049 294428775 244071473 328313683 591058367 581942527 380708297 464301081 575431125 281789985 253730381 490147239 46679037 70503195 80768039 628885009 268546307 364265225 650886859 440165301 329606975 506188231 352313265 703622195 294655373 879931135 468726621 185468285 539762773 389478177 20951641 787880131 552144517 599304807 539794999 277939075 982795923 619395023 425549967 516143745 385047933 221170209 60466183 317707465 994530761 710621937 583375177 318559921 779782279 634639763 982254595 550218961 323850827 76802601 1719797 100168467 723389493 239300763 772096477 210033053 289684201 208010649 257530503 468906473 754913177 915298203 679689667 684652463 98583799 514914787 161934191 405550071 676329541 935554423 119059051 790882825 478313029 854411817 379008419 870206077 467595851 879818641 828218117 120419885 32006439 619832335 100206737 819414333 635035709 94382025 748844357 233431579 661122671 811518899 809829933 399071355 356960557 256707717 52379483 610755673 73132909 709671867 349540071 466310903 408362157 738203809 440717303 936497637 146939891 4216135 38745525 6719989 131284687 715491205 248193617 937086019 274750037 736349177 485921797 461445941 504126501 774959375 814703637 112348533 375953251 377191923 284875211 691128569 326970305 944310177 711239033 905591293 365744753 21812697 353829753 658728453 64935733 981824545 412961581 104035549 562624337 651369673 409757183 762155417 430805139 742222317 676631139 794899351 367576659 718265449 426745555 974083449 112111213 372409575 56598735 594937899 573776457 497226969 60457443 581276133 481154005 914087795 245561505 861681951 997586055 286373049 810032545 986320287 236292701 180647539 175621259 847321969 451575519 106390833 123656963 125745131 657562137 66568521 796926911 703547559 484336033 791738333 642156919 570647689 726570903 569826773 141955567 87407295 391072159 220523233 911594225 274754491 345038315 610752123 925337423 447866429 381023277 159109857 343130595 389753413 863113895 514222107 762734735 373814819 122514717 305960187 296770879 201429353 835162077 478756889 156787939 896070131 865000127 782690005 273347701 209309925 622095905 680017495 861897723 356099501 256466919 651171471 448083323 547072767 525971585 907494197 21651975 345378263 704865765 786540235 175490749 561563257 119878801 57949591 969951679 447375217 824939149 844070059 428351795 180602515 417900131 423917791 851112015 444327419 158998063 490104785 524261453 346939663 543036555 581066989 591327597 392605561 537939871 513804897 652359675 619733041 535747095 490027045 641701705 100528751 306320429 861945081 977630385 13931705 758267547 800609127 381954197 926161883 640080811 826317503 52647265 70488041 620471339 688357913 661009541 286660417 209980527 93001555 671759227 830645125 742900053 152349207 160847559 403282083 258431301 869580503 922934003 533385677 432469807 166200265 188122513 190024321 694371205 554843117 201351227 972677 660908871 352121357 764403605 747629537 717427965 144187831 343652933 721112045 758844849 971890759 134698497 984065091 845371391 244445657 205327491 203279047 246143745 216118359 177023115 976863143 294706527 522749041 936187621 583362135 442222149 219916449 694450019 997680273 480654957 163841573 822051295 975487325 864207635 331975687 549628733 94634501 826146557 68138005 419492451 720609565 508559737 485506025 346586951 60276097 506251103 406218723 251209187 351845205 618211853 999745067 25084215 735327497 670848615 286519729 577993807 289677389 571691997 690619695 374825789 304866591 945461093 389898273 264805915 533225155 792405631 396681173 737166861 350307011 913063469 40399447 618445881 581866489 635463681 810248577 77584087 634424187 595829521 392947185 418650651 13961649 146875641 554538003 279566667 457208647 427509985 968401685 286993331 116098607 361505909 107151343 970620833 868319399 836940015 189242467 494367601 949205043 231320075 386834423 31764101 866141857 941523727 40877821 329999433 8727297 384788939 447573389 695037741 201311411 564583827 529028229 963710381 318700633 794264645 965808273 174318409 491353313 936493387 238053661 853661069 520600703 136106127 157102949 777371915 342627757 718069641 362073449 970485855 101775409 500914233 868302575 732753191 913858073 510863905 878624903 163307281 93800119 421886291 887332493 23283405 917267879 975195493 891146781 407435029 229787085 836473971 945535009 177059759 961571927 329812005 231798859 384529505 989871545 888751273 331181073 232764415 537470639 95476147 800483763 999116643 449126717 449236869 166586681 841927793 465540013 786534885 25930615 577283857 933239703 209250589 478704385 852680245 837806807 376805639 195841337 959990487 808040591 444694017 560061767 525667069 946300971 161958383 980283165 454081197 604386913 49912643 192770671 955619067 608576557 745312239 226013633 477746947 701179859 594866803 707047259 263569635 626977759 355796695 331910731 608874185 153277479 950267303 177606507 520949733 943158979 212058363 310493787 906516339 513868571 746933615 323205761 285100979 746518235 592817963 882209809 664932081 820743925 674773725 131641091 759890561 235394729 153614523 84748309 686795705 790960759 893668739 521710543 661925629 494010669 82526075 227500419 874934969 638596321 185271155 456788553 941618269 628099565 302378943 752805375 862550885 260600309 327809341 884790353 853563987 694503655 816729175 313104813 511400879 896918007 309267959 133065803 46480141 473404577 962711 528006443 373588489 902327207 887263025 348134679 501566785 57423385 148805711 956673951 408071523 125137993 704279293 826061339 556257311 4993235 861696467 291277481 1104689 156284315 81160685 812217653 988415321 791768785 966999027 549168235 270191973 925880805 978395411 312495303 26342179 730829461 255149059 336676231 674538607 120768995 490869761 976547765 783122989 140629791 622296019 222517025 209289541 281303771 302718153 148555617 581071785 645792757 602670007 883991767 416539477 877596815 329012733 420593579 472884043 438251797 874575487 175969487 534352531 718236991 243292847 775055097 732357441 950558469 123142527 941067689 221097329 326454701 143903857 259223079 905898049 694433475 827436681 558264455 445695711 519794971 816786261 874402461 391181179 154444243 222854125 780421899 441132625 391438159 124307949 343417913 401418915 587878967 1801853 510967639 921073593 258845317 527313227 658812765 213200873 77378673 883435917 536281101 187577225 809767811 66011393 206332655 604561919 192091523 541029615 293946961 489417393 947146121 336560929 455520845 616577559 767293167 88809203 438238145 329530535 957052505 270452797 342508377 37433827 240650935 683457131 973930115 428790617 397535799 195071337 375102583 763360663 40714075 472246443 381344567 851469627 244806629 317286451 956158601 237781475 756256223 246836101 266966271 509418301 348522145 32253103 857695985 275122171 717268935 752393033 236141949 466859219 721094707 644250479 19395983 217036685 988068625 827301577 249130709 944914417 635343063 617313669 791610567 648813775 890470977 510795097 654260133 758759683 657746259 314629765 311138169 547168881 754996313 286857931 277485843 917470977 784425703 268785277 858762505 940806055 854491867 604745071 472010941 161631579 68325207 223247361 774992217 660254751 193682889 507942937 754297033 420049921 578114787 160473123 623329481 967030799 299183523 83426841 992500695 544566119 729950799 673819767 857818173 266486823 345716591 989404995 991812873 110602877 168441561 28006155 78314775 385340827 349107883 832769511 413496323 704114873 213664329 281248883 140157751 920396313 688263517 614042327 233962211 498356745 719732443 973140931 63985921 481105367 880740867 707650409 926827599 699554017 302930261 953054857 292904789 381040519 883510177 560054121 276046695 749250099 860931321 527962841 605502361 195648599 502927801 794721583 17769931 548215151 587263879 925147463 167410601 186681853 82016333 716678535 899687329 901763211 175004993 322421985 429167085 19717289 669669855 357517769 92175243 329084405 563961065 456747835 523017027 554001165 224606063 557404609 708709031 615420575 608641475 122345577 741304591 427503197 81360515 845023175 320771737 791960575 236416401 749592825 398743857 586431561 549243161 603849385 710989189 107641347 88088211 761233409 116472845 794517251 250604471 625583545 221277195 861500193 802327435 349082383 80227461 98362173 274539355 555966155 516377421 484682309 279103419 60465209 323827193 911483435 736075145 517929519 937923821 108101351 525176039 904740365 139842125 643021181 769657411 777047225 836137229 496799477 799544657 767158689 817488867 387011941 879955467 519100857 846956623 44384485 703395767 746130563 284193179 492753557 611285987 831909635 75152341 143107493 696574815 287281865 192178905 876488257 426425163 226702569 363886915 374336167 852055051 988917505 717109629 812165657 914001481 90314299 955056825 788910561 86944251 187256897 952156139 624869967 741022043 687370827 43580631 895093185 912936433 372029463 775188229 862879639 23157127 184735981 354884803 809144123 291199281 841518745 380100653 447609633 651078219 265283187 111410719 555710401 458985851 828936279 489789763 817245343 315114923 22647213 997636873 809678147 754040081 617481825 765377705 402762819 428412457 870250477 929280549 718101559 514079927 209132621 535529285 108356289 603489479 113545479 473983127 429845387 402252717 368255019 600930421 437466439 802275591 186002765 952963581 101633715 196331959 42260107 460706331 196752779 373098731 799420303 997403773 477922719 827067157 38523523 13559965 886508479 924757747 276132639 110932663 702710981 312353417 664555427 526274777 371210897 97507365 69860305 252094413 943960339 787485015 94923771 341816369 394848055 575205887 472530423 818223459 480590333 2237759 345760801 405874825 790249313 546957957 394542689 971421591 173845363 188220037 943942949 193774147 22375747 510260793 128982627 722086159 130540523 388839401 890714265 775815233 268160909 146756127 733309901 932730089 437458003 545539757 945002639 157649379 75473777 771493811 528607475 167375051 68562463 210259605 419496855 555771659 393378465 229639933 400597157 581159125 543232321 829191137 245373639 677752351 644473679 484225661 647415863 469928873 466414121 198430549 212194223 276894717 203345455 605838133 243365241 19483241 906174411 277607985 844511329 615533065 322817649 890568357 799336639 157073593 509896601 887122999 424578415 534800419 536396231 829167825 112337625 94617783 675573637 265615275 523285995 118792879 952155237 782032957 990636827 223985929 722858497 761124685 835265383 496429709 783485691 98382823 504262997 415632079 13321725 818815583 293082099 378721059 177004219 202511699 611060699 62831019 27842797 129190565 736165413 763275855 487759703 15467651 6963581 16185279 823027395 180472415 459746061 340497011 776187651 555963897 549053327 111287213 751947761 781367889 664614973 450274419 731714159 612180663 881032161 263369879 550523751 549620155 493600711 711782833 94283469 199609405 202273479 737553441 276826777 881699937 104606781 896446479 43820495 618620049 936071441 18637417 893087609 628536961 809894577 832277997 719280553 895842353 689258003 475967509 828834425 500699363 845044917 35295789 650423051 444130337 810816927 531750469 873863305 267016387 322179163 952630837 159593255 928634341 321251845 423791771 529472285 675423207 795491381 266529763 810811311 417420155 506512919 954705721 239851047 769271441 916046167 184617881 689841879 546313575 373367593 234756291 125588505 772792703 376359247 263807037 795275599 29468841 467889933 673923671 957864933 15339513 137222193 509979437 783264329 832261319 241903633 960107419 772007163 955386299 499502735 180142155 965300601 828521409 464265997 416403119 596876623 982672139 957566331 729532411 433257743 578397207 216428367 406311477 394144595 780533417 13561991 463975199 668460989 533005519 779015339 328672591 691724279 788764633 949470149 534554905 523718325 991860071 717238129 803318175 630963377 146253403 936762313 483851209 846828459 41796067 12028531 118380359 368008559 510897267 614713761 153571731 146101455 477667525 965050117 136209643 538669733 929065697 35738337 456127831 575447251 168870671 685309177 136429993 519325507 912880871 961705371 265129593 445522665 159054915 846358175 7680295 336028351 753862729 634129505 549181659 748487365 173771363 145774795 846228869 700941063 254425415 398970439 366356189 566334615 44764657 413219021 86461797 439215759 71464099 83875035 622380387 994065169 62884333 168765559 189531113 438997063 35513761 787884081 52557775 572074341 979204061 279215135 405028019 18533797 657794561 398764765 997835777 267311431 460229567 421578385 211625959 886495383 914127367 218355181 447439965 88847079 853589015 653748005 711788067 194474897 336390259 148774645 122106819 82172151 411749351 134177703 380037773 443458949 657155209 874463753 573255065 451875499 189890737 720850029 24147141 575778275 695275015 457293239 467666363 516972979 909200503 851089993 168596717 143861409 235766581 226273043 222273169 4513857 2956731 51329163 396961703 317220909 718640847 530618289 673243897 598394119 726246783 423613703 668883989 807014267 774985243 408885663 894172759 581978425 547928899 139161103 131096539 187661819 412011227 958606707 307771019 669204101 555939085 519504497 99158807 658011043 565149005 346777659 178939385 235795747 604032859 44754821 934928495 692641505 149050935 926295949 217878403 208831935 868686641 102377753 462938883 518583977 700737755 507693431 46366345 405414799 956439057 668047231 848651893 450368619 846165241 992172175 264899311 421677633 883596285 561491851 400999655 727690781 689470675 402705891 346616599 887332877 451533687 421581453 932623611 476418605 346251565 410057481 981062113 428891551 186762113 231239257 946529749 276324751 767099719 40662543 130021041 824131629 711541149 913704257 336445203 93959091 291239653 912202635 196973415 515327847 978780619 937945109 670762715 260214927 214723655 703317643 449423463 789625727 651865233 58860583 310179277 775550097 293625903 697699493 918253203 158061353 692592877 849895243 46314251 403031725 313395681 705327079 28725581 244622227 360070243 979510737 40394295 666823253 26711837 565960935 261713525 429415027 203513589 561654413 904522099 60163449 395880485 391463605 555922029 609437179 554647845 637106897 317764451 921231503 503257533 590621409 504771099 351494873 663884277 623557229 244284197 118267013 81337637 231048577 561812189 623557187 405423847 291730869 705023583 403015887 433745441 966505765 788939413 597234665 380917245 615787897 838075185 576346973 543538929 609109213 503211433 576355325 138608055 862509835 921200701 722774693 3255383 928475711 700869879 668379955 594899739 924942399 401932453 235616661 664114583 595135323 621633505 552579259 706123175 995301735 167639051 424341921 285633137 471906499 27229771 324465735 473194849 668402515 408626835 375511737 857119017 837589895 816678039 60500491 475798215 981718871 42972891 891119955 460109439 303471421 873747879 219723957 468007645 229576003 252682249 404693085 419774389 776794613 415393499 582332283 561599781 817812843 825016253 371470155 211196047 898180673 789927445 173585933 932124577 890621599 347253785 635007503 87579469 932354867 504103355 618775199 377810641 520799793 534767039 299667225 315758771 743664219 911476907 987764705 412080059 167656439 786749905 326911325 429794815 320939983 820570185 148475141 740742621 145606205 688784881 73323597 637538553 548765727 941476469 921383869 176082749 911710683 387529795 903928283 643338205 870275165 724129683 635835965 687040601 171808797 259700069 151716473 162119027 644518427 644568195 364647731 27379253 692174043 284419709 359355159 604385015 634763627 348348587 266612181 946736723 479815779 235956011 497880361 412228655 435910367 809331177 322426325 887197877 767894919 948368273 763599009 713030491 197465481 661708447 556237665 934063581 834247579 675880529 358790641 847137087 106283771 170784177 81318703 511261389 819239535 579164303 709465097 739585307 160791879 769290881 737592431 705792261 390725207 950925289 955146333 246496433 851879167 254202609 591114965 532675723 556477475 724361349 812887263 658865221 548521269 995608417 117465231 640948701 267541287 86457091 866856961 898407575 682675579 366195379 167429203 243385345 433451829 111120517 188647603 232704235 722546659 115045965 171165011 783781493 592980637 302529709 173598315 348577537 29648127 301000717 830403389 129258301 243951665 728711581 865284885 542535963 879207393 625008213 903539783 446828251 393703237 405173751 319073065 769045501 259097115 939744779 425861921 453149265 262322601 193222367 607920535 400627943 538820031 136200845 92749565 104206623 971363761 264962547 565534159 104020381 693908319 8123325 45661583 495188811 571403823 489455961 756475845 447161951 357484045 566383615 684729605 439562581 901611123 454620081 208164331 563801583 602136925 915065909 668021781 14894653 130873423 679599645 381779249 773141393 838695773 711930305 646517233 642066823 567400985 519888447 522549005 11528453 452401313 870327427 604406343 265955127 473648285 248165947 581469037 222232207 68638267 900020447 743972685 285209547 177882929 223192239 919109317 513005807 805750205 475051957 295927731 112330311 863757735 795770049 270642693 72587623 665828667 429590633 842866349 325875755 720853583 581468687 641721507 691992507 265582403 36593373 477349353 374325629 161486845 92906687 438901389 586513451 4838633 816644977 854723997 257190589 411596801 543282545 304520247 617342329 442741183 671744777 37060219 686048491 671525421 966705993 730422419 408660201 643209177 863589127 471498673 339468685 110553813 941236709 931599121 905673275 439941061 681982795 161532661 86293665 723725515 956866921 242154917 534344115 288786071 584137785 388344951 225054891 684835167 446769273 65091265 176019985 700295139 623729841 548428521 298906287 852674661 192659509 559452503 595825303 919035319 774151193 326919551 113510955 293910061 805033533 145950937 420528393 145865895 126974029 218737639 143350561 597523851 762481335 522673975 436416935 714039239 265439157 82842711 96723479 369091023 804929605 294852837 377320245 850260645 265189167 917322113 990594573 269407437 73399301 251071189 686764275 208987991 808305695 674059411 989168771 727541973 602759579 932513399 427410083 541745259 401239653 799718211 25613695 21555899 998831915 568032705 236077705 210911989 433091173 727256513 444502399 273051601 233812821 942960417 617659749 167423113 351376641 840249537 495845255 291928037 121658171 900873099 293695611 814405429 935760793 271929201 728136987 138079567 350508671 275197039 342114699 802200975 599203345 743305607 705122361 476233437 987512643 998955971 31588567 213842085 98025675 943334707 277826403 821746145 432541737 277608437 384711971 977671181 579459751 821190953 686809503 229896751 734030419 726222329 850682799 592255957 502715145 680460951 436632173 291513879 208521573 912192321 808389693 561876115 473943505 659562803 930054095 876544621 338288511 57129917 842160401 967620439 134895971 79029039 809090117 891905667 349895489 318580193 164279021 955322289 264382625 790728505 853642451 689806377 420066257 936115359 232317199 815418807 646645485 734279815 994967293 574878641 900559569 250619241 119156541 742711287 127500327 538370761 896680129 862534127 286375519 810434097 579193273 137893767 849888433 489728049 537928355 352974389 823335199 791680359 122455875 954030583 488946545 624873331 245410213 436702291 839446581 791539711 207945501 462344023 389281733 118017471 693221703 24148635 906094401 132321131 231568139 959455805 219702159 853671111 444090767 910801379 255666275 240681883 363079501 123419065 846245685 933082301 576855805 652072311 563592257 488982277 194496677 743416669 418696597 862724693 698362513 339368237 700577787 292455063 481581143 475348281 842286609 451107007 778307537 218345303 287621941 359537093 696825891 615416803 669635725 962057133 55763131 227852997 660302349 110202497 464318029 327916139 953054571 777047889 92273107 573152459 285099817 355815227 687413139 777598051 813865869 126768223 101524507 654162233 631722407 559613671 24389437 542567899 550627923 372577799 741951765 876281441 662931757 721018103 466129161 108787561 807232927 887329275 954870467 659756313 713159131 789259101 599229241 373793309 738830807 448938607 144725927 395947693 831286355 111334025 756930703 165027721 313248729 340091409 13806273 179310325 956076983 823153009 954930767 366530495 806712073 38928407 897888663 849195581 482537387 26293635 440553019 529494353 910822215 107175987 435462183 104011101 60486733 272373937 183493265 242332495 392105207 880578195 947029237 740368289 352321603 862176113 339699223 715422543 456513785 817956845 715629315 688485601 233290413 100889777 560996367 632889697 665031347 43228017 855736277 909416297 981744941 213128165 605722681 41494039 771793411 479321809 458216807 371888657 799502821 906330367 596851415 507615875 563733323 687105089 564708417 598919207 673544055 25529969 882420909 547738167 177185135 822780529 479235427 644910461 645564677 609028395 251266811 521243461 146956241 916889235 13835855 12356711 989003827 351661729 722396547 754352191 109519443 879352409 830991621 560252341 142272287 814438085 784332425 217275959 508691285 436155383 5417483 929813179 871221871 673432073 704327373 582426815 605922233 985317405 742942815 66976585 988402499 411216221 77591443 326180841 23061221 319016957 389854085 584735155 636615997 730778167 200818331 904583239 248725687 163364683 964243839 211257547 446237823 516968581 823452711 96296171 248072593 901095477 668095695 889458145 251115949 853850297 133360379 653755751 13617753 153100657 686079095 819344071 658693093 917855689 384148055 103667663 730481261 625897521 142861305 518096849 789147341 353651491 633406463 74029233 583500719 939233827 943126357 746549713 483097221 614855355 896344115 97261345 229403267 153348477 693595409 585238551 425571759 366134531 840297397 354003633 284177867 919193839 674372139 489724533 222456685 514958573 930820041 294218611 432748265 502061483 288216617 135572799 816514401 523670505 996943919 384137721 661718461 457848165 842717449 15941447 743831981 809031659 734324521 165741399 800175275 795425869 272246095 199548893 209854709 882029925 976170363 619109147 247484563 210307861 869259773 362067669 433943639 255377737 384462439 108960601 668674777 409319663 934335637 925079167 79635321 669597447 174104491 153644707 504443743 113241487 977860375 702371757 465337979 596181139 790983053 487155723 238175877 843258661 16457737 960720821 11665919 459917919 264144591 837089573 891853615 665810019 39044203 329846371 104990503 415358813 738752689 943696895 953923263 197139581 180457405 426510349 424231317 610918141 168580341 943109421 595725589 5990177 100014083 960074117 25832301 805707571 827455967 955683267 624810645 578402437 895608769 786463259 116454733 498010737 458399279 717225295 169439775 357508443 258579957 591732643 471807067 257187241 277899559 333816805 495279897 583330001 614621731 316876909 756855863 284471885 414838411 372265497 84511071 62518941 917340237 559213389 752450819 26125389 123788443 460290809 204157785 350802671 732166387 708269459 815724897 297681437 575824411 608473627 754327525 216862841 731591451 963784979 16130675 804773039 146237003 89074573 786198631 73142383 266901061 764803613 988812765 680189299 785027309 313411554 633733311 98054273 262315121 604507013 586015165 692800095 827989061 111396401 609117009 672359137 323356195 402152605 654070457 165514209 324775187 887172613 191724287 425156673 349655647 645652275 51046385 457442029 309807771 518746485 609398057 768680405 273071267 426176415 212395783 864195827 315711645 232419599 71454643 915729229 419009779 769352879 697597981 14782441 62837595 580237289 457572607 85968603 219043793 822160821 407738837 637984317 555802009 106748817 515345901 981413169 955598399 572812421 913042771 554638051 699941527 263910941 652606433 881835907 833868733 750438767 393522229 558711117 437175319 517692955 602705595 740438401 243387473 216295239 934256801 331908971 876924509 963669665 769574623 792671581 543567481 734125407 449158455 153242033 1941545 945229631 34746159 260386251 341781307 980931463 125716249 130419473 471312063 696449541 822695181 250237435 18479125 24440337 689565161 613494525 869749215 72459145 465765977 467685791 59430155 408149457 405473225 379399015 252042701 273279705 423683957 120905449 691392159 696863769 307636573 305031359 408872263 703526283 605014343 624778379 82344403 412188857 304391107 227764217 526342037 729351599 987066157 271414713 198011945 538028035 590328993 95225991 121587315 406619093 608296201 247182883 458861473 630452939 369078295 699182171 913521703 90188051 654606657 161451005 331823809 906576995 364386503 245113829 774761843 434940665 692502707 478537205 432964231 405278875 298735571 511473689 904040343 84935065 332974273 338294081 324444793 390785991 787539677 19273833 968903765 535438723 323417423 291505041 790220437 652846775 78901257 662248647 898315247 955632077 649356991 205672217 33248095 209066173 811240437 87817635 690417961 353070087 854519283 410881161 833484249 613553071 906349511 46770161 643944261 716173891 207443531 334058769 615382405 65566681 345059103 998884131 38102017 902692115 32522153 899881065 563582053 879737875 307943967 388570923 343359909 4682119 803532403 194568381 467915003 870940073 896447337 221195897 480606957 488871221 876470663 441515715 506061383 6277745 368206367 987515907 715802399 205699117 63511625 907976107 734472143 205104829 828697571 58288951 150444539 660179713 934292121 518134055 573867409 794422109 976996569 251822089 186217413 566819011 39078619 924692331 836107283 766562725 964726175 92402409 462864189 322735877 470587887 931450151 318772819 504408423 309424475 767001291 102549927 415197145 63924539 898842509 54047189 906263281 465265069 140303139 953270977 749652433 116233885 520224335 584849563 446621979 878769335 359106013 462027475 299206655 909934199 765675425 440939303 265865521 851919643 28331377 726949017 568084469 613139373 821301299 543430777 362954507 214508029 876542157 298837849 195947459 365143969 981712183 147078679 417081079 762902267 710324583 472888533 322147839 155494965 827998815 140039679 98454471 986821179 564269867 264472397 748105659 309660105 929410527 273081015 31430351 743052893 801960081 608788355 814604933 383862079 318826599 740277565 778402271 490748035 155683977 525675707 717646449 392316925 891271977 70019861 939613515 682182223 482964099 297448117 962394129 887498721 157026263 429574721 732169701 977846755 558657139 782407603 923224695 537920333 4695205 255057219 868025085 500709857 611769547 245760633 973196085 720152359 208643139 903890205 438010981 673215853 359916667 720366663 88566877 963614925 149023203 912885073 167311985 774073381 627143415 459447007 384769665 178829857 120839993 150192609 85095923 92262959 923584049 290952325 436130995 756827015 768147573 505397069 318729275 562255915 28026523 840644091 166240389 710864353 532848201 788954267 267941147 794562875 182405927 438726273 476161035 162050705 274606055 314415433 460540135 450457345 753047365 339319769 29495763 85733751 180299523 110023003 308008561 815276961 361797865 508694597 915820785 198126327 588069325 604908883 23951113 445070777 283740805 588689545 404868855 99216369 225212663 376742963 115105411 643353711 791581963 73975781 363581943 744240585 525919155 650294141 688577839 424590689 294965739 545815581 328329861 435969633 506473909 322658611 439379423 227991221 530920217 848216945 49488303 699996697 656590125 78088149 157884903 586531595 29914887 611956389 859173129 623903701 614944973 759812201 892424473 993160583 660951207 982244601 374700197 289731831 839309255 938176621 450326469 360674759 550697833 292032047 551155479 237707103 889952207 148540903 315917503 659232751 442724163 103800969 35485549 432754033 851797781 451171669 998410583 100530339 835609251 284400331 695138619 424363533 902103627 108923323 101897057 660826371 990080635 690300471 527612565 299115673 447948453 728544923 245037869 893088945 823034945 314956429 341922825 752785137 145459667 220325367 103170447 715196367 267338723 150295055 193824941 498027389 8711 454260305 922472407 34434815 5569493 76718463 512675343 462340891 717713395 67219625 80159193 285442403 549472521 589898273 489925187 175535919 304391883 237808773 699932133 66852509 129552625 820345783 313066973 543744921 797884477 154000867 799012559 723053265 674399101 882990721 30161899 2152125 749948543 887453513 706618343 256386207 368614689 132721473 516413955 896140157 842311747 899143605 20223233 956345129 376934095 686355769 144686131 720816953 318128311 457305771 93752431 787124241 654742521 63618093 63816465 876701141 360364433 264259629 554251009 858235769 524546703 646242911 968039851 796050867 652140803 162509501 732374025 383535107 423989509 162380429 951611287 141214643 104715195 172049245 528573787 372033233 909888077 402243581 902020835 898826553 38460143 709405581 245732679 109921159 218445273 283569265 104223781 922368549 367114319 56583507 952830113 660348485 180453273 521034281 189589099 748696795 865268749 563094831 85824699 828119981 13148163 790128103 324035403 67561533 761028315 405562913 686070629 318421217 660654085 507955439 37881045 319553453 290956269 177738669 165681905 201099651 739145489 755707137 321815961 912435979 894646515 410806229 717514803 678972341 481856797 107308639 88486573 158269625 35493921 271825179 963946621 916735513 933411479 786555853 288463777 826215325 442499109 4480129 574918559 909096915 250230387 493357195 214788229 13633301 359888437 538615689 834498027 306499715 971764771 133021277 218049007 905539331 52865537 144614965 705671733 530421321 824264089 568401283 643349743 414596045 101346747 61668613 573231567 44864971 570586949 446841023 585919765 519972945 495364119 398644991 370583689 571281961 933832219 188595029 868784247 767570417 378537541 212858273 645144247 31500551 241204109 520405253 814262693 724602513 185714167 166099183 346479913 113280131 172263309 153050131 877608881 168059027 14264159 206381933 548068657 807311683 833200267 202383167 833642027 778602713 709670705 333459993 827824805 676841061 364426107 86655435 834728745 955503299 767701661 760109687 41570257 391617935 560076239 256505211 355439931 867415605 23617877 538583175 288136587 284334305 30659961 643866255 304316275 395191183 582644109 426211023 118728997 833044221 113840363 130898891 62531427 698929589 66174965 20041295 11633263 129340165 766329621 892758127 799527195 406234121 585951167 8923271 571598781 951354525 912131435 836624445 329753393 557567595 983547037 612086653 132428767 266027491 837728735 715426169 5191861 548270399 682901697 202367407 895511081 484474237 74535137 35363043 666788665 81394023 768550111 677900321 265632363 623266955 452599143 568518077 25957071 334410307 500831783 309480533 753030393 255623855 940610783 435136971 801423369 915346871 931596877 878161997 844830373 789696523 855896381 693391695 687342585 727592483 903453567 52340875 643848381 943586113 637335281 565126407 809693745 888656491 447664243 614571025 792386841 782746995 54981873 961791545 380767427 809539057 598274137 864637023 659225095 767643205 910210219 808191143 469428289 157529751 812661989 652125563 546313305 376499157 64549907 154848911 629753277 91389117 486413893 3156963 323639139 770509513 150516633 596468409 966190793 544533829 735521583 616773787 379555573 869993537 122644019 797498465 55492471 743521173 41372885 294177063 755081059 799913951 347232079 517875021 550245977 809219467 443142373 667572613 234981247 778010053 449621729 514471359 470645889 322448777 410882965 537077305 764937881 88177815 238458715 471206519 896626561 279011957 568956309 889337411 453531267 833645427 732949421 250228919 735256427 431968173 712864791 414201641 19211153 224930815 161217355 971374657 816363217 171220243 101454031 977641707 478464661 346639451 479419943 706199385 226272967 162789643 613928427 145310217 198691039 913717033 756964531 439626433 459582683 11091575 272167969 100449673 503094337 858435979 50136545 776284599 358751009 92506809 262885027 251499753 524737295 292570403 442990881 228161537 491067435 595141041 69450527 330496557 303373339 597971475 23311975 180706785 646235915 602769859 214579147 732865495 150574261 382268159 366515749 947293207 717281619 690788303 572979543 667379945 863692463 231536389 873719629 52048869 897175831 172887353 789721847 783772389 328258143 532720075 9296719 957810447 675933413 418961891 363638873 211295693 79611025 381999985 474728991 825076181 871302097 196727341 745969587 252718115 325441179 176904857 483692591 997528313 736368495 322683643 664284597 180781799 332126799 544536677 799150705 559881663 16574413 573851567 951724947 803373471 841535485 412998263 178867797 278200297 53695359 911638057 647502589 906137673 799692409 203220211 73002449 469747125 500400023 829086925 496825381 642470761 635840787 943488119 576031059 550925289 253125545 319975547 499590589 242960897 169864607 128635433 607439821 164625863 493136323 502873753 542618871 817202067 560793709 580033449 347187381 392757517 687522427 40847619 959704967 334922785 281857617 641374489 895588345 21550083 29403359 292097057 276302749 415103021 619161243 760635163 664213517 586215269 955734659 755213009 514928621 621930169 227206943 705850065 123318243 909497465 837256571 719004279 57778597 401849157 837308461 248711647 784534253 766419713 684726869 885787891 49415291 145424343 539767449 735695973 98563355 577426747 575225383 542455465 504189599 256983789 538449843 394905859 255062241 368115183 69926015 25883259 14774979 188206475 667316047 485556447 455115569 944530521 140878707 797914057 318631963 422289715 968569791 532059033 898320253 337750591 634175889 254292599 944843863 695006183 417658833 541221715 391217077 698169313 616214511 658097895 313507753 920231977 86105309 100383921 496042061 271084547 89582619 914114041 993376965 150206203 401919665 795498193 634777143 799697381 978177579 203781393 326371033 846183903 376810911 740998487 360747749 641563979 400779949 817230351 825163163 575847637 827485307 514274407 314824775 2734197 497215671 204164951 746155325 228669027 234300567 623466145 976586451 565692965 32776663 553872331 181137005 739757447 931942851 207565095 297045367 445021087 693981219 686891213 639320673 154488773 821913681 453909915 194290599 999950499 824114219 286317629 412186313 116067617 533815573 509854239 987487059 772480883 278419711 500440189 280637399 41594905 992014689 781635927 793109231 502699219 562238517 529830515 25606719 467696559 95636229 548741729 248061805 182868995 214962653 333546365 865673521 996091241 508522067 238502627 717357119 758493383 99828871 706410877 751909983 376505159 103538207 607312125 122580311 925424991 270550857 247639257 448936955 68708299 764049851 371498321 439821605 778844301 552042419 174177391 228389561 710851573 348511991 228730625 55057565 199470997 17487317 385782689 131236809 835528521 790353445 188680623 18748209 584861751 840134213 603193427 313619165 119148491 448513563 915821951 364768979 327016119 74748435 295291623 865576487 444018169 926068773 495381775 894832115 112336341 169798865 344909887 285943387 67054807 292439065 818859909 336557447 205928659 821313169 349407163 420649641 919157735 315588681 26354305 666211581 444704117 228027363 237190975 594573507 705386795 915983749 540759077 298180167 458879483 806217693 546427691 403410139 622104355 15792929 37332243 429623259 456471849 568982543 383993955 425385381 381430485 354481389 759645805 791374503 318458431 983453835 593792585 657039953 635440575 692906813 700683221 537625631 152413439 91953123 601715389 727706259 965910503 193088225 470513007 470879285 939589037 575190313 796875811 552297625 179212747 158296877 643801561 606547801 597096201 983175151 156865885 156457753 379805295 893877233 252124217 537015937 343562325 742649413 232732107 672340291 896316245 76179329 128911407 320445723 914979669 534248129 604577617 706371273 224605311 53485741 572104669 585039131 19565129 311672947 89178703 496367583 832145519 826052809 307208165 988002033 506042869 890836205 887076265 698738485 169213479 446711207 662027115 390849427 184940953 957017665 799549121 615669757 91320615 938958741 773634573 216358511 23460087 385741057 138334073 902551017 733398901 914181995 756397041 500327289 283842131 243395135 52334129 91864877 509603727 362753655 606060471 892562721 806926445 986916237 867066315 949697657 558883451 907321483 192968321 537234013 757762697 484092157 762188205 156858623 456908727 243082235 686134257 336174235 957527655 770044705 360528309 30393971 864860999 902726041 466005545 224005071 348810825 723570443 294875205 992615683 648588205 797584563 831137739 184613483 680239859 97230415 595310659 324986213 769850859 195087649 662408699 649905503 278972325 450281211 426395917 712835787 880830851 209260337 532874327 15503905 295087139 853391779 623232133 386024675 143009909 692435893 850784517 525337759 842496685 876663129 335783695 931260899 347082567 246416385 744132773 272728395 418638341 220599727 413903757 526422139 27079927 577430503 101652057 68588827 569650031 251854007 309219169 809934301 743897865 106628535 779540419 861963645 169649323 447203587 276944491 99404221 701372801 641010245 852584711 374035557 840979965 396910503 388322063 812820555 391093981 4475105 621605059 836920901 61789221 805975601 326902829 650752057 639090721 803017565 632113693 429977615 975305829 752096949 866216745 902338745 680055503 914882061 305345715 17512243 536672897 26398661 906531301 146069375 251414759 204525507 802855595 46069671 441621177 75710581 57737921 856109243 736061167 821005775 147065509 556779991 42034127 279961683 479133345 218847007 559954405 957457925 297637829 95631035 577860359 464294259 742328039 603610591 720648527 92739253 117990825 258995139 412792865 542844009 685007731 346821289 750594347 276117683 818052213 592239327 477879137 136739395 707230889 317286323 795104765 588789071 465205453 741077635 499551623 566185109 482238825 913562543 209485513 225606237 758771665 104415137 137027541 438234995 408706329 345467339 65658125 150585389 690458915 829328297 443773967 114051435 82808213 700926397 100545227 551777683 257419493 862647439 559841397 836528529 76091205 398261 300374665 441948639 679866297 222836421 786426827 675195769 744630535 969910885 363962183 648728805 445657281 937275197 41973073 12039985 914031167 298658561 106223749 296306421 153205663 365085545 739698889 626633551 877780685 756706617 265248329 797617891 935517303 766159673 4175479 947550945 735157525 763670335 989315345 722978303 501215721 332725025 973733659 179535739 7532537 261496261 826575329 233608221 673534231 721848851 572384249 411233073 63074521 402646527 114540093 642169229 240202659 481535873 865924817 394874001 267609497 411157917 920124451 613682467 932830639 564240219 761067493 850204337 145147035 847167185 247867415 61235761 814245341 579879957 334516217 414661409 575515327 573195341 680012569 311694471 913123151 387102881 710310477 419227633 976093545 325646149 379970735 718987895 954457513 140422257 577968291 813272503 877684345 514636649 199304921 755440853 257523979 201826167 784364863 935443841 860828755 929855211 688279063 820563185 615157271 217360931 811707107 237548773 121901017 924701311 24072045 70325407 217665007 486232425 319892685 623571953 247195757 644048723 366250079 980364849 271810613 531472571 750971587 376091451 433331695 718679839 974709995 345940087 345402123 179934729 850948359 684714963 190451393 948668943 218323349 516431043 779044627 395415495 370328665 653631305 548395465 315647191 340950879 327968489 343561585 134039273 482861051 472400307 575147109 394521771 578236875 1420603 255684549 452228827 596068273 821306785 120509559 939986235 194492121 904724617 912696879 547000213 97806267 836364835 900360293 903401659 690524943 986048039 676590933 521726341 785098459 586568399 392478477 37099481 639911787 326650853 376597591 57014689 804793941 6058933 130845137 440214475 330138995 689573909 63379673 210646357 260237289 506880359 554512533 278764609 509802277 92683661 845005049 230635673 803129819 263730421 623140795 867691375 315165445 142380441 372904285 279108573 192700651 365365237 15760933 46667267 15378453 158625807 13136675 712712209 540620379 473365623 638243635 725496627 410422231 684228929 329296369 813003433 561187823 626126093 572707529 753849521 455339597 761171967 370649575 699357589 73130471 19807433 514033479 542626987 633984505 756172189 462362535 503389003 311432453 574594363 751052689 553606615 810915803 487387627 156217427 789947065 322994829 868303481 61512969 331514725 941300601 768512829 501730191 417271123 906900545 656284947 692870031 669391623 446131921 335880803 740509561 586921227 293523039 228276251 937475463 887794929 525245031 820099761 450329271 471350867 681938861 151651107 471546323 69104595 595190591 885734391 96446057 965418011 856645997 989484605 637763027 529973471 423584471 547360905 205005873 782232535 351974239 689608187 176167275 130940359 905633075 886159671 329078833 840313209 85703109 26980207 632997115 506179263 419680979 480535381 64341771 901242737 694939491 944401451 467637607 574405749 78917821 884620467 618461153 166798005 898036089 970818625 741947409 730237985 155092081 570931109 126155863 358101683 997760457 74739267 4013787 152699247 546039279 487799037 385711245 843643231 617524887 867778883 514467877 904306837 201895869 690024971 468008227 716178731 125424291 793374419 696422097 729877059 379144409 913204385 561765695 950304007 666173745 12251397 179021381 61559723 887407815 641787667 90505857 926675047 936005633 999081579 223703135 810857599 433121673 603888689 457141003 371204413 811650389 582656023 13736833 276049651 949080481 961307471 993424257 527015419 37750769 224090011 337941137 133512631 367349265 147631167 426748161 178990993 396257557 206019849 402559213 160510461 752887899 987404625 244826929 995336565 481166981 306149619 232549495 754886009 168901247 648557911 305659441 247072661 334865537 560055915 439687059 74306651 641379075 169535909 611141795 348437605 32403915 711246085 64879395 840648021 280527589 968712205 16854953 343969493 139466151 40207055 684282505 175324057 181740971 739418847 812346597 101571673 724190165 850753117 724617125 648303835 224954195 5082863 873368185 628666597 385200791 994760385 33553115 215147337 939770977 234881421 356186889 796524773 28463793 494563213 758479115 900862875 884283863 652813963 622495667 493984081 793831781 836019925 370954137 439738621 499421495 744269885 799558173 730629527 762699889 235895079 746791015 248821029 796361859 200649589 290734183 387061677 324521499 632184215 726877653 998068803 428244539 706608515 546744115 217914881 471201573 567586231 979195079 908708617 660912997 190514235 144696227 502403973 7697103 118789531 237675679 369771689 901837183 483531757 817509209 650163119 607603419 838343633 772035901 912370391 925020815 65166701 110203001 291134061 872701325 476519277 47085829 50704323 920123155 313124363 470496673 688187955 185962405 914757635 701922519 201073695 551264783 615627163 899064823 9739251 319042661 86262177 893637145 517501727 515260165 245529197 902202651 594682653 110782353 763675867 946499239 71264369 240001015 285967701 523861807 668047271 411487593 879705285 554867433 789038669 10888549 148039075 241447125 708101631 943374513 94053613 126189501 626944351 486613077 103144747 188674353 69683479 319265961 580697449 533429383 216558811 761398855 411433021 931845089 234432101 782205203 124021447 235072807 228745845 236624187 956488109 79420683 933309399 489324083 715991579 770839553 922812509 285090743 950854859 489270093 334529505 425936585 309251321 312856055 655278919 837059257 9938795 129116621 12064117 411682329 24464239 304517225 357508193 525763013 732317661 90522155 967409157 779996643 312793619 776062267 827009377 423874781 869758197 425432713 107541889 242708073 860772339 942541007 664453239 508194947 451807237 295698827 266561119 380148847 285138597 612592645 874521175 844872633 592763099 29465167 569478541 305803573 325861431 199257153 362065969 892749823 602318799 803966075 757461629 24910973 989859135 457902435 810598327 591427931 857972143 327999533 63000869 133334667 496815821 410399183 305894683 563244107 110821325 89622539 954464755 945851423 319580273 873200231 131488015 213599189 719343101 759062325 618502107 555918461 51822657 879750285 638795463 755087735 904537233 352974157 518367311 620667749 280954059 252738593 736672755 711801141 517134425 447892085 659519295 350140187 912786725 115289477 706793157 13607313 216206503 599774033 116941089 247659613 847191263 879251871 829038065 59033997 943103823 338477311 336450275 446123123 953797641 932611021 117131431 758030507 168479395 110787877 281542649 929261337 648374585 413202417 957579929 623472875 755736947 344318435 404106323 823957141 908891519 874123889 250399225 190272723 500983059 995973595 820847207 602559913 374798443 478072363 215589755 800828771 687589715 695270447 755804963 907953557 303488531 92722305 134230095 630403099 711547525 384582273 969099771 150964763 882172167 509519703 259566631 603421951 798690685 263207669 234063583 530141565 95844441 778956559 883431733 391845009 101758861 820728361 148193349 473208959 700438427 109758091 994326573 503328723 691206789 755394883 116796187 503944803 334027485 816804139 887652927 647315015 808530617 725147619 301232853 480092391 691559093 529882835 277671197 113510895 704989433 702560811 367616869 654745683 679564851 10054627 640795899 85430093 476667545 645095613 364470587 294702947 732215017 852703551 820935817 925073761 779451753 219161787 22926155 179219293 29192937 229658185 993491705 690958769 872258493 63965127 351129351 774494721 555398341 972672737 2768381 79564347 896185957 68179973 476896865 975823763 541997453 57259883 47321031 864385925 181363381 606167059 796530123 279020755 147488471 863242953 123696395 590275213 31256189 153085719 266881077 872369925 364517043 925807195 276815097 854028503 933742097 538395313 891660563 861064169 703473587 915817989 526960965 547374181 159436353 909406979 319537751 830421953 203553513 101905959 179073565 508501945 320541793 13843121 491429491 860966735 28851175 363937189 460512311 850367443 521089601 814051545 530800727 85053913 624059071 986267617 111647939 770765881 614606901 556451103 169325943 765925659 516862467 276835517 842311029 195874027 76560143 987930535 411214277 124982619 605682885 816951449 58182267 64379497 490865695 969657617 354634163 21133145 185554071 781603927 649649803 294134711 694411575 13088895 386034225 938205273 344151947 820240221 232506069 309869655 13398699 559608723 571518131 928676891 479967795 125323657 422312717 879552587 81311563 819923567 895236395 902544609 883170209 82759997 583371107 193047061 733816939 123295157 36934667 854472559 280000871 852208991 866448521 378109111 310732253 798833801 672835141 48027397 968825751 82466637 592007601 815163315 929301489 791107209 720154441 634423655 559802565 510961897 443626637 931632907 262353785 294733787 327790859 204291797 655301119 393118359 373126481 262391103 959216073 99496223 793362941 281350161 247703257 333767993 394119341 18691925 918480563 851429239 967422223 680734303 3549541 263635505 732216277 760228043 60867207 797549701 100665271 907445631 179109429 345737567 378715767 529629093 73729559 861182573 346578403 164310451 800283739 472487719 349429449 374196837 536210103 45466573 92598791 58082239 703060331 140476521 460133243 630491661 518779449 85533643 604948755 433610979 161173363 928313481 363854785 387085343 917309677 946805767 254154365 382535907 95202055 422977897 693035337 483906205 499699111 451766945 25788979 154673663 104027961 444025705 586948169 214332423 79543223 180411967 831724713 876078331 901046685 993234285 698696049 11019107 190057201 64422403 835913935 285200663 785030209 196897495 408923125 501535279 167864741 778982283 274719771 948269589 882566073 389954951 202334597 956950129 890853031 799738619 984930427 57055287 516047641 993357793 470754387 672736935 148111175 228468471 879354979 291926595 393389039 225050309 574946577 257283029 90472791 573757599 357726405 877462901 965639247 110075289 686591217 671647613 992388397 366432149 295075089 219441043 182601933 325838907 227226535 862063009 962018709 897775611 523883325 728388829 288758391 358855437 612680547 193160899 120722919 750978675 398844343 119109655 509660897 271898867 817305303 98827235 394063857 304162335 781764979 177870977 582981151 454565711 106447671 864319111 332188165 583384737 202016225 390327773 755072191 685064193 390681139 408789165 367163639 457891869 431005431 574980207 931768279 304375149 549881853 441355995 598181399 940398387 498983715 296599799 60773621 457923701 784432967 159001615 83176761 336386821 555693913 929388727 973972015 65201785 66956613 923049933 270747309 564483381 41589513 317263219 980016147 564633437 264000935 855323671 128455495 995307493 129349673 484584301 312011703 421073283 332468383 777445231 465826903 599746999 21501223 190196579 753793705 916560331 894566625 284986583 214226865 733504461 809575671 903740573 65116927 80937369 156413339 421759441 281543591 277801931 636029705 890419927 596773191 486928077 672908419 572457565 20133129 226868177 44577107 62754903 389006999 308365771 808989129 450782465 886790441 138358913 340613699 421070813 764653695 885221749 4528673 736761531 619750363 816082685 8826061 630673581 147550479 688009005 831573691 777686287 431916913 260892903 87456867 727405191 476144861 159305427 783713097 456449023 506160827 824415841 790338805 23188397 603313399 635270857 317730813 785774093 515167499 860208653 28785401 917592291 301825267 324809205 947516811 332122171 144925749 213533455 489677661 400830313 542385377 474471349 600090401 402565131 190696587 633995527 405977493 265758979 191599441 715176427 960169591 963729791 938204893 484483093 907090321 477413361 571737433 945680125 99618745 124566807 546510973 341376223 446284231 395298551 328773257 129157577 333341597 263860185 978724161 619877511 722270501 167080275 705365235 474970545 967615313 913168195 749560693 97293483 122722591 864489677 539262247 973159065 179256973 880502105 29882863 789230447 335796645 501990817 617382459 333736675 940426621 802874015 334157825 596629879 239121709 986606741 89352127 700244337 706277079 71823891 371024251 286173665 97399973 775463657 990741957 574368675 660286923 387923257 344395441 92978771 886935425 830294625 730068189 749571421 337266187 580728849 74941043 99284205 559899571 988012349 384401949 21922559 724382665 294508321 530100245 287298129 78352299 640329281 449433365 667116397 103051705 513437545 943561575 114933153 358313565 777031853 837268951 991821321 532668683 651883113 293118653 482822273 372470587 824607299 938990837 336618163 147060081 126230055 912909543 462875407 546327607 271565127 797428097 159066575 844057887 874784033 767589689 678744561 634356163 883053177 700699917 906428479 853973189 796084315 557673859 172749895 536314575 919113499 270868907 825994595 879727509 297122135 227548185 380625331 710962895 491802865 868096493 85131039 201914177 581025303 956247499 778037847 217075637 339068477 785666275 353242579 396359165 67548445 94581741 597842645 310113267 598595005 906173475 396050019 78541945 214416747 4302415 515354703 325319289 46645943 642284989 217680945 545729511 536552065 824826693 739412073 819555003 467343085 155955267 893031199 636555257 584760421 106909089 663470403 333862571 751199903 83542727 652659085 32608995 135627669 156783793 949371773 406518459 409440911 520239835 856551517 737860437 685238549 542125133 978643517 596232155 803436543 518725779 215590645 404037249 613295721 45315267 633997603 427013503 875201715 559868541 828120883 726709787 466092431 353222373 529469523 25175961 776816365 735765933 329842041 221703249 529983243 969750023 574076011 709812379 324534125 644685237 127581357 159485401 55202783 618571259 486099599 169517943 503368053 450755239 781073965 887234021 726805387 955283729 167867491 845547933 135051975 634640149 126027227 82837539 684448789 314666523 779291143 803484417 765222311 715092497 509698587 972774089 350919163 301999213 497474589 701198357 671485655 131089709 635508175 190140551 983381571 635138009 657827271 434130889 834672533 586427003 548471385 9541263 318719595 274566319 776834215 971938707 950210471 705695887 832307609 698909333 887060087 201501633 960536287 943426401 283990863 89625719 34152947 967567561 24422121 108459619 723768595 275940775 696160077 55009223 133435975 560900573 311341763 791034983 529277537 65859925 575368419 665357969 165473273 981295875 703395207 580078621 483604591 918650849 376034261 89587561 412303595 65687535 526688567 928392281 235873117 194749241 487331939 670707549 733484413 783550161 305101397 962675819 846515149 798100945 72770383 97654273 146870931 778694235 403981793 518888487 970136801 137663643 471378397 133306215 271615887 206379457 350751585 883599325 494009915 21874439 615945167 174679075 842475601 521115313 110580435 222893151 523259391 934201609 736281443 577344835 376203581 345086305 443934907 229043971 984126667 222788371 833963359 842328155 812265269 643006081 250247195 676073877 391002053 637945367 793185541 69079935 485815193 354962757 546041461 762984557 21307021 866753415 161242133 201459005 719813197 250892637 539796427 761048151 899499845 968850771 417186001 187487401 112459697 237810427 77617311 257909931 447784591 660378095 190676475 24438103 497415337 986749137 944672755 600480565 745291663 11154509 159724247 845635413 189930647 358809619 966156103 362952781 289461219 652151773 276476199 834632505 212464475 931439217 55665313 135170753 968539569 365626005 128963881 732580369 556471641 189043229 389393535 624969187 909260183 828374243 133498277 448881523 55208819 632270793 536813541 294931847 634822843 107215291 518039511 768662893 693155593 58005673 576504917 794771965 871179453 596709005 579454341 153429141 881710591 290279021 848474577 257915929 544306623 543846223 334658287 244942329 415829687 182093639 696795355 747593515 407478373 815697519 351941337 209043759 935428625 924004841 523950197 600441607 590120397 540133601 106995843 408072261 814623601 774146439 518857249 936974335 878862237 706759191 777011633 12812241 570217655 686625745 76226527 282746083 771971571 918868993 818945699 35713249 815285831 888473337 522983989 444805381 146324341 915375379 44023323 864506635 929905923 783006131 398908449 649994297 888558403 307813439 536352605 995219551 889905229 176099117 926881575 214982865 834444543 856674039 3655721 833716589 73380869 393369373 194043723 526522269 587506379 391745837 198096577 622031691 307769485 778298805 306229003 712385519 921548619 537685329 208216041 870928775 843245259 618654627 735711595 574496667 163393949 710472279 839963873 944537655 74329117 804988957 193926635 192718067 18241383 841205169 628754285 285719531 211345509 608815315 680351377 658442951 491256009 922343247 835750861 243259317 176202249 386461689 546566109 243683433 69204069 552326567 431938243 376040229 627842023 345800765 613883087 723348909 210745693 802638759 515689875 342028369 927362913 619386581 851825387 142229221 499344211 964421315 565053437 165882313 316581979 946891633 516025909 156217569 635708523 611057901 936788037 800208543 64574263 452269637 150399787 4654837 931714883 974379669 502304555 431376995 84733655 215129087 366336209 723222257 661005057 599003823 618648049 546458923 995219611 29775829 614505129 803119913 716788037 601532077 704963675 571939719 857564775 379247481 322768053 12637293 569827889 559373441 971696809 248737417 411426459 993697049 564223349 664293905 186252903 824110235 276845983 358009283 788621851 329859947 683102191 618176997 64212745 616796657 529989757 538036037 88839753 704063391 328206753 545126461 327066041 739623409 480362757 189968805 666025221 385922919 292368017 461108713 988173979 715354253 238637435 952055283 829642419 357534967 740169533 499283005 981194319 782802491 222843551 107131841 809812021 87135997 808449193 105296649 412614133 443499497 542444467 627169057 693541099 452303537 385996375 174857889 645478707 946534155 457662587 350086821 930644665 507582911 72906825 224844757 113371689 731189651 630712119 412967775 279608319 954991707 170314497 956092409 4173691 492754419 7876267 305217761 737764257 853504825 57688449 608528605 204060231 87303963 326597655 556997437 507323137 232277899 957269835 111312085 975129137 983894143 867486013 472013573 584862721 725145343 189427295 589199025 875497309 607730193 605967457 954907467 819019009 402221003 369860417 834027973 999367275 754844227 310289477 267808161 391869667 837459103 29356277 603809251 866034301 874438149 246187559 799963161 921932045 612991661 662586617 940443995 69360437 566005453 810756557 750755141 738987357 912598951 559233873 303168767 265308853 615296649 813959545 945584695 918517813 662975425 864125055 757839907 214599071 936979371 148533225 991326337 308406395 94531499 64780677 510910105 20010263 42756905 528796773 168932405 489749901 133079191 472674789 680172721 466776251 721596017 929080489 74609125 29726541 887019065 854436767 152172861 483506353 507062647 359217403 918209701 207602719 62604993 180318521 800074641 368740761 141536941 173111323 578170883 70489317 728559841 712435121 30613375 943755925 745748229 766156109 628387347 836013313 410587083 492606091 228270423 195924807 402957807 427954769 348097383 732611155 702604595 784930251 506728939 512995283 478140255 894225771 654438161 912895807 318006087 625424879 975659151 419392215 634013639 54046555 149851299 922442917 899794623 423726587 135086869 396387193 266184217 585279843 690414641 173904361 993672903 623692145 213404109 182622041 269816261 519965511 860087881 808140525 896513301 532352081 478253451 398926999 400938175 664742727 685532671 403979281 742652377 906190113 603043231 429978073 271675769 793030693 669208805 760213561 33076677 747101921 895578075 819461697 323513573 23127333 168657679 748576967 890729483 394973969 754561173 789829485 475325043 357617671 88208139 188049307 526827103 583832501 635557529 551602049 103934487 942319887 626592749 909175577 117762801 209502545 616789311 266900257 210607171 353136381 215415625 850296355 767817843 258819299 563167315 4139373 804257257 673193747 374234925 32560665 719331865 793824239 853824043 39083015 350519419 123707669 507158573 211317471 107738001 112614007 71156121 845403409 166843369 489073987 436356957 945666261 895207185 981161723 383081967 787209005 423850151 549738593 837209163 264238815 155015499 172257921 786326267 671328125 689461671 551577519 369248525 757596255 887786349 72448649 332652309 908124069 433444953 437483247 261458481 906537269 986163501 505401619 69562121 752106435 17393331 791911525 600802509 151876549 959333051 934843555 137959983 16348797 411466019 248185553 404888175 830776561 457490123 708880957 591367765 597998835 37266077 384276343 722511149 820829209 663624331 303990111 117090765 632781511 159636113 294385687 164791701 72084769 707198897 612202509 521283435 419611163 480347381 865063155 874428093 267477611 220622957 593760457 355371135 914600849 435140151 317984975 544887347 180472535 589146483 180875411 930503901 628484685 649146187 332549355 161956877 638107081 85791219 260445425 563028695 556260845 253108643 631877899 2738393 196623137 892063647 901887459 81635645 605182103 452165423 965789037 384287661 937419587 158488233 116744681 126390113 534628075 91787875 178162905 724982295 524896017 331301827 469681671 461338391 461258763 441458737 420918411 844100141 609981421 140706849 279418817 292178607 606995353 908243979 837145673 201621119 559475127 802736499 903950101 486210301 884960695 378609123 307422293 699998237 462975697 821091819 382528647 662840659 959986951 94679593 702360943 383796381 276133409 493549117 728694041 585443201 598743213 953791441 651507417 202266127 821805829 507522969 670483021 496247259 722806857 536620109 145994327 861876483 651570015 139448753 932914723 877506353 447387131 402734479 652444713 267385999 82118037 91518647 213843233 90478805 750995561 38078983 274563857 497486403 412001925 271677791 771412037 319116443 633643189 528587945 231973459 697530415 273516433 223814873 584058133 633096405 266379389 352936167 530489263 475990249 844662429 875566807 730165647 491299923 580223461 709054643 917963625 669526401 503303179 476715915 952216631 203012201 323436945 650811005 903304769 661934985 716508349 718299049 726826511 779413735 261133471 610389817 991457657 678999825 379659795 617620577 516301465 681824801 667565749 470418521 993298645 313807535 174142961 895417189 740013015 114943207 886978547 104460751 19184789 671413107 196123831 924434153 533216843 731626123 893983483 107420171 998107515 186106095 165263689 997099931 134109941 246825699 83711727 406054915 597353163 131739445 375142665 197303473 448233819 357448251 722256755 917011749 71494727 308286679 706645463 689351133 269154171 600777579 872459941 460913509 311857709 897976039 281820183 80359757 99527129 691950015 760371499 204648755 242332483 186287861 126778027 736864183 789034873 170715919 773128229 942640003 120999115 977244951 159047923 640831051 379868121 618153385 213599541 109836745 888649861 600477661 633507027 430873789 714537725 506426975 949203581 35154417 949480627 111071833 638924459 415705403 396762981 983195781 405606559 279367283 132510233 829191197 847291231 997403259 901928983 712591851 66271421 808959549 444593655 354064699 510239313 286735277 771834515 88198373 189778555 810778821 375101967 828428869 198183779 402348677 241344217 757954115 993786873 974662135 493564581 396983373 559676149 325561649 646869871 653783897 628394967 968074827 498361465 533759205 750596585 588313191 968194387 20902905 26513723 712137393 397508815 256922143 909201829 743451991 17131529 655544947 846443461 405126297 935324007 900236429 829762055 171542965 681237907 218738585 972431769 744930295 489871491 883601729 526941555 834371505 75607667 931635391 257484629 324899643 652266215 268492751 635435721 678179837 690041259 353082805 248705053 599992155 243656659 104773701 774734701 119958987 152111293 575071951 252832149 392866245 255998731 270900535 440388415 627467469 153107881 235141343 236995549 504643693 90728655 377154999 1409189 167612215 511450357 400306997 732213143 67367365 621848033 800574295 203393147 84096953 678301087 942407587 672176613 367332031 795828613 723719209 666618409 15054727 82084141 685380735 766893673 647122123 781468539 649097407 768776077 837234767 926055837 493705877 342493509 285922269 941916167 749777965 947224843 53229639 127316339 307681083 606853405 968899687 186738663 862413313 87585155 509082655 970120113 270668355 45169423 179297627 524009571 784279631 320462937 207150859 68132825 173358589 409472705 308602409 815271223 271910313 108788591 212679353 854242797 6126909 741104723 837689541 682351787 477712163 830069541 885379935 677604461 472740691 340269671 871373729 882204027 812960843 300101215 612564397 864214623 332156945 256357407 625998767 450684141 591500597 1005183 686965463 734571329 120596429 888680733 392613471 983539393 161484915 120251237 374128269 919302425 867922771 389699461 75276711 751412539 76189977 332939637 877008129 920237157 305936377 351921143 29418997 486025499 723801781 959081361 706949861 526280745 517361553 691709331 426683963 938576291 945233245 208232217 542247787 866408423 496023147 516700671 823326191 247045271 250904479 509332977 250743879 12875681 624230747 396530523 524888831 700950583 898844303 503967865 501100457 164345817 783125937 619598409 213354975 102579015 29306305 28731285 438247491 205076367 599441729 245437421 964316545 394923271 900111683 349478567 404436809 764494409 456176731 462228965 900083543 154604857 29822379 500707727 333271659 352494597 425607123 745365079 43456337 641638433 533428743 871105713 964724699 799880521 947421947 687225313 990223331 47731327 503380971 495629039 683594827 159292691 254285729 895005097 950580223 890509207 203717995 296693673 252045551 106249447 404115997 327742799 191849239 834034473 681500437 4204227 292902263 741347015 56059709 972302069 181760795 492607351 519886847 721611935 149838869 319512885 493267027 191180095 820700287 595156293 419101623 378100253 440987003 800446259 188578099 973285195 309030453 502962643 127974995 825330337 827193565 578320961 70658605 672189631 55967663 617343715 256885859 420830219 24024043 474678885 307880981 472926137 506271453 360627897 477599479 76029633 799008471 254411293 197753405 529447135 678778933 590983701 317243813 591875487 277575765 503146095 911141493 824020817 850375845 297653819 288137851 155661837 648986517 127176409 875791631 857614513 309328799 591500523 532364303 807297001 745453129 20787551 448984799 979054883 130089753 828912233 382375281 817044375 293183651 627297411 755095351 427102021 546696577 317607285 604332593 141459959 969000791 565991239 558505447 274053691 416839115 178699089 453098597 859862637 699408787 13876525 956569921 721592745 707964265 621639103 494486173 660955353 371910927 36765239 831835675 10497967 705173581 25645315 32348137 865306017 898906615 149431013 938588609 293926639 677891303 102308319 360336863 374768035 36292351 51963965 328485385 98640011 75957803 329899923 992588943 902881857 199594331 352103869 10007365 136421413 850533771 964202465 417640075 838173535 313642685 718992745 674447429 676629473 665846009 984202507 978167011 346563423 516850003 942139331 833985117 553672797 610448613 638443477 719460653 94039843 747953619 119341517 513972061 591320255 695211587 178451841 871253881 441070091 21221229 105696521 240522135 28352679 555141765 278987213 456345689 645671931 790655443 918299001 844043745 209487415 987810717 699630337 27170013 327294803 677739831 764815263 510046599 348477969 248063485 992970713 595609755 490788599 714102861 542402173 737327713 663471447 327742613 12739995 304075171 690096201 216635973 794495379 393860283 787929515 952968921 981963783 416528519 420250921 140930769 912570597 786912621 320016689 212627643 390335329 332355161 63182843 241804837 475237111 476090307 479151753 147097771 451294313 973692075 976544673 61512433 414125767 415329173 661210835 553773983 248546915 38768015 257156475 298580583 172190681 34153263 70185909 467073797 789128975 636135831 700578669 533564985 841598511 300016489 424769871 288068817 335531695 199053269 644366807 315133595 799299659 889137553 130679877 245603699 812226567 255144923 679386013 674925117 313186605 441018745 314317749 518642145 315320919 235375547 156859937 989349969 463977051 395847029 893445955 595374985 605921121 555453959 785830725 228780169 777048533 174298197 912659219 281057375 784104297 332679633 582567785 347138841 660553755 621594989 219563461 189545171 262958895 809557675 492828015 102732977 488134705 800165005 427495035 244089307 211594231 943597735 893040317 83541123 880481177 243781641 751060695 457411813 314206593 490157655 947529009 961452097 929237079 714119347 719345403 307514341 923723791 504701645 578970415 58077727 927961831 540705755 831887241 63946573 44925029 179493787 942368151 151119565 746878033 563763027 844353957 74235917 93890499 925146323 427326925 143870847 660484629 874863471 938278127 829498265 921129965 788549383 349157809 839257571 267872309 350440193 75470215 128693219 40994083 60712777 869101481 797725743 279019825 453601113 711364115 988474205 257356839 644163883 694417553 505315603 987664399 833220169 30221747 330661113 699588157 322993345 897318353 375975361 61194317 753973797 965591561 661357607 675712805 376537753 929277767 986524653 947863023 660701631 539312441 566407387 787041057 17553863 600847191 50781127 55079287 978811495 455156705 556011399 355328757 771048413 184849633 456295937 758951399 423094257 187644199 413699869 907476451 908854509 256428361 823784397 62315201 791026349 616249515 29935885 547316137 525899659 216587889 163982047 429616135 473410925 398219917 632059723 520541837 541260997 21438137 277019495 675239995 779641223 911543667 422214729 581524817 301032495 826320133 661853207 812363869 987386567 798254719 581040377 471268149 497253341 64362167 873419297 985419251 674377091 6778191 88077515 270823931 37395037 906640815 511138105 225420027 105282189 149607431 722836917 174411239 452126915 621370449 635731343 231349753 507094837 328426827 12561957 734530489 821770915 675092351 493355477 870784495 570612559 427627579 608829709 636507827 89337867 174276761 50552127 978985055 126793515 886738041 356101603 748903065 978902927 657591171 85577085 759419723 487797661 599889959 237006997 204715947 405288003 186710685 906329793 922985269 12163573 379208679 519848343 450856621 949296565 462387915 826945981 921876253 834398215 67076827 728164827 887022303 178490873 484093295 562580389 719107209 532325411 848989351 631313619 385509891 418419619 123403369 958164007 775350137 964156701 939315049 693911151 749934685 453025217 189163549 183549307 50466925 429456967 991612359 503668003 984394413 355098601 317564269 728063565 656560745 670040943 120504033 256959457 453375029 496131625 902942649 245729235 250374383 848486125 308874329 950856731 725258937 595122967 693247717 468805053 483947009 275131791 989751889 277845953 609998459 707719105 559091539 836330045 410675745 668774567 573629291 908111175 486314041 55297469 290871267 956093957 852031569 104531465 213502155 668102559 355790139 382716185 583958521 18622537 980039699 424155653 735570959 129434683 111754557 579180651 342713717 152946361 863113575 376218479 498556765 877602059 435676805 463959235 806222525 154814855 132174547 740096921 521764693 299381893 804720595 537139121 88679085 456970599 439331157 791372371 611356953 790171543 883368043 947504459 100718253 319016327 978053233 974139375 158832203 282858931 103675917 643771935 231613595 898805661 254560809 343925569 56749837 300734159 806146811 370093379 892085467 957295067 707386623 173741979 708194817 374901081 187555833 41257543 301886541 127260911 308479989 278463693 860332107 93736517 869331017 529051451 128377941 6599183 801639053 464235817 213558155 206103301 513047977 724825781 190319317 42577131 292185289 452360067 3016161 582459787 448505439 621752261 302516269 229407671 499879209 264902957 308699635 400994375 318475565 676118523 624404289 388994849 944899763 118982135 511182051 425655853 767085905 262027117 719529329 830739039 844416741 866762293 584157775 756145839 874666131 453505195 332629153 775172897 972039621 630288055 142699611 221017535 838995759 961329351 856828723 960039323 737378257 137078991 688722347 709944781 210783723 389632849 410288137 61317755 734098957 698187859 173515101 633143247 877267977 70402655 679823491 122401015 370973691 946206607 319368471 850971443 140579143 245931137 913006213 927665855 108267419 356612443 869949689 217205739 276676075 574144713 553136751 588603911 56441203 702189827 550989221 140693101 375864503 404174537 622862117 236930431 449240195 853785181 559880767 918123943 785667307 315610771 679021577 352272473 706318411 934299579 508939365 821400333 50985033 784008887 642971387 919764039 63536337 118671853 238654011 306728081 358116629 646846027 536306271 65117565 57054867 727019079 115030117 653382307 593599503 19487967 352687895 433027241 4167829 605087899 827568643 81362489 255522425 676140165 887828099 212545281 171924057 244251447 955176631 960861377 857952791 868930511 573330055 592567863 56117217 407134451 603991715 53071919 2866987 971886031 93020547 64267385 398078895 131979035 921010281 71669491 752074867 446608407 123413595 607554173 783081669 621862279 394624811 708112899 488590133 106345145 542421617 895755635 922355875 908715653 221415565 746440397 588751667 977316423 223783335 468581135 288332111 983264487 151633071 837607237 602440365 379394003 400698973 356135809 560064327 718903809 260535345 197713883 929535077 880129263 113269623 170328953 781654417 523226019 90618425 350756229 678789021 369239469 975052373 565543471 362795435 272936993 733832295 989751217 6681625 47553183 94253275 725173583 684787097 936193613 651997407 163347539 381418523 629088983 962753899 350768911 741514205 748212087 471001663 901289437 981918307 403537895 679063269 541031967 78297977 187710321 343559595 383951167 228967475 932041185 402743981 905739697 186625517 849693327 938369735 626830319 705696589 596630873 824620195 862531961 341394751 698015651 918037427 355838427 524460533 401959773 885066541 447812517 522286063 167143933 585434385 708103029 55963885 930702721 368566567 97061613 843613437 219977583 430082051 660601779 947821427 289858519 738857977 141896317 190969325 347193933 653833771 668937731 922379087 923458801 316183425 328547337 112976577 722005865 529371051 564419673 64964797 443462625 963555875 813402053 799016445 78469651 298112807 808453927 395780739 840961595 234515647 43061857 532372127 272933919 502692797 203089247 116919265 932649997 678269113 799481617 155494441 221522397 9786131 575473777 217485467 278155243 650039283 747462021 991757473 886692895 850761545 476938833 66304753 535000295 741621453 727673325 118911111 735517753 933208321 273763185 466977703 660286613 784621099 550697217 385258715 244199421 469053277 460337347 744859131 495953667 461615471 935405549 278012707 25109435 97001471 459964345 930307509 95489221 501115513 12061799 715169117 56586311 896067339 137244227 788001553 956806895 784493997 272161439 884529677 954531569 561040161 786835157 894012117 879254287 49420781 205177159 565738037 467440525 169859425 250328673 47371843 319907129 358488729 857051027 493475671 827508331 686327153 885093463 840903963 222297089 44498837 924513585 96142709 423871071 95437681 260996267 26627999 489553013 379065153 877381719 248271633 87721657 356577795 187999183 111877265 519731241 640744065 56427447 886856493 579227981 789930571 817099957 509558581 621065009 442847415 453215359 657402697 396049003 61134823 541131471 561197389 332031515 169399235 139701861 757441899 389709543 240602877 255005197 883078937 616908285 506626569 749906329 678137361 424459281 385197099 364152035 204922203 846165093 337196651 975236303 235544639 209925565 33076887 761207875 695606101 638340969 278051913 112324405 117048183 937187901 323989473 868010911 710937803 72612247 738303367 42287745 285098939 866772065 83363883 332084967 304432637 497020421 734619271 601939683 628930445 226706299 461626393 677407887 288291759 81125953 375833641 314561295 859227119 521823071 503949513 48522633 143205665 577641569 107481041 426050099 616431715 213897309 19105761 233311047 726664727 330344691 696384863 573441029 872369385 498301769 348047231 158602171 608087249 6296845 858873145 154597559 152320519 750269301 776921673 842977621 607955985 446209599 787247163 407268087 272493243 109132977 733164895 560754441 41600795 266402457 474176973 104511995 453539977 949252431 460105315 156318793 596592047 587765937 633156557 915979635 419828597 623769635 580391801 350156549 806363663 639468437 973100191 330887569 385163773 858113663 395548991 575964593 259912959 599181019 134694179 44555529 779928357 395418163 561280217 202775873 806319039 487199379 99925181 160488203 646566509 134853009 621833195 405560097 73610259 627754829 134127439 51741513 283880411 706159981 522754709 361376585 99628603 334338079 754408249 198292469 378598895 241687833 262299001 771742759 671044857 902061209 332439391 294268867 325544873 94284389 51213241 944554161 66981777 645222093 82783521 676648419 513229455 721846181 548568311 482295891 955804099 791961931 58031715 348195335 425055391 566985641 310686039 910184709 110519251 821073705 230295431 749559905 690921565 567819715 950653815 781850933 799801473 751591415 253215599 981450149 806505675 267270601 482353277 428029913 342339343 900040647 659557755 787920131 354643307 370426887 935190537 979263071 422084417 743046441 541685135 642482221 955562047 965091155 697504317 25486521 59153751 357465907 564607499 318615895 112126407 825683199 298800059 844768093 485388821 4326261 395936211 675357487 99411721 473892059 813751717 919558457 629178555 112364545 31541833 838586091 517004677 501837115 445012893 711344577 752009995 75044713 435107661 430011453 18224955 491243247 682912199 64383207 964567881 688356543 877871939 519248211 217617583 955175243 519859395 820962077 448382517 919008149 463916813 780151011 445440739 260684319 238928817 195186515 655242001 56262141 516857867 205869597 602133849 746254783 354213431 716697341 60321697 645340807 797785633 900300467 483779091 955901693 185913973 518501389 740359717 589864009 347804591 340445401 386211731 745540391 955393295 183473395 711331681 21851859 882844569 151010623 907788507 639971349 88368419 854957221 28831381 318605367 37546305 435943703 831659373 126460437 414412885 708884113 918235525 403180807 543789705 11978771 141344585 895719929 464323273 221350571 58363503 490161749 982329297 517121127 69425397 801510677 804806943 815341413 877770267 907326387 510667261 334565059 505523055 157680953 722974841 197023663 373347781 917454643 849790061 618287193 107816507 484637881 610698361 203643645 748439347 485421929 377341189 840164573 194763611 349405799 279086401 125414209 422318759 933250403 491126311 954178175 360248657 633849747 692959603 766979309 983974623 724387509 810887347 768031729 350451487 724938767 739066419 552154865 834508067 352134001 752606733 141754469 365581383 584700463 234196257 614296771 44120367 990819881 938373653 603266957 800763081 325058245 540086365 78353489 531987785 699292655 57413937 367480221 496528683 733059361 807508621 475716111 697521713 236694613 215650365 487838021 793024619 595505429 490043601 178937581 175721259 454824813 787946657 997516217 295706639 722860789 977858763 237811295 576292855 797380043 367197755 666574503 208565781 735696275 372824735 159906905 386950873 528707709 468931951 188509253 24815873 971460159 744917739 142345031 668603025 500762903 541285661 846393155 188302293 375114443 672209109 826353185 647168609 787441579 488549033 126301907 154235411 996888461 81339389 679820373 371466253 998881995 221991925 253620905 798496699 938010961 434613379 589761497 740214741 632370571 141007713 263464181 34387283 988434797 179608847 110333723 860250235 103036793 76009425 213796969 550452187 710586291 176048317 700394765 728354115 422697641 9193639 291961401 668418771 6170739 995625777 101009701 68716013 718330799 381230019 175275539 637684799 886040193 370233485 743877968 453292221 146346393 346955657 889585709 324992675 529243949 339956085 544871429 316627059 140540923 887898843 914532153 869485821 389544523 332512009 706069555 888730707 84909289 473085721 928263780 124627665 604225579 317919979 331486539 88384027 377550065 513717287 723990887 581046817 940168097 79925565 240105795 648199187 611076391 800951909 645035119 576725869 252385277 246283937 568057993 186856183 538406687 265420983 677001263 547611579 17479443 522937401 624011279 319087629 348039399 893999743 580418011 184779403 926599987 546649513 469105483 79527703 378965781 87697309 662328099 378647005 792728881 601064207 108502059 723884115 806938807 148756085 13028409 898597429 868339293 198024465 840309539 840999047 746100067 981105129 992334799 634630295 580869259 377129167 783636261 823844085 414637863 824275801 235127065 593422977 422668301 986221547 940497827 417345373 35661977 22882473 926172103 533546999 393610673 780188295 773279885 648043009 922785479 230011451 582616587 651605371 934877903 161458501 725673561 513943461 450837831 144262383 773923479 201910797 430642485 583350601 218667509 392768393 759214631 924137513 920002207 195122995 494553397 881973297 522400467 519845233 53981693 261144009 325821395 191019757 819507107 533727779 534663913 331162011 641899991 60372533 813525093 122062779 279346129 826606527 782856357 792284879 790560075 34391625 523419401 391891107 617228175 674213927 968502011 399670345 613719145 999552877 773294831 740961059 130022703 355052285 191802717 688171473 152046017 225735551 554714569 966273343 367339909 347964515 672581051 142503331 930594921 372203235 625911241 587802489 151583715 784974587 190860427 527574149 116435439 472418425 542813603 130704083 253957657 78030825 716990139 578160567 9815657 274191269 936771717 625747151 889097337 576530637 717008831 251203837 193779815 3006025 515718693 641745261 673907671 532846537 944466311 331462295 633651449 258054341 25385653 713106739 196090245 906132349 929362569 123128647 549621685 218160125 881404131 814927647 661082451 174950161 533107123 618357841 377954475 696644433 581145061 136487095 258550165 64149025 887724153 135636341 626323565 780534949 46319979 118343161 789107483 709898449 622676171 232903927 933304331 768601179 643680681 560684905 105390391 136406981 3393823 108629911 689543963 366552917 645515087 137802249 851805629 788499995 838457443 232139415 337475501 800192755 229214095 66077019 668641023 494567289 435729931 312188347 343811667 502175513 555561499 450501985 975896525 935255551 270692361 861476675 246293023 780292135 753536293 989615773 142969723 134896207 276029645 645080561 782565539 287737089 874936673 354752527 212007385 621664653 128632651 403047689 814198767 72403721 595400703 434213693 825639227 841327447 686198005 774510669 307666073 773494815 701032113 886915621 383724145 300278737 750409149 653543931 759049137 530908839 797318059 296423755 66000079 462026655 732233749 130415323 192270025 154064259 495918493 719740339 579223589 966572513 549964013 457565737 73661939 373819411 805224377 422550747 921365703 96726073 826940857 244831659 826465217 965158971 682903473 56224455 999123845 384200905 568070763 893679009 387125061 47023195 824018873 762764281 337626035 595506227 521543541 784023759 293634065 287235415 185559169 909567345 54038819 982679449 361445319 275860085 738407479 177662097 725356347 870550709 363730467 227782815 331655381 284530773 538101321 172600299 272857497 788713923 436637067 690823013 413366417 366218419 22058329 400272325 808768975 307663137 291049641 370166923 671143277 522608719 766452985 149600515 184094349 720550349 614772559 376330551 103545433 75620461 127618875 648984325 544958213 785512779 416541137 892087561 447318729 218817741 660410545 247987119 18632425 690979229 241343745 545602597 613821615 342452657 506750573 483390819 615620205 613973317 150784557 761595689 147863165 95479773 159901185 416798465 479860801 376219461 780016429 7668537 236987685 20817553 867355007 752707053 522714007 227402015 961053775 82232313 827427351 397049233 80896889 687588359 620638243 468067541 871705701 591363977 832674119 989045533 175792897 729890741 721983509 681198311 107249859 806570635 474498343 427716599 593897899 731060691 812616735 828991065 916921659 592171041 291361447 584314211 412180869 396034505 160228723 885154479 54440989 838645741 151060285 308440353 421467939 94897013 788814789 817829863 376898621 594121233 567567063 418489717 818794391 245932347 888839493 281561221 777328363 799769905 659253225 389698847 334830707 205892091 68501157 609598859 970013689 114752107 727185251 20168545 500520907 653096729 670662423 637919355 832048059 298065253 984189115 890583039 433670189 900175991 658411087 442413911 313378051 79493695 43357151 648296761 932384429 132876405 203975805 731861151 309973793 290410395 131747651 966425553 826533597 595465207 281228883 781078873 979474921 143209627 492458455 333017355 318676689 859162719 287696131 855978755 846827947 745021667 520483601 316432551 554830615 351138701 745372225 954666403 913617211 708262545 483624159 716842729 672378051 357945317 806424637 453209015 106204137 769475147 644109749 348506769 406715753 981295689 789053865 25309251 102533001 613228335 744019077 881159393 158024983 574960665 146356665 974040265 149341291 348774627 891850943 544185245 775734881 423527225 134935069 457584971 358511459 214397831 503035481 236392709 25325147 337097737 715454215 878451275 134704065 78542781 585146817 522711517 667551891 612911469 394745129 318597321 548721497 889655465 355893739 647550309 695639839 840559303 245181879 163058251 408158331 337426921 958330439 221756767 963560077 961535991 355674719 191285455 667718139 26761635 519560905 119081999 891455987 195554145 436627289 134535387 451748137 855655541 494235621 880591413 381219039 651767783 373694289 47458157 893841881 231816581 569240199 790433557 13354341 730860777 761211773 610952713 351722587 663444595 449926695 557234287 561734169 286778443 257450891 833168561 693663107 951950689 195038901 57638021 646094857 969844847 61040051 39424487 177265827 803443443 772620961 900294171 172023499 723593269 364531361 74066093 174892427 747224647 410319071 386778225 198957167 137039105 945876363 187518083 236440717 96430851 615799007 944069449 670622085 672573619 324758561 184051055 350530685 33108293 628358295 102505703 994534691 581787057 611058325 773299695 944236715 495968691 457628277 116163597 430774487 102496471 843649945 222934793 951858411 433892717 933383533 910607353 873848503 684784013 60047457 602512443 438289295 71527957 677631217 401264241 579566419 139694513 28004509 558710665 48461671 851940303 57234161 582760887 79083451 985418663 99505281 398244725 834704325 157218617 886647779 498054283 997186949 422980175 428901051 385532673 653925501 575121785 294863029 417514543 594166463 375034125 27679873 32289711 812450785 470654509 65743067 808699493 578213375 361808323 24153475 91190657 882492097 100978555 979086917 233119089 87792213 494688465 446018547 66043127 569736305 976544259 117633897 973476885 465006931 833034523 255589509 37089047 782862529 391949031 998378293 34155409 629727497 779731457 142792297 16679263 795289091 39753673 825145629 847764391 254457357 490463591 458028369 547460563 406288653 762079949 514168081 684582553 290086255 218713007 505224561 20230901 585256235 147475601 135709575 655395115 193139393 257809339 945417591 352372681 7063091 698257979 598910829 130713759 575148051 216136939 453748377 817145291 852589175 3098987 751349303 224634549 719732219 971039523 664287367 789501699 671344327 981188675 266117079 261836719 154087305 630826179 63548789 842170353 431999095 15341413 173362365 574366287 152506447 291497647 915316755 600755607 984989015 293791731 437449181 550958041 987192415 640973385 826963347 42531701 560444347 287735695 674676905 92382221 885867595 158625137 106860455 636169615 421942387 585485405 15586579 324154159 146023205 222869131 428085889 815853673 600058579 292941053 915810701 338379263 764218493 551386233 958301397 692258049 111524011 246587023 854639879 316515265 376721001 193867931 393562579 125600475 126685775 937716409 377925877 706295349 719618937 582310613 903182639 339330041 943319695 47640475 120757577 221571997 83771583 942572423 812387095 631356637 621481663 220214745 251466357 570646717 440033741 710444437 677942849 653952649 227825329 298925201 605746537 504101589 986743477 12816481 44241885 53330557 560373427 581676393 29537177 902340007 370668041 282668493 811832223 45819071 56560541 904434303 439922935 776501111 837740763 482082361 545391029 319375821 193064125 40237689 728585205 33735429 598273213 779072137 652245205 514659499 20876773 727650423 85463939 90501525 583409601 327509533 702969393 599434973 711744873 244196891 122345749 593698535 344812665 774433497 718487415 860501089 235232793 990370695 992324765 560478013 4987895 782507807 67346653 606994363 528454985 934719325 934828173 986905435 344098253 961719247 677086995 732261355 942448331 222563521 791078871 422745729 24954383 544156749 644101963 155850359 213635311 203244883 466557931 450189427 952541515 575016057 371392825 740269919 953994887 526684979 421583549 925657457 459469461 51311801 680476939 711513891 451713255 406606599 684551871 357554749 258241919 934733801 250671479 417936073 236860385 214045167 98054881 889246235 621535259 198994801 164989359 214763983 219814853 113073037 835928217 783782603 203825915 427504431 828152161 227494457 152919911 753859589 637221845 510522511 365696819 929095559 141748931 974618249 600556567 401477621 206449929 589964331 682284113 263677273 606973061 553476545 462815655 652920963 863898405 350810337 374564969 343836169 693982683 571892067 228916843 591412047 834207135 240069743 73813005 757762937 982974067 261792113 25406773 561477755 905417317 881512731 749187665 136975881 955270275 317555309 908007765 79122089 462511083 957448103 312450755 274119837 658454717 305014103 739309215 598406907 123290403 584592211 698412407 88273559 81324623 857595829 170463075 322169619 801640317 980253153 418705663 968849367 940274927 175571333 743713909 980921107 231091437 879953301 932237423 72748225 915970253 445034315 315125029 938834847 76225509 671420207 661745493 805831223 41564827 731744265 356951367 806054871 269836631 481897969 376199621 517036441 729133451 597679937 848852779 31599965 927562933 734479775 73636947 287977675 365068113 894782197 45912997 964966483 612581359 533043321 170648077 557680173 870188573 500477863 947137029 398189403 500025209 480980803 315098761 244131491 489720995 378048089 215797279 268383639 444800581 811824445 104646101 229182863 101326353 158473867 570233411 731708075 518762435 834974249 825789573 979594961 214179869 535556675 844818245 439404725 729240041 20845643 921680813 532090573 699547895 460951551 960853109 308195931 154372901 374930531 302008539 814927461 467503443 823436995 825647015 311418557 827307627 122590645 488142373 968907513 693935199 736215057 506923819 828086653 833675051 717714943 251948057 964273261 277670865 533543915 359685589 574930621 286486363 36504457 971303373 795230499 83667929 269646035 982008055 553163039 864562537 459754257 528545999 594975227 272504107 124931019 133739617 524299719 712428617 212602841 383524149 14103129 404324597 160537685 464103013 941204563 99464045 976655267 274640271 979334173 280953581 680742001 557323223 807748329 466296517 824650419 41680109 937971117 721146693 703249573 705638407 876505129 780775109 811378633 433532133 709275109 561953451 124756975 545254089 817545013 470884447 941407785 676000133 984025133 951624277 375261651 292435055 463473071 845772549 913601427 637825891 430062179 893518835 796566099 15317961 168700857 739559081 999885387 896443791 103772907 104325047 303472625 990526505 649310197 623846843 595402511 580211609 498340517 785069141 964141999 80615779 142663047 989880623 472686887 601950615 291117813 658137853 32773391 445649865 913229327 302628471 715063375 511239705 640707517 773813601 231985171 442711595 938999215 277402499 716854989 890946095 950612317 419693491 395050811 839516125 665133833 616488137 104748899 410958191 46092473 875727015 873379725 417085615 128300351 800630583 852887887 725812713 107459889 456697197 432194695 505872627 540004339 123174465 810212953 79671853 342948523 566804407 902453807 702008189 916087111 554442199 878597821 417066833 22973827 481437623 396321539 606661023 511439327 726926447 44701505 577738981 350141089 159027233 281583623 324464425 632035545 847915255 145765159 431585019 477053283 52897829 6196925 517920879 639342555 562539747 437599277 655905317 478552493 619242869 522688807 977911873 39244037 678767653 404259481 90713459 984024031 574605381 158688709 694892019 342416121 482633517 447039789 470523515 836742365 732428611 498299293 77583701 466904795 202403057 381912873 891913037 22833673 713420197 879230509 995227323 8326729 880882911 185101391 788515451 717076803 596402461 876709755 115121397 736790375 896660713 860444899 650997527 435945711 44864473 85279749 133179735 631246553 313384325 456406437 295576243 460551663 120142991 84467407 743154097 510399 24254369 511310809 728299873 347282339 347811951 230822235 884122711 308599227 501175473 254144829 36157363 90711023 817404715 525058475 452317721 231116015 509504679 998292505 744581307 523013427 545709815 781059649 995803723 802219005 352933877 494839593 513487371 341322837 768748675 632564767 860729021 483531273 619229579 322731443 959990709 219142833 837654785 318984389 291360707 782209201 91670237 911050617 695426123 339908655 543231011 224582713 130719791 745180187 722290653 13037755 24924383 791978797 616170525 603528953 779445073 12233445 185229053 215959099 358544131 594301583 117675423 688337931 948586235 678957621 322727725 348084029 674459337 756774325 65894363 839612141 767200641 27711915 846314467 51976065 475728067 27935363 861932165 195464099 49814451 878955371 429746445 632745289 239129091 626440027 796349899 549059247 630535909 736487443 474016029 433277273 255673371 255247645 456681571 680687379 376611049 579578567 252508425 590789361 956091677 903191341 26974079 560915535 202525711 413517099 495802943 592773587 225015707 387831659 495159501 820287081 933665577 615856991 461970611 347746371 504043687 745363517 258472067 97052129 33888651 485829637 28739287 891503363 530845139 480842367 915885905 702695863 772761863 58305087 785677725 860390225 937498931 808599961 430149225 464671087 362322925 82059183 225240181 464197877 376588117 236890985 782790527 760436493 179077391 747389047 323246931 708479019 924915533 266551891 800679619 314420495 530564035 703982395 35246761 994784185 157627565 734920503 293118695 522852985 944155093 974634777 230956903 361108191 347374471 727553401 912936733 376753867 222992795 988344247 790634755 741442401 293999215 612739835 823322905 358692875 909853159 480671541 877869931 695630719 151666803 87673885 387702027 670508729 404375049 35665973 571805459 999237117 677585703 87406531 894210469 625518549 732760021 334456281 224327917 424469017 232194719 989297487 97909275 283120357 946020763 509117893 902979177 421200795 937778537 77680289 884515867 702290407 85280815 593725975 7618939 758543551 26786457 920493597 686386139 931578719 581749473 383489397 519232149 900858955 155944385 182400677 980403725 91366991 469178755 929209085 782128809 261778305 13557493 445696921 597924319 255926841 374067819 382883413 84421929 350245921 511951043 785923805 35190023 995386143 755349093 962549661 457251845 154343533 571872321 557421265 364117941 493362051 878042313 205313399 97109937 758839079 114037501 45709401 698132635 999714407 687635813 303768327 358049055 293594003 820905739 93005527 649915117 132263243 727131275 312157163 133687743 50692979 418193663 356780075 447414875 993906741 249686287 515443785 134366087 375322887 445378023 969007289 465572119 569894307 706366017 541015231 634100965 581342993 763368793 732356963 556560851 416529561 217894389 144320115 123408589 42020051 107787107 757788553 850759619 110659227 605454971 689240837 933160623 650703889 444087963 953941263 615230615 568162727 319184551 71624343 371870337 151193869 299169295 541254231 621642881 863830079 173272521 211322829 972495537 429792389 558121813 566156865 489028659 458998121 201857461 839193541 976838707 592733631 964376699 799146033 180935905 136357029 767917757 619705381 451786361 339736189 645861399 676302855 139203643 315439091 309875633 334714123 829830515 34364671 36200759 620565545 644339315 93040089 390455779 524005149 531098517 846381575 800122225 695957875 28091965 91614037 755217703 854685563 992379857 705424601 574955733 755471181 332451017 851530733 114742735 369765319 83963289 38037813 548690419 86477205 154256329 374781343 481411755 341489189 778142431 131945821 547898849 952902319 157832047 545209071 378514189 101804851 739904531 66811413 119932463 725967227 397095533 442028255 363997897 625505303 670521897 946210461 200821997 435650909 370632695 890180847 134498865 88151151 392122515 52853433 178297521 955327543 24731581 939282725 851329045 545749089 406317891 431591081 51404427 677961321 642577907 352261121 288274887 438885517 819448489 76016943 973360139 909245655 697262407 798097539 976467229 333751829 896670649 717622671 455774023 347678433 681231599 475527729 38327907 324011675 964137957 76644233 250091215 418692717 811386523 709006601 935644271 255012931 638852383 913443169 815792565 847897559 866296447 683093903 564878483 279535019 798502871 114362327 632034185 992276487 908888907 690524357 628639903 465495545 350081793 941792301 659035745 667224155 363740207 137021997 227146983 378772173 909760015 145793063 793710285 590253751 456975587 885641673 438237243 537533001 782774003 127259141 640020447 402188667 777464211 541661211 149789679 84234511 382919197 482083979 599460137 775998859 195925749 463002659 137289171 891367489 55274627 890366201 183930557 857280585 669013561 798256487 63124539 733658497 673723795 705988881 389478187 209664405 923631889 844457445 187617783 817771763 793127745 421847831 1262985 637268435 26669489 648170529 65223259 38347575 722928125 144014283 91227495 569625061 29802697 192713501 276216631 314686829 548719291 426613871 867158231 248643371 191630731 132112989 700521183 242774331 313149677 162104519 532625003 216253833 837604777 329029597 13089827 942196417 213098117 763554579 769082165 340172127 991774039 636067877 373908055 178651811 892116469 16392727 832778951 464237971 583500611 732026421 646122827 898570239 220255277 556945683 309267251 996431745 646165669 951173007 65386323 79144571 373029025 315369931 812502283 196199697 527225129 682116659 669467969 17002549 427443011 526394493 946709857 127389857 715358469 64015527 325096035 630098899 615563397 499287025 688473543 374417685 64484073 589831145 263954577 347408501 381249881 303005539 784375375 741909965 251468295 379982717 785815065 178189757 401620783 979527321 325894027 465712301 167199249 532678501 287225805 240699853 660743163 708552149 903736461 59105303 984110907 464021027 775956737 864900935 96505389 485006293 268323559 972301547 20169781 878610105 762387847 232364367 994993851 240251361 357760171 240282765 697967665 257514153 12863919 993624453 85372179 770830261 424190573 248847581 967204579 374440947 286049355 454400009 624951081 435079063 137594683 470342209 415128187 742392093 994685615 488286593 166588271 990825545 389238953 230541717 487977387 400978213 197320877 862853901 774985943 303770377 379488969 121045569 888678821 459173265 210102421 472739409 587458769 463876509 317731885 361788963 156515357 314404447 812934969 464920939 735786321 513043527 347467239 222452127 542217027 446011411 112024557 726545663 142658249 895376839 360302475 34903445 224595401 535265199 858379907 462301233 526351403 905631071 580921127 715850089 148752609 458042037 885037899 570053281 108720871 940388051 375526735 388535037 700155455 741786917 778372377 823145585 518925041 502187107 193645333 554461873 236945427 747200901 336560957 934387267 904711355 12452561 954382861 706134377 154280207 410659029 798014347 10381113 642141495 839227233 575250501 558532231 706160229 837918869 827009107 842655477 707684309 275683795 955892305 265765355 646275017 194024137 683419751 348083611 897810571 794618987 733300037 605695993 451155819 178188789 565916445 222802377 695444935 679428073 424049839 446518675 267622397 943418647 629952065 336545957 935270523 237848977 47749283 944504857 230855347 415256499 372193323 915656143 283612701 878491937 547392437 590195567 982121277 488230347 114153895 583768425 270230683 222067425 978883315 466307061 939627981 243297759 460453389 664810517 17099881 637370765 151725553 908173455 809523477 32218357 28168489 814299893 497566329 559479915 605772995 40033951 865342023 970348173 168169811 535796141 753253949 95941949 211387383 251644933 909112599 286474407 571757913 916266075 15161253 215139905 944922275 601369381 443670965 437835207 273496717 474092965 100512549 41578559 46426197 600439009 959816405 855570161 426813123 405636779 717601711 45811827 546001187 319889049 974719397 390353827 759501387 988695311 45055669 203633827 359333787 711152689 251354587 376096225 596069881 858502899 709161511 354222351 374238931 839031819 862128041 688212013 159136541 153499897 711578745 792692859 334618713 728422663 340929469 994865543 88024971 951274053 681477789 54729767 167847491 380145801 26619213 541191541 723199381 799636597 408466437 791597015 789168927 952845425 768990729 648060919 334460939 66971055 715445409 184951243 805832707 575578405 413880355 270529421 690026047 799325843 882402535 233925829 345939581 280701825 885288525 803213117 53143557 739635267 192780741 120424457 409920163 722637037 850731963 748326533 293469103 213191777 414176429 632617303 570177285 903646023 628208669 563169641 345696781 877840655 677787541 771238129 174570675 665052403 591593381 271786091 803320433 981343985 225467115 844924315 454681923 168592081 967292167 568531597 258726063 604277029 839502243 306965653 432792261 358647365 530794867 382114129 389608217 984383825 975095599 420134307 569893321 295650097 782642843 663108791 69399679 602950549 199085441 139840261 332199269 312780277 514365617 515377477 132580403 758758547 156189449 149879677 654631721 201145717 969102441 321691641 568211465 883623277 827214523 427195471 524822311 545162513 70283507 874296409 416721491 25244101 26907145 915853627 839411695 543214767 504870913 537104483 531381217 685981117 177371877 453445765 382812311 934869675 657304005 697828507 789792263 838637049 237217215 277949677 590933167 526918637 631653107 500052483 370305685 59237785 684127115 827455413 815704649 326186451 118355643 766750237 845277151 430070845 399302587 607191201 999584757 677637697 609035471 979258603 829054645 248842251 394886209 15052785 551550665 732046231 438268771 569477359 759648875 211923363 209063823 182904937 36396117 577955513 690968359 485356329 488016081 473311785 193677973 954167623 273555627 289191689 134211917 887652127 664133691 598329147 296465095 224899667 587168861 203157607 178160007 290840783 460191609 757327615 481410583 332600777 618599037 560314679 857070599 972679359 2144223 222379027 226838773 995330161 551572637 132504667 559670657 7829997 216340797 559883677 32425559 491387783 927058127 708421427 751175973 37475293 247532007 611847997 735376299 150115537 770634147 480862627 770820263 913079953 628114605 376470293 345447651 231803535 362757167 852483595 420865589 844746891 193655011 992601031 49663605 929846661 530798083 647980369 933173381 294214859 543727193 960341623 580897615 136494323 900824369 470045905 765085895 508942551 188061539 338406595 611983591 165194395 965670987 748609651 827885743 179572909 78160593 158966993 835945259 300719809 960172643 151063701 582394987 400758483 542099447 1557311 306641037 478532645 103627019 233299483 81324209 169369671 99382951 494320947 180656643 35102219 281701973 833750629 443260083 369870477 14796593 266311245 504383227 106017331 511835861 889659223 706234399 813508519 516465255 679818929 354581353 203543775 959719833 348592467 848261931 821949463 858518429 113476861 708246463 127113427 390869557 182801209 263565447 737882847 934543013 697322581 325975277 251240783 732020923 2054253 627367781 575182209 935884239 490489949 331047527 34941975 489015229 94981839 88506745 805718527 52311533 931295029 958567455 223704427 233390669 90639557 965886705 597301977 460837971 962578303 341535879 610759181 284284925 98326827 460768899 514914069 116954835 189625437 291803281 360161089 762952415 897847145 210213729 878850097 646171581 485579121 415217581 154318535 100610439 823812445 746573113 182149169 439170019 361613021 149790159 409837283 829043971 86659435 480125505 139633047 584100505 833104197 220187497 397066325 584238823 563844723 143222057 764018533 556447153 414862279 894289261 625940063 162748741 504751065 438678821 625334045 510872443 213760521 379351883 898100421 534303407 122168703 940124643 243775681 368191691 449328171 851085047 757020103 683687481 331002309 232649625 738207441 167622897 414951119 720414947 893653543 810410353 606180239 478805751 22990931 938065343 688357655 978042369 108907305 478322795 178240063 70817585 673574597 862825867 545022119 74838977 575112845 121957819 756362165 859566071 423564845 277207329 508805533 482813977 133711511 182766191 108255317 238251387 965717769 73308121 561074335 552237431 242679815 276184603 739654913 840658031 240732253 14945151 196026059 299283661 421133343 612194003 719652633 288934405 655736235 534738025 787110855 192022929 560966819 151295781 50035841 77946353 206702325 743636329 839480243 159059377 792598995 66251301 339895705 172172899 61163709 861640145 336578865 954920865 193690227 31027047 218595653 760167439 959305731 175684463 833601893 250216531 231871427 34707705 151604967 287834659 254026317 467977371 125994477 740686649 422808453 738363249 688063071 129418837 25831833 886433313 57999599 447877699 336701437 7242205 739375121 737817813 145799789 404110681 3307785 627309541 693276651 606151123 60885727 750073429 624647623 443756049 543300449 924172561 376758931 691630433 332848681 143599113 37322539 955606171 794837911 732379961 269126581 305343773 223972818 903932321 382239899 37394891 807291853 62799437 292594579 276696085 673392191 216457551 465309337 563697905 560339111 373383873 465349873 746010079 338750541 858557383 387796519 476920289 755032899 109342087 880891151 905719945 569765217 796837431 427342533 489171693 4983623 588600337 153787311 163813545 43516763 186527317 762183289 821644517 50431697 925581391 363949333 974341965 803244705 500192851 557550529 110679323 997934215 472783543 810795523 443174923 205321231 282347743 804581283 886325091 762231177 342756919 208727991 475352817 773843725 840122159 888097181 801667597 973335417 364853825 9751031 125109909 951660409 827856115 206415795 91036141 509461627 817655499 736284421 321621511 435733431 534093405 54538855 994283093 269188397 277276227 958788001 168495319 823556775 712590369 478956731 564643605 73572021 556332957 317293837 734875419 443189677 369574767 930336817 6011521 345631921 156710475 220038413 550891363 226528427 88546809 428360395 743429481 58673479 431717951 50332129 873289407 56947713 419687409 787815689 634189599 61611287 160939497 804956235 480849093 413895827 566239755 579809777 446252919 568881475 759064125 474930575 572778373 449101249 213378423 981317377 558440643 833965933 454645421 650863469 34921361 177156977 166449127 652108861 607891923 133303737 215097643 755879977 359350265 91109375 897152397 773312553 766167035 200818373 905746983 214495875 203963475 691773011 910700829 95317955 275563275 139182007 183508631 335585725 504097967 338152395 743312839 779111055 153855319 337559087 921883113 815546779 423502239 106173515 561199421 299440269 851783087 741988431 58594319 346346077 148830773 796222003 727202737 455650371 491326309 663470777 271810943 618742469 904497153 756489831 108298199 531750065 857715279 394254991 698622759 478280215 726867225 448381513 612748511 741041495 872096441 542004597 728150139 365028373 605712909 497534905 734021245 721141307 696363387 888396169 612289901 791299325 200170479 531509019 954247391 153045467 604124641 765833585 63281261 639745429 11621969 858343249 898811579 856288059 934475715 373215819 115028081 650102559 335222597 641640891 289783617 601128413 292322159 589925309 25020647 42672987 66537821 161201725 289408547 612890051 335134647 921445863 194307011 562814091 664811947 572609847 369617813 391099759 928168943 991708525 50526581 434669427 555427265 617108879 673930823 774599139 507237351 770595693 498429171 164971347 646102449 980481185 184215403 946341535 898720243 70080909 453513131 204909037 194736653 478115925 715379379 813740969 917921507 996103659 794196369 885995909 517904359 91582217 651208787 607141759 726447115 739913517 162562837 93184731 215086289 680715681 41272059 514876709 461630269 87108211 556221229 139716915 621461725 858515837 519327197 823919135 216860361 898021215 897833799 616365645 156547741 197187201 936947885 835600491 770823553 75912723 44960087 527340139 882608419 508693263 830606233 377337485 337855673 30473011 781023183 559752785 856303105 770772487 948202327 355809669 961936961 406501853 768913311 779252031 925610313 219038413 701106457 418327257 916020333 744497591 852268093 259721977 745290637 318406977 394140813 690950793 318806543 441991903 574126999 863263167 949123039 54556617 540294633 297000725 184278135 912560123 653301279 461282899 61846995 514199361 364234717 621505923 934998391 806648875 316694219 814498297 146470263 774877969 58364315 927938385 958476133 817587475 135760137 731054705 252944223 141119255 856679127 830265475 26369293 297550545 645276365 339736061 241750685 572040119 321116609 280006555 161853381 12793353 234722953 821197153 638873283 947021265 416016139 146196891 443540831 484085727 472952623 448019423 805599717 206815433 463238119 613779461 901898283 440848883 588416559 899944245 570146449 937139329 983475209 442176219 230643965 324201575 291854717 611343785 645490651 67239769 251194273 767826591 824023333 700932061 913226123 54018557 436893525 607209013 431586145 91417169 611160693 467600759 698661707 480410993 926250771 694975607 751623805 714487159 336077635 3263703 627305007 405125575 788412323 577796095 783601315 269146127 881105499 137620513 407041575 888214339 473034265 752746801 710768649 470021277 623058195 658374131 842050983 802065573 986763785 477777135 253108577 681843747 665151805 301695859 867193249 98040111 64481665 573736089 510609881 944285219 257624361 669059649 820328325 804225701 989484309 688531475 138397479 849509535 882153387 435918463 137888583 488155975 682390489 466954173 262405499 482896921 575472147 355388111 111080281 789335001 869425499 358022779 70247815 189407123 753923637 500739155 568697517 226618779 958555057 996561327 271726207 129541773 356063331 390031023 675231925 468316751 329031017 844789049 332967955 971281677 314301803 272419329 143891297 392694329 964969367 738411901 907240565 820002705 13030053 428578543 812738341 48060953 753796047 40719709 626221143 82208541 535461343 202300569 83632883 100797747 307878431 979888697 139597037 557890867 856725355 750928033 680782909 33264967 63106333 687449589 985341927 884959701 166625821 184719145 711843059 658504343 481726935 705577203 132116855 31231365 55356229 547095251 132878217 340556775 666093539 689382419 868293199 706132293 577766071 659581123 708233969 748520055 434452817 36949177 982177187 71282327 81340611 873323671 997248669 34848777 35001009 808070343 180842275 307215739 177124925 118000757 196401279 473891041 929273113 750016157 547543809 81004151 194009719 621392637 326302471 320383935 646900759 317071645 763963889 44785801 866861889 907686225 338176809 378620391 110014913 482863021 98568993 847144245 366245101 42857235 697646167 997356825 220221093 645287467 241578055 14524541 766126671 654396517 372937345 79702937 279916505 145906427 466642325 901094117 504770745 820956651 846814235 610405925 710727917 74167549 834858425 712648553 66530811 353696451 123659289 185753093 349153265 988007317 744008681 982838673 814893671 190985363 796870631 131083509 902690171 878649509 687856597 125254493 864599763 25793915 147463037 656219451 6553243 876120717 779325361 786443087 740310155 718912029 233247049 34485145 34884323 835629105 468220971 651747431 987155813 354337179 83192383 698827599 514848355 493247217 514147449 964400169 927743411 943454103 264873937 880081439 760573361 475650227 378577483 654131353 610448965 653847603 602194417 925264459 201763805 998193619 134115285 277597237 273115759 783079443 951192847 837129367 736159353 80827193 622874053 136856065 64488961 835288151 268162081 145744965 141714837 802467395 300304209 761360255 379754829 621456543 643602581 280119571 482671047 46398165 365078059 986248881 124375849 930463505 141419101 794847049 441725471 771054415 850601089 928312855 448484065 260260429 535103471 23642531 150072367 939071125 332631817 263062199 309975117 129175415 37083193 121520487 513984521 219405321 874704115 587172367 975987641 729409069 242170543 666103893 304359487 150084491 770317809 147109413 506897917 870515349 710904131 202634417 607948257 143623551 942474807 516716919 336414309 945692493 164909159 760878395 21518981 90529991 9106549 579178249 777469641 865128315 831184139 361847607 956053563 648776899 294960605 941583965 356799349 728038079 433222819 128564323 302522773 117844823 239570977 740039541 986885441 581679419 843459873 560522503 620407205 818280675 359601013 953618131 36398459 199001489 455294197 825845215 479747581 790670925 536294535 955247993 245089269 775758053 105760021 413345841 151030447 503357169 749636239 142990567 182399235 879769301 657075951 684480447 943543885 772305079 744295737 196029731 453400949 416707463 484232823 637272777 117685737 821688829 511496891 122765995 278684831 213213083 21152287 788313617 98225429 510858151 83751365 947484293 522261587 327279665 448658135 376111323 382194147 696652053 812981641 750747183 788957919 613874415 909113875 920550119 136877285 459551275 721290169 160379309 368014619 763835895 841337285 835264119 672475949 777370443 418136201 579166593 86681173 149084135 80080479 378080847 873515085 716644693 171051689 464818349 589843039 7971301 481504977 264202671 770201689 427349421 440239435 556676785 693735821 161865103 604110481 55561307 742988767 697260083 814183971 292419475 985994417 306625291 678453133 419930257 349092339 675714381 633218913 51578835 962127643 506893561 434812473 48405273 714519591 893097945 21810103 453524593 689022621 946245755 335804805 727103281 375615629 363910457 261547095 846826225 290356619 630065971 852742885 134431387 117446583 296159569 715233525 401761111 228570295 758017347 245910605 638618009 161218745 118200451 448314815 607247905 584889201 779293007 27510825 893154031 78458145 905226159 335567213 124465747 89651085 828208245 496039793 172211165 686508803 748707897 520001323 954557807 503678811 987834459 596161427 87566375 779416817 711686147 476547247 19946869 192447405 748385569 713993349 30477837 728838141 647214957 282550825 397535467 508497369 872186729 643802293 609139795 61209019 975989595 193468491 837787855 499719083 440412757 665633045 74997817 819520569 460875055 662034503 201730727 846932857 298914697 263329563 937837953 334806539 983450825 382006737 353817201 674382357 229979939 101897909 353402477 414517829 668813453 37384985 151378097 230844111 588876233 601750103 844422081 335784053 781266781 592154321 369329259 196437371 671772825 469343475 300680895 97839791 874297497 587015725 711227677 843383913 269465913 985159673 529443111 353867143 364406821 125937371 989717193 530953325 644262857 344385887 454613307 112893963 753297505 857195283 139950581 449532119 11776235 150377875 481218495 419528145 162756145 5650817 586207649 21749627 699592131 399681927 196237297 273349351 976814327 497949529 618383693 565836969 500504559 60820657 713792921 606761441 75308691 98107471 986680575 209161525 5779349 218618111 969528053 725606867 528738665 34824339 682174773 821032049 95013203 188767973 252678855 273943627 691134555 341375705 502346483 363669547 671788111 540394325 601426513 133847903 968774857 61585999 93508029 180041915 724396073 782896577 59058519 380471197 410222743 372253867 808707473 860942063 652515075 749456921 239661595 39389211 651055655 760117789 557724913 647186457 144670081 131890387 885978459 952716391 716721753 310996825 464430819 754665997 290050241 680696541 200238685 405507223 214421137 997909903 204737767 209700635 668319849 984147369 456401123 592621881 630804145 327956593 268205311 912042007 226099863 129387821 222376237 222976867 676450073 415333425 372718507 596090451 225490417 521247191 449732093 778537125 797958827 38750081 98979823 882238879 555328407 68883611 212230807 159136527 878721229 809984405 118303567 741221965 850569515 500803819 408289467 239170359 614427485 232111645 101540809 464854321 894608593 52406455 249114283 735323181 532814527 607215435 634071521 794761117 348549415 870500469 328381227 635288961 896677843 770060755 324458649 704936289 289501011 579904275 114876283 623148873 37532669 444855525 512153971 982189775 524471027 252023301 475948895 169579541 86226719 361249331 628945007 339738811 12190253 963552571 25526551 611627253 232500121 708550127 803652627 853404279 317262241 766635305 936258917 492556671 448967247 759146701 703278429 184532435 950504049 825695939 442467725 550661571 507242657 531990013 386356691 582722339 283650623 861078391 477300559 53912657 519397493 50311985 179434867 337150775 621154095 293380919 179709679 531216447 203019303 261141659 393726657 106939747 927105503 984947833 804681517 326025501 51847327 390717679 270139071 433058167 194050421 121801771 931469643 61701373 974245179 536472925 267614959 873365957 206023057 305433537 794592525 126994545 4486111 877349783 975776595 87929635 242378837 396845869 669387443 604018313 99229419 418838993 290468973 567852765 859827299 579045087 736205057 926413531 370216771 464706233 94911805 12937929 295645 951418827 947632439 700542839 582334537 444900229 178449737 199392057 830848359 907947875 71895319 655949551 580845533 810827239 284021903 266338557 596431903 388870041 914944741 808457301 683918947 329423373 298638227 470218089 194705323 629182175 78498657 816857915 277895357 819297965 891948889 676080207 642609963 210413093 130901453 827796915 914213963 898375415 802552159 127677437 640482879 486508255 372989933 764815951 887778545 553987231 300596649 660273483 516608271 421879039 714315779 39136289 542349583 137443795 477141175 551276421 212378679 689875191 622529229 341132475 52006283 465919305 842401167 552197251 47452891 709644215 955085713 767240239 349043649 10956849 912232881 18110099 127814303 496749747 378419729 752340751 842794393 394796607 393102621 694952071 506130849 431879133 963827341 832169069 129773937 276613537 491785817 345061299 364373127 756384167 583861191 693738459 253696557 1385229 713896547 667975143 622440049 253049089 779819777 587768171 563355949 181192627 485572799 814378871 639876353 440236383 463812607 204917167 304802389 17615175 264916847 901137717 3127897 777855667 977127171 954594745 27710471 382267385 322634997 594755697 568338717 936497007 992246989 286520091 114438947 363835003 551190099 847957757 673457259 427402373 720881823 552722919 678608141 880441855 744895243 464748845 313616361 466336101 958423099 427083951 72943013 554098743 327660829 810617299 489491381 44203011 483537893 330667653 722988369 494267223 364587791 115165247 129373301 345597137 342427231 827844347 865094383 52960271 147781087 180377155 415609161 590021823 834710247 59740197 561140193 923563923 860838675 660398643 249122261 783414083 760049475 722281617 17086475 835059601 84832937 693785313 43290167 172416075 106653621 798203219 689291215 119202367 146783525 457246621 971995411 296079435 433837821 391855613 973358093 188439629 6810505 279901243 640730509 712755763 635008605 608596641 820871721 430196463 652178775 967872779 516805445 538218361 956326809 102637011 788340741 60542931 994796177 125509343 118016093 864617995 365706481 996591265 400297985 182010671 482272183 878147339 2546551 375299677 820452647 895670431 562312961 529209267 220618191 792628065 915116469 495330655 408929663 403293663 113385063 981852819 191372375 237806641 959726265 857058951 228761531 733638389 971525651 363223935 935750995 812205135 116972711 762566083 680833049 374426351 381100649 261135529 916283719 487214859 933223965 23967623 320878431 148431201 446918219 100743875 732364593 89987129 189794369 239464645 584824527 570302047 812909849 825446655 902394517 777430057 170650803 607701741 523113511 649945207 262098615 756882193 176289653 78136239 320489877 942445045 164445615 637329599 688650117 597386537 948201041 596863003 470638985 12998731 10817571 349589189 454034023 876564473 998329391 162710849 428520369 845610723 957161161 90258077 230053055 231346869 786343055 257961329 25016241 147086637 216321891 101534427 459847789 670560013 100691313 242372479 850176935 53821725 169118767 651025037 205420501 371507 118852953 874606267 33170489 434097959 199580661 918037833 968391641 803534297 974147915 54413561 875150471 964580919 384773105 73447709 222406105 891834419 471073989 747292811 388627507 155524037 83360745 359001247 557214137 626789361 71909835 494066753 277337439 254629825 878003229 454995165 269598171 407240517 141221599 438741869 728640685 925327003 862740817 979232621 973332767 563819747 752121603 357548003 734976833 444406087 353540805 275412061 330934505 65262073 715204023 48538611 758189241 3586357 246019133 260662851 581466907 976707645 144818433 701454449 767442235 781278299 831624185 84216877 298358293 478468575 999785823 8258735 761019239 821356327 681910971 644441009 55046841 330826131 365459927 284233341 250179167 341254797 917774279 761408735 924167277 332124297 68768743 453434925 510735301 266617343 630275293 158564423 833656079 856682611 617660819 915341459 327567803 770931565 318224959 828963583 636199683 347632003 890196317 378458881 147776741 859625805 995030193 660893847 114585385 270836333 464754759 824448839 641483361 68932237 812777843 538621727 690425061 718128735 775240147 87800247 104856533 471562913 612577865 812383533 710586905 524525841 688943617 138939685 990033249 902145913 501663091 562122705 343027493 607055535 177913687 779974371 18134951 780713355 704473523 365322907 691786477 209455599 184599765 145586881 462898121 527290821 804172877 385428897 15218385 581046271 615066619 436864787 308154729 691933595 10802433 518317939 253534391 425458839 867294925 502630057 52926121 229200125 782515219 304509219 937934075 275734499 699747277 316112085 549453357 594304097 520799299 969236033 357601925 171526809 416024573 251090285 486134037 503013557 121037011 762009827 692508851 593964521 205705439 481622717 470772993 223220077 667267975 162658201 591165801 188789125 788024949 159440283 270651927 272848507 374315167 504868725 738052359 317676959 890312001 992258393 244391159 28928591 430667487 730600457 707522161 538981099 137406531 290514375 222271685 717571549 645558663 457618789 41785097 772843161 114522881 262438201 980920607 198943895 681940057 489606175 996849327 654712411 233120121 974427263 105623083 321069167 653495705 394308423 245610951 68980325 976000561 560276717 520493191 828945367 946612231 337646703 84402995 722420583 366330407 426384979 546745689 437115327 86741221 793766313 478618707 198557843 922605279 506803461 917455425 166656923 744162807 784833415 472281867 929115547 456397915 578935765 479504225 52512093 968835453 545585435 511775675 494076595 499455261 611176977 384479579 994283895 158869563 913620471 960867657 154162827 487487525 286740369 702493523 113379545 190258545 959955501 822772497 964002389 223180025 651211939 860009191 812445943 46174945 214714959 825885947 310962627 866625431 158509593 302411837 148784067 430704847 718943599 268520293 156316425 192965765 347210567 941378549 416077231 844444667 508153119 853165875 603985111 336202945 800975869 673655087 589534123 140230057 777559409 180293061 798491231 297336783 659948687 366838675 378151211 975818137 968154871 64517887 358261077 441277873 939191247 458255677 993211937 78126095 750126787 698633539 51211239 206467305 285562637 851557585 307437311 327019977 933307495 264271729 12500683 907161209 930783771 29940595 503980215 20360717 475748853 138027245 393026355 902453219 709200717 456225985 124661433 498245277 907356671 963270551 274602189 508185897 313195893 280598753 207812345 919303609 877696409 659742677 58497999 996888779 171152355 98403955 509475305 768904227 954224209 575767173 712274153 577751503 57655913 817962137 775486585 176552223 433394235 17503497 833667405 189275571 960658267 686314741 70594079 519016557 619270633 555710277 244487343 480755835 806691723 908012969 229425353 340043345 168526957 473634203 636450623 848724649 78340169 954837337 141997291 788693899 863957851 611887851 356713903 35826495 844603751 828604707 506541941 726244701 718771905 191190681 359726897 917247423 9403707 614534829 415539165 387550091 695462707 195085447 301349241 19556395 245525137 883456023 696941073 603437653 658341827 590468885 140502711 442808579 396030655 842255875 648315013 183488637 137528325 722438951 948380573 713042765 22563223 475420051 199131179 642629959 907668487 163422751 695949661 673201799 848545129 37106795 456483443 79110771 334332509 765278173 181397419 668122807 33650441 524690089 159100753 827130949 294840857 348863685 700440759 604956251 447011783 624886515 466142519 457949053 304117967 94669241 476193075 424296567 350643575 494038631 927447831 542391133 435418253 548007449 868834899 268684429 802485865 589171883 474459235 907368873 429949929 338859977 442923975 132035231 435459441 586036191 929028363 793653921 939305457 387935017 169012673 868713775 305239007 411491493 213999491 814984969 972024377 517387037 688552691 29135165 115096455 831726625 113478845 901583393 574675669 119024903 550866065 564530767 725654201 986421745 468086825 777804203 996529235 31317703 828743243 617362019 88307273 991543867 914661309 188898795 858722249 369104065 617407059 570801151 753824647 968097695 811337191 595322273 260666053 754324439 496452955 801832481 419177031 422113085 481571227 932864529 605458269 529001321 67865239 101398093 715852507 760795835 80274505 998793467 435009567 406937435 347220919 739723909 682856977 271687227 42128359 100916897 808728609 707827215 365202157 274042699 182775105 659521115 284115171 579727815 103933169 955427429 836981995 763188129 199745081 59683903 52162609 200277933 606137509 849338817 749248229 894216457 739002699 205637515 785240899 556989973 259140555 244426757 733242507 320117123 325862219 368837213 484195337 629295427 625152377 906424209 336027151 284039061 227293067 343576923 385370871 664797689 916289341 821112135 558800421 380215357 110073307 282075557 485325055 277450101 151038765 977839757 468961275 110035199 55946893 730564829 62248851 856108413 520843737 962999617 909181767 117120989 771282549 385494311 727804581 414081107 396448337 633496519 55610427 872027481 584174309 490347809 780735653 108829879 901260331 254914303 33471877 978393205 814846381 933919729 78395527 503078891 942651255 970028621 675161691 825084595 447403295 795463477 30969789 114934195 106031813 436200339 698040941 30661141 780053519 907392787 320152631 302396495 905494827 128170801 739855343 941296923 482291151 147809323 809709675 176599169 71248953 867282955 582673807 890583755 543356975 42224543 995040583 687332749 658971135 55924609 199627395 662571171 808585603 96651539 319706175 393543987 392291603 609020793 212116603 503717543 815494299 62382757 624693059 382945207 582997125 728746575 211548075 288324955 146163401 431999737 761556169 614187993 424356327 726758635 737589441 369727933 244686817 856561971 86030271 238240475 204884811 772180651 259086067 177950545 225303093 370092275 168060825 952151169 81298241 171906419 125948403 499791383 861344917 644351579 271627849 787308299 638634719 519186339 67999215 171551381 909716053 831295501 204535359 415503675 224519093 284995615 326581149 527767499 170141509 677134635 47774833 949430869 300077013 437123145 353228333 767857465 128388537 299160921 43874893 119432731 679641553 258326529 786586961 440320741 745385089 381213877 858795973 326434507 882797243 274741163 510035261 523426125 27538161 625165797 532046159 54862635 678774309 48374313 395932319 738859381 689781465 753370633 91580889 173836925 272146975 146436315 117181103 895710431 740699789 304919745 850451159 417278593 609638207 857570725 926734105 833572237 849904861 79033909 244271163 483856249 330174613 110566119 146001937 705077249 869093661 582563073 944172151 154978857 794393523 250851719 346609739 397190461 393376031 612433993 653846139 33551313 161261227 675104993 68890359 209749697 500907825 526187441 908368315 772906547 960405519 783453917 823212489 303322259 4169771 450711383 720580649 347766163 290853105 176061401 994599665 141361969 290676059 327337953 263183415 440262833 862102755 58268857 944496417 30981535 47639699 98524783 63190229 52685009 185432055 502337757 842421131 90103649 378830887 880061603 885193593 582121395 968687807 815978025 680493537 316277365 814952169 828950175 722506257 428263833 654218319 923548415 875808855 685670239 328288297 76680967 323022607 873002311 918214197 700355647 648186269 630035745 727312313 680301305 764381545 27685373 984988293 237166925 163411173 924720443 892169709 430077979 788460173 189902719 809094097 170480649 450516963 221918643 229384085 195014283 801233007 338147853 557935403 634792153 425775815 883186951 301124615 237971695 855334785 558459497 828943909 284286619 419146819 29989949 562400015 990623847 222576821 818975703 956186321 880480433 544888713 387074259 880108803 528073367 72236411 896424471 267731395 490440959 126727757 448114381 535876277 203233181 446629319 579149163 263911945 396216295 637481149 947605677 73296757 896823325 891891211 628880023 133370167 86353993 677725073 788859253 479390997 34560827 306028855 542735069 679449951 391327113 381105141 484913319 19608041 332087959 103433409 896797179 348673299 55418761 749790111 432510533 744976579 599622227 398271127 834633271 327721831 457606825 983192253 873760465 758413555 794758417 656644397 460126803 157877225 746350029 655930375 722806091 767389261 288941043 63796597 23000463 948708013 149018711 732843689 673159993 371820321 97971355 495557855 385616301 369709127 453285927 635347033 368914073 62731843 943001901 747007327 803148017 172069317 417322401 138013511 573120495 970144003 214381127 90781543 996767771 708483259 551440295 811707429 562764349 600297269 498169103 576645097 639658605 230647613 770719641 653573671 545933061 434090793 658120997 365911639 798315947 539573721 869505883 110374139 375792201 490579379 856686763 788604065 494138389 328515491 371002701 182791895 197304459 307763747 849486403 834270523 845192815 404317231 425337939 662312557 667952333 673477709 347761935 925787927 645868025 867895691 111031247 442951403 339312271 689387137 281934515 432235941 954881141 331207245 28725153 857543687 715098583 516854675 881272141 623091931 810209831 31143299 264597549 564775921 94944035 654919891 960479619 738862887 412807119 613080771 206151765 768320349 163977591 724698133 376768629 681036157 533682865 493083163 961202553 712652153 131954773 987911081 475122629 114142541 102018701 371408929 453926781 74581499 700450239 651292771 91199381 289470093 420727205 695392739 456153283 791039763 732045367 128582549 573210759 784249771 357873853 840877303 314986027 726668149 27251391 601059087 792899519 361833883 118266133 893376363 558195993 240968785 18247385 895571235 989904603 394423759 15930991 493522389 719558511 26851673 904790661 771860645 932479489 974301751 158183695 634355523 357164941 862472383 703079497 974656741 64660433 716707143 330692533 149154635 473092695 916666677 682247971 91475383 995081581 277345777 939664805 487805947 903958829 248638959 519805591 96682861 765026423 230245799 384024223 494534633 117738995 476960925 600374441 380860631 76367121 877058139 179235559 737680421 705152267 383292273 647443927 947200327 821815775 114994813 42615099 395678271 590391637 550284063 875036451 281040017 77050879 841649409 933057763 197823565 755969589 232355543 358836243 892183815 315895575 11305817 559994267 831922911 103305613 438300747 253866151 83430265 406827335 500054391 801262505 766639365 954614717 647348653 231314273 207048507 188332849 253172683 226257359 920834133 973141417 499496881 711618881 925238301 593041911 979656521 340012365 406111455 474066609 372261255 327903691 461629041 132866363 573010275 924446693 728441653 330922171 163572961 688814339 840633101 807932191 980211211 103593945 823037543 658061347 446024689 657053031 896851261 811875911 223739313 408041453 477065227 352277457 136578923 501336059 424372439 486508499 539946825 441997155 38021681 381895971 643857023 873147457 810635821 723686755 605542981 457988089 548394859 207693309 629859039 960689723 170447887 806652189 691414679 863485431 254415051 789801151 815888575 42188905 912281041 31858593 479873711 104628761 106206689 900937805 892092109 55527889 595790659 130311187 469255043 168252325 778933443 53931529 435491903 306949105 376666297 360358929 236777089 103971419 444155905 542182355 975487687 746542799 309593859 22490049 527188893 808769663 324801709 765109263 875835539 498559209 157383029 366601153 150493511 676802769 980318809 983516063 313321049 39533379 932734943 124657975 507953267 560829589 726313239 808590307 202004297 250444639 342236309 782048707 498582675 201769355 600772473 185629375 614202645 572867903 265664103 20267399 850743705 473379829 517046417 665488531 614790129 182564197 903592105 710039333 920259575 145075349 846981105 631454277 123594893 122495187 400671021 274026945 113253533 744326321 37338539 1277745 410936859 571693323 671851585 382137593 783209215 528057861 723705425 702057279 375556687 844284429 787031229 600090355 29819151 139351255 284912373 655850701 210328919 264968285 156900335 61128271 366609727 235489255 420896041 363711167 761315305 290195711 280045481 738820141 665058945 447277689 850318079 520515701 475462965 273519473 838294591 240744501 578953285 162130509 373811977 450568659 17094383 681536439 256199809 869169283 664243839 2994085 666943065 120287035 923949383 389094483 236794307 657286587 619842975 285602629 159682689 633316237 8124655 571858503 863199703 401263361 7452315 592838765 22693779 811627565 233296665 590462229 933988621 931838451 643005153 114104033 912464417 772196605 883265399 620561597 920921655 732741815 202119781 755031265 624592189 252206173 501033021 712928197 601689769 306672621 587448729 525625647 564214907 815656753 457405979 946818859 432694325 866429623 657559919 232367375 953044969 250236633 996223557 924819059 41446187 345765047 191483735 773254721 839545883 803728697 189536361 728888737 244928095 4169231 8599877 450297607 130307107 385036979 275222205 124177715 301339425 832277859 736820651 89846309 105045395 896391207 153614321 469340205 574383939 347545555 114718587 175270107 778244735 356983545 280295225 75262993 845076761 346616063 982792229 165322477 137471349 547066123 531561027 446299359 860647285 797330701 251432861 24613019 783169417 825500349 170368325 746670365 218358183 760041629 270496853 525837993 474542157 840562931 132191983 983365067 350673795 499196113 310698815 380852311 205739989 901664527 817083509 792059497 117352281 624881997 351884747 329431911 228356783 638745841 858642821 721426171 779231229 358321711 26980335 886083611 217552879 306054397 32979541 451886597 252158143 365816861 584935961 193975097 620879145 697491477 305046423 711623813 164365171 510851637 257521979 438420989 939666027 969093017 91955321 575417343 974776425 684433949 209268939 347325485 920025161 481677165 370994865 361008757 595444853 873938933 119232183 172539913 620235223 902519281 175014511 335230055 272150759 665096289 838097779 798616149 99588771 433291273 713029733 787503835 925886867 450441343 168958449 782278225 165438659 829141783 956424647 892055377 292634825 604797939 833913251 49896895 950097605 445817595 736336453 257757641 513923933 965615841 174912633 970161891 375277501 642290713 96194577 691854023 298669215 765489641 209923815 688203389 50313023 484105043 782318045 694415183 342269027 737819691 367779807 648166863 774911321 936327177 113975005 353492703 460520697 468328269 859311827 965083805 814507681 117401119 377017537 58409851 686618933 268949361 551099315 694434089 635362853 239082999 126213563 857807781 879173737 390032181 867045619 835675185 527267707 448804465 924578941 477972573 686359653 859241405 96607621 829996797 489103537 599781105 545629755 289341225 638304123 323439277 530684123 875545417 112409693 740973401 793294501 832671753 379758207 285248549 323397861 715823451 774756239 911137801 447774189 557651837 136619201 189610693 303718425 186767347 574522327 142667237 873803975 85944969 115924501 999608755 787029349 896612949 975791435 979822669 334424675 440215217 978962637 641904783 568410171 676176961 301503097 227260709 332822643 591531507 68157881 101766525 259203217 162850297 119424119 7513295 668269865 577785555 466234923 973698331 269140181 103830593 698056917 88233003 487433529 149283923 343447543 906689679 628200443 886144089 941222819 991138973 941235153 399356405 67432303 559600503 86580085 192109573 534346615 417461255 535020199 643777977 255384419 646402041 119335221 296481669 513586017 464429257 444806125 460863013 766774055 25793205 94560171 421558173 841625843 291469767 753577041 112965175 524077195 595667661 147496907 285662091 997310525 638006881 248281865 72334709 454087649 996040677 334686983 596920599 965340629 669885565 829145543 358334429 666593277 672153627 549959505 333403261 235728587 162196087 342430905 149881843 673001009 731280915 882694937 971256451 326119601 702503735 750918805 37217977 905225805 71767281 868608339 115395177 885014935 896385563 265224331 624254897 279487141 865881685 387218289 208657907 94748179 204700935 737068621 106812125 818294281 775599713 585180517 510650721 56562997 641882203 471206413 805228735 328673741 44390839 605878689 417539447 358123663 218969339 395615871 127268951 846183361 913061753 442961173 895449461 610010163 941571657 774651603 355547947 230856249 834820427 565661493 989390621 217269939 968969765 44678331 268090681 332045317 102067531 237350899 978522291 87874335 483331315 254948459 205634309 230054009 887100447 892326335 771436279 948192013 449237909 472619155 675276691 975423845 806316775 766078863 332894507 715155597 649465195 985723493 90256481 827295517 834484037 508922065 71873299 44463153 122099289 703042451 560736115 373437553 241483611 120519543 897110769 36298507 539461823 586817617 356110665 38053557 364807115 647941111 588949379 279588013 96594307 481987407 610276585 172829625 708569527 79766335 87527439 768987945 171912705 10067903 712288723 194269137 428463811 402522309 546532439 754414353 903892513 498484051 26492935 38091727 964556045 81679479 615764635 354670455 155503169 138904127 98901515 801683715 264648507 249630407 190700957 706123757 479331653 469250867 480166621 64760639 780987501 449446571 488197279 856338565 210789517 596762465 311457281 600097495 564313669 481060241 340956517 645171665 596340733 685268603 844182905 846995611 889666789 212305773 242062897 293956323 562963447 667562165 622003655 269757919 401954545 708846257 624269763 391148365 337043803 413458111 389742061 787245685 65066887 85378125 610992989 285858595 502964621 177965515 534725997 739927213 242082893 747926965 225915585 932245747 600782447 496899469 831716423 153588569 678208353 611270875 811000371 666511825 699963489 243428917 620887809 145354701 568684393 964317233 512048757 625961807 560715335 276572789 45946009 640719835 372189573 150491305 752433861 263518079 723481473 1025407 507190421 693452243 465497433 816415667 254659819 482495219 163474419 116567815 810761971 162756231 440266499 85733187 873276195 98084541 514826239 627286845 343615031 246889805 490013991 254696907 933128755 87976561 387991173 771459795 103844195 684509681 99639529 441694781 409128795 347959325 700275433 878525179 734095353 745478857 789637609 369116681 738813023 933089365 12559117 988377961 258500603 293613223 642521161 533225763 815109503 249339435 374220113 437705293 626028009 263022811 102385323 354056189 702309757 829519155 624672409 201286745 642141897 29707065 944190513 906025353 2251165 744056699 408620103 128472255 444818457 508452881 744562301 129806647 846452129 984314775 89660987 619978547 214028255 227736631 811290035 14333693 236532679 388435611 138677465 838439397 506601113 593154811 189519473 901117257 410765525 576043029 398907139 438392711 838771019 113967151 5558237 744070413 374830093 950189593 564896793 371657549 472912247 200404521 480628119 635267519 751844655 617954107 719548927 881737447 636649247 377390005 23451585 633451853 250118781 513135753 873236757 367421575 488815301 371695147 672516349 46049323 186535609 915000217 832802879 971910367 817308521 346320729 658769005 715235147 666855719 278985849 890400991 646576419 758868625 585481105 591903157 632304159 589366665 871573437 432110805 540012801 274001979 589081511 16541427 490607255 590801949 603695737 417379461 801017009 858647277 31048427 123238093 741425959 843643819 33358395 116304593 387078367 712427941 688370993 479868003 862112961 944237935 55365401 778301721 245064385 362715623 946380489 173676887 732071639 376056623 976447905 861768513 586454021 722991541 51979399 410315211 136201049 814301483 663633641 978180523 207186147 47247761 953205179 485562465 267278523 594388519 647037567 149568311 766576647 905294973 53846585 928142909 743450095 863029091 500034681 673165129 4074663 124675577 141488211 44776189 828181095 133352099 581078373 558289347 491987571 373230603 294931161 658951367 818417171 285199911 173576793 694220037 645821341 876128049 584386845 549602363 901105513 416606897 178618597 397806067 953818329 450882673 415580915 489977979 760501079 296257413 864265497 210356717 775550293 238457673 819557549 124762409 269546319 410741347 89187211 496336599 114889415 540274621 31614235 140059239 448333127 977352077 802418505 562245907 592810849 290739791 125800335 412636889 574593453 506530247 347242473 281487745 547232209 131372545 466274781 901923229 650315637 250321489 514346875 405419909 347300173 383471701 483759191 805990489 68494353 848578799 264061583 78200577 284383109 710674253 837867981 948100909 139902323 311332833 549628475 703724629 412304555 267011433 258418577 821663419 464060427 195931625 874763279 841040997 935483763 844305839 617909113 676262437 509595341 733183051 437265437 182455441 381063437 545154461 699448785 370857229 583093547 159116487 185722613 101616319 51612971 852067127 187876719 143067541 205190935 745738145 897488301 593115467 8848897 123699455 804496293 586126945 145846017 297414553 206427605 710075165 778025533 907269111 428411459 362358929 51759071 497804785 133237631 735569299 795015957 979364769 487828893 356060613 128417053 392845933 526543677 663078545 469061689 449122303 692197507 434560035 580768435 953282893 494247455 92986999 500610013 509377939 20309577 429953613 336497937 677772629 366770619 7264809 213274801 323415903 963819711 751649121 166507303 400861637 143365665 65051913 82919 292144867 120638521 447078147 375335017 285293151 127592931 344692471 194349361 995626531 701902215 659423575 65191113 330761575 884242963 462370903 601261251 343000995 971123197 784219387 130389687 564114333 52084291 998924299 86992203 927371361 14953323 639431957 880413993 628546627 851791493 419279219 285457919 204045281 678621221 172038469 401969549 756569373 502322539 249156211 700804753 548948005 806927611 136215981 176546263 229373035 33161735 900472685 913266991 284147631 120403777 899505903 957165687 350431473 824076265 95445313 421669007 911963519 498740935 972622895 255140963 292390895 102843687 252120401 862108641 190582043 962819041 190314763 795126025 587778345 936568401 995579267 76196569 311613571 52127585 683687849 438137437 171220189 976819833 157897781 178102693 942057015 356211861 506901673 370129615 610262995 472585523 169196107 255928571 242600763 243737941 908016941 147072341 545728327 452420749 423479589 808991757 934137617 432979951 121963735 178978141 908516607 971151131 474292391 858503305 856160189 54796597 794143689 376733915 570153277 795654127 409087283 862999717 153953723 201363067 284071077 906048065 104220863 270731419 521720233 410387217 905605139 693952915 469524111 716551807 372322509 345833777 586969965 838160639 497113157 781088973 27351333 199007499 636172067 268666947 593156193 242584611 677473363 558484731 201805453 957111763 200441351 206261987 432390373 578984107 736703165 118218097 462028647 459573577 182518329 276139171 613826525 250853199 149633161 254173697 880930517 208605283 999304957 481894293 61730473 408799035 583684405 497986811 898828921 628572815 781429779 500128845 172188973 576413731 106101957 383589681 847065717 782148033 214089151 874543065 563840459 996346427 265580475 499810807 943520109 846574699 563537601 786159053 611559267 622893619 446573337 50146079 768766593 910520191 65741403 715371579 438245721 443239743 101043809 827727609 898112337 793041005 208144977 660986807 524687 506258701 632525717 20335705 824790531 727431977 902082275 474543951 196914791 505814483 992857399 824895119 470492471 46891557 895139027 599927959 685134527 74187843 582336583 978313583 97053199 621918803 798461285 374653345 651120127 250853259 672440907 603557705 89317423 467248421 558022233 595017985 849419781 253881697 389316417 257903855 498315701 299252875 520671731 926284741 65922869 942103541 108051885 458040759 379724103 166568185 813401331 264480641 377166449 379379705 888001169 154459501 920053251 385153889 750357659 695123529 135668505 144650401 349054831 862735977 24027023 430412083 732090543 134377643 351467281 173910939 45139017 628555127 307044363 369514595 364155759 742039485 647237305 984766749 268425121 714301935 312027675 613443427 855869343 93677325 959730421 803369433 70280823 463003037 186237661 352509733 511924351 673417903 358070055 754148093 161311313 971722969 496302069 831783195 255573969 970289975 361291567 287111743 657814317 707148401 680373127 997128501 399244761 183709619 849735027 603347407 146666897 842194871 348706867 347706343 576646487 837318073 293107919 826236001 411656315 454870655 861938457 828134435 374240655 522777431 754700457 842929443 681012079 842098969 249490911 415058779 295961665 583991075 845925603 70079947 7624303 884875865 608180903 48448895 778034607 860388907 649236959 795992201 732434429 974774671 630381071 686585603 242384029 738347013 443171965 573460497 802688283 268581007 484030267 585357529 619279947 547504831 701590049 471766417 995654987 956337067 917134799 597486707 421993597 299414255 46322861 558246591 601005197 818524083 311621099 390454723 142759281 634452387 57347201 696840653 459696487 824289785 370812463 976133433 147443695 162802801 630510209 305514345 851770583 967420497 935895489 707664841 160918835 328070505 902985229 914708681 206411361 461978893 672537665 400816357 140249859 690475803 235179785 925576093 282250759 634475773 512886227 763356797 399973793 631312029 154794967 943736855 168734795 835103603 949060885 297386245 647649741 397587839 697179991 185845483 785775663 620196419 868438317 156413297 78379721 345171921 791960301 262397769 73721141 927160255 98256313 661183789 702338137 706062889 821208187 907258083 9134431 186938551 910180575 969879601 473648829 383501719 173865569 344540139 793296685 353804413 483119423 904939755 377810103 447350187 44668291 578546965 391989157 589323493 695083003 352370767 65320331 775862395 616480065 180262289 467955781 336258113 695852215 751841743 514953465 858286231 676691329 9391377 375121683 223670113 683706257 820171101 699414341 459606289 937907873 787456967 662133901 366036377 268869933 184394089 724772655 47385977 633341827 400252519 607218615 729068729 904333999 312277225 592374777 565065189 13855627 899921953 11113491 866504469 968740279 600237899 663529831 44969189 468939931 131745959 672427937 664407933 831705191 111089281 769573817 721051019 855161619 134535213 727000807 55586629 596852577 162344193 433923505 895574889 198804951 253886305 140040933 727864893 315983815 11351481 718106771 945078927 323990601 896929657 949597979 119854777 136798013 423682589 85191201 169054099 41187913 918152231 785132431 464095625 497813985 960976415 704344729 710558597 319100987 563149721 484253887 921155585 170133081 521951791 642939073 677332983 281475841 654028933 840877999 12207089 261118405 310744387 982190555 844854523 733570555 783646747 425899489 32156589 660293063 144442057 670287271 871600419 142950669 878819341 693314903 972653061 774410881 408118965 519362151 236776321 441052313 250388623 420995731 94084685 591459989 63846775 260213471 529869735 472183167 28999761 183538839 922034773 228189477 17546757 453472847 779514791 642648865 366924421 550556387 166508145 818037717 85354957 986115193 899906579 388804965 678346973 326118269 99814257 471936707 715395779 175830945 254138877 951868585 223133069 78267107 526541993 700678805 751825241 774439559 912259831 362176465 874807621 964907547 294053867 165649515 773078655 744896111 872428819 104422461 990208311 985372835 458508167 348808167 895294377 459795737 133081827 161703889 893167383 814600831 733024335 692396331 461031113 678295751 117883257 492581103 122896659 388737073 320413079 261959387 982718545 276310589 193217127 721558135 400507361 396620987 753723185 756235285 774247217 442387131 270514111 504241613 40449203 971965853 531589997 418476159 906134239 679879173 486763027 842004179 295657271 204980957 461198621 118086201 60501321 594526811 982430839 778170857 146283427 806172411 452081557 101139939 352806115 237975167 950545529 404991987 149455527 775517943 924662439 759654051 231569565 48364981 297978413 310922321 412837237 589621333 664667811 232189467 857253867 889870781 189970981 357068007 710995905 542783255 876015195 785165929 177862337 823677659 239284083 576683543 609757115 885374401 514397987 762828337 659211659 242165197 9029545 21541057 605502997 263780177 486542541 528226455 180021569 900260827 123793627 632239177 535344641 371650377 962514857 13553979 10257745 619449025 231560087 413302929 525447987 505630127 643361931 60849215 900855729 265914055 132667121 823911931 789795803 902166787 361007299 779413573 123695823 875242665 147825277 72697701 724759723 912207429 893975075 646046319 634561949 376122797 722630729 757129783 513772759 910933243 77263105 465296479 388099473 360872851 984762601 596534351 208471565 646168867 183681065 959595577 107047065 330249375 647539055 352113681 937777795 371842369 997173491 615602843 953860905 553969041 490289519 177779295 101595883 566888023 207218987 98710187 95469619 851412395 813468407 133303449 347327091 349746151 878337833 166311945 956078887 976028849 605436573 251219619 993957585 575633907 236596665 850053847 171627001 966037219 556388207 384633053 979430965 500444925 623009331 778652087 100525853 348024069 403290369 545821227 419066193 245299719 899673699 402108363 982265727 164044375 900093799 409001967 522893657 314917521 770804385 95591095 481026711 84515483 585194799 532618763 432463869 288114337 218910137 418428057 534507091 527532565 567567727 815389407 781003119 211809973 817762051 502580759 695414055 638956421 252799925 881285453 927335009 380743121 737674829 427479121 957056517 414176815 820733975 647717049 320992263 165408119 700052969 48581353 235071583 482740691 409087779 384537349 600011793 142271401 179092139 18695169 276453413 397444275 880684015 341635219 579351217 809729257 141964259 349808187 180317133 271427475 844937737 272044099 462059673 810352697 599150437 226462907 540449861 776051635 417655175 722776953 259422461 879265563 287263619 748923679 32568575 538918613 771857143 544182807 62510989 755339663 126039309 334359437 766635505 2126653 365058415 625952893 184846971 255388699 688370517 933644965 313629065 131708845 842913405 217717647 293717115 297928125 443794991 962835849 105285819 78751587 885836855 101797549 660426429 271078393 573768683 378405339 484636921 922816549 812615469 327987643 663327475 246054099 45056349 578039741 268886067 3978293 477866607 956569883 73703247 518883529 787774935 489803219 679449311 250724435 247233939 197971373 955842179 292987103 709609769 605896507 550680043 988942273 35518121 629358805 902415299 158215829 947409831 455487899 945710283 252036161 941235265 16405109 498871487 719823857 413394465 114947347 20403567 567030807 858690929 61667565 252229547 236595571 769943017 911311941 697129547 730235909 31679433 199522593 943723829 185123867 985715923 616940115 476861523 350269771 47924569 904403057 519827091 238744431 487998257 326096095 388135157 792521643 916022455 849727683 976413045 578824045 757966291 812216331 655130147 897922919 788505331 997767285 927042575 82909337 717630989 726192763 726336595 456907587 173393823 135581289 314572561 797601781 47918511 468801359 189715571 497770113 999024331 950206979 281896365 818363651 2125581 814074919 669295607 230483169 605953293 263139621 247049621 18332613 781019895 401171753 124560591 804062885 387100021 35454511 228616443 237444283 137139391 486088439 978070385 150234255 130966933 463235589 563960467 127443179 150692923 763482287 444467915 976318947 985269119 602942985 244310413 736524245 877218231 359152629 975058001 937851489 260267461 604137499 455441307 67462009 418297355 516010733 850872821 573252685 719240569 646293663 64375025 67420251 955466371 902719541 170497577 793070183 553950765 700533879 417020991 538297725 433650423 781821171 511717853 963494899 807018481 262104323 258245303 224143969 340519349 219055815 268890245 322972849 163138395 184700967 193866763 895351049 363611023 879214035 908059155 151911139 412433787 949248069 769939567 794959863 537661913 643565753 998890745 921803597 569021923 715145277 735015059 916622893 432557667 861442717 278735399 350780207 866209957 148286323 80148905 611580205 430634881 267935005 562349841 281957963 378721875 429866951 440421731 451219703 26698755 37728351 744790441 344385253 324669951 879589277 402412533 767263247 63920445 624090883 702858337 197590973 870324539 73622999 875377167 438536569 36572929 96170027 507414057 195662871 855808537 954195413 3406563 534033587 834399647 366298489 896898165 925416371 538381099 241437051 932621859 690995137 489841129 689083151 694272311 140916435 910016899 402108203 643796995 126035749 850321203 868814223 814681825 154798651 376534197 626538437 480789811 834451425 310802253 872755741 296544357 731421995 490545359 551659693 245634789 429525367 312790667 711095895 243487027 917100903 846057573 904305093 766063821 206203367 813404607 747185251 538328383 648479023 128608905 760477549 790894363 347910071 63683641 954165985 557839611 903017285 51840717 459729545 786777217 15222245 980205515 932157683 286426967 300710637 36698947 492894841 132004913 295071735 295546571 216815163 624190921 709236199 14351997 871393057 149742047 92982251 3621893 219206365 988017727 157536885 49349519 352700131 620447163 122981957 620191951 581235575 54498605 45096795 490709511 859374239 71242359 168961543 383820027 715237679 963252611 764243419 100073465 918472123 751896901 966515379 645731033 162927011 991592631 823923635 420525559 829646867 932407257 500520009 228644157 480485625 986508471 93082921 813240085 79000079 40386659 574657871 124421495 818556881 693912055 619632895 119690977 422019725 333849493 554118341 629941593 504490317 215653735 685663861 167830383 267692271 231713953 180211243 957878585 825379089 790606973 915513165 841623379 934201625 378084155 907121029 474784739 721150779 578672423 951502795 644022683 126892909 413242771 399400279 295520429 252740721 60625881 68091055 93718491 151323341 452100187 139801247 888110953 209933267 484203397 829722939 306975783 276044441 882942151 256010977 558779495 315960065 448001947 884189491 323040013 37408949 304340103 91647519 553463419 393977377 56952337 671955671 840747425 520921473 836490189 935944921 466044661 422292437 172096341 180305643 536194423 837442017 683859275 616115733 615710121 669616955 491810907 985282735 145496221 666266423 633745973 770858835 997545193 382499831 263834771 608731621 389985705 358943077 425761849 618693267 948482435 547418157 619186673 562074833 782390185 424470731 459045773 45611097 489620175 450612349 768760041 587386419 174965809 552675403 733939939 834417065 488972443 276733959 422459495 627413837 688337749 796341067 86649707 76969985 647490873 438378609 743079395 978758627 678943139 786243495 864013013 180039525 341490045 773905885 854014285 759726647 594707505 581937095 588658009 911271511 818549431 965193961 309404949 858735367 184395405 622915209 603430307 341304791 640742075 429871801 161083439 636732315 932778189 570476881 432500969 97168747 254327771 923422961 123424267 676578223 958101377 17063937 188811995 650449683 668364517 254559665 318246047 280453513 498642361 601229561 619427243 675415887 952319281 314533785 231114329 867536361 270566667 811751709 696329739 594704675 971423373 609351631 322562605 742464019 912477061 75054029 265905455 814715411 447667531 851046901 438427021 981361607 848303549 45809389 400432327 536691741 357241919 687286825 365170281 527434567 207818947 533982431 90106119 753740229 623661243 575933199 186884407 793143127 620921383 161142915 113317533 647606285 794680463 189344715 290642149 4672825 692787199 662561597 228943039 558275703 891405 881712123 287558887 930931371 94765275 78901487 80021789 726934275 74250763 10914757 79537453 369054707 273935819 488556025 370260457 599739959 669175253 992328649 344732205 821319123 393504869 578673983 594470359 339156753 330381121 562412841 499098837 401930121 33978041 705035299 968195095 120846103 442957985 619671945 955711641 755034845 686924633 161820805 511033435 347708999 349629637 611690759 605421929 559374347 266114901 430169801 30106327 808303909 903853313 590229065 493645755 202977753 834422339 275073487 254109753 833442483 850740005 580723309 338105981 58358665 76785203 749410043 867951543 33560179 945596291 235427609 376048931 237202137 39782327 81534511 800305921 551583335 465054449 50426477 913387935 75133455 615850977 85589451 153994827 233133329 602726075 65775371 723518561 345173997 986117185 2897587 193019973 282138481 451660473 143994389 687571549 768924595 689309933 471915081 506794529 806356237 957089079 793485615 338116869 598136099 895605877 84804205 970255761 958919651 49629965 957461111 535404107 686851713 876813803 321144195 903056071 626930807 464877447 423766163 412720801 392614541 387849441 824545901 374000759 444630477 389910141 218594467 212480247 786289801 357426025 889778827 541435857 702227299 880357947 393333321 430494401 758154297 833994773 800814529 48944265 861638461 227539353 789931943 685722609 26472415 729465847 727726705 978427085 10103771 484068325 944170335 17374969 615123001 379933857 39409019 435042643 698352195 843299569 704772755 276170953 228612237 962832933 250233923 21708107 537697269 384397585 849134823 81085141 959369373 332365589 261092521 671751273 274225905 372816661 236219001 812911887 136487081 440934531 199767825 760892635 442620861 464409169 220055023 516306921 899659123 817156097 612346973 451287895 849939799 499142295 876986985 915991635 172796989 666550177 829144045 346704655 265151299 583691829 999412617 675737025 529461963 579403253 949553061 294071729 142284163 208794627 633678193 221179429 807826783 728924687 249989095 778013043 560534169 331175247 793598661 903847921 670479033 964183425 671457683 742180613 636974983 514503659 281260195 375750167 484412443 813499997 729630733 259196313 923942351 919381547 287327409 962172423 413482823 752804661 953198391 149715171 279059827 500499681 454426383 633567669 12382337 182426907 558251377 292107025 847391987 34569053 994836061 33687955 199159947 875117985 887466399 842535641 56771411 803049329 214672323 802971281 571403939 537603803 154030369 379655533 634912279 579152753 699458269 607911973 506472081 701949783 682551259 175279227 944895805 875701807 209342415 741861437 306285713 745690665 394761263 106029625 713381193 121745147 298386235 209319245 912850281 650771171 139312893 477507415 359523645 177288617 652843077 829549125 553547353 456369559 379377579 33741577 480083099 598324873 837488269 462612123 256676645 99115737 301639701 247834365 215800677 947575917 78808117 81320509 274480653 169058743 61353123 112878441 685399579 841530027 251688415 92041631 528325077 428352453 454236723 495382271 167098307 794203919 510390445 691120051 4112315 655927575 990198311 114162413 185641435 848585199 236036673 557955049 268416903 239639611 330938467 830899433 720794217 705485341 463883455 679115829 475736949 172365893 155027273 881851171 165623787 883378409 590370501 808150793 887793227 310018761 624275387 793458253 694253925 507489319 966428537 795664727 591758667 434706901 465016089 657762713 304128601 150240295 594012795 758076047 123449909 102754301 373827399 300730043 151182025 206489533 135566829 959188135 484068171 694815829 665444005 658068451 961119031 135292473 288227441 178405389 43863887 50064491 955317271 898898885 801154723 393633135 507767593 632885685 732708741 419251285 156973311 881229711 585888403 650814895 514564025 310224143 645185967 744698529 690294079 821252343 797830917 567225293 498534463 812800017 14853133 20103267 121857335 175615021 34607231 982586651 941949793 554967849 844069217 884942127 204174281 734944741 801512447 424730983 692828735 475364171 49762029 858666259 192761435 293001549 952149257 386532617 382716539 337295847 50551413 434867877 215965897 723691035 730831263 45278927 290284087 619998963 997267003 807257843 660482939 11075711 263034947 523186699 151601685 979456221 277040381 830587795 998022479 632920877 296067063 692069521 713363257 925186713 267601409 618692755 482481065 151976275 545897531 912199345 518401345 384595865 12360457 93226633 893566059 788555943 965870869 471258943 4542547 622668237 260211285 982557317 809568245 434853211 107001091 777790861 763756815 372710825 26904231 851091991 459938091 258116637 20779787 192531307 761239703 396068895 479888195 837130581 836717933 190443043 254843051 481857323 443959437 745439393 593032169 765108941 602454687 245330717 894294503 179537825 749190419 796246817 463152347 321142165 618250531 495343933 330160961 566518815 793709261 211365391 258763485 647430973 119743961 830013751 709552571 989801077 969215193 110098527 783358767 68542421 528948261 77929019 922847959 957953781 955827421 696376195 456705429 157159411 759444969 706771451 770939543 770824307 99935993 169440619 693447759 682716839 910706565 978709673 400181115 217741889 468539343 576908429 314685983 974993281 209933277 240973049 714350217 320457775 226951809 480443351 138754121 218075287 362638419 770216475 961495871 114624657 311589553 432928445 671288461 893988473 88676039 336414145 312014241 832909879 509897859 670954287 237516591 798021689 946818461 974534173 817391665 724904565 957404821 672586147 615789295 384996711 154400181 835383779 926046705 417418011 571017229 746230535 411969295 287262233 771132531 919850051 794729571 73533051 73592459 36341967 232110419 143603935 484526009 983830767 543909769 732479851 482966063 515479789 696685051 736855755 843254759 505982489 702522853 74528055 597488545 263215569 393493963 18357615 756796897 636804213 414748281 193912245 64165885 357379697 545632259 278605021 195401481 775037235 247136453 738820407 274908903 456638523 354489445 852978085 358481727 741113863 450167501 537704589 391324803 800031009 369379637 305571549 786681575 33080095 220873493 474447115 441407855 382232473 26661683 768336405 607923939 677881649 601924251 497194627 301944017 828515473 50369953 929325407 67326099 860403053 529431779 553519427 63769673 191931261 925968963 155333453 693084123 969678725 472603119 96599075 780481017 803804751 207304537 333103345 423830301 846650797 115820609 371164273 255978627 359313785 904516007 45168093 903185721 879805077 179128025 113980927 884030731 993020395 16718957 986849315 783405971 597492591 827701565 212903201 487813423 900575513 298442095 345387605 788587531 367116781 26606445 714354855 736670485 670642933 416667883 370073477 455535365 157630531 984132073 218932197 527004509 641017329 765905833 959796037 332348771 20361505 311141301 233266347 89549097 208886013 936003813 83263399 699205765 733353913 507918931 432948557 749541403 409209231 992559717 573187389 608591439 630359487 400280519 57855645 240975445 830635925 94671979 783788313 175657763 802541921 221666959 845683179 719250553 455653249 218438069 75564749 815656929 601338197 455279021 439713033 428860331 190649929 581467531 691112043 784264173 392194253 665135783 651634763 302103945 876561755 288897449 915757191 404957481 637010807 955192189 33966723 308659769 2271915 141388885 427218479 454987253 695559049 374003375 131733249 652133979 553470635 141005903 742584055 653911861 110039987 12875587 50825623 680738577 707540045 881602267 865299185 295078473 415359271 179143351 638625945 991163389 301050625 551537081 95034031 213184277 755685273 990247183 415652569 741301571 414857403 45993773 934064963 352468475 78727481 127327949 198855079 337581953 635307501 421067255 23265857 902724571 505864889 837940467 517391575 699349469 42735495 218257753 501384119 271232539 537744203 3341571 936247481 393814517 543885055 559798551 672145465 258291351 388316835 783659775 357515295 407720943 378625603 556393841 409714905 25913271 317817073 355677545 505072733 718473323 867719111 27560745 570546475 525608537 360079079 532805953 209886021 666558091 243168893 431639427 417020733 957096927 514765241 258676237 439042343 389826547 848713173 151508543 836759971 719554093 431127317 449915339 905307863 683688641 699076547 809249697 294266737 955136933 362537265 451366143 875840933 142858139 835285177 949141609 958350901 447656745 644004031 653396651 821924709 467753889 899361705 968673755 859763203 388335129 195103981 484231761 335191143 558690419 152161285 875306933 496810863 508176473 625015665 288138739 688329087 744904247 156707261 278889535 682584455 993375817 78984827 886845971 610002941 645906831 924958021 195682357 658343903 996070605 898917565 223910323 863207861 710949785 553120143 456852701 988294795 414701383 515124075 161434707 715307255 814125561 983420427 355517433 592391193 789779353 388315189 9958393 869128343 738232019 500123311 673234375 969176991 577485859 624618829 550272291 918022629 752854727 197029353 286392077 308016811 546784199 653339493 5352149 65985717 45367541 250186925 804397325 981331283 35262443 197701553 372586641 714814297 308834051 308367979 890227079 574454821 542152811 896935393 348196953 188726433 550134547 868529433 47518397 709098039 792297903 377555495 347415727 119207903 89676227 131342117 503488883 141805847 713708693 92489013 758043797 437810919 201625143 415242115 121790185 207313115 561900673 863245887 618528653 51325961 647778835 656337829 768842467 516866577 989140821 75900149 895758231 964522009 441313655 140679547 499256737 329990095 780886385 281417097 171463481 81180777 567743235 777542521 548137957 436035493 964343225 607237807 650862961 144346825 68075485 655839377 133475569 184453027 574596493 76218261 833012675 349017995 26146727 772322357 241070731 575789663 718202065 530633715 573612593 165638531 564746879 121145943 519074543 704661223 465136615 76238325 510956861 226068483 124392201 129503079 514838755 329901265 190733231 263497295 913616873 495842523 50680937 487663705 488369063 710377005 233787277 970772021 502864823 544340573 11472957 387904159 642556159 53534091 272188259 489409879 876736681 628976477 920015531 347536427 398239019 533516801 315281 43104745 901073215 778941229 965709395 808269677 287928045 973052191 106048251 697972377 335772799 509366685 410561623 477117785 63103881 871260919 856597763 524454557 583827943 821413121 900637275 672500577 864304831 656099353 390421897 31998885 138128765 497311273 209991293 127020407 717011 736029083 774035697 733728229 862063039 255484007 429727587 535900683 844692101 164579085 742350363 641775627 640433585 764502417 165602859 148574225 82395415 412830849 429269099 924412749 985601237 167479795 231741051 540890363 89344077 247260807 588424131 992952669 799736621 925864035 37410931 714447547 127292519 313762357 610431107 35659881 859126073 560691251 618188469 677708737 493088807 299639579 358428047 94578983 500700159 875202867 304486499 645481219 49611473 738336587 433786441 552771783 763068157 236001719 213405985 259339247 701451303 117275479 437269137 662694651 97701433 816873103 800726797 406113399 759179879 592099409 549199563 213402103 482207793 524740367 538137293 565469457 214023769 670683595 999054809 176952939 695501289 707349767 489115521 478833835 819822393 530836439 718808347 658352009 779079907 606526155 694918347 639534777 360463565 614338823 147211893 98745091 644822305 68784941 929845453 11339053 333537621 242934891 721052233 381561613 105151269 543419259 446249513 181255801 100029845 143830937 620968823 395783765 505895409 788231565 210518529 295846285 809656525 268802721 498363747 96788499 85828357 805672369 804635641 615473117 633495743 56564757 4936173 625853427 634319463 860709049 442440751 864896347 555040687 735509767 183997817 146171947 85694613 263742969 517982537 639427705 855436893 627915529 853976297 916953963 329167509 545190209 881138791 520856617 490691597 630260783 100151709 451477221 106148837 665529573 992433451 669715419 679498367 642727687 415449465 929077835 852565129 599997367 279995831 116593027 291454965 80706725 201943775 99822033 223665411 673610503 14158511 651433361 588764467 473352347 584310959 589400103 267050581 966383783 807856945 974255867 58464633 319931131 446606413 590812799 967578623 735394539 697350883 306607919 49181835 600463959 933165467 472577165 511945223 149459621 55148517 267355169 346932905 721188801 249686777 700087425 742832365 286977829 519849687 806841411 79682709 20747467 608170827 529329933 760023473 366103101 406909665 210893959 606176147 239272327 132809201 321829731 242580951 402173505 678360479 11233373 270158179 251894921 50739919 134423351 686593377 292574723 905365301 275930553 736640073 555867359 390042695 756859063 779225811 895751891 628593223 188772621 190578437 887060509 133737273 703201435 412641067 809312899 857225203 740993867 564741849 436252757 655381771 405707279 801122795 230704489 283998687 401169379 437757321 861104155 721558937 24295625 362511129 710308945 621113387 295928521 619718997 29223549 341214539 890433273 479593781 272595601 963130745 915254383 289284351 198778127 635669247 372121937 160527167 335235579 422021355 577665479 984950731 486276067 254176791 463582467 434294461 952491743 502963235 456574529 949911929 976383885 598691447 917335491 493362605 789228049 211211589 213677009 483537485 706546971 543273089 347565505 722931347 653461729 580337903 23125225 463587591 304092193 926855959 865859503 416279153 881448739 576358471 189346939 717194473 889407667 87831449 260527809 592408265 99489063 762188013 111250937 426698679 470519135 715271147 673825959 381094301 195162561 679063811 672698195 97740721 523812665 964315245 171237267 949576559 452448321 920548651 211234045 997298587 547806165 631197187 374929975 463644481 537595003 777079431 444446185 345937589 293406529 325855247 351041989 832648851 280270015 579425467 563183497 706432705 32777235 67236979 121388529 143033195 504463329 18276325 793560013 609008643 971280729 137705871 655733483 18307143 741319985 183245995 343517993 605847867 464993961 37210181 786985831 565148715 670436995 348116013 37112463 67835309 939153425 576355323 923723411 135056027 373619753 449925133 264504689 665792793 989271591 959852175 395096613 611913109 124467441 709605997 58533823 422805441 254769657 638623843 135582799 650709915 35778611 595186159 991244269 80173673 51212061 771767387 168253887 76986803 497254333 364020663 779565805 876600913 955098017 837418969 586578859 370376029 346438113 539067235 722552369 153538363 503264795 52962495 531349443 30156441 605066611 766553881 659657129 429804395 218933657 731439469 743133753 235825133 284466117 647158649 368128971 303285667 391562673 701905095 698452927 194787415 438969511 104119205 767546245 180801313 652943987 383106093 412654473 996871005 896560747 571166527 562137161 753395115 107209327 567697283 744720711 703753981 193409509 602327657 404479501 457371011 187961531 595863339 65827627 132923323 856192615 13535175 311883071 44782953 108649701 347351557 34739689 679527065 516688321 942955127 546113747 447878815 810045699 324967285 123359409 686951191 890722885 178317855 332625467 56422119 334204325 628201309 873863989 754673467 750467783 703646431 195792745 446898823 730073053 72852509 112882599 479162245 898953369 786017113 857467597 135311419 979591483 375282841 124884155 564130549 974185867 539332783 880095067 294389577 97648085 800535091 215437217 394885905 506936817 160988803 802528389 103322993 555547707 922703051 770178571 435202007 326826651 400061689 3654205 552466677 896232829 293912261 634803755 600817611 385283803 834263215 410559219 93263001 377951537 761566465 960192693 986951663 441238149 194953931 863531419 458750367 870990183 523678947 53911257 603496389 762833899 290345197 636691879 147331527 477512881 333569613 989861449 970732879 22011357 156935479 117046025 741177683 586631713 84101535 778530617 550692623 653270959 640734795 571202611 279032069 417421129 196026301 322405977 671190021 669699889 31410507 779616277 110510113 619520569 130990089 319630555 181871543 387794615 183766489 369423907 717470825 565822855 337165411 794483313 41926691 207451921 784952857 58658895 381447707 708947523 192432431 146624845 780558285 81006995 990935721 176495881 629281277 815865855 401579855 413992483 36769719 85813261 710684847 788027207 143671121 445464269 615532067 542406691 270197091 552248019 317166539 614379639 820743127 922366271 825826703 913568513 390389459 346645685 891880991 511726219 900583889 523738215 946160117 933898475 237484169 588436743 717879373 872958457 35368963 557527511 902254133 943696535 469760903 975515035 822137721 137689519 806535085 824687521 670213043 656126261 550549327 377938113 294624065 924984099 684814481 251404375 786118223 353251449 999222241 837295435 163496907 706363459 796076275 44061963 179570797 906148497 195946947 940022413 680651703 280958849 903771027 948102991 620720879 289526835 405019635 7506519 683461671 432879571 186056629 226857269 313455925 604190351 820187637 38124797 678708925 964266151 820386585 734161743 22278947 112429401 590245323 733830481 196173211 538321905 673115649 789697711 447192859 396079809 536155639 448435875 91900259 956946979 676100913 16623847 197083133 443599225 334399867 558378693 596001593 764647981 64872937 412013577 22575405 786173107 190932953 620676107 358641339 497835907 484596205 766962343 923969677 987519009 391469841 918269765 74279439 234613271 943461245 197928405 76101757 911138295 984100265 417041353 706392533 588008027 649853787 780530465 95891937 214289125 441051295 675873635 316983087 449365825 736156875 984451743 398611993 627997215 955033977 672360553 392668607 81350713 72999309 335376609 988761353 249445203 176942133 49926573 666172841 680484151 294999523 536542457 606314771 302390455 649312087 891789439 214782347 701922989 757861521 847621753 954171673 62620411 235842529 152725169 344071819 158022541 93855449 18906997 629321339 354304851 704092501 687137943 304809031 714842439 613096569 151259771 450064667 161849197 874547123 961329923 240763621 825605583 310158775 335705247 702390623 641716607 618625409 525815621 954938117 694791063 958770517 959527283 170804773 302292537 972625855 143119665 929334729 616495505 725053587 533983499 584274639 804779727 663121901 168083735 118260949 99917101 425677619 107352053 571547457 363729137 663092239 545551819 162408007 903480929 494389113 90965317 468181981 296061649 850663593 420825245 447301829 459749787 627519525 127239311 53599621 537167137 785991353 2440545 771739503 274806221 518731897 737512417 700851097 47737107 110196675 865282663 331572197 152489581 698799673 905722831 442883069 879053915 532796361 650797699 458384461 464959337 137711013 632748397 193628945 180667689 679222603 800659717 582560073 573378357 915691393 221899337 295970745 942635569 93593935 495788993 240223735 424367811 771068173 469854841 333635415 788505761 141664597 710336263 692614139 262995845 529958411 619937419 115386829 999847471 641808733 168691115 484547961 398460779 288968383 53534613 451365755 351844107 360956395 633648381 398362385 996720361 829566953 550521637 347290435 930289127 45444099 908863185 820935141 640944881 822546637 531487569 864581259 348781559 381006627 420907383 143737751 876292341 778464553 206009511 7899953 196386539 575086415 20129731 900746313 873111269 390193477 314461245 324994967 316552437 754729737 405590791 588454045 829646133 64694239 886971297 979947169 150888649 656874833 123924243 585559989 810635479 194272825 513508585 971955633 87947157 524128685 737726521 976574261 453620029 179030037 122694819 579908265 859579663 123029021 143266637 977974077 900700759 639837111 902252517 32364009 739655529 402885921 573402527 438175341 853981851 850733535 248645181 25460821 530823505 347323327 382987523 959137771 902443255 605022161 797385153 189731661 982636029 658357109 527805387 636485977 392041181 942860109 42513665 960709813 849301277 569594951 176867527 504148181 396310083 7072919 217676557 107412207 691124963 488997559 746037577 873552643 685886871 685723245 666240379 266366171 800863747 352583111 873270055 831663879 384123853 334738455 945267803 376603101 87216045 96940793 52456621 948782207 195511383 422010193 894160445 952145879 760427923 49707597 51164337 839090065 101245223 27068513 690742327 60836649 3827687 657924681 919988357 815550173 698922157 544563209 50813401 180127927 785678173 283786731 127630841 443395973 646181853 475678599 617510707 24092643 531218723 128313017 49419103 142203181 586235945 210921635 91158235 5456525 40018673 429431473 290385805 112874995 435443587 281707417 129992673 53345049 971737331 926251095 629194703 222248573 838664795 379184431 694188503 860263015 413179871 81390765 904366587 124667881 65778599 394439847 994886349 378765787 594208997 972335925 491396195 993795549 783308499 199755711 365160281 525623127 310590903 181897713 222784471 329903225 287853527 847172285 499051147 536120635 695670407 840992611 390539179 232214111 994118435 278830691 174293493 462894699 540639241 281584779 45031855 875684529 220733863 731820017 586764713 207718985 121079661 246913775 348493879 275399443 736697047 517148457 443833913 708405941 840126565 698633869 374432787 6553507 78835877 164531279 682892983 893061651 322343205 599141355 354199703 933066503 202192257 411307043 927870643 964843333 146911325 922074631 554304915 232865375 306259553 346325481 822033987 651433387 344749375 635914341 496502107 475520845 44018867 391625055 656091127 463860009 134708093 724410631 477405375 365632499 143490667 816933581 865489633 162586657 540738379 996378735 539149587 668766963 979947513 990454511 485424787 860577651 649067353 657861021 78755881 389484911 115752531 122999051 296583967 79641219 415048921 906552855 388067407 548317451 393634535 466143459 248108823 634199345 559155069 888491995 55494749 764032997 481634729 540013751 478961549 129103329 12194169 260071279 743832481 68508323 687857417 230336329 390734867 812738933 861413245 716111825 776717293 913160293 879644157 287829469 256660155 853801293 739938491 943076997 803967893 743924941 715518963 570017843 649909271 476234061 378002151 150645133 52454249 318337021 600282847 89465485 886734137 775453655 343113775 824139627 719284925 761055897 583655731 591110575 959459253 978190795 374498633 494308641 835328867 444375999 174777823 726060761 783969689 503539853 313436519 209480241 922300843 87195413 509876313 849693133 830544249 430892543 276719671 131433117 106177127 560544955 676703375 101702863 275450983 412659329 458702319 191293157 313020139 245743955 394704627 222847649 238698485 286754551 784382783 663087631 182514441 817124351 903076475 377054851 530319925 168551617 428625753 772023705 928165137 810008673 779865237 355661367 22942649 884056515 554209265 68593543 617130967 374327963 337634613 940345855 548125077 204669535 373831479 403274843 321576107 525476177 291390157 252341407 222980439 968216439 990303197 915016471 973900639 183445921 222895695 171774295 582149907 703625323 94185749 597143357 616431175 357567793 680788267 410344939 422882651 426601757 262310547 98242255 33699893 31583777 5222229 278483611 143749443 328232435 256127111 37775949 152918649 758689043 480578367 887389227 184724569 381833675 974712227 227103421 831463655 316951849 496677851 638527449 505818289 644201991 607580955 300711837 749251535 421808133 661925019 744896365 542937821 996059787 769198237 618304755 619894789 747862475 603933039 283810083 943386097 314761145 550547039 160161597 358415065 273178905 577025739 272449473 732333435 283019379 430557969 910298495 785702431 536406805 40310689 279755401 381728143 529546265 343381991 632727355 408433703 669294943 316679009 68038971 908436673 825121935 787071633 172592243 221288901 689683481 176739839 820060697 989473311 581106741 628503361 93201833 827932233 856201701 661127661 282272229 598036799 622722543 271960745 261866973 810759047 849583077 424494621 548678627 159376943 935469343 732619261 334142101 654562255 131358141 631977473 113375701 892889477 724006311 98583277 244499407 371378165 329003915 525757833 515543547 518444111 305006567 242052523 973794833 780077385 198566389 134822185 670130455 435660833 83473089 240405737 484110425 907297183 746950683 211163603 565621355 721607439 421811611 335527387 826759211 38152519 413470623 431365369 16310203 256941479 40125011 452860977 907871625 429305621 650605731 202343563 321301833 393485055 491564875 346861597 755906805 918132315 145570761 252668669 89521619 902820517 789270887 777283153 526885233 487879401 494387253 635679041 782234271 989260463 374133257 938390529 796450429 279861009 47106437 893765321 82957679 29339565 468895507 690838749 443846175 314432935 127512031 100416903 351574147 437878959 989406437 64992535 78831829 409131003 421267427 68129771 682590365 813640011 401439331 747572579 207281061 19654113 348096691 884983529 853587201 567560591 708950253 544946415 184664589 350485419 507199473 804652019 136939887 529140753 42646631 593077105 440948753 494321705 897360831 490861817 190672425 764096993 679786803 164080411 335521843 880125613 599227073 652226159 301900275 592733839 780312625 973733019 31938421 29793547 426977813 495371593 976679437 507868209 307484869 108355367 280239449 10469781 712857441 387236083 396749883 304805719 114386641 855350895 741546977 662952731 298517189 606697829 362540733 879070481 190247093 996016807 434167181 298735345 276033763 471859469 718917205 628884725 548394325 620737149 235386723 948250855 527753437 675832543 824909895 495798035 461466643 597032231 271605985 362347343 178262613 941728333 225699923 456244221 224966863 624932949 870671883 512686845 886778735 823323977 391486653 804175043 994233325 331966523 706858341 17614147 381585609 296930371 46738501 877880571 311853133 547966855 144094701 433772529 105792905 633518641 18254893 581957813 944131923 38152047 649249573 909652315 901475663 167929473 315684921 246070915 176340705 276111781 944194835 825562193 259810877 343106341 268727465 740310901 684559703 792456791 787770935 394677287 64266997 580786835 277301313 67336481 687973785 193803835 493206419 325109421 863057561 645803449 543118913 811145623 638019337 475915393 976947367 207004215 913351371 544172043 619124843 589469545 48470407 948600539 49447289 326595477 505005999 722422651 82855171 755846057 803667831 523613053 585979527 429628955 381188579 245599865 914107081 577929705 891529147 469258005 342249685 208388505 237517453 697286651 617514751 393280059 457113523 172947675 135448549 41649251 230494541 628821871 912667497 266546481 933935939 150098043 398656953 693738825 564764229 610476745 27228231 363092957 718187725 103590955 261284051 4249503 471682583 622620281 290396765 659384785 244599089 92674713 540727861 938057525 619308007 332819317 517967083 559781151 672141779 608615677 602305887 191998559 500929875 750756651 18341301 682442329 95547027 67514115 243149911 749831151 203759233 752685967 181067001 397283985 276240341 442983137 756832155 166097205 899854865 779287313 490198399 881442137 373965435 511714631 263888943 404326915 502383909 121552039 535070851 908344515 442853349 170945383 205037463 450388653 578893151 699844543 128374731 467775329 288761335 138517235 475128785 723839491 951215841 321555533 665701273 222146629 463852819 679200799 216024417 149762393 995011661 727958211 959076011 669530369 177423385 448943515 278247239 392764545 491567815 862786065 392454729 177981863 455740013 953981081 993905417 291241419 28908525 677745069 365886511 790410953 280272881 896205 443346087 934216201 573757413 830574981 276809891 57220985 722723589 517071975 415720609 852488847 276439375 42227213 113640551 726496073 856019597 674069017 538842621 424040239 801004877 738484789 678682297 61100109 913695209 120978197 272588345 182147641 121808257 198382961 558934367 507563283 449715453 246989583 244233049 97454719 614530575 513294261 849776283 435606703 125156907 222639157 263135 825301847 334676885 648677229 710939437 67832499 755959381 338647871 512889037 641872013 33140537 139185553 338518103 563338545 646177499 422477145 100945829 835049079 208917145 649771919 1275357 652646589 269087135 711697465 925662825 852665831 494263771 497542493 211615231 82051173 363102983 35172879 747751835 975813165 723600287 711671657 861120383 832386493 933539825 719971213 397094459 633456925 357487881 238626981 295861153 631878873 226286527 36726245 208199119 804757767 396610487 181550727 8268837 231538247 385934421 776794315 311661653 460885183 523722189 264957181 407397711 786787099 772462101 309825135 252409425 931137941 743166447 612775035 864125919 49114345 576715745 303600003 143061189 996842845 319731517 595489779 412315929 365539263 741389081 508984123 971151155 70637671 342614359 99875541 656548539 449995313 990072225 629701957 433355677 579159431 34005093 17122581 491622157 568043859 241671641 440011735 571682949 171853325 361623811 519221031 354024651 748512947 187431589 68983203 562788588 821821901 588453973 712073719 951344955 877180517 904169831 903479255 161323093 627324183 98382333 494633725 447492127 385513213 327034369 546714153 554639555 478373055 18099231 201376295 614821301 833320841 17864403 781032649 408165557 622098965 129036123 11394537 543645893 156278687 837143231 131801707 655684911 58119405 376149715 163595573 78572683 48545613 797031211 551680061 993702323 723505047 216932393 501781373 101120205 868828969 206386165 190933493 513632323 609113831 420844415 58942129 24928715 982090305 704059263 628806595 676244833 616604207 336601975 680538439 891680841 986733099 686912685 77788251 941253647 983349565 796087091 708524077 33364359 823819509 36483809 592344301 359259599 413475945 445480535 772663509 917067081 143729461 954479101 939797803 657080481 539327105 781724931 821124405 302741455 108803579 713380961 129315655 635822859 228691671 472798681 869827515 976415707 528027863 392673009 147691507 319687691 985169727 800954361 856294747 239265457 87098335 358765325 613109859 867671845 807084555 120713483 807766919 358484497 699465633 712768153 368911431 452948571 29662731 864372523 186912815 785402429 662833459 670290935 142860753 455951921 577729169 863295229 997577161 229997561 771651621 587046407 479830453 913149859 666485105 183883173 427761475 187257477 405178503 721853485 708176163 879769145 789992189 94631107 132579343 554604965 320425199 200421451 448791501 445023219 351955973 850128503 539377699 81148313 333474925 372513985 474080741 301240147 928175067 723943271 300442605 486805795 730843793 902895219 804539935 504251225 528186965 882858163 895727715 715790727 192461681 921211075 310927275 717189001 464650175 468469247 482486513 51576965 428028317 751427985 113402939 964032487 1823471 724412777 101813135 600358497 279621159 522768705 988379649 744856817 284465975 222805911 67136685 544761307 439321247 324359859 726776241 80858027 465109095 163734951 711301947 153475125 405542171 334185803 402243707 697835927 628314835 497453887 800887469 488872243 210853419 660229355 183293969 343459511 121698123 704382079 116742899 164931861 514320609 840437235 819970215 954354059 383382819 784433161 650989187 463300767 809650383 214309703 942445291 392061721 417752619 235299071 66544715 517772559 618620935 312471625 579346963 915269343 267363511 97540357 11013567 637556781 116275993 747271897 784388049 659900643 869637015 903696953 169882321 675790391 334523163 241637723 988744787 954929059 488121375 327860033 143856115 237390319 741314973 471686833 238359631 443896867 119526943 550662973 591725589 140942999 867836081 648110651 409954549 132570597 24146411 276837327 326467755 397272563 941430505 572083677 931581945 149836523 803192403 918960921 430634407 871111747 975884631 245242361 527865737 375054263 157374635 164716477 257011577 493514827 128831373 659260271 360878683 325558603 626732227 433488093 355966231 675929931 996037021 378145187 687906207 1922343 89317615 653509149 411133423 914961669 842481177 342614645 28878089 99733329 370849281 386033563 554823157 619031485 12386835 738984521 692696263 89678919 852621639 976903165 347882907 673173043 321754909 693664769 993890191 674994447 897094297 238676579 54128593 273964459 996671305 505804029 655651473 330264359 89915461 559362159 780091915 740628965 259539753 467851041 741305729 241725587 191342365 264858179 886025787 572208931 570950607 636761295 735564943 457265109 438737013 342025347 580227795 689702953 131557069 730021095 128781421 954351087 709611551 828850253 591367365 159297079 200665141 389063885 773608013 507980897 893089899 15126855 791712641 847537425 493008027 35114595 455002081 895001905 18423851 449114513 508049147 79702775 581312781 445557769 776046429 11191007 36539059 622464973 468501413 672472747 490814751 583501987 772173169 825187947 282253781 225560861 696033903 117451121 847493859 961392017 60140881 942375257 2777057 324562723 156137167 937713929 967145707 392802999 170221739 751352237 570063785 997706753 476388019 973204407 661026889 130970231 717318581 956221925 806935169 101837403 31121039 694234171 131362449 163835827 355054879 367571717 552785467 15241039 335522643 220584919 334439889 177547211 250785309 950649487 33814311 490819203 87037557 81317967 580116637 280888481 950254685 45792387 430840345 243972631 669744099 89936355 63728647 166498459 693440021 163299687 152045153 483311789 273342993 761460053 683672995 577185431 162120693 710474297 306833363 320101735 599422447 243442665 426686847 656438263 660995889 950244991 377974975 549330919 691721459 402974047 457187887 179562143 116047225 261658167 73947127 140763217 333020939 277031419 737093319 165860081 467187967 303262693 699416785 126371139 729504427 604962429 753024725 710394831 959050357 362684557 967303961 44414947 94274757 801794599 696722541 78723225 172412685 861303725 468975399 313790929 743838409 520182973 486670371 391530803 153387131 603728711 612065735 77078319 378072237 304295551 977640197 985622525 567573743 880799201 745395793 934109855 588287199 852224561 731446439 371144669 383568667 404789371 922521233 236162883 68971603 825627411 944428317 296972847 826250291 479890581 717869791 601479359 79510137 780424935 777531637 822702299 48229863 741597237 738919945 952898865 366888261 239488497 860478789 235775039 656667241 191310809 485487969 139877183 763404075 12951281 332151707 414819133 961703531 619127941 457236667 841914889 87911703 768999723 95636493 772433723 890017057 38348221 628314215 137130289 533955713 739621983 173360937 420320791 224009787 861565823 262889785 597807321 542096729 911857359 735332357 632757811 388714475 642301517 579471489 207512483 569633295 774030655 542189103 674666099 648588517 839666477 819557395 789191347 486010775 104320751 573130685 747569209 121291863 779476895 692797505 108759975 565692769 409516961 330042685 366730087 907092471 412141477 283899867 133255845 269303651 335618969 3084741 659777117 466312693 30815679 403734579 513434701 472043019 15210393 587142885 196230655 445818629 394376433 711764765 891971009 601666125 879893727 335908525 892817837 694625367 395146943 675724011 211351715 564064155 75673393 490931123 676289867 674221469 144767783 131073645 583106325 309840869 954460369 905264901 968923451 989159177 346307757 322926837 820861883 83487649 603615871 301648441 899042397 110958927 236076115 978190423 671845299 824714173 414264701 59149663 987728405 273397149 122361241 222208741 241847971 282406829 882617231 72230663 649461317 566686123 750867077 818906991 205772459 121514337 855913205 658206791 384387405 568353189 106207127 124291399 940812397 994285391 251532913 727442095 651380753 26184769 100385743 705283137 533773067 936961637 917030727 332259409 888292851 67497133 273133235 898913455 906613799 926545431 406577463 460146109 440484563 719108769 480456257 23199073 14381541 351272021 542524037 72940553 721555733 959567945 648419069 660217771 153872099 467215765 495932913 412461253 680677785 757160027 851702249 418966365 539033159 907971269 189213885 2755587 537693635 277858823 516443783 173743307 481819057 438218073 417484461 386267731 19171189 383234303 339884761 148248773 687688003 976283971 679811073 241010379 811315471 284031861 539192161 409990815 684413855 560658163 370361211 227927291 250268533 551663133 238001439 907194409 517714407 240380253 255232607 449627381 944799753 911006759 640440729 878798775 222886845 931257843 471911535 883502411 931388587 296395077 370912973 332911641 161650501 236801703 306738665 861792015 569547199 521882539 494717759 474282147 630958877 120062955 415475603 857590739 117995559 337769481 547462131 224503077 213457003 153775791 256082607 999524777 833937731 723146129 685539943 666415091 944422607 97648231 825703677 811201825 709194487 846005749 118697631 888697821 321312363 457551109 853034175 469156177 121732517 35646825 887526171 705745463 660316641 503075067 595306681 775369673 53291053 303817885 33656033 844178129 458319957 327141177 966829099 441476763 2439667 807526595 104639857 603781631 440825701 83008819 466223319 283536473 251381975 767640461 950034123 174161553 830374711 710344411 149592321 241154069 440406333 880713007 689174389 135548891 68726379 52485795 523816809 847299425 446411783 746849881 31326317 7481263 623033891 447256955 102865747 330376271 563361429 227882557 27889975 769686621 46017537 582888663 696254079 432619891 84758219 99532431 661159893 353573559 833352743 342899369 493993775 43799003 592393995 118815613 57095369 800584209 745357111 597185379 618269223 153402651 975264309 340152253 323450645 420564029 163657301 868919287 346888359 863562053 121036205 703438465 881172539 657216907 452068127 926472661 965289075 27027691 12275029 329880439 458233915 840156877 866489275 26528497 525342155 510999327 484717453 901323989 777729435 302553943 751968457 168248765 285735793 422707571 474074937 363410251 775539033 34847483 613562219 612570409 753682601 163215353 231938489 673502731 731324155 842805257 459956547 364794539 893626163 974599493 686731505 22623433 972192895 578416467 78430325 881805361 936956753 279372389 721967939 540480437 431257705 945829933 280385439 869902383 637161927 438140141 331742097 341151617 631281595 686696553 698049511 815409045 908765143 362937071 634464571 825466719 866340855 478421079 820173035 553345497 151857983 382036733 939217443 744826627 620057375 184876235 691909329 34847977 509990469 439078955 562207407 92245149 25765811 533649173 998063161 634773817 643748267 786091527 348455869 831821023 790120633 114908423 887030343 440697787 303045297 781690533 867690159 675256059 418110383 718371063 961503897 81646559 819717401 967326361 160009067 690330789 861147289 647386545 834558291 847539097 178948391 595680497 444728909 200350733 243317755 38667405 77864217 554013019 51085723 803930433 915017277 824864741 81810131 432568151 899505931 796038167 890368439 298701725 88960153 835894625 84209829 214502503 590274251 714497853 340882751 490240147 588735813 149758513 367355763 671956617 390456443 318928579 993890419 443603255 967046305 615882375 831872957 797169941 283301053 53770519 294177815 119575325 190032275 592182549 241489033 901403095 155945651 903140653 542630763 77285459 147013495 20071695 600894807 991345959 932865023 241238133 133107761 102380911 835981365 222767141 378780711 959058897 100301509 248288997 36206765 216972671 478932011 233251977 733868413 970517293 797355941 785127147 994597791 439338521 728460347 354572525 948019293 946258697 954041793 788916091 969186379 781851979 696046539 868514437 32856133 990407607 392195259 69819909 555077233 448069547 502175417 428760321 585675577 968326667 493411509 565990015 949666899 822885959 103708519 178624659 945440699 990640469 448428625 780371287 803208373 717484213 89962169 471833069 565850317 360606569 329027761 990813057 357856471 879617283 110944273 230953027 678249967 588586137 240355705 152271471 402945147 368104391 730208081 767716165 113179431 588973493 368722633 636371985 328637925 903269391 670048985 806728997 956544755 59763215 979347779 63643355 536342485 992274289 874501005 180622999 365351513 266793339 351175177 652089791 648049551 287876093 459751117 673918665 738393815 129527371 37095101 880383535 520464595 176617539 563112061 272771953 681665649 12057423 585198465 28811805 136429029 246548825 312927487 810371777 230236585 944472537 183827703 436311545 840779139 27081933 563899187 114175847 474672001 204944317 896621123 255222455 560747765 56538805 559607421 894263449 91129211 132279117 329366277 202203593 514558967 754698657 47447742 819767815 833718679 851017049 864289629 390330143 395121359 571109025 757358169 274487781 82096219 49425203 513242609 417228591 351012415 776423243 246790191 540603617 489050311 421937327 531787233 585509607 551052679 515848111 611457443 426141233 912315995 64005151 722124497 386942395 284111465 461487711 202008213 360144261 65243931 554781267 499002591 56989083 915449127 625427563 436977513 267135249 830785417 609433247 46151857 219139837 79729285 227140969 79348479 552111491 392548007 171188947 877154149 697689295 98493893 596164969 510282939 702588945 147583479 767673155 188896417 410828421 825914533 832796413 768378495 211966571 459497339 337273023 347391621 384766481 951365485 983584567 749431979 615147717 135737781 461558939 262005683 198421475 507913945 834310055 339853859 181559247 437606821 850997927 991236941 158828785 348925487 849155683 865775689 705267899 785249489 905156405 148603639 802467497 5706031 564503547 361635069 828529979 888723255 911093531 991744207 714666749 835645469 193598337 74656931 331210627 568944989 9129383 432786299 681745507 56666041 231641223 30126621 765519937 359355969 873177771 782561307 403031497 877277511 885956895 369810635 474387115 778188135 475299963 949088337 169402531 701881479 742984155 172703377 604890739 371560657 197992935 941180991 640330467 282513339 12239309 830194129 193693639 351549185 23957571 966447239 376654075 175179685 208232071 600479595 98230621 30998263 394347359 585558603 355153371 45029257 547218459 206095555 798495845 894633017 876195727 983988015 202254071 676833577 314772763 323914681 523841683 450650309 580186531 691425105 694747201 11195077 976368793 528634545 471088151 407997217 699847919 118241623 715856427 831875359 638003751 521914509 903992225 399719499 831737669 182677601 396532645 697570683 813711319 591488173 744607849 932618695 42422005 555313169 821340709 201257881 789435451 956440821 239953947 151138711 632800977 446808713 136384409 690932667 445833317 613902791 471713517 149947453 83915821 603521645 589265011 795185829 288633319 297622531 994132879 503938235 85000921 18415835 308393385 559952279 854628051 541484301 779147571 568658579 9536809 620307833 722552489 784787029 98210235 334566599 10862989 850578375 755129839 840504935 647063399 83943197 444163505 19143569 791811787 619914967 741116027 219575879 989903957 112637623 918809161 918576207 366731685 416127689 413880993 2398267 447570533 632634977 608578449 612492385 465893191 754180891 420444337 674228197 442630919 421244381 87771165 179271083 307980133 454690257 51935613 387174247 549241903 70886253 132622079 811086479 69223987 449909613 606790745 479517029 392232015 121389525 707224009 564380655 514212449 672256241 8597783 865001213 677862999 478786133 92212367 509428011 548646179 902856671 9435143 98300885 474775997 348517041 828098015 217829413 26176553 127446073 935466493 772930061 920867951 781772585 980515021 349917507 676814243 719770751 248045129 452265031 770727137 769420417 61507307 977525091 613445705 364352439 366186685 426848677 968761861 179837945 241537613 446274535 678413127 907096415 899444655 460366793 533996363 194393427 716375937 975661237 968852563 778367357 336370667 576457943 294143143 384322769 610141083 604031529 133245341 337921167 488224455 127074669 278933643 93372727 625989679 526097707 973160407 139679129 993437717 358476465 704968169 704123847 149127499 74252057 815762485 815896605 484108325 574516291 522973235 495076929 686336387 374134231 865701989 282239005 206297035 939807813 192492377 622815975 434407915 786246597 567444637 631228955 219060311 864541529 274959311 191165053 257041 105594313 954685839 211958039 942015901 866806435 556255879 850386499 866274827 71336255 150813289 539799703 986229743 130458049 878750961 732569595 899078759 944528399 205469409 375235737 947842587 121694425 305669891 927023081 85690939 252465815 219757863 242506147 663284089 440555145 363273515 140914381 178068757 204645817 697761263 551576243 52245975 995656183 826153565 65643497 11100937 961086171 640271975 993033037 401325959 484681411 696494601 703442689 204583083 634947547 137110085 65667955 398633821 634707215 679041061 201452631 630446345 757064987 134485945 442859943 958702249 955572095 628424991 21750441 65841593 444075903 302487415 619300075 76042047 744254257 101886955 501399869 679163595 663886441 681274543 763204799 505324913 379316171 576624123 903908309 22676687 713634235 151916817 849795369 599924237 880838507 918814527 803503793 927541979 460008405 474257109 348878505 948366955 940946615 998301739 912303763 959844477 954165147 815458471 792703039 822163545 723588303 582859697 461499583 892785099 783080045 498680253 555054447 105396777 11692885 949529411 951929589 203449173 347810351 111209415 572689467 161502383 608380523 438563539 63352183 767555115 143072579 518962423 864080677 887280957 248002741 447722705 164579081 436471267 713638537 901344769 180332847 101400995 277932881 341618737 574942443 250450571 356280677 807750677 453095899 261009973 55701477 541877861 688756449 759363257 614558649 563585253 434051883 819406787 97336977 127863135 512500011 236241277 357667301 521860771 635779487 151227807 73024503 409012111 218674317 328991849 417448141 177600003 300311101 836567965 51706681 262470633 826757701 227280269 324387283 239719989 661841539 233150991 949497337 21903839 312712729 523825023 921769687 750633195 938567797 601651141 716623451 338489187 93012555 303948623 20998717 480443479 169488535 512323091 286519549 919238885 179152795 177633423 453009637 728150317 633290727 411727049 559342341 359686489 770872139 674684751 680911411 118065821 19729897 795758649 588134931 735076401 492782367 356624933 928645129 220657753 512747165 166018873 917559369 790164319 494522199 602164769 791961287 58816661 331418249 630586133 368718409 779506515 909047479 587158229 370857297 798190591 681882285 282625445 202260277 378355459 658625151 218478675 639380233 292019661 548317321 905658677 119868079 849832413 458094705 578337069 424911823 290534833 904507427 544559773 673576667 218106835 886234833 862300789 789930503 190747097 765381113 767908137 450515031 201748827 335985759 844763579 60950675 854393595 750795023 553104561 448874057 943883619 313874013 721146645 305433811 532011079 199414503 942582657 180516433 523510623 515550863 768707347 382992555 715788143 189879171 792921201 512875665 212499265 284059959 930234055 718483069 92422823 987347813 79553743 845813165 117762939 96964371 39663555 40447785 93811871 889658767 306250349 582204099 31180029 250345833 769447961 524540947 375228553 50564993 990125471 687640439 626856251 896175099 700609115 217159451 591749145 63247681 584214325 818315757 659941927 999081225 156003227 486548133 143009661 826453325 557087363 762854597 376775731 773058901 310974827 803855763 823774059 421880489 981620059 849756961 291899471 428363809 405155293 260635461 679844627 22942937 395451403 487098531 861753329 54595377 826894723 516017567 336057385 943474651 187957611 649188717 345812743 468091591 737963375 259824899 841059549 214928947 772467401 299970593 273509891 145221539 186331443 467529809 567633889 506639587 68256247 250302947 798126555 489690887 984448227 626713837 901730407 310040427 199994697 75806801 814454269 425903797 996205325 528841913 218031649 304190929 804508049 20908433 417696349 911171825 894335173 221751829 562437443 658347155 110182943 873374275 817165677 799892093 720429469 900790757 446791805 39533239 247817413 534899593 417820191 74951831 897488807 463541641 705920259 750889915 329151447 688487685 822915043 952320773 799117173 302101221 3407491 21277603 384336423 439348443 44096173 330931721 416467995 637861979 716799795 612475633 909362949 473234345 59416815 542689379 882730791 313184461 205990851 202521255 758867013 952730773 546447259 581246805 438978221 358200731 885713255 391306311 143835191 972227901 861318689 962685091 134208319 34127527 129995213 520276947 530417581 407715271 179475061 822400653 598142449 84057175 766731051 845955533 287972861 794106579 410706697 984708565 767423057 820652937 17454129 726435125 482764531 463012741 134739151 955916223 736840307 774453663 835207187 167758737 440023781 968673147 207340343 438795789 652733673 969393279 824860287 666493663 879976101 751778009 963532341 739200253 31080135 812574853 883778475 658374563 273760643 258686019 671770683 958337877 29325211 505236633 922271305 378545375 885838675 589287129 340759611 65177175 971353465 501557273 635331463 696683541 98843749 953392189 545703847 634579905 746807541 157221097 772274459 762662727 777031053 736877201 106305135 597269467 615586589 618398569 647014197 889232119 519999515 357346423 228189959 980039009 856738695 984258175 236521095 748727847 153480163 692817169 595050593 389359513 587370049 252819335 468254277 38809175 917411125 746796545 295909359 440963141 692467167 163179113 424941087 744562061 780671205 962888043 896693665 938538403 583244661 866574723 310092871 157987911 894701125 674905071 161479659 628774523 764078737 964443063 525352815 913887625 185654563 327324335 795320255 830846473 381780809 65323115 762429643 320650453 478836183 422724429 695589007 897470995 169663019 28748157 707210251 614971949 691312943 192906219 55754827 203640025 887496781 269132111 128912225 395797011 757054077 209073963 405366119 277261087 646065981 984060101 42247551 74382217 539962773 569624111 687317 227316261 473487633 90403649 618167705 625362961 952938183 178281627 858874375 536011183 283579993 542525605 504047967 286461867 917382887 775768207 218557677 677811709 179023909 439955793 358423299 820098269 976903495 804277421 24693757 81419729 640885771 647354921 370474809 640561317 705551799 718150679 74711077 982826095 274263577 460677261 793013553 787193991 327226505 123765871 719046871 751769495 404314853 399962721 983424669 722776199 882402449 145124823 627808777 793873291 594342783 825700359 491687343 630268195 240428321 994647793 733565993 672465167 634496375 156695135 338696475 386821981 57338377 151149793 323283499 39320931 377385187 281475277 834743823 31052475 463687067 344427335 876909953 287697483 610313299 505581875 489324609 876249917 849937579 963563587 152302621 425816583 401572567 567062513 746317283 140990309 930690187 66054267 333033071 793530201 402186245 5271019 111652771 559236659 861446923 4115215 134646635 117853061 97338861 527112323 498786487 455423275 775092863 87520675 684144771 225469003 226435871 880542105 128356559 125667921 692546999 960332373 61000105 203833839 588961969 170259345 471353375 757194275 983194119 246786507 549807437 422908721 774232115 120263499 398339927 240490917 46551359 491386659 936971875 969376083 730241975 753922091 11110313 435715673 569226161 43985923 891612253 71065625 458427343 155888659 946299079 585469505 925839923 95662731 985126701 776893891 420277643 950435683 296829155 220129757 745349137 532474717 914143045 403767573 918161537 37025535 310374577 65872435 690793763 221722523 441249685 747631951 952843969 275810889 165957473 403651265 124091317 837112041 241302929 563738675 328997597 391514913 826247845 573733773 697344671 69768549 158668587 587812357 445447143 451857899 518671537 58648341 751575853 967151541 217724115 592377733 681267569 739751305 572296757 987998301 524653367 328865529 526566269 219893749 803662221 546793819 817691235 22541543 785103113 803774163 836241053 920375577 914276045 317240133 740476141 609847477 951346555 65053541 342194207 26486577 943242819 589709737 558916103 497514569 705396699 46056273 182436475 900904193 447742849 747053927 727622241 945489573 63264763 199306169 32876703 677334985 609540249 717374947 928552237 296288073 936632879 933213761 762560513 389277515 190401565 702542077 11333149 414298171 286089031 45114633 982009999 73298379 712004383 902467353 681106789 937926649 233455255 786701489 478064827 936155659 546584369 622135065 190364597 194770313 574466543 420853855 788761467 19242825 449151589 756761181 501584959 894403177 641816995 627187635 977040957 432148299 497160525 559358153 564342453 554403485 642268805 380345039 855583989 525538899 575587579 963055295 78722379 707046567 445490661 673410135 720676373 748913439 959871745 728750367 821989041 129372553 669386645 531488617 751000205 600122613 980141937 578088781 787174937 480043205 804248041 350425003 992448465 104028055 396627165 978235691 657292599 456154715 784197555 33345853 859800019 917434693 190037079 531805465 833710139 477030609 350594115 307153601 929622277 706777281 373946225 71878651 262219735 393589541 897814891 218329433 913949273 446465871 70451775 112435505 296428349 566836955 146433407 559482535 282703679 861367983 687572303 863828127 942303265 428998135 73888081 915168973 455423915 657968933 131669941 666001575 890433203 854003959 958028849 131055727 368027663 231443825 533975811 972346923 774466469 30505695 932622835 475313323 79988573 22514389 885780811 643155083 678984233 416652593 51799271 903084839 108927749 459596053 791660833 691479465 897554931 546898413 820548575 552209411 928687867 321809009 914631059 714057195 648440627 100477337 820016175 639152097 449022385 700791211 95064117 757756463 128289947 993664821 623403433 753074659 755961369 776640519 782120217 809361367 184736093 46169153 563350173 592058283 715502499 159206725 889602771 750427337 167753005 633956033 993178591 891677533 961398853 125777833 75964017 915578721 54793787 619767607 545633471 262449559 374386285 147880947 99445127 628140167 824767801 17589415 680447249 385984383 627147533 739292517 122969641 523284889 461191003 342789263 905985829 569545397 374262171 285563843 287149797 571662459 966618705 405793009 391432143 367393627 364965893 719337805 715936465 33679757 336654413 432267859 732577375 67316755 422493887 902720199 516055419 386939829 829216769 311443381 869087401 72528897 792353467 877455217 971799287 338633295 207110817 193840279 583689469 849925315 712221035 814929677 171306969 320874819 216395739 365679359 287685679 716423295 570942655 313374175 632199983 676646127 892653543 237752171 700094863 671669715 307674411 619988647 517658767 464557109 135208817 93913825 313736433 971849701 815769505 381946025 357608967 261268603 828278703 701903071 724988071 559135317 324611475 194590117 885063725 237476255 330280527 173102441 259251073 835764037 693779697 648422877 829989391 789544963 738043785 580996353 294216913 614637401 286161967 531823637 220488515 541764235 107428873 350138535 191787627 684565935 835530303 503356301 219561943 68478617 822667525 412541921 997258911 745146861 183952019 806254089 65319521 905804303 304614445 252457647 827430977 296481841 562212635 724551623 455325167 876473677 983877555 78001553 585425571 250771745 466366541 975990671 811629079 732035895 818507337 618759563 948160917 550271453 733063959 860435613 702670057 647211309 764931363 2076193 881661801 756937223 531483371 978098359 306591989 535363859 796900337 251995985 993258227 852709825 951607743 209779231 317263185 181519691 252033255 716295071 197544837 450212783 535772161 797524373 199167373 704516277 158668979 513867277 438433519 495802607 613441189 273020507 559807417 633920693 251382411 282026525 621822339 325212967 297399581 579834421 968442987 851204397 991698463 580212175 274566165 174817911 464719707 38289251 560774835 51714685 317425057 564409257 505851383 974379393 349605839 437594791 357720097 888326537 262056389 216467625 514287353 713561959 712627565 792020805 280464075 13123507 616009659 290039381 583117167 730499019 792213927 431880957 92245825 823390939 537050421 696973483 811461673 918219985 955069551 301217299 407142549 856784741 548904551 492523567 252513913 813383447 728263733 125153095 820691543 274070065 319905279 823469539 906317365 803247043 439415789 262988251 470784157 828660387 203293491 863179593 734939561 376155253 166153993 590668691 974515191 501029021 499866035 227791971 764371883 786155855 387501435 933468335 977470327 912800383 613847987 350135731 167707021 865106675 86918581 174905841 764591279 366855471 994817507 720773177 668773663 404984963 524037287 924949149 13332913 69688329 396648309 708653947 379998901 704293793 770915269 930769525 385285901 917704949 554519067 737321335 579185439 429792369 172069633 4293559 514559961 943659599 648810505 536960689 375055281 729994643 662324939 90357033 462128037 940487423 752455661 681860141 963841083 164204583 665092121 754939917 836112003 113469027 289252093 66594665 874582289 669379539 59247705 896619043 61876997 536533599 225669867 652596841 756200709 781252791 232815999 714757037 645725757 471155541 184033765 961568685 820827493 770072951 71011323 361338735 5551037 499083813 559351969 690111035 364788745 763673393 783601859 995424425 83489687 161244723 783904335 861236115 599213375 335347593 317610821 175911197 578695261 416808287 157314211 885014453 112254425 661144227 432922485 948634895 133115169 118565901 324376011 292597031 189749547 386996511 618313155 236553535 539823477 591075103 332094589 219390183 371776773 88439839 127319333 280683761 634818923 10638837 782374891 445038713 418591675 917162821 84279561 393193957 617715605 148679795 948553155 946377695 433065503 324945587 134007139 138214493 368845061 832901883 731946555 955664795 736464257 966586635 396523173 561156381 878397261 112040557 563721219 933733551 232637875 979472241 25225151 612575589 783961727 701527085 716415565 677563037 922498825 739800963 151359527 79737593 558999341 179474461 198470861 388882277 705237589 976793447 60580811 408140825 994542187 152346269 289403825 875990413 370050279 509706173 540584733 459806087 761374663 146264721 917861295 150815251 691892881 635709863 191907603 747246215 221312341 299601241 527113721 571064957 726069671 978196679 105522459 319815897 44635559 436836569 643515965 410794185 954497275 779275073 498366761 618072257 495008207 575232883 682800305 855245691 252273117 906408883 620590511 323102973 865398113 143044105 230818309 428043669 330051615 600023363 811671455 192865493 900103275 360245755 465263981 109047449 519666199 97705361 958232681 870317573 225471361 187741483 454551191 719437449 923026065 626649277 811069441 407110867 50081717 653640703 311914425 362375141 917368035 666230637 875500249 673522177 382386331 704904021 135838085 788919219 760970463 141064899 933296099 53718735 158246465 852806799 41483049 742112625 928957141 983915613 956730001 16135423 345254203 401315731 191352923 783159077 154732441 761411679 557353683 659461333 426551453 42686141 165669195 323528013 738623611 862726509 824672541 747811089 505766901 125768949 58278571 920153325 693642575 766785703 574345313 578712309 57969495 866715545 565371821 355369351 696459365 960107951 244382223 839520837 829468503 305351309 359983109 586750237 392411281 162789031 405628443 425344321 850219267 836363825 181693411 720958001 524507427 3579953 923698423 895617709 131842031 970071403 426800123 592958403 347701231 9439087 864640917 95843785 154830895 951847831 467419003 855550809 50211653 851677187 931103079 566878807 779099729 530979997 448629273 401930481 984477689 657722897 315178077 817809051 960190827 792808155 502566917 781857553 670700379 195060281 974975723 371883349 34484491 847143731 510641651 374786231 397718335 858644893 392819203 350712265 857557319 187398411 655281425 859136871 736460279 231662047 14914327 286464439 218251949 270285377 984532757 903745315 380655185 294300961 848073751 323511137 106954323 674033975 993275439 630597229 924041125 793098757 241809783 782785419 168488391 103918801 669087507 900874823 865937857 833828269 629089833 291245429 808081695 431862385 419597039 155954737 306992375 573771197 730761631 497022689 917524201 358599673 138675065 672577585 960825371 219531861 661841355 831192595 599244859 799923145 799954659 893650629 941613183 955835927 692056349 923319243 883429027 279634629 739514331 661302003 27410419 369082405 28658313 616205133 271506487 320494157 897831831 881443897 932788425 340019233 304257921 914088537 302977927 273334853 504308167 564842139 228217301 483930157 49443829 630035763 502566819 17063695 266247325 244267163 278860393 745701611 680181337 777911451 675355681 495148939 847553741 427413307 723955285 797003647 849487263 897677267 564343569 527339293 839387527 358421501 449996267 11123081 49214777 348239005 429256451 75574183 202084477 591923939 659345407 939492137 443112217 298325309 533232397 983376265 940389345 728999021 108342243 94152965 852253615 120005749 362374847 630133159 943994983 976498081 438000999 111718975 902893039 782776709 386350633 612063075 31171903 839080957 585774303 107860597 339531595 704200239 859313633 651149981 415453211 117916037 397642523 623052235 445733813 364039349 849971447 747088825 554831661 88202939 374780781 379209957 886131613 303568347 96665341 502391703 235008297 198530209 986486697 250969313 751246329 505114339 349074437 459726235 502010687 266304185 923812385 98837349 769991735 374956939 965371039 709474727 687709985 76320517 593029029 836253329 400960585 512311323 687647713 130779163 550958339 204309511 756062601 463383303 467871397 731893583 929038683 23967709 260780435 882334401 384707485 603952617 668564025 774965357 944936223 180953161 918979079 197654707 127162421 281139931 107063417 203470133 10491327 54744903 759891985 391957473 375718433 346908667 588516183 295110123 326612557 31951667 969217503 213216975 378981557 231158767 572758851 558731087 791715419 581419765 853295143 248342651 672770497 640207831 499559731 952973477 667834875 70226923 769838105 545601641 307799449 92142933 719056021 307940269 317867965 176831993 523152231 905092251 284390157 240901259 193206621 608062121 207014583 315673985 584862277 632873363 707938161 25827355 508882427 877806171 921292921 990970211 995935587 10145873 895157399 756995367 119791973 149427209 662545173 535296259 900958707 909452891 588102351 254384467 146981641 740138863 354523933 31967809 509854119 353152945 492166891 51243199 427924699 384180947 440773539 974448513 246423731 33591507 982284351 387039755 201177931 694194421 512796729 899870117 562231751 733406405 469800603 568643677 172972367 77389593 165895409 597203469 720846357 650329353 988046931 592067413 205099093 152777983 110596701 621585053 875184465 776338337 434857529 282137367 505673297 326761193 623391121 631871927 802343849 275085071 74896797 868463169 512511925 162043803 324642843 600842299 224551891 867283541 368603217 715653111 413622129 661455957 212517903 697949069 494931201 238161141 100278441 344640989 701518587 247846619 488548351 964922255 816832737 239013105 103211895 856836627 331416129 383187821 615284989 663342753 400284585 640188617 849068555 44695867 429197749 678578893 878321819 933889959 213050889 217825155 302746167 533981815 312712781 902934079 540318955 391552001 211329843 689412765 556076111 851634537 98554231 842882435 9050241 168382867 799738075 274479643 246035237 382270515 283068713 310898395 887181931 98623167 821700913 590412927 516638729 878807417 762905551 629529867 596056125 129978471 442507495 763372747 497042637 819847769 490700897 278606675 934365705 711522795 835584303 463962753 567870917 628243065 245379149 321433463 966096993 565958957 672382397 346050979 419308995 916591609 504446857 438628279 7103577 112560787 492826817 878576819 366672919 649687419 734193283 233626839 141189503 92783355 95303405 771227313 503456405 653895713 453948973 12964375 930511335 11666887 704868213 481600289 909829517 510202765 104655357 756569401 983148069 690061533 194036231 183368711 519804883 392583139 237028321 901873279 869155143 488346265 498673881 445067745 512570039 699525057 104683085 520350383 663410913 624085987 515051677 763684787 415647757 205163085 25634867 729139973 283686151 244066841 545617025 270189311 57219109 707400999 658145539 663842119 69712967 22079775 609318971 462508999 416340435 98656881 101738161 426997685 887937461 156436821 523489275 842010253 539402343 441610957 552371633 530264339 390428389 554891169 800738931 612726353 182935477 82804063 144550127 101080737 897819109 410021215 924086487 490759321 735837709 80419269 382058467 342942753 106077515 652562039 85953751 872940387 90165315 849201701 639818363 373890007 169208869 540322119 157328037 167803189 572484007 566083869 200934187 16142979 194654729 838268081 320414451 246618893 383763981 552246227 736200933 114618215 85020933 66097691 986472181 157972079 976138693 523755495 353618203 80778823 680855983 771452771 831060571 776541533 618155427 395053435 717242813 361290085 34796821 733584107 602414935 300255833 114856185 649717555 468365121 482748287 572971213 172760983 883216539 405955173 151575447 576265261 269359763 469243357 226145509 487636169 40248155 452648195 388163023 912754703 235003691 605835835 895404531 799829091 346029383 645460531 582559349 297369847 53536505 280206047 369229061 626629829 1692305 424072315 515645145 460196235 294670445 56663177 671680433 807794387 776718829 618727129 815722191 420118763 776909435 868415101 290295301 264292845 540433035 842817745 947190953 295798969 110557845 887214203 130845335 708068343 444284445 931127909 675140407 555358999 605989547 196752069 420030583 473615699 797493973 72068119 237813707 877438121 79111987 426652703 671197493 771194081 227279717 406482665 429323835 815250573 285865243 852489163 363715303 401165829 964389633 738353245 979463891 741822057 372198357 661293447 342998557 270214305 886096729 780513909 785461353 229757021 929770327 968437657 381463527 288540437 775669921 32593841 134599759 467230987 980202511 803875523 157803483 677604933 996309895 460356375 620174933 202560917 946672883 598508099 60844553 377744275 998161217 129652261 646224589 673204637 903427439 491091425 430504195 779272415 306857343 788537055 285339277 732793671 832386939 65664985 634128345 193136269 357982837 651961289 559374049 570374449 491086215 892371185 657192481 438379901 571261651 586016737 156878751 515284097 340600963 354227817 632868843 596721939 348893641 732788907 941489433 1611991 839100387 91971077 818077129 742654769 531315471 651056679 709190175 189573205 422263703 97639941 650165453 561677367 54172881 950975195 132597253 579841949 981780501 168071469 669349511 546340619 433171397 831495111 51926683 614178257 551799371 876043965 337833741 934352137 481942299 78313067 454486581 693210771 714171309 541630071 743288559 378442265 361146501 647921357 865527203 929884679 954234925 494051487 303384383 40146073 544358967 196719467 139113529 538517197 672571453 761571317 70430095 506381163 567336161 849110857 456556999 109566981 804304077 474041275 331051505 47668723 905737141 437368809 517171361 252194645 797445969 284345781 894047991 520824851 790661221 247759693 59038103 67728605 576509883 701370405 123040691 471120941 382388005 211008503 726261245 695641409 906895483 134267849 97661879 791503649 857385637 666574569 332680613 365375391 914034823 188710375 683275541 186050643 685605911 939732387 517435101 556248475 270453581 652501569 802951263 864191907 302968109 59221035 822144125 133832537 409375425 645495575 572951719 141901173 887203867 340188415 742245331 825264505 864412501 203377963 920817535 423165099 460391313 207694117 471256753 724324637 895673849 489196479 231056121 468316837 329736897 848505883 948091755 42713063 516897825 21462167 763160487 899585863 577088349 276098021 234718929 667228153 280110527 455609845 129304219 738633459 917611929 254994181 944523831 762491381 974592837 416979609 537625447 256038025 760747045 341875837 100953967 878618879 984397221 507255749 828123677 723529581 194548275 380794317 177466569 11354293 507624015 899059003 585503055 561945473 583160695 999468795 10247959 383474493 670021431 348942143 736626703 127131429 580766241 839010437 784840621 341106487 419795151 608781971 396807665 110015293 641611491 707329393 97558109 585658309 682057735 114556021 31825667 260382505 257946351 321049405 879209335 730074761 925263957 871357613 73272793 181622477 968982009 202226157 60806607 419434407 323713959 683348343 683752325 295839371 840002609 120196101 100867253 471552957 947755633 385590681 370580377 33882437 611745353 509284481 272946171 562383345 790966691 810719827 896242729 63842395 476493171 581424361 833009141 81470947 689908403 883175273 340024771 854114223 587253091 669505853 695924085 992016307 441387919 932451611 285736827 55311271 621340745 378378239 390866891 348804615 155632811 568112683 458144995 286692129 106192599 602630703 263919819 985854465 748399863 395697629 209396239 848073087 49183295 195056979 725309125 983094079 27399657 1853939 862260621 651015335 929433653 676667241 237537933 810769381 470991215 989507755 415146097 352076023 142032105 355174645 553537907 757528727 272370685 410602699 981472335 384178001 824000269 782427385 312585035 39908469 140972677 372430229 753669429 523324697 883065301 367830263 99764325 79196449 530711671 538996937 979217847 661025329 476131569 447353585 246322069 176816829 141733321 370616489 913726697 49456891 748589203 166555497 534466603 941307883 652738793 63643639 475575385 127443543 186793325 803278689 783396859 26761165 429010633 925620727 476737565 195517863 527406257 210445913 85653845 388175879 419274975 185143403 745484995 999942865 188197395 271664215 560531725 416539319 971816217 768983953 726565727 999190067 661424067 476614617 975592563 509787779 299373037 20089393 914419589 849446063 877451893 202538467 434057563 901613195 911041095 745625479 458528067 976033707 489570135 470497783 250697237 33485937 622332319 889258329 409702703 130071301 288267295 104920087 510281077 180578391 125091301 708250599 522869335 653538079 866217215 722555077 550124749 15325407 556885897 428989429 321910353 355081949 480680613 59363075 622799341 216433965 228243327 379014851 685023021 739938721 839569991 4223059 750695207 124289247 725839671 535139861 817949563 284178253 541862293 126027445 874160463 387001371 9168551 339000363 757819985 766894145 778102977 281547951 624944565 870412673 193715773 263133639 728443197 708516193 139177597 164716863 239745069 702769203 8365805 169068589 813374549 306676237 505745405 418197481 598436617 723476435 906966057 860073245 922569255 490552873 838861041 905089713 807852825 670047875 59770849 268057817 596741065 37134359 222529421 181098517 163481007 297000677 118212747 721580581 471241931 649610423 814264447 475800857 63934111 835585565 581058837 19414593 394936637 458613613 208039677 663716157 355959355 500248523 961447667 451812593 275047349 889398811 923828407 341710471 479289171 993682447 751921173 547804277 254464835 468571937 728542175 567516535 127791419 9827215 677746417 857244047 470595961 744003427 233741609 582531853 323781571 657437549 660068469 612922243 653318247 409169475 405989317 805018317 423658301 506216263 207961621 926669841 334768291 967886753 209809765 614459579 883673213 950597953 270705089 944779133 710389053 481501665 1050171 516585813 291945685 348622847 944525295 49949319 141221319 990571491 921084155 781144479 434043413 912045727 762095501 94888049 215122001 414308107 760445653 505214235 730420881 329313479 444064783 376613119 42345329 495720763 456207227 807639499 404208921 824997527 525470567 968159857 359381559 687344853 584123681 923263023 715522305 161508529 538361861 843127691 417213493 977534137 103245943 953748301 979278873 326730809 895014621 133148045 98879869 169251401 571195567 414570661 896205493 649976013 820441441 568443961 568568993 670699883 962513275 771260471 674439589 622237841 749175171 910292435 22423217 405246589 31648525 820941447 255381053 644628009 148713397 388521243 563992387 544141409 452419609 49869975 796728909 407341749 988783847 621464403 525357671 960818811 550219727 626311657 509099049 724667351 380751501 69433919 926900911 383896749 649339875 597176447 477625505 811036593 361955481 223746591 652626733 450158425 232861315 329276635 8145673 108053733 199553405 911088567 122802035 334794591 179735141 686725119 211950385 501656725 254051369 88213063 66158995 232845347 597963449 265861485 318021485 631408229 821399057 777001363 742623263 975354757 867074867 39756069 501516431 263624821 523159847 111729625 332941865 969122793 860514305 897247659 175689703 84779365 571482589 814172129 624126787 909962801 19266521 439728131 92455751 831419995 370818339 111447271 525444991 578853309 777552365 164791211 1189123 54913783 652328557 73586865 297373551 170541681 281978859 132723879 856902635 368855901 821073837 575529345 892683301 876529839 408974857 539305849 343700307 906480683 673653077 55800341 31747379 431971159 643192055 44749091 190026509 499390597 320375895 835151797 486553261 509315021 710236647 410897703 549851497 751156239 129750051 548249629 534515489 353678835 672791181 947594117 760972089 840690409 118413997 574661523 635875747 393040937 750844183 697609411 169420241 702279605 330685543 541290711 222948293 814194003 622938171 367161823 838514435 849216917 510703169 577113389 565506457 841452241 100377387 951622237 33742111 251161643 422960561 950585429 645406641 884134023 214841749 61656129 879004919 981048217 470124197 35148947 166889761 870709975 854482351 739381769 109440993 24481411 450553233 382060199 767324023 599649955 465287721 243124409 173525417 231126023 150137189 724227027 567766727 658418507 939858487 606647251 775707301 688323531 448540567 131356123 967202723 774678193 579155847 28085079 184587175 99316207 219266581 569477375 679482653 30295355 873322063 37291979 857047551 448436501 743680339 687130625 805888713 37892551 663902015 621583919 210160001 774876255 393859137 158371877 919488181 319159223 403974539 908423683 889086077 490149231 928721493 837626667 95795061 791857905 896878819 191615307 31945159 316933225 595130749 633730391 811673117 838833619 390063481 229704331 81174703 125975021 909345325 91299177 656038459 1881919 736667135 683954881 835513609 894236955 664224599 504543395 475696099 455870617 85968807 444380017 500540709 337240985 214419051 42371785 694123945 155340227 357049893 949543069 779050455 223119239 728671583 818166301 536767131 684573983 357132201 289895621 183438959 927888775 485559457 557806941 94701135 359223693 994567399 624260335 182890689 109030077 30458661 775762383 862048467 476152943 392477453 221106843 967749405 372674247 741615707 350635827 146848955 461428651 220115921 707217865 225717847 281445323 671846969 374367181 494575387 225313183 283634531 133992701 205800895 95894631 817324333 246046813 223620993 337382701 820391029 711570747 54571305 970838465 387393579 360884775 792496643 469203899 877483579 482908673 992895717 823215993 788116643 999527147 946546479 541188903 68017253 118844243 478956999 566903217 830033547 457614059 226227227 104175571 651270949 613987251 248946977 645438733 622087249 343470827 638916693 943123621 638561071 100271137 129093825 43828395 354570473 638497323 671369203 46621945 598597553 557469219 358880511 307231793 687685571 902514287 60944259 851269815 616744033 943557049 11131049 100172733 735217877 140303861 853075995 667167805 3649905 833099619 880395537 287020021 302674061 175544709 428920651 998999663 721398159 119683621 202027019 851546105 208830431 867085915 120140579 491733677 522426353 764781443 14459881 476992363 856160829 951031869 316106297 155172571 65838151 77115259 675051387 75209839 706483097 417215853 632087453 289094491 13626051 869433489 530903059 389690275 449479779 215399083 174143711 513704205 391272985 635992519 113080197 597418027 387526543 717590841 669893141 878795093 486738809 942238367 589649443 595940779 188472975 697800411 365652431 773366293 512047253 404964633 372271805 344144451 841345875 948681169 55973661 480090029 408695199 590896059 573845159 24119957 524302929 93480669 362979733 237078785 926285131 523861379 506281905 141673411 494304887 484149571 428791111 490791795 358801097 152605687 230465069 791134575 500851513 618380995 564461763 363086051 877598155 195795221 766571759 24807869 20918407 944106913 705942303 694789557 331793539 460193121 812001097 1413451 564380887 509562013 223851499 881608905 41700773 144962525 538056971 451597119 804441879 424732409 923398457 131447171 498872929 931601931 656060041 431330105 340920507 806545529 884552603 19592645 274761833 616841197 415655571 365569883 607784373 797579101 184011809 734447089 466762735 139753989 456631421 790532679 32268405 930856039 810415713 816362727 805907367 380289875 469586455 797485343 515884529 214131931 378062955 351102985 555792065 794026333 451732917 546356101 510358423 353323131 773722833 596816189 393281265 73211425 311679015 92543901 779885913 308262277 875382437 429576929 525678693 883648547 133669057 236537863 694604205 593516735 301901177 798855639 392098771 572093543 220003667 275200995 848422273 324649835 13613919 709638531 900344427 410810987 985359409 659565271 420626505 942954313 307651305 617583559 116220895 384539187 623084075 424167171 112682487 269575323 680681257 980581637 837721699 136486975 182484117 474998539 708210941 332421157 40112049 920273437 153898151 280807317 941916479 740919821 162172491 47045415 408086675 291561587 903216605 707208629 873356925 795017133 489986389 723343203 488729697 522846695 346698679 76998303 136596769 319877135 190548493 608250653 757244973 909753565 695799913 563473113 743415417 653246931 100846821 441964821 799639945 735351863 28467875 691275617 325093469 962784283 888933581 883272847 686966407 980090709 517221783 488186811 484925723 869738121 168728891 949326155 760914873 805193755 202507001 437323241 328674181 712837439 997899805 790628235 972966961 44289771 53873399 678542957 187315439 534139615 536731109 323849235 684161921 467922085 899568199 67182153 980066603 815971981 699759497 255893027 950190011 70774957 673631259 287105791 497504393 499946985 163234935 96257919 176006001 136335077 486118945 354708623 7572443 429002003 772838051 126520935 446622645 774692269 995319951 836141439 859293813 117007537 776207487 991151517 768441369 862392297 791559189 468813517 332989993 155951587 934981883 871572069 406037681 336468217 677618661 710940159 292557127 405365323 404852109 781678207 478230539 958881475 245072819 594749715 133509281 441816589 377188899 762430511 101132603 861813667 128647599 838272653 221713803 871403463 914599729 335285299 391753683 958139521 595210379 177361775 178835927 933098143 263190439 100880851 116934629 831981243 241840505 370297147 191342037 475765301 911204603 617688267 323860997 496338483 235065901 754046451 301951065 838597289 240524571 596435811 86396225 552777551 648807639 356542999 797118643 567159971 377582715 517365847 830900525 801173229 487999017 921282221 306006199 813777215 21764109 951929069 431590875 965968495 383211351 871812403 779283125 993285665 116933441 145555173 482405343 305720763 640007183 411514287 253126015 86395243 648861707 830329987 330429511 607944495 309904007 759131807 230774891 520187329 403172061 998062215 126330535 7644589 921129329 151740167 190233413 666748995 25594537 268170291 553059091 59433625 366106107 810545769 401173605 309115027 654553313 214758219 625957401 483365845 573387739 832591047 656922775 688613075 930930549 676288015 171306703 497285571 406053185 613287587 503846195 290864037 125698777 898836291 640674499 86532931 540274399 469038845 759897605 384322603 245380095 243768871 240234505 354351543 38439401 903082331 557850469 907026953 733394519 380998269 163736373 381467397 220449295 403196347 20418593 590687581 625130455 57859721 790806357 388184459 687741315 652116643 734727051 480605389 158102253 370445067 717934591 863337003 312413431 928192273 496980343 228942201 269548685 2231623 945646401 303701067 27926943 156784777 569216565 230693635 453154855 573567229 748788657 612931529 457046315 691551501 802390169 746327949 386513841 705614447 374797405 911544583 979933133 556364575 334977011 50314681 866049945 984305761 912407259 172775659 947017271 453302721 565132311 922814123 671015123 29547027 127093561 950988497 433116061 134561907 683479383 844862465 990921937 10989383 3186189 175850145 164771247 612778811 153910403 614463969 713550211 862033985 497796197 998073529 478368415 481013399 278846701 265807595 229515613 61834179 4598231 921502717 1797409 486921613 709669993 186412609 738464081 193895691 765375091 677660109 843677795 674891675 557291337 113813893 755944145 682496479 63892169 101631501 888980507 971314885 199790685 643256537 134395343 91846785 792834031 95394079 278179963 968730509 578899191 337725151 9332411 256842161 103615861 920625635 334017585 471591669 936413931 936560827 684326537 329419953 356238699 125245885 181180531 195753599 976011403 622860301 727283371 422449987 210317927 37740687 90654961 25299501 440527527 208124663 226229009 819989419 974150521 494847161 871147487 626208895 345540753 105748505 84226609 781209259 891157041 80087839 398162411 758642811 400522269 665268379 295609593 855257475 467275429 161805091 715482187 25674655 695709085 287070233 664938205 320400885 917895525 464676517 979157167 468293103 893926881 338002615 687932367 332973123 430858627 388934665 763806539 546210285 284617789 230169881 81663039 630554417 94802063 579837487 195918029 622429339 164894849 539283549 881550625 717811201 680778911 482608251 841001067 685686139 110086401 591660073 791284711 465899635 576012867 230510287 152181719 904174735 355458189 829336221 132242051 894729417 708792461 436118413 312465215 493386841 624392825 674262619 394304357 129594821 831416591 435998613 410809177 346869723 751243925 887384711 755741059 583767211 130439129 169529929 960553301 191130773 814083893 651629247 101615691 310354235 313515393 268306319 587293413 89181835 792050473 224511783 846890927 967009721 589552919 50584517 644699197 149467713 224164293 746996323 646937637 446140645 990068269 659102157 504023053 11612853 186821337 89937299 181655195 608520707 64262357 179026187 959124871 825025387 563376313 362660953 913913989 349462739 23039905 648292705 423470173 906364517 281871925 716744407 487346133 738309015 837815715 195113265 993924803 287030309 411751585 214505391 388459261 797803795 297030765 721728347 256099175 326406059 626017229 616068611 166310637 890403463 299924497 23269699 731870593 658013821 383611405 517996919 430676249 86169013 120238881 777649865 281366205 237611163 387037745 986914347 878001011 663952609 499410095 51670097 147563857 883019397 231932813 174098111 865200237 935866571 627285069 917695165 450562541 268405567 616120307 64742489 495288055 480469175 90189837 887225709 166480323 983079499 251507635 722229401 677663367 564239461 665755777 251723845 296139397 128247725 533581215 557684643 24600331 121549335 46641851 234616743 144367719 466362339 333018891 334431253 314008821 861471889 149976653 628743283 39924761 707436527 910836169 820220179 436013371 903885587 386344777 279661069 770593997 284727639 275508265 538302017 667709259 678019425 934304321 442792023 528092727 938348571 225380605 693602239 995885337 184287163 586881097 220830129 93483655 638540987 406323609 439402543 424926487 629179107 729407727 483654399 536743535 610375229 483875791 824662195 24949303 812994077 863284807 461756833 392958241 354010655 544697839 219307245 968569833 469788457 129591011 442541949 153395281 690217573 873359563 802530047 924855841 365877321 618908117 873562863 919980589 911725457 982359479 151197581 55499089 135456833 442283185 884371167 509236077 910430373 253870213 922052533 238182507 606343251 176035717 146319019 964433213 697014563 201889669 225501469 503980767 837531709 760587493 181757493 315802451 335416077 449605515 725612517 423110305 263069765 611515363 901800931 563854815 670424805 859144679 769768623 322551331 799609133 625877011 887604883 863884691 879344043 168487019 881197725 188236887 652369461 810996611 356657575 286313889 850841829 870426477 268526419 175733421 271599391 105168583 430924549 397830077 4602513 475350969 450244335 818329369 431377455 638110961 953857803 55168023 919242547 72242855 589211671 476166157 552338469 927085973 788194971 260597089 144641485 387612163 950533609 468504699 108500547 963409089 165848345 920192719 112672225 918300197 696756747 173326805 13482061 171181323 189277287 662479375 765078897 917338585 249405597 571628555 836559491 207492481 857699047 306000217 43569919 738273399 305708609 983659409 588974505 851039671 540674937 254606681 956040077 168283595 671129115 356085081 566064895 911370177 557737343 131161923 663826075 394434093 738704329 653283027 563511879 566248493 738743519 623827147 498841647 744648809 244887409 324009461 630929349 627315729 933569527 463098401 127075015 277123031 993964977 709957933 585220665 858355963 434784681 202151417 770658151 587831365 299825583 108013423 47139045 420858625 872741723 153364865 498895249 852611077 449948939 33736237 938166669 148188337 219772651 778241647 502234439 743724523 835837415 932885847 985664627 404602145 596181691 569049331 355670283 806226759 306044135 843680609 112620117 335866847 476985265 672621505 207887327 759310829 583076649 664543549 960106107 697632001 981277993 983455241 161716549 718909487 105398355 89838685 517308577 999372053 857350411 397088637 932845373 328257757 631112323 821033649 726409997 450426673 655292341 346081871 981288525 170859849 458080863 318875821 234241663 732150499 293154827 204495153 227548531 524516679 901689607 52943683 648161339 7386177 698549613 638348631 754955827 855309097 748204061 389054949 82455041 543561179 825149887 665000049 327819407 281024447 61592517 609076869 194825747 229140673 957054819 809038001 106677001 171487323 966597789 198482323 847843125 969335945 822527289 225193163 432452259 639290065 622549451 974174211 263530153 325153603 287587493 827826671 142499039 956365683 459391725 279001415 864087597 278905727 382055305 485517775 763319743 345625361 19073577 398160209 624755719 112802899 148888133 276358813 370775491 359959805 176951839 436491409 833215225 607873871 69757885 119438605 317969905 994089739 453355505 604698619 414502465 243785859 356405587 610303567 91591111 272485261 917940033 969027329 11076519 878831237 98176743 237648405 62190923 698960723 198333491 562103189 604873575 592779877 796284637 184012945 481338619 509109681 951448933 374112295 885863495 408084405 8857109 590190199 843954139 184376439 676853757 153035179 393363849 284701831 117907443 108844791 85362541 427827193 710462363 422291 423743723 452594027 38688345 510979011 590669235 530033415 509727841 726686673 83061939 272313207 639084969 887374607 622803245 840987893 655170289 378417367 933712291 977295931 74933955 823756169 134426849 677844371 562813037 51432341 410351867 47729609 248765193 645050985 573422157 943508275 681290359 528954751 248626301 316555955 20856417 573908827 681178999 355417259 417357107 555781767 510258797 296265739 420849961 932531859 856356061 902625609 483110721 669007133 480268171 627866467 558648387 181227205 769326979 254025439 812252609 104480309 962292507 110551243 999582995 73362721 137209579 504735169 313570905 671562563 68265179 985379545 177816955 968059739 213909783 737878207 82301737 899342387 394720019 987850397 851674589 852139425 609141385 585163053 260110549 70247293 341898367 86699945 538146073 186733737 584501827 933524699 842888827 738025999 667654245 668175887 271921811 498853795 566744005 453882397 35047871 791904095 436019847 631766113 636832299 845727811 992298261 829026243 293736645 267110233 544394533 736643505 467685957 83901111 325613233 841717537 575186989 13902965 361008385 92945297 322599875 634969525 163525023 397423625 419257113 49255843 342610781 923790355 851092485 318962285 798793053 18460875 113778475 946464851 767608829 508804553 431643887 805653139 745833967 340108345 678443653 920255097 103554851 83655623 886430947 317193303 492450775 135891367 699845065 381753991 183371663 206928795 394420417 122069099 616599575 296454885 609433627 127026029 420004483 896051033 591634413 731288577 913168431 834321991 883461915 448506527 404368833 790536083 680285257 689625803 101500965 746010271 933537513 964253199 723756941 220367707 425014837 860776701 575220857 996608317 987869227 511241775 590480553 248184899 943175829 232697159 793977899 838224373 126834177 587325937 952219219 941601885 39085769 736162525 690068159 332407063 114611213 786616517 45640787 382392891 978915511 907886957 359399991 782719349 227897971 327823007 151241445 325973745 444979899 470900525 970103575 40605795 227800529 445137393 939113167 503290893 479077309 478866125 214607965 519389107 925072205 818293165 481147729 182427043 87905051 913801601 857656715 402656693 994622599 407690051 791828015 912393285 739300535 446617335 425026215 894460221 100145569 139339431 366880169 823282951 571541751 348112741 100223025 515220891 875796797 77893707 430419587 97620343 542868153 840738683 268390185 201623201 99566205 255354657 940761083 997355433 62395743 577508461 296581397 451147941 999390979 443560089 16973785 493378609 441053903 334043627 923541491 728145011 254188785 103784617 872853081 566219293 856473447 594462759 250768455 591129953 137862379 186280383 681156161 278492929 74050057 222190035 205426451 783192897 964765713 872388301 907902675 950744305 822969881 211291681 691592665 573485155 58386437 156216649 979778511 10681979 41420665 95381701 59749531 352438171 497251049 689017121 175495543 389184691 889775243 973202927 670462939 805718585 241872223 924311241 714373773 567894829 887563311 612558417 918823067 756403217 883456137 330334515 604273749 732325879 568674759 920424223 383234651 812007285 10179083 735851985 999563409 67247015 377261369 849816073 717305121 63743283 531517955 324091539 300046209 651284299 991797475 833296193 700145515 924667555 540889879 915369453 997957095 399341689 762727847 32725881 723057213 438094227 793214055 917587153 567568645 987362111 554479339 42020837 740180249 359304789 387576213 392366769 806078111 931759153 511571085 988726837 735667203 140975549 946391235 643654525 834190071 814928483 552981231 129439899 504225655 636607259 183206547 26420137 746849483 977138021 762029815 486873547 857494653 866625091 38724649 28217383 712474465 55533895 10405377 105078003 801813653 495739783 732441891 184428649 644049019 440349855 660007925 877666761 867715519 954934709 238206887 398828639 180709465 823126651 749638449 257082493 527103105 283923493 688989269 328468095 930578877 591778417 26601625 68230595 314732505 273729701 458045519 833004471 72334315 361791631 922078605 129514699 348066637 231379847 958718263 412589945 883309219 477422955 695305713 777722183 811444443 871933343 762437935 39371195 323516455 596748821 470614567 982956393 485831943 577612863 727886553 213671147 547131195 184507933 917264655 640582117 483047635 850720567 760556889 86384637 462131999 705127833 688650253 247562217 545013695 975932635 549753423 478472291 425845655 837307673 952060163 327569709 413726161 324005883 964295133 654684175 461130467 980665773 943577681 589856733 326984073 588410857 564009125 585643377 77930949 428627179 90181851 444461743 116332007 840405113 357153737 998439293 56236417 517760227 703278083 282090193 353358449 329535485 883046123 265833893 193299415 634556967 424742825 711870971 772532517 859973 129084973 927761883 717596427 732416455 733096497 626067033 229589127 270614949 647641139 723509391 544456157 613739865 205859451 98346657 775583641 732668653 539013147 132222133 984221583 218056429 451239403 379159555 203267549 141667185 332057483 439945663 263765477 75222293 980427363 426865201 352094549 221697025 335299747 704412063 692496671 138735843 465458245 541543773 920498305 114562543 689319429 304388807 942130689 970191847 186794097 594714683 538519655 447656209 954073301 945247783 538596811 714089015 599006281 283849723 65094279 263660979 164939953 20578099 81782335 76259939 586042291 317096527 653970657 456775853 123635133 27656669 537632673 983134077 857760013 747104107 218169849 649365835 727887517 298463893 685029041 891081495 266011961 912262143 462155473 31799141 788813425 265590353 979734705 451048771 385819547 805880125 830751467 166537543 617110235 770868351 283595109 40705683 192372245 841450199 163500105 37883337 300337149 747004179 647742221 321205273 582544649 359064321 197402477 715450425 188624505 149357693 103920749 997263719 273954647 451265131 681395033 578900073 933196147 255487923 182905541 424281231 368975971 774862919 207578511 443120813 786965641 979415075 526318553 132405795 162268173 309950023 838876687 861892565 484477409 974078913 858923495 391854389 275803833 220150943 4255583 89919797 59752985 289262333 477009847 98150743 588489545 155278847 712829053 85827743 533348951 437324493 714339973 2528923 287845149 442659737 249457389 958565985 10068539 427916959 984475159 592924563 422234137 197996321 378176689 491097939 364780009 569263719 326133935 859023697 252758175 484470981 211814987 184222403 169601023 151498391 309833483 28645223 709231503 326438203 481909949 77128323 906109345 895230495 19108979 317007335 147806797 202412981 367284105 929472231 615044723 5448819 139994275 138904931 171697339 625410017 250165423 784470721 244771477 960080263 535719905 435483885 715930425 217194485 700503221 962977121 706010793 853461959 986062061 649992217 781537451 238562977 887072409 38604441 830496721 12741675 544501003 100597493 54141553 559748887 265012193 464275133 567127983 977711649 755092987 354291221 454936177 350983435 50816139 650306207 458388581 256042909 59398657 402958475 330220295 479081133 358520603 500935055 970730647 460468497 546066909 614409705 16834331 111239343 137557651 910259041 695466339 653311343 180960977 208589379 888915467 411617347 117055605 124727397 124642415 146941479 346838689 500767783 421120953 699866397 771225281 487334253 208589275 277034285 487222157 695069353 511430795 707129709 641581053 862641103 339015241 588246771 890265687 198121819 868038495 853705189 717323561 282765655 917910747 339048043 363491907 786599505 450382231 696920503 474206149 564820059 701580085 953340679 987960593 589407257 724172569 597280919 686826453 735521709 859443573 910405815 395804933 751324103 50432067 350762677 519499741 7083677 606077505 884928495 544752351 275097327 701168119 198599875 913013979 238100223 152791223 501755807 662336995 762075551 302824345 945599989 582628947 223043363 955236989 665112893 49885135 460469355 263396619 678789115 406272583 439812573 87168435 666023095 144482539 546721895 514392239 488697095 661127479 628192381 524572923 208413825 577206771 549872417 738441061 14695883 236135977 618313943 399602553 69611917 555656237 853433007 435361935 51007867 208439453 370135355 438795467 910160717 536242523 226837919 835513875 652732871 407824019 217908349 381326615 755855793 127962555 955222277 397611087 477179617 18187407 472565743 121812731 893227821 770464787 532527221 13423143 922129275 74546069 604955487 602368925 928202419 390222757 638556669 541172987 936485577 207983395 812505893 677797021 795592629 764411953 700620339 222095023 800366203 870084925 706516495 815034909 216982051 763515385 841728549 733633443 108590275 68336229 554770287 617187521 409366641 788825025 589514089 209572029 45322835 632259483 736559385 279765927 680156561 374019785 576875021 416867161 399150175 220746341 268710237 133374069 698855669 238986453 839597223 503828319 377458839 647695555 89826575 987241801 473546383 648109093 994402887 727563565 565188909 24199477 938473345 520347337 581839567 373594491 350675069 28463527 77445845 978951361 269922435 88965141 974514857 764120601 117025631 742149677 225702589 800329445 583241831 248596687 459544975 433621445 802920315 716800675 835143323 21615525 841345025 873388827 899955569 811947707 656841191 807482731 972721313 72532867 682381987 767658391 476698819 257223617 608552499 477564773 722687869 803871617 226830877 970375529 963864695 253400599 337215599 797994997 707488869 929615137 625775809 913035311 586627071 855531905 86025521 297545469 481840905 926100579 306598243 866216975 218030413 531818047 720710537 536048861 771143581 452477389 268549973 988201897 530203345 799043347 415644423 28465273 702591695 454183005 726098023 640960031 457739135 447627585 314983873 47127859 75108309 38151065 460659949 366627603 273392841 576056457 519091271 959244011 914991199 609494911 954448823 887637673 925521569 955529519 186508715 991526405 937728673 698620563 509152793 555877759 456824183 699330035 575775103 764832097 836463433 317087191 119782371 426553019 358664257 649301527 308407251 52267107 473516429 548329165 907508071 805833725 284993645 94197087 929508669 166012141 370554143 448129911 467505531 569357159 663135213 815844875 368252109 382025057 181821485 935622743 217041259 169952667 528151351 278316767 328272405 749748895 129045869 109447277 124267791 287871931 323264825 277505305 611243303 215387657 647030287 253745983 833320627 677367657 370521959 939485825 682072725 859358597 466276293 489624779 605349679 412949193 317336499 933177683 41811311 663638385 602111683 262870935 399952335 458821755 878026893 735003735 569978187 655151791 649971127 350292129 337308267 830578591 59380971 319689 369260089 938210979 934632409 15124845 489794383 773983707 753419835 394819183 490308299 543494447 761188053 366201341 854753619 93996367 994498161 52152713 252471315 585836213 515625183 439856851 21440965 202943647 485865469 498472155 961541539 237622293 61625515 338902255 210327159 854060777 680775125 686481829 183207309 819734195 415017835 169689559 806681021 849669587 881322343 957732265 236833891 460133487 818557133 987727753 912080487 138907515 129729191 322327851 262309687 279477165 684730631 349509259 856440777 995841671 990381573 19389675 427827099 919621455 159952073 698729435 262963123 359368215 959059575 996067373 844692897 17678005 810632517 44204797 349157497 771785165 868264299 965591729 794963419 585198019 736146989 116383219 414843117 661099979 610766549 764740281 64295771 512196315 543258549 552791871 632135263 396510899 858804519 256004361 824016819 193867485 160068749 445860835 417233057 486971305 299351377 21499617 899990261 664161581 824639975 416802145 600908807 600547917 113743561 505211909 819831221 773493165 726802295 107903419 223146339 76093631 309806973 754753717 84409601 997132477 666641773 284730737 411075589 762488741 356373983 450587059 47041133 303098689 368738427 742046601 712521663 868485151 676763365 580870723 485330955 178948761 93161427 148399489 152932581 319055823 774166525 418874405 208130157 963633323 291981609 96380765 310026825 979285721 314077979 25199517 305876645 747731923 217067691 647148447 623597883 423350235 113569969 442468715 99695687 688752889 458823953 301814089 876853135 870827003 226094513 967404753 132071265 775501179 114302343 895811549 993534357 942011609 743775115 833117587 190848135 165710141 210282947 886140253 516225567 862871 708954165 801535985 816405707 725125791 502222323 463986249 933309059 419149783 912726555 755132077 504571329 87708293 322865359 208760231 265164429 369168827 771268149 451886859 849018743 343070799 558005635 164397813 170462355 447590373 303836147 66227403 892422273 353795043 561233349 97375801 667711335 551908473 199279941 286470193 575697907 255311263 382165957 356546545 865463897 68031509 890385567 570598909 227465563 720640613 908230709 489597217 958134077 602117599 436110579 113466737 261461709 512561561 556054601 857254219 828730979 915402615 165945777 725873233 632583389 303864093 614398383 497330289 240962207 521421055 451407053 231058141 213969049 586150739 508390045 245989141 394052929 743834905 800253115 703817177 719523735 100440859 436456901 472177719 952627229 573766375 580842087 901896325 400922085 199971799 392752725 630359901 253582211 77535245 749430089 185445027 78457367 98210669 892335619 434254981 731773511 761212073 725680463 761340023 626501953 311465531 708717311 201390133 51660217 671776097 585567469 49491137 272691441 918960933 734056957 339339627 459707309 367141717 184784661 18216645 583862589 241102219 534604331 103118763 578696821 77462567 375279929 274636355 382490803 420750161 551109951 829939447 718554337 983881721 387181897 40705917 954163305 392327383 657512297 690066385 983856195 408692589 23769531 886080823 441795053 447491331 809473885 55777595 682890351 359473063 643035003 376785073 733247317 214283569 640681547 150241461 107553717 802054213 563752449 854310317 857322287 892726601 251327461 96038981 12989673 645731693 107949373 545760367 396989073 849625001 830315101 455760489 11741021 447692223 28623263 360908729 429232907 130933045 770809957 214461479 119169248 925504605 777383451 6163145 357552301 897340749 880628017 715159293 263887815 516969193 276507683 375415141 682554381 339665877 209038449 772891375 992697059 386473861 779986343 526843343 624967737 543108911 484701271 440240255 724614023 216917205 863732509 986078919 385313479 700839483 838184855 389523631 246889859 87818231 824906611 830830991 568939975 959540317 117982561 79930625 620475689 562302097 157857819 816601065 269862857 243686775 489774439 526297463 559969101 583418051 355617547 485739547 101994467 697026537 525424603 630470289 102325569 326580015 765235889 864148705 436220837 867229847 508498801 267100501 234715349 416315639 828825603 402574721 245151521 576448227 258308953 879612225 603446877 418243517 985124461 272374715 749848295 952327341 285747525 389210201 528657065 257598371 860801511 656400339 166154765 708405849 422012263 540907297 689286923 436947277 996542689 940026503 184422947 163158215 418047603 284768407 631627609 505584603 426141259 882271007 478835003 185142107 318927769 52478525 946197983 235920109 977052569 229366105 426636263 871420919 779621003 395764249 999004019 409815209 545248443 761938295 383804727 651602173 538199933 620480171 716378471 493325231 528267303 571318843 863166657 136970573 536524573 134173941 995438475 724637987 407198411 519989993 164566165 676953161 498648225 882744439 46903347 598430883 767824923 885122883 987218245 242768855 484973499 843166007 696326703 58429011 96690185 155811719 789522915 6128725 286635673 824376243 784441043 707635415 95090439 589195899 319254017 524711589 101938161 200399599 511375855 134471503 146595333 818774369 903431089 131590187 591288051 203843693 262760919 919132509 445228663 786241017 381180293 597338825 79056211 418016303 145778525 802585891 899451983 867142277 121811599 934019809 589095231 51147447 605357519 601480515 616258557 985342921 827999839 234160979 442825069 512936199 102075653 336331489 611090039 542299397 107678987 174687619 669440781 617120927 753770829 822736283 873244971 564136955 844149539 852624721 381393363 206028677 109560185 941351831 131230733 44398319 130213305 746451745 522591725 94435895 988042973 916304755 709824911 607062177 423695969 316282837 252705297 77481913 375780169 793312853 659729569 762047573 534403369 196422861 630550383 338384271 512759057 924420061 160481975 284855243 507275429 377755117 797562299 378160567 884312327 416877615 78906307 559633733 693520359 178093463 845868325 50841269 687980155 249406953 535264823 892426119 847123585 541321899 354168415 285181833 756531007 514708015 602526979 322348497 332955269 21488269 223579291 115873209 744863655 240164005 123469725 95349735 958158469 838681375 28433803 640523077 606658693 853079915 666473459 731456521 46438291 677758145 920005987 762164909 943093033 891798307 577964153 14608633 135452481 547996759 311978707 905776887 62353253 637927151 820277791 576904187 644901793 728806209 260332815 865041313 766778253 345801841 273612379 911941327 972073799 122580837 543190981 513459375 700341875 210483147 961885467 659907511 945997121 481796383 942342443 920778403 72885095 895369121 760307409 329602423 858076451 329217879 398118897 425428095 494743101 354206481 45726323 625758033 765031167 249198443 193785163 309013445 771315525 228435393 462477681 147052291 743287657 656375103 669396199 667862647 511378769 822775249 2346939 140461267 10919279 593211187 478102779 233469719 965223861 710676451 496413637 227089283 178955429 393331243 483293239 530384037 876427331 111476505 578454655 81946195 369522461 916628359 570763215 892653735 161704267 64659223 668679007 367537925 485500779 328120621 224790897 703810843 808535969 491841019 234880083 576788957 715074205 995756411 902539091 736807045 116557973 634050155 284705231 649572763 319634503 528234323 722685991 184482791 424479739 297823621 329827525 697443713 136105085 454847513 419240219 401047235 977502755 230756079 50217637 153975635 453169613 176428463 268712421 591438619 83735009 125415625 218100581 566034257 260428619 4840567 843957429 101690225 46399109 474619317 340527987 596447807 703813771 393773393 469440061 664477383 413209059 224437975 897176001 109614941 555250587 359931807 141211057 5235357 590759499 83934157 203807685 354069101 101758225 623391559 122870977 944877817 695802001 332561597 444497773 122225587 87245819 118874279 467076511 627252825 597861381 331917893 850957103 137551855 670764527 435602595 547337469 255823809 418830971 121499019 767523319 547612773 736226555 286717595 989476879 432355507 240380485 960472111 718549309 944949971 9643445 631309427 42313349 114554161 850298417 49271891 882542319 908726145 657545003 630496395 373434513 55782333 203287447 753429659 5432195 730452781 727465715 636362185 705123557 447674713 704845381 638755365 454146023 718647065 41431835 170128265 110263477 178307975 117267085 816251031 62577549 77474055 138670137 596965299 778820017 883243591 331080003 504848399 607046763 446583099 208434523 541186213 136919563 48102943 854288313 191619379 971278063 905274997 523229719 261718851 542386807 410521613 164209599 461471011 527343117 835845625 392894077 701101293 981729317 998470037 440416167 6753665 996917559 566734215 374342429 418859911 298296007 625533625 644046405 569994353 824528477 71592291 121605901 759411571 892639887 115100155 748196075 652883601 356380661 427106379 823440859 309045137 928619057 689857629 435355497 292485895 522926317 82406791 962957213 331310405 305953499 953431393 691801105 247283569 413931705 436800211 619447523 660848753 706918979 373893897 155752887 437882357 909735753 495473269 527811263 933900661 952907419 27713495 306305453 100354867 19901715 296611631 351626433 744865589 691986577 14319307 173974979 917391437 942863109 839530559 963147007 396266771 495645531 724977001 321570381 851231461 969320595 381105517 340272137 289763567 547301547 451467701 447155227 436539167 443061165 664405237 867389681 415568685 776934575 624944173 191228031 968172441 639508681 149547933 323891015 614886061 459618845 309036501 539051343 636707705 93238997 872173223 526778145 799466707 357025317 844704303 54343895 582727775 131452741 157444049 893435151 997830529 274522745 424550717 404019693 30488173 909304843 635638627 985263139 240532761 86374219 904160639 815652323 792357445 630543255 315505177 832720367 517661307 133021007 132872699 675527305 760438025 984597213 945955641 784368259 598897929 339424181 501411887 163257907 652662363 395500367 308679299 530371189 431697577 642668591 696218657 89187249 988972639 980347103 529772603 348562133 807615417 464114929 661287503 879104599 592528821 322499583 371415329 599561525 308458779 421076651 823442365 350079477 960680317 601054623 163548281 306940839 596558387 293480079 895358957 756060383 52817757 238140211 477287937 274933949 535053539 781961295 771229921 434081253 400535925 276289197 147931649 83494793 855334285 370404895 209322267 6601819 856491625 669972095 128877365 798818205 311716625 405838511 75056541 513352211 17466199 29599641 380622051 252854539 618563795 13312305 868797415 299553117 521762789 693553007 566260429 419285605 826744499 583174487 135314431 859687179 40427569 909335539 820376371 864247485 219858709 892277589 58575459 25977457 560089313 306504087 125289175 900809125 132474075 731743195 490792985 975783263 108107541 389670731 673013501 960849199 195044709 786496027 60161183 166896681 559298671 191519875 903014245 287021037 712379543 564767175 634555385 468503969 706645265 463080241 545562705 48382705 578790611 968783635 655388329 466716439 231357855 676764103 143867525 465637325 923056377 565516975 882043825 469394013 496683319 112197431 502278465 716935827 256344685 770543565 204098705 30385095 679788415 259064049 21242439 133984725 184562961 191021601 131394383 86752295 685869717 686132457 621494235 724520615 580909893 271196635 962956907 95828685 61643551 572762513 34392255 946984599 661810157 253582765 21543141 635151755 161148989 250005465 862282803 164560825 46126185 629357257 625199681 659147957 419690387 319383351 495214585 958709407 994682015 363137763 475185795 625031965 487521599 953770905 329526867 859787355 891566827 478221355 419970089 87959059 870341093 143398259 902726661 764378751 799727669 661905235 571125815 13344617 863649961 965965749 687002703 655405343 147181019 46165389 337070125 62415221 750555947 884897749 938883829 194125001 400453569 822962317 769224721 320600323 764950925 470163393 909509175 436987537 618901063 474999427 850158691 430480745 332615793 478877165 630837465 948207113 679887441 844560929 155329571 520575097 507383545 771984201 874485785 458592069 553317183 379288729 179333335 417112195 484577991 796373323 623816639 77805779 50276087 512415647 569372285 777455195 995267071 717970913 932937735 991916999 21471191 59471203 911452057 745917265 707920191 365074303 418253751 421979061 734849217 680944279 420821295 932428089 477159853 61452567 416253457 749620907 536388377 588154479 144775869 20092003 878620905 933601817 515689173 552787261 180005569 693684891 582237253 460785059 260710165 244476539 906308677 130474623 125506075 130218317 248661069 513266761 276824275 634743467 700989219 216185855 125127687 837798711 347107797 647900201 146006853 474767773 810239155 182326739 98120167 546162061 33980509 297070995 890913295 106836673 844015287 710115977 775705505 113718781 124123627 894945627 921568591 228681229 827154799 804765495 19456403 865268415 966735613 801820369 306640811 131874799 561333661 472165227 445181601 974381695 427704471 3361737 304334915 691217755 160951939 574428987 346620971 268308595 307016765 484613779 754064569 807523777 907208677 677615925 773435413 171735115 618254829 948802051 933258031 107764503 14580741 142636655 543548607 667691065 127235625 196012907 721464391 244898763 520245665 633985655 254320911 684294895 771738103 77037211 500497701 226541777 322167295 892567395 37699169 14059425 605519063 798736869 879819111 976220569 241634017 502629825 790847133 575121407 383333579 354279965 472811827 883857945 917471879 822309031 964275745 674014779 533125203 723286165 268754217 329310911 723860403 4856227 752569809 371036937 112158835 852336923 756505195 485138559 377030057 986940619 562396941 33492887 173223599 906011143 407084699 918132939 490821161 10659503 204343737 965209499 313647877 149601319 865208283 712229269 34520437 682880095 591648823 812527431 60437497 542718157 775407823 160422733 87820881 737166193 700551015 800856393 430112909 993098703 399103125 946603751 650852349 375384565 577798317 682221271 91498049 695037817 241366739 768535509 999644733 110222971 404333035 833498529 784235291 749493409 147483561 827229191 769748817 916961305 577204609 198988761 677164955 133208729 156450233 127915507 744995323 538637919 674120275 187412531 2318529 46083377 175275557 676205191 431688575 749052765 725202883 676129759 516996627 864155323 795603599 668630839 45402013 528865193 731681201 698200207 1376655 229643789 648258329 827976691 527266969 752596051 39851137 745701495 993070009 39348339 631943783 847372081 256085811 573762797 96955155 963661381 484593043 876679107 665459097 94442463 792101037 815508871 300097739 475657519 637904543 183433807 629811279 920320369 932436171 19486391 440392587 631484645 910772959 863326951 299678895 428336601 724689357 556406157 331180469 47742363 419280597 711915743 834206041 454246791 589153399 69650843 414736425 818314753 491036545 371840519 576789361 67180911 879468553 156345587 820588105 382643017 652158057 546674355 250045589 652582149 13218885 185843751 737730043 244106021 84633995 828862387 298284267 199984693 774300527 835197001 95036829 603056073 397526379 993424475 695994641 328101751 471819335 505789673 655293969 626507235 545891595 924882043 56899117 712600505 679625231 177843741 367756987 244292265 342862319 967055975 519975903 218488431 882389643 778370677 333816701 431681485 291205139 826694383 975868489 703211915 952754171 37492483 392124089 875542909 958636543 177653607 596001805 632723327 888422179 453102937 314465103 106315887 471694515 807917473 188122191 503380283 296005955 230688137 842559139 537973715 418375089 392913387 677993133 637412403 947721759 481401893 803218069 813684061 102570745 732623133 30968653 831087193 738964469 986293823 47896969 637782333 996077841 155656837 139472589 813174815 34204045 470248297 527263329 341487139 445689079 360179701 50007123 343894645 863028259 828212149 729183869 985695559 864440879 313519553 651142015 123713233 594922877 316559285 795006401 315802709 453017787 619812025 520582261 66791201 892913117 853571195 967313551 824125315 650608413 506306609 300686803 54572503 980286465 844147099 582835143 854934401 43302487 255906299 164432063 462402537 545952561 898668323 219394253 51978625 346652139 853261415 861346519 130927813 387699497 262158247 322927491 869257527 747282905 749781575 868371521 291184223 44825135 506544185 965981769 990909649 641942695 150897391 566328221 859591465 339533573 327501419 903709187 912431879 785964883 184065073 446301197 185744915 913418473 803402831 586912785 154293509 513494371 528052829 246768435 278470803 414551969 166074999 876936281 585219711 558734037 163263047 80551729 660200599 684484975 227876343 440750391 821864361 559127085 363236671 517270699 238768787 492223763 567787101 964793235 736817459 86056557 538355479 931308223 124994935 77123023 585226173 240345291 993114705 535261975 659197475 960466195 595896505 605443431 453756585 521444035 922319025 238061101 794709301 262689735 649525319 80024603 169522229 221943771 959226505 839378991 716821917 909569917 164492437 428769453 464831471 518769911 321168011 601920547 955341615 236114263 228553365 726594145 741328363 509757303 842810853 100704647 381086267 393878777 719846327 450383609 431839931 548586817 991843917 811527775 588930965 833467009 394506223 365768371 812599667 596778675 926123507 286533423 502871693 250224277 473868719 148345429 739624353 697088175 414931337 606700277 522972919 873920595 306448873 556304673 400234331 379910809 708742211 114724149 983644963 992088929 758371343 328148181 288735535 367364691 585430991 578499057 568292837 573285855 553723409 583650745 774062641 518324799 139684451 222838697 417180301 285219439 892444771 959875721 964058101 965998909 52678321 279200099 861337327 656519733 206063095 81412747 13378697 762221231 141808103 213539999 581381467 215816911 678024765 981728641 53571203 563963003 748737979 859949917 749279909 749428835 729354539 648431529 821244145 659047679 163034717 935987745 330087453 186312079 486959407 363029963 407249255 703889183 833695873 904904175 480037783 450059641 665155901 684936483 672766457 83388987 673942357 584128581 683904355 281368513 798170309 48009079 969451829 281410103 351753359 999145767 597783637 142689417 940879805 50463495 893662257 682146675 167636575 681170711 690684351 419013749 18677907 46711447 855283323 782516437 942144889 967654167 648950128 455352483 638220859 164134247 773308969 75875769 902020875 289243815 235871677 920784057 318779943 443725115 744089547 993350151 411184843 245718477 668157303 691050709 264480327 791668819 506540145 223682589 896960747 918110983 289870831 489183133 725755151 859544433 539764145 270872287 450754073 148823387 385585401 666277937 376694129 116329433 589919641 243906477 243931531 516235335 668990183 401071667 272122079 95210827 528948415 460697707 467962097 657818063 857544841 510290887 678531915 887349257 719272499 792126843 357785213 292916853 882707249 601901963 398172453 101823191 285396357 276739007 127082723 149634363 884768947 198293669 398584161 274408181 219135179 177602709 163187027 532054947 820221793 444024499 3244913 483138599 591990421 844060645 845122431 886772653 323334155 55293915 800644933 981588141 292798963 394650637 223170969 766663647 239794693 105568445 78760275 442659657 708782203 242613233 624510037 430010681 159202079 85488763 419824777 837179199 997430333 527578867 903906531 833546043 953656747 615468215 621220955 93868111 188366283 433211123 482693365 219945449 749536381 359688085 165199035 879186621 646907445 733147733 65493693 184167365 54050023 904626611 647616537 393926985 668502801 673670649 88427759 462935505 466128569 782050871 329042793 390906165 702274159 436567363 275237051 79587215 399434823 77259457 518794269 183219269 751680737 130410005 132313555 404558593 114496097 250496371 529229351 173116089 456911737 731107537 577425003 124168873 218382427 910572271 64862199 626309461 110201799 916944983 237888305 630309767 378162693 468801111 601279107 458700631 951131105 397410313 979282267 743599905 665996723 785501007 443685689 538470535 462184535 296482253 247229595 558882677 125089333 124369909 870675979 773441827 521463867 161678849 696510239 10727689 823733983 295014127 634485103 103708653 938782495 968858503 209793437 217875675 301221249 713442139 225441875 945711655 970476309 935081925 180390725 176472175 67842159 590228191 218310187 221043605 12911279 554715799 215193545 469390791 526166649 943205277 973555433 366956663 988330239 512305765 916527965 318357349 517209331 962655283 175680255 328765329 142776727 541836813 85871793 74853449 275104173 105818053 994510685 667430435 356660361 61527283 817134327 905353209 899271419 496001527 523646327 138356719 764791399 229884151 97829345 198561907 983980463 962176231 96597823 95847737 284581443 632992381 639251363 576739901 469102873 22500155 238491943 557718721 87770543 995356263 820333293 733619797 820151563 161296403 103377439 433016267 175424189 29100055 561460977 110542399 101307353 371728657 874138013 239989271 122924543 559198061 972871523 625168893 356464211 202581079 759375759 586176487 339355783 222773963 189334129 955800593 191070157 161419913 544514151 467156991 200581607 740321557 959653585 321516413 349734425 875574981 880129307 654054303 700788273 507003309 897464245 253008835 194077575 790028465 694137625 275429515 833286135 211781237 684694731 160535781 615823593 241364587 278386773 417437443 996417099 745567181 583049801 308698979 384776083 984579225 2462529 906358729 569083583 799211673 752222943 341878339 226019671 665453147 54277327 320314913 826104167 151845435 364071871 659734275 406254213 287823701 544979567 970038219 876631761 922625171 737323165 386467239 738876399 654726565 35550229 770211595 686147601 818112515 476012969 429065905 98716395 870482415 288692787 224506017 481778361 434628465 214931349 822951203 930214213 825997143 636895163 476843983 21976795 626187323 981503379 563423359 426328915 244868989 976365085 126584409 887833355 316688965 973544791 397591751 640806887 436742275 413192013 137971839 576896087 746772463 920755473 122346107 565702737 641012491 432506301 86290691 785373779 715467805 93961587 262838433 863145573 630092343 289151071 298251049 477955859 898850865 865747377 736935607 201553011 975637417 918241955 88644785 927153957 896567307 27729273 113578691 413193551 711443845 774218365 41901023 499142557 141770255 371687169 612778307 582967881 515006057 118270559 275470195 121857039 125267229 712341243 955275067 692362549 857023867 93105467 158746799 310855305 832312473 684257941 801468461 359600227 527395419 289942659 872265559 81578399 297743973 375843717 862840859 629552295 394574635 693574183 624318379 195375205 627832035 7618555 356190087 536432465 380277389 949263003 189899375 750364777 52174579 729778345 563673457 141552693 170426787 328182993 464184547 294254015 214538745 609082051 43871071 287679395 821178385 601172025 9301193 165560059 691463125 818396665 187044687 483948143 483554805 651868361 822652005 274381099 967907051 793961085 576870855 852225513 486871029 508432111 689388151 371178469 293628957 99554561 740358085 801048037 557375793 775552415 622681667 249697079 554600651 604737209 114691789 444855987 700262731 103765577 700164489 231973303 934190809 159552341 292258017 494553383 458913381 526267107 813122187 131510899 111572647 964030727 948699267 101404307 586531105 76608475 597645837 129588993 797613851 530112641 259532469 324295365 547554467 421408805 847422287 745183087 247063955 420502775 961209079 489366549 142556809 260122419 876198419 523257427 399865329 590658585 874548559 14048081 636631289 640845044 366708381 343161021 930664601 845026841 854505533 670507979 399657619 349477855 520012719 248859709 58884205 370534315 924837057 70543191 169976953 31600867 746452103 295333097 475169997 96443391 709248095 381832263 7461453 147135347 492244203 681644879 997691293 459739335 661509913 100996971 267074609 602153857 359109917 506585221 116164415 285108789 225092465 126599701 972921545 535731581 425857501 611975195 696300693 693075707 313338985 290148889 654525235 88121947 446055533 551283745 704838399 599861837 128019331 473409481 868321557 552834957 850222737 421019949 985076319 693299163 26977473 793141237 738481807 387849989 19146377 543998543 636319001 131686873 718144675 917946353 295076931 966473011 487397143 499158295 432966159 377828085 933487151 746177421 547451731 430014731 690031999 248684443 282336419 37861477 467633379 809073435 959356769 700894207 469586817 407534699 405766325 698370521 462026435 556659567 234818191 760147457 408592225 862963353 691654825 859456389 330066003 409448411 897709953 582345089 521389023 268147637 702798687 405248537 308639377 192282159 263173463 630053747 342125117 990537685 122326589 903934663 133934849 513129663 669462961 257781577 523607103 150500745 103739679 113043265 252065187 999651419 781369525 546365173 699815973 100684771 71906925 866694073 852399357 442614359 818738947 931913961 756535473 867543669 397459205 31198947 795480079 332953731 118434239 919185941 558488871 4163921 18987593 192883695 629683801 744809779 818755207 856308205 357885769 793514247 749151775 166779023 935782881 462990647 291573633 433206371 456431957 425101997 774157541 234072311 504752421 410154467 822336843 929043943 166722065 32592851 518113661 390126039 7084841 871134471 776532235 160060269 46982847 962318475 63814477 155116129 918740335 94946039 449730145 764130921 827226399 34586471 34223665 724401735 131985913 70684291 641852783 626357959 589477747 976684921 518546065 179736509 901586249 118454015 24668375 853406463 439379583 596688979 278199115 589647219 190259297 428416059 731598781 210772479 550287747 162272263 646090179 852644507 313906369 908217995 446709695 96650045 493573185 459001639 147528665 44426983 420661359 734691521 57982723 863803045 350630141 70996677 524301297 480356491 943688681 301471275 732985897 285598895 116802679 214714483 546077933 301680183 711868467 793611425 508804689 132490827 76849139 266475587 951138863 712424221 492534993 861821553 836484899 754872553 634155825 508536519 180763543 443113199 98398145 562008173 892564155 925677181 175678067 891774737 747940743 835825633 585780103 310254057 921623485 358050681 654890109 908637875 600115939 380685987 673284389 181602487 792800589 678843085 191186063 529840575 939709197 214020711 447637019 188299559 147437321 888707053 759115885 501894345 683488231 441768161 507792495 501872651 359079703 899752651 509032535 321704671 499634641 108317761 338122399 399654071 469995031 429819865 124271887 68365717 448706991 743121721 416029105 553327357 206694699 335723529 8613337 243044093 38147299 191662843 519440675 722403117 269991413 815513291 728105589 178795945 218752845 212654395 966713081 400911897 40005271 79384595 787904805 675552427 918513999 168466985 584895413 429006613 539172277 709288019 920474285 506821527 735094223 83325047 440495705 563978739 520058989 960423037 901640783 178843259 925860395 12428631 477278311 895851267 624703589 222187521 99208137 257008619 589999687 737458813 215198177 970034457 462086077 89177299 794373473 422484217 62364803 394746905 23428425 625187717 190709527 727999333 224574937 712082233 590089667 987063005 36346271 552491547 227836821 500861609 276549745 844346041 126961001 747518459 502944361 292786475 476194523 984295951 875522283 766441997 152669013 328513319 373959589 833551239 660800263 282486669 753154443 607662153 660446699 209001105 105206231 286306437 322142911 900978065 921588497 393862907 875545611 576001259 195207681 161016305 549241121 485862669 770310847 49069111 76128537 301351785 560905125 34398755 767375315 329883511 344601177 327778961 164617975 901743547 394292421 101066215 639917813 888174781 620403231 673980183 644265991 485444115 573629411 523673749 256576297 454934867 82210005 792005469 85275945 718894371 699336705 142412281 326349203 123437611 775876027 495858551 132369345 443022367 752558239 876114027 864533457 134950071 743696531 645352435 307721647 996558517 783370179 18582201 264689161 377986279 972376993 766168039 390912855 406766365 54763499 184527925 7792857 285057839 663054757 705331425 410783643 749244931 953862683 391911603 720502119 651242113 480315363 918681335 443920859 513279133 255288789 519915651 213815123 149636687 830724635 796939447 836447227 157253273 5952795 722386041 59166911 592214665 425904271 481111863 412615259 124419631 667401839 426184677 599593551 135390627 625650691 830256645 502364129 244452875 556933331 212879515 925892385 934417039 429273015 914905399 369951723 859134307 517947849 553639149 93223643 134920895 827021165 374699355 609823835 144818151 239807825 246880171 472070555 779240995 44679017 441318279 150846869 312223177 900363249 506207783 840390151 374283057 368205419 528434507 283548283 354497467 410355367 660015157 512250175 956750039 705809335 232834231 398805613 529681137 460230903 502084135 169685733 155080327 770161421 436317793 670283087 117383963 585498853 659294413 343608605 638085175 652163761 775874903 285941635 866700397 424399599 608731001 64659589 854194773 154360673 726066479 91257835 721791893 71594519 143761919 528295491 808380885 344226405 763655161 668230119 648324553 776610275 685855921 93156341 767727657 288896377 596855877 287679321 212932793 654875219 410418271 509993409 80433987 815767779 843657513 219665061 33781911 219890665 494810715 596000327 511176595 13151589 761998389 973503661 277170199 262431141 914213499 67708073 307743245 917737535 867250555 103540947 212265577 36297483 173948683 562279049 895045667 441353523 208852363 954220791 239224639 238240287 895328481 903179 142412231 198914179 195771259 327589245 176306893 709326175 776202575 518712781 128270697 42118899 556391131 347173189 102502337 233010639 915921445 978464501 627406333 64997317 597354941 657678261 282737489 537946353 611573687 666319139 743574773 912088759 492449457 40400041 484579117 443611847 295527125 185729657 526690371 418688529 997146317 720949385 981179273 712043985 766671571 520795033 99798105 782723727 779391393 324967475 804565269 258448661 269675905 81120165 407422503 347131255 16203071 539749129 643784963 808517649 913307443 774854721 354873633 750871177 17993785 252442865 331599621 505482955 321663673 258475915 433802553 796808201 87507873 785567305 298284365 578837441 248061799 585070121 404754143 424930999 888134921 676574707 150474383 443073015 960381709 138468667 342281 711888343 577580675 384555861 575522299 418818287 10466815 808294497 547282213 660113193 575839905 303301707 766343493 620696235 992408333 354765251 374501671 795155183 746759795 58187069 635968155 757716397 349958027 373914621 957130623 604740075 837150095 801894153 788355251 159789303 817508169 182277683 24753443 63234913 624354309 541741331 478535869 802053129 854019227 465331721 196334977 302501651 798769255 863285051 159864941 770142441 989084241 688163741 62567565 77394753 463380935 684058085 20154865 566650901 424209343 318400917 173145783 195690157 666131895 823877107 254563839 911562387 841101495 904176913 161954037 344680603 290041419 345620679 160874441 40125409 132718985 436222387 763445941 276891339 150172689 162111553 19631869 993938947 104928519 194746269 294326763 966483839 300906525 101351107 920979921 720168315 586827909 84366195 991066889 357675387 387202049 112521521 774811381 920525131 655564757 252641363 397067519 678605823 777307087 733938925 202129307 550521077 615554887 79468515 869782849 539527887 668211737 495097305 211260279 192040057 868197293 92422209 442558403 65210921 585871345 580969045 510809783 910177373 441882203 161111059 846380273 939473109 575695593 425914693 268371985 1510303 233685283 862155897 136290243 589405713 768128275 896754699 486571191 252548547 359517781 504316183 163602343 898460575 734968067 358792327 679805015 310811853 252636355 42246155 177233041 112606657 612941255 520211227 261262631 805895483 482690497 716445689 183019763 925573947 535818995 446278317 604462039 540136465 680026913 261221381 479019967 643261261 92155033 976538267 242755995 607048913 192753459 447508943 983615077 533294011 597321037 428723401 309630497 573908859 929684683 129859449 639731417 565319877 915878429 662897047 511877535 493967509 957306681 608391589 900092301 859798319 912524957 438643177 920997063 165382431 436438097 502476661 644865395 642044473 370083551 55705377 242798791 840762521 713222243 7210635 777091579 671595429 958353271 779383583 118144341 306097927 580042817 886982923 450131739 234995125 670174067 722642503 585654433 184932075 778307905 476449171 589495617 142383405 485381735 918561657 233796957 979844937 984991023 759681865 114994527 282403151 858873959 688896537 912507579 254512031 529605219 279286733 784315627 396969435 58924033 796584969 514570351 66493423 65423273 371387201 4945363 157971731 654251593 42288043 558680745 827184319 7453785 354397255 744647819 893791163 913002707 991095263 836683293 810197263 912784447 927714305 798821893 177596691 484100525 809170441 782829049 750067807 750482355 778803219 923995059 637001949 487220589 196490761 993238515 893609653 898899841 559286939 582932869 13628253 763916577 358767683 985806907 732101775 308094209 705208383 549763055 880006483 864678495 757317529 796205445 38544625 764625921 898977311 647799779 210182145 748434229 258157931 67287295 177494879 126709971 599965149 498803411 221732139 160915513 916879773 952166495 914938839 889100875 754923419 723292847 544852243 142265977 90748047 880268245 98516189 348488121 528266747 504671723 517937783 315577227 392979239 756665365 823644017 888801521 715054113 289410425 72369309 493745533 137584835 944723533 241957657 869323845 125938603 672850635 117742919 937535205 567332165 168203827 245202901 437601925 234243263 721342419 263820469 733301969 525613329 598141433 266937893 353627395 447623165 28201729 761551273 59203287 627313929 21765709 279060237 490715539 522542215 551466313 717235559 517013255 13713549 586851429 891118097 822930055 346682879 354081309 412204975 155538417 548564865 234786801 864404271 305748655 531851399 925365613 354836675 72303787 796454983 410026275 162687211 589008733 268442307 840752045 274202983 331322563 869017537 89387183 978808903 416282725 334842833 697200079 731262171 763581007 561439567 530487749 10170565 321884697 443130199 633468741 432488163 975324639 367049939 505274903 504914533 711092041 977123189 355810817 179154367 41286277 765670577 374339031 64738221 112527687 505449165 375754355 327710771 412799441 586525131 317146041 142424987 216731111 925617793 159560079 483937661 483911641 200774019 726195949 473251765 836127611 222509619 927735495 742255973 360504109 719086009 993223461 163761657 654019795 241479685 647538701 88323623 988096733 38104785 708036755 364286699 888236355 549511835 857622481 294373513 923909759 634948011 781645803 211133837 782251163 354357525 355071753 792867787 655801891 157030829 9045597 884902753 65358127 851382547 986506531 932351921 278200923 937084083 424173979 765547625 583925199 631365819 82984977 78756987 530075193 980215589 971447257 216102183 438821327 724532397 59127369 364048621 397051727 512833505 457766853 704194715 506214655 17731597 77708473 968824903 83009965 329630793 826681493 353080907 724686771 183400057 458032853 211966539 129552361 246595651 106687995 824478773 746039483 418267159 822731407 154959677 795780883 283098669 118418981 395624669 698151787 686351237 718883927 277530589 720801981 862946025 108044233 23142727 230360467 804255209 676391203 175346541 533934329 51564509 833600023 570159345 291123079 130474723 944546401 535161265 773155417 698866405 13376193 561650655 508950551 271506069 427412485 93436651 728208879 224787561 702239227 870750865 634518679 748998049 891673215 24314841 803004749 17349959 58804341 429874701 695561943 449025835 114109125 701855681 663384709 388462819 966018913 605252563 377036587 172532433 536970309 420106341 542488105 79289117 322319985 693607907 308282467 576208057 770373875 936702981 734456651 50396249 93602777 840038083 484009427 862367619 693766975 964066147 523422077 868204921 842508873 659858801 550277453 264499279 907423263 241918913 60882641 38765023 75317491 477508977 266649377 956755141 831997185 173246179 700509657 700139371 459824011 229054661 318002209 459045121 49210329 769241355 102532519 596283007 356917823 412944367 70360993 78288807 744515353 356563705 450162637 631881727 843111365 630860273 540995441 747398107 327179697 630659055 699989597 740355917 927591247 175620173 411239397 7402811 607504663 832054191 307338729 628715595 467993739 790109443 621282767 264983021 197980473 106958461 117439875 138385241 180838831 549503641 83523711 881913489 780003977 352389403 918861503 262377819 968527211 555707405 619213769 289286729 726990333 967244999 860965291 764568499 142603505 293490917 725160957 577227959 717004035 257530695 603438299 160387649 981210613 337600287 963150317 580899325 298534287 915389149 858812257 847677287 212839591 78328639 875857133 262783167 266711059 210448969 599365839 193457675 624715193 870050375 983028943 752466461 731895681 46792909 645485881 139051915 523839581 277819321 998820323 764350391 16340297 465934893 938784045 316096971 411715143 111493015 481155837 465296819 662228321 541772969 80776127 258565931 858078631 768840801 949801837 408081585 133543477 762877699 398058113 311876751 339945775 287887645 563167493 732208595 7924413 821506175 441035143 223114585 510303251 204472137 727391259 656245437 209939049 733333215 136735583 155736937 425638401 437526763 547513211 511085453 852276009 608854113 93051677 763512099 155705135 207680641 688685179 247031529 235750769 20651467 251725397 200852839 488485455 307208975 205280493 521626607 613787699 161301599 577215253 532577177 154632335 867283991 282431265 25390149 14615263 615794651 350902257 597114779 841149349 407319963 410279915 944515595 487064937 859241607 205762045 571944911 829008833 712156701 790166171 808509923 669096003 986180383 829812423 911445269 252627861 894620317 846212869 873465585 606519903 746990313 999245925 892112593 854180437 362513057 700545915 571780307 847039279 245858727 850242917 836898531 751660465 935403047 365107403 939244463 268532387 889541015 600258269 466092975 99348443 145165749 838260301 178522661 259645231 903081345 49892955 209038871 759456133 753878089 605032399 226184021 354896325 929432737 432869365 351364475 869090787 678083943 287046051 912037605 888129495 460297405 505917497 609770431 486352549 78348049 527201949 283228407 908112213 853122069 470542397 106699075 457903613 838917577 767797773 298898473 631791797 816599917 928778639 761701101 902168733 708902545 791480263 264785823 404508899 163565061 558293061 288198171 586960313 880028393 50898973 228979453 58841431 946839969 887036141 901947567 610750721 600395479 991911901 64578145 194274305 575964289 196591261 330584333 927945383 850933977 404547679 382143601 335294801 42415975 198293731 877184535 575370591 941298677 174743921 646458445 941814331 87474583 956948949 603217197 475967065 398342057 361725285 41693079 976106545 845265105 16870915 277499957 79168839 37399545 98094351 719277683 768728355 758980951 506867837 229179275 917928539 627451239 491259329 610719615 865988999 38602221 996715737 532503063 937477703 514962165 422174027 173315041 508579403 935337939 383077671 563579191 821977151 816297509 963521537 56950071 830092513 139385037 577058807 423165133 665551859 868339961 617053875 183457191 666406207 713038107 459725407 341534013 684719511 809302513 427856563 864322001 720520659 304696191 504751087 440546665 366723033 353277971 730808277 957336791 556307347 627659581 843042487 657974963 273732079 185539805 619606635 115249757 346167275 261150229 495994701 85689083 54430089 719085139 927305541 174320769 535757011 600442443 295269569 624395429 63171803 243895543 626204087 236276199 917501115 362112671 584523429 49531537 720548499 723675083 322440593 401195443 361640595 103756883 43770121 719729701 84299239 633405009 931412263 924742021 733574607 623338795 583300739 734132541 812607113 477551755 602415945 22732159 393862751 883411815 538504739 247202369 573515431 502771963 871249737 960886339 704554681 964752331 349271931 759357967 935772407 84044961 216737533 214339827 277401035 433086871 764638365 913449481 811140265 431869187 578501809 619180851 369887497 409555597 927186971 448122901 449987951 323623967 236303677 370233121 465906789 543587569 821957383 979140753 208171901 804094075 225674221 873479011 564852817 168905091 200354545 181382751 386510211 7487765 36956825 46130457 762471869 426129285 585202159 725567717 997753011 901340529 929140111 557237219 497511965 921027259 927822993 12201471 431318207 796111249 2728865 405669353 827584867 228006245 985809897 635563541 789540827 218667511 190963235 652301255 738267647 112705095 76371849 163744773 960684725 201687459 761975525 199427233 330339047 255194785 765675395 862388019 59634309 851397147 241148475 883465243 527313801 755578421 705861737 141838207 727530743 392401247 947898613 822531155 118044121 173025607 442256717 16703821 778790465 622554095 411099751 442483183 206817865 927253145 92155329 823066495 923528467 628590287 622386787 542121999 438267849 998143337 216903639 560317815 199130783 693687169 361078073 58254933 107798477 143263613 387095585 557578005 685892247 65683975 339073979 780194019 529982023 748311319 826408881 641530555 930117935 514117347 914976573 547165277 434855337 836646133 195831323 377859919 272491799 596082455 292719503 864887777 88156387 957580895 300392813 555326509 321527681 793175589 16330501 166626581 296183147 136506641 739051067 632283965 603325473 154216975 131906673 487345175 64318255 538656593 699300247 775952605 613271847 705425749 601055523 390998413 425926307 878067167 408019731 911755249 256957253 350111485 807736045 241053335 713586871 193414655 666614465 382015963 467531693 652459653 313373731 60093657 708029665 455213937 886798643 85344379 815588883 28292593 485977495 381369969 987598607 592382585 979758973 939490867 825425575 511087043 596384409 521033219 101094323 200997847 910938925 637173225 957318683 753285885 444002557 91778739 201907651 613091533 725422167 220449019 512101281 849937697 169680659 72509985 291188911 466918687 817879949 19780429 939212013 40591409 631035309 298700399 29427303 389566221 875484643 912394047 312742447 718049453 44642337 550019135 598048095 390180697 575927527 134896565 654952473 206608795 725677627 360035507 751158407 175428423 376790189 879783441 565028829 185847929 73154641 795281773 471533909 651954839 219859911 884926003 684051759 861612877 744399157 298363025 809744823 331799949 488763721 151932543 916999231 744309909 152732727 878895805 867570209 471370473 362311361 782548437 477574079 570324309 437750059 733675799 471810949 88417261 298348099 454068121 529952995 230572815 203418721 423200575 247478611 32830557 205174371 475258797 382663515 980799429 787071149 870604119 923555713 750470777 503525423 668734067 542270297 510186489 880299871 619003905 713209981 236421893 815686461 92692683 112997263 525842603 141309003 167987807 783652665 85357889 278104475 423368729 766150447 551130977 390424001 5998101 518592811 931975919 767855581 752374845 942675437 943438361 61451413 910180673 70845505 75945555 532509463 53213083 992069625 524724057 376186393 173871241 808980721 699157549 796398295 608617237 921795591 143760415 745702939 101852429 47653415 790481857 480893235 960988683 317048645 898505199 487910643 906883695 868584283 818981583 759664313 624786529 807313257 549287115 914896239 605298385 300089467 737396121 225550463 705619575 819430565 889521461 47001825 421745877 386206717 579236579 58277907 365063987 552532903 256949295 935206173 379200927 592834767 535930861 230326667 775159795 671433637 993055547 918938227 725374157 172311651 626380411 413092727 818098841 297638991 820115033 241080759 21038213 278874799 859541707 895143655 646448009 460521431 935020559 24593467 139488615 74363937 888802725 246481265 95548837 365074159 801392475 899071439 212999829 368337837 270000709 526526243 966146637 441192139 945056193 881528005 273463217 818958021 292262001 413012627 966344039 653528859 979295555 650862065 727972061 37853017 773496939 535238353 210778447 147102737 871507555 554302117 632560829 866324959 685713139 156538221 938350829 393503841 375167523 401470641 519786607 820549445 739883339 789799037 138184607 714579259 636955653 325346919 238129049 723084031 142331703 596534929 981714247 825141329 518764043 514487453 116229211 348928765 605060343 577583801 307914825 618914261 387125429 552811167 29024087 639512501 631834957 153420427 227741575 500963963 950184713 159608899 522678191 634660885 411073917 554337815 14337635 423311219 206291077 282992091 299096325 733695889 171315527 533252077 544798397 571134575 139446061 453919287 122640763 1907225 124212463 28901667 333871865 74408865 360365445 214548139 31270325 910261795 664046389 727951177 59269111 361886141 125658251 481624327 994641107 10696349 662163291 573761137 490309405 965193203 56159683 200387997 101105781 615172347 958601509 749642029 647271495 806043125 515716397 202161475 796977857 811781423 611802323 657498253 563568093 987693559 45888847 692163397 18101847 385987497 983686951 337101863 958357693 689132201 523170089 458807675 472522843 937766749 452960613 597041163 451145801 241599805 258567227 578720305 51989099 168896957 167790415 845018315 378605159 815987045 828774539 577065023 67372717 523590843 412571939 423010681 340823413 895344467 218172055 221450993 998306239 569802953 878188967 742256039 610397781 513587131 982901603 191311391 70055623 158561495 148384285 299312487 881398381 609715149 916838001 550979605 702878565 442255961 321631813 206452555 79779737 13101373 920080835 421994923 976944571 53804865 149530721 89922149 653433921 994314809 156370907 1897519 501853803 931860481 269449013 685587015 115380547 790351735 661336507 940318067 283947673 81738633 377616897 402475267 343176707 710018087 524661475 936973259 548407267 902722893 313625223 77410091 492745825 444706301 933185881 337389063 480234095 101720383 896153355 898667473 961305793 60417319 338736539 121532795 821795549 834545105 44940877 373277831 758039045 682235483 184077997 94314487 513425999 140531699 298187665 123636063 467138447 970180297 263112211 618911695 257175655 202414361 931671703 841518827 790619455 706517541 750702539 932074453 837722951 180849973 454018977 858573885 229797239 513537183 517857881 329024857 69379473 332913337 917623667 297391335 435439389 93646569 833042623 940433453 956705897 952173719 665122637 514744059 289836429 419613749 747786365 515967141 119125869 576345663 578782963 608836875 687979695 421690423 121515929 276428179 534897859 12173733 231548069 219783721 972098273 467781917 513606289 716283975 252029707 461750587 777255717 430767079 55333127 343061917 982813291 1629331 294452583 516835825 193555895 614558297 705544835 556119785 84462245 501592779 279020921 815207229 57942555 682503181 912142645 515893935 451468611 340475329 204327267 764635405 473439893 15705111 759802751 356502821 60307143 470356677 390840265 203828693 368308195 480045065 672062023 598388475 686735411 147557291 422331851 218270341 588715853 254701557 722265835 379469669 908810505 776096451 392926985 533727379 313015951 824430703 223080783 703267345 259295563 780912863 796009897 709603821 229787633 934724229 594900435 12570933 768390523 779313493 347269707 977920775 662367279 68512203 628838747 349363073 409743513 831445489 514411025 781390033 280325263 302893141 3934025 595816489 789742635 344655625 781239455 154611905 773420241 470672561 734953853 242974941 656660015 616316271 280418323 107655877 504175417 122978291 652670555 382889423 801577 530803315 191919379 567007569 436631687 52390831 870508227 854076849 428562971 402819049 578853053 753504599 371247101 769726963 516287513 935698869 990723207 59391521 584721591 113642055 24506207 18203475 984229951 975933327 635382383 814093295 466021665 437022231 133302509 246212835 651548567 929244015 76897877 700309155 70391967 817174837 565861739 308682801 65627393 87717897 723317563 571555857 389649999 962343573 249254937 381516625 10945505 885122699 142478497 169686665 948543957 77710247 752438457 830290647 502500887 539633323 356443789 668329695 594762581 449963617 785337231 462148049 796089863 792044697 437182845 977399909 730850671 74413873 640040795 634480085 801734803 721790727 356642933 22222057 800070467 105746699 179840353 505966321 489284891 974326057 555079415 71685315 368468087 18250591 624572769 673018299 725822339 186721455 818041605 905262273 598884141 618475043 560255901 502537025 818111531 571115467 628170017 534812725 682451459 194168261 147870425 17176857 115370489 744133937 437596749 618692851 967854109 691167545 426577493 795543889 836260939 949052431 758982667 528111435 744105759 347934191 804069843 230140031 496113923 909443611 703514203 629970961 975692073 842974173 226192791 546116019 539716741 390907271 155579843 306129559 251346651 308633969 202885729 429226109 219153331 845192449 248600385 826568365 817514843 56517535 532393845 645846771 646147565 70478783 727622745 10716325 985424969 485505497 952014995 200953251 290186521 656241521 70484751 461977939 996179913 246580753 420876799 118668195 592087443 480330313 10936801 873238537 510158969 113816759 618496633 939570819 320123971 288432379 128895955 579144343 913596799 126787775 622816579 555439187 204045959 343728311 600447589 328036687 335369337 432669083 679654431 434324905 212548161 528498991 307239837 654896389 977806221 466827067 668948305 268472725 881754581 337383061 205079035 284856075 741925211 981507605 742557083 41095591 796051493 439093149 83855999 200271665 787410181 345402135 333530173 793326069 323675283 9718133 433067693 748809163 108031535 359126965 41033465 956037903 392250111 736816085 584764553 888241577 924273399 455962591 452615697 855345671 997854157 910082281 1294481 393217565 321368577 432234507 373625417 409231981 126480861 612626791 808258505 60331773 405359729 572431655 596878051 34175575 8306837 854125183 761510835 608640149 469539815 357209255 536890781 652700245 577677777 486218723 100556881 860409789 717851781 904331901 787893439 405514617 476552697 980125125 903197731 753939905 38137069 147821849 624772357 318901077 647811051 923137241 3022895 265887351 237132865 555905903 68089269 400594427 857401097 447949391 851927541 164060209 26488357 798840561 415377039 311141883 673214777 294296537 330592629 947934655 78845623 2402705 86150615 901103211 221241049 14206891 765236531 710540405 179033245 406065601 639771213 636327643 523506379 112505973 640731697 10146339 647825655 588668017 762037045 690410333 388891765 67502441 594458097 528806173 448042855 871137557 866981455 940460163 373197747 685380153 984816757 598395957 498482191 510430623 751437277 485262687 626254573 868257561 102030399 435891897 650295185 592849025 119143075 934371203 330468609 358780089 851212881 250562177 220428047 360512683 289320417 29970177 596453203 92864587 474540077 608328667 33282605 811633041 664787801 301935211 738631619 528880001 658010579 582623129 329157897 873313061 200813903 41661139 26305719 207605903 407097799 677204239 218607177 615729625 451550339 232168395 727636747 416834597 968028429 508527117 870439181 113710237 982654009 158661989 319098919 991138165 625556259 176779495 243815159 464074471 438966833 210874419 491607017 12748851 515922957 794656879 876108329 500249253 311047341 459423559 210068659 573079693 313338957 846568437 857551687 515470921 814713457 874242611 703709035 73934649 864173285 379153739 460926319 627699401 342944957 24973577 459798893 293675881 958923095 330038469 720347719 372942739 98886485 206345821 502524577 224067275 804544931 284919605 476491247 799141019 350336633 782354749 10317157 508596117 983178319 265494507 714121991 822389843 885575915 327385917 266831005 11112567 156457561 568076985 52707509 362560939 117480943 409664623 607249835 616723619 979629893 643153907 536016539 1487897 335675205 233849189 243293295 520521165 318982423 740489835 44536535 784977803 334630703 443753265 787383117 928873509 975586381 156039537 175888909 446286453 817704049 190548839 159622437 990257245 253769707 334071001 701405025 284929479 923750989 320867861 711872347 701913511 144398195 584205555 253009523 744907511 124785281 284923343 834363345 150151095 420437733 497184401 47849829 914167283 578527571 186676135 279616743 97278653 768776903 745527559 20395225 592599855 706192773 662997297 269580161 864346987 430678553 464360999 967950321 520061341 107713111 560021627 286352641 947275509 176777307 540077633 135844431 708190893 479840651 538084377 629591879 856038665 775329681 201827369 482828823 156325459 732792165 228224799 126009015 162244573 407308351 808448303 290402791 511632641 963080357 141124379 965052977 854917155 314113379 746478887 686398693 208759721 439917709 884649505 416389913 23840009 87540865 892558945 957594289 519227325 12439777 351258821 72243537 612660293 794390939 112655281 391812461 536033581 354569185 988777493 396077371 196608007 373356337 408426087 602955195 85981805 821418065 40320421 226359223 642746113 210025033 246073943 111683261 709325935 271136113 4559241 427655721 879979623 477731939 142644689 832338967 178065571 509146883 40858191 940318833 252549097 777953663 551590825 468483047 63035647 215148363 437382413 304407795 303760825 544464417 332551983 454891219 420094961 653445385 10070865 850094225 112627849 637380429 946587191 699480059 424358509 639787391 696420657 835051179 107614605 169195137 785679123 194347265 447906275 69178993 323441467 661709093 632915061 78423489 455932561 674431495 866942537 439023649 492265093 890283617 705189235 975325583 734823945 851594671 826603533 549974861 44149405 619411775 617901881 34762987 817066825 864984861 923138595 707739453 396811673 335378723 565727995 768831323 558287011 347879919 315384317 412037037 267746311 999716333 250256489 915065567 869792491 85031499 527219083 524222691 72760573 360438785 908115381 945023991 644906867 713698513 906397505 623504287 418205193 630961217 353437075 127435687 413565963 409065123 147481105 777357605 139052353 61223437 877351217 328368499 81194757 346068323 932331885 976028981 734226229 319119179 539534917 754624345 5267253 205280563 354969415 998998033 392254197 559578711 294367489 649325533 186444269 814709431 514757647 814785149 339914263 974650393 539708435 800872961 165103869 570497805 795329721 867123643 117012139 365404143 341402289 68284743 458100407 723599323 764524215 154485641 6507329 320781755 987455627 258664367 693824495 186575681 856366073 822983213 681388783 974483427 215718869 526317503 475682807 329304545 571182837 525547113 304431941 38607171 56103229 258715765 636413599 961602781 154819225 957642619 900341845 975438659 451646969 638676823 146565691 912188887 964596313 893840171 361705647 97724353 780217785 721429603 519776667 872306929 583281703 4720053 656087401 133113121 732501169 310562845 707229201 597999311 756162163 8975839 627052563 860217411 175768463 686308231 84150643 129074833 499920945 440732393 96809663 687616653 468112265 642225699 577974285 684943831 850400979 232342679 203214845 10437595 748976209 378160627 449411253 473787591 745573963 989877033 46715619 698202261 421507605 638025081 544080573 968017923 780156681 376351587 136424705 751660953 307370891 199544757 946824181 860518569 323407363 542286981 151442537 791712329 514819043 174350381 698811569 422979677 128182439 527238225 139617709 293723787 848885455 265957087 393843649 977711427 32478439 583049995 252885983 7070397 922686595 650105935 233507449 297638905 12319545 622650739 918093457 330375105 151173037 26038657 753831593 614500261 273343115 331174603 886232533 333903613 173171077 408550899 929272997 187993575 50359889 31758039 376908859 408353869 419998135 137092521 450057535 929649377 194767485 433621977 80840921 186304537 957040249 569331491 436388293 845267253 117015937 211068559 599775551 943633215 231685241 927299431 475571727 9077255 733737549 674796095 969665919 433030947 727656175 364633077 75445355 138625269 369341013 442871979 128793131 291183013 79387015 193347277 834659243 853557285 988772747 166671891 323829333 850350891 825116279 162684533 143909667 716540471 403257953 837411129 630609295 890927761 991364207 777916395 880821411 469995597 483525063 305222495 366938603 241904959 490762401 804700851 617527423 214052873 884282675 619872329 967969789 557951763 173075647 988160207 250560393 254305677 363541651 190296121 403973331 425305199 601763069 56081089 286980369 40836475 762836057 838648815 39759873 588226617 974689803 496330123 267675369 58756855 647231867 257121453 968266137 26456525 18553115 621441711 573809509 801638303 185796455 621757493 916743725 279184147 545530849 660517933 644762967 347836825 347620369 916008139 724573903 99676265 6410381 929229963 701133327 260486021 326152683 733137201 925664529 197408947 970952657 747532999 149647711 472754309 222288871 741087909 221093637 133069651 902888159 602451559 846133659 127062075 223797621 714138863 419257663 195926569 372419947 198970217 954093973 402344649 257298569 936961611 794345677 656770457 650276771 72355921 868494493 225052883 205421461 990146943 492148547 83982467 89877055 91986465 879045253 751597433 479815051 364312011 456794291 319903307 321749099 932111963 224578467 814402139 329721307 358422771 999175087 285650643 600490973 452235521 912079555 669389215 281780857 997065527 355551563 796356731 42217669 705814163 911923515 203035621 36909015 771929435 960673557 116907047 934534613 736523287 731971293 109429327 23738087 623083165 662697249 444939065 888699967 782958347 804334585 126525569 165198105 206666949 645877763 666455441 381427639 26565493 515394403 326174361 651380321 549146639 920428233 955888019 977525357 20068819 324932203 434414909 343307569 741523265 774272263 192589343 324141331 36090665 210237157 799144845 650732155 751669149 941340881 606270617 251414237 247823609 918974241 213630761 116059057 752999651 50032821 953862371 279407993 575635781 750282739 524153911 363395267 566170965 750464967 541787999 15332637 165695119 97492651 932360025 19624485 245011381 819558811 716700909 888199803 394395607 788603165 223993261 797428425 476917063 168908863 440286961 455754945 242742947 808611225 955624151 219035679 168807885 558636617 475666763 425674149 796439281 80095987 693172987 570223133 446206853 910461127 933554271 685418327 92400455 108192891 936360121 273439025 910219575 653526351 560213775 92682379 813849763 495088133 214874417 532907599 398052895 686804975 541247163 190588527 307430025 122016737 27780617 885377255 670620675 12566845 447625543 157244601 278985467 860177123 380078947 794868463 475958563 499089479 712032533 387726745 868638843 965621853 744944093 799255253 678343235 72358051 768402181 359955907 407237643 269233183 830404763 676298125 347167395 649439839 360561275 131663975 290036011 504326267 935039809 550040201 298057735 21313553 838846295 91030839 403664865 725982277 131634159 768286137 895397551 563135687 444486653 177057381 80440491 702136527 46182213 951967633 681931101 579584023 827527503 135016099 668376207 452032999 552873065 905873155 122728789 405156367 255463597 770336037 144613131 281149925 619399421 492946817 122931799 199433541 877974525 262106011 732681251 628913047 823645471 137182461 440861861 527244489 584147867 351935031 163076697 448315473 392792947 140247015 647413507 815961643 114404975 828555693 801788591 944129507 999702813 239399731 280335025 776851841 690792407 573675309 138643623 855247007 320367547 108235347 434250099 692565851 916457397 477106793 152675395 143097689 564965235 500541241 269869449 729107145 952786031 393293203 428100611 892629859 811929829 107572821 384108981 415722337 953093345 561737055 65666285 195299469 480384307 863950491 162700091 509180723 344015475 623046397 41255039 18847529 434527745 788783485 918077915 973694673 807314179 164178975 158590653 42069005 64897389 294281453 133316057 357801803 412187893 560256759 24997929 46275205 798807581 628117851 413936117 816391223 752924971 227639353 411304901 973671015 816390959 282389947 762708849 699807141 208481029 108080917 216270099 293974533 986126921 551296895 33572369 57628199 577367653 876122429 128851477 425325615 158146443 942262425 652227093 120648399 215948209 407596773 748307277 645602873 919576471 698289529 762918977 427457837 957628871 537642683 782651837 984309747 937275279 297179925 774491605 709125463 608952331 511775733 914975973 352332209 166065943 421276379 462206099 309311965 195879005 368407621 484824777 424015427 773321293 249535679 77764799 160460753 811728161 424927705 490676717 665667325 212001239 920190769 621025049 137696965 743169335 582431591 560809807 478767023 882579669 256281893 494755555 50667211 445563909 884545567 597245043 454156973 552090345 931576847 164113889 877340789 446849385 644053429 398039387 649845959 514236469 771495899 930731091 752527573 412079557 953064535 518176393 291503953 519862619 945332993 959826685 434750333 373921789 840102587 270637309 605193245 607927677 744388719 733154079 7360639 247632755 230278673 194178109 332397945 479074879 984604571 77713533 882211437 487659527 1517581 920408649 67699261 572950975 519556721 918581077 422821977 126315551 631300317 814013857 742325687 102744227 86167913 947079791 473143253 562748567 443706679 114743113 373724601 504566795 130438515 546686727 737070835 337161431 152178251 680509635 799386775 998891929 790180351 644244707 49904709 881039549 810214349 899670547 617498915 118262639 538522369 785808453 212941533 54104747 95617517 84486583 343104171 152428593 831215851 833745387 892254797 137824135 611472733 581557937 291019527 158145277 39813293 147055901 176295079 5278895 525366607 34752135 508388485 478766969 670497211 698422167 760320125 164871685 16672117 71333689 376035319 538359237 343790599 3775391 110741729 263348205 456091651 741720903 829359793 700044929 467760643 535499765 765955431 91174217 985765289 189324215 963781765 77362899 591203489 415146461 783839261 784197499 943543707 833576967 904059331 213459037 585792849 424128279 590479767 333389411 299990407 603215931 925773631 532839229 777122311 95666151 583748839 286926437 793257891 749956309 347327561 683235863 202862901 901469965 179217823 456383585 9968287 533471959 582666419 841724943 207456717 881572299 728936403 883088827 784819119 872421315 843292369 292976325 729312063 464099301 443416081 215947861 991075457 216629147 561868149 311061083 464045439 90982811 100171629 789039759 418256203 748989665 609891311 864468339 600160511 136075695 539618169 907018573 279493309 181238933 667395603 971785519 743988401 238143333 682237513 11698673 444124683 508584509 55156785 654948145 594712069 314922109 892192875 559320667 773730021 393155031 727247645 46027677 152879857 649541435 171795699 861885167 357147517 299361767 395418663 168447761 499924451 968348767 441382773 843442829 768032901 167388527 829062435 815691955 799186893 757716269 342580223 103658651 881414447 142017009 860272225 470859811 840385061 518060899 636630821 727044853 177873199 124041071 779438261 263767939 817540825 913982793 765654011 823664131 750876853 265236587 955866991 597416309 564313181 542854555 108556815 902636195 380413555 900880359 287175779 269685019 943127459 219626911 300282231 962357305 643194781 628944739 831705569 500036121 294486045 333251861 408024257 401778341 218252771 746074853 829689021 885030541 548221883 526201921 618055939 203722827 411892087 482590955 563820103 220879133 927181041 138007523 49942987 254118413 465397515 280648825 218886227 874638569 287412401 915575615 754942253 375003467 160327123 221812497 97367345 326133139 351950445 250104341 787730365 212342249 157025151 873861813 815306165 156398397 495417365 57743015 633320073 109406281 51150401 779342823 350860593 812504713 913176605 419743673 429967655 600286539 141352141 770092457 399547765 848096411 743123831 7100555 965655463 934466643 822897745 533678973 776737491 708996369 640871829 304769761 869639321 38063425 256059523 34742115 649427999 651931153 218872423 628214009 979657491 923762809 6806419 443470817 304723113 496063035 753828451 286365595 504586403 161689309 78411829 284781557 119902789 638191793 913012855 31019523 409005919 676997583 412700569 318491939 963574597 473464597 683741717 205578233 399337943 776522031 195729777 418186605 546418297 912593289 113086259 604154297 329123611 412075871 760429039 15071573 828381491 495030449 807087167 824854025 212070593 697565509 512610759 896046045 566321479 976772523 668252205 166524969 522742999 524129343 241371687 903675527 685411591 710597661 590053487 943168477 148256755 414685231 838381767 394109269 679348035 860087335 495939831 958014309 120432933 287901051 95955923 323325639 537131855 537168491 155032117 185838979 960851455 522131711 690281985 269453795 109775611 164847627 789340957 481190779 220499601 617899043 903446655 622717479 234840217 194924713 4977953 517222157 410446705 251022021 27951877 122445209 184814333 944876135 843166771 817280125 171586991 391013193 815980479 78484663 634797945 564964841 231353539 357916811 47349981 93079697 381746531 637758597 314289117 813288527 34262981 526792313 586379531 544603133 281940257 286920325 328189565 878245691 500355755 383562251 566871247 503231855 793625771 588207799 801108521 309618893 957434215 912944001 391031097 301645133 958833203 528010657 695751221 570478509 731483243 413522845 354330075 270110837 313662061 748859971 127383153 969494775 809517735 468708771 10623687 169575499 193837193 766844445 57758513 995342927 986777999 753984341 784027791 790681775 77154361 214079285 403955525 238804953 274229013 909595889 171249219 701316613 609497521 830417417 688290305 64421427 38231977 3963199 710601593 952522541 924958625 840876445 106672437 247959683 557965889 397320059 751642689 839854477 33808187 434820467 840498997 136554089 631248459 109632363 428496685 795474691 8815153 244043149 864602321 361353735 378626491 441703247 789271375 795153393 371875511 681283693 205003101 751335423 162046209 124693995 168144953 495636283 839238525 878428437 742865065 687575925 989668627 699655807 314817021 820945987 670985141 947349765 49673993 816001543 401818975 864468173 42186029 368847081 424732945 136054339 693123919 651019227 692003289 976397593 940973787 642590099 491240389 555427149 89018571 721163153 547472113 450684963 981874841 522227997 78091905 635278121 963869519 510412363 809270685 391880495 583375993 889354991 302672503 947051861 763470639 533889451 784294219 547260413 738454285 268790503 421239131 437077461 779020091 96294867 520613871 228806351 161787239 909301607 637151579 413370667 795148999 710459749 342137339 550927977 505938201 847550293 817032493 776969305 838621093 991070085 717881439 317985803 765156919 567503887 730174467 313257183 817886757 613205969 6292623 403563897 981535567 42278263 732374411 754528451 714834201 353130095 679925885 23601395 658358133 90339313 756547067 264978053 252363221 776331775 625330843 323216699 895079995 518833759 316164611 28707621 802790955 194370979 710191579 594980245 527383987 276959779 842492117 677172775 604433003 231894269 484591021 220982721 415941231 623068957 286373413 249598861 294503273 966493233 693827077 131559427 953427842 881235889 25364515 374589403 76960373 168671709 375373141 672060185 970815101 871976639 627029889 176659983 999861601 534064423 226097295 850745419 640928625 364244907 673117553 200032171 681940609 871464877 788863267 628650837 378299633 27151447 91761575 552345269 28009127 848356757 719684869 161236607 64294417 356839715 670620243 154269101 197047075 889617791 727434919 829870725 560930399 250471667 74044967 82191763 698755529 863341709 646999803 948510893 282907119 102546217 673735765 59022317 236500713 548349539 700047729 431976631 650555219 666125221 441901201 662953657 121209175 314253087 846969343 194571495 588770719 838963403 754211595 980851323 900905059 551612775 353985299 705265149 267127905 484211579 420502645 786482229 374588385 679829595 778816415 184659259 66018221 30837019 230173187 176344425 372697633 431219611 322941721 803669605 576805911 645517703 84624229 826777625 827455991 927023437 592046447 169965499 604360877 252074791 624981709 297408711 636199603 933851155 378822421 217190401 54924037 195337945 318996205 697718389 805723177 297445131 68994813 974924407 279650605 20976641 186496761 762380451 851946153 323624409 953536665 528994015 188291001 397851775 824793249 65588567 830580999 765695137 207964121 676666749 272737725 739660983 970994711 221189903 626306195 228427779 290216753 49390353 950764743 478004107 259274765 476677327 525424929 833243423 956969363 920529119 275058925 729536603 460378551 338214937 814878465 292472731 664942705 56090279 340429501 309688075 74760901 242758895 584463623 820888473 457643451 607210667 519886157 722558461 531922793 983738323 589065861 600684983 423788005 116198831 780780587 36405265 938214485 922308551 617303369 647745305 421674977 574836467 511539053 585334443 929058493 617451597 250321323 217835875 922552097 319112761 928186273 376668075 255973457 256749413 75954297 458626229 884500885 124760517 141024221 642733941 712017219 191141781 844517637 313618863 845522355 809299545 418672561 689810155 347491911 237255643 708700451 379986807 984315497 650192691 109422893 459405679 92910731 336815549 586015525 322013103 688483115 321246233 771825895 989337313 798659525 191532857 656736731 560556149 206587369 211881293 648565231 364515235 432313383 312352979 20716183 177997933 616503575 989301647 947470293 36022939 952522847 763695501 966203181 331494587 764471719 893032481 815800495 604335911 470887843 140982503 229008367 772674301 859886859 748735685 954021133 206474537 426829219 603822823 673696173 975710041 975300405 760509887 199294975 496256263 903270035 729443853 206653371 666493551 382469269 654615505 852303643 363467677 861476129 910209881 777494505 9929569 881772063 11436603 919378545 492051539 906474115 691578961 127134345 227875795 891023173 909741247 984892049 904553223 504763497 362847987 611431023 350076899 580546041 430491039 883412625 831619101 497175303 938490307 383577837 803990071 392395435 613341087 153809409 513833079 484805899 876461507 966786515 390432749 693995089 451708417 323769075 996285813 260490667 692716661 536591221 330749099 893804633 752408197 16484857 799786233 822456985 857127899 883176611 590412433 999829173 876889453 427536931 972850537 541874179 154497141 537865393 472747585 325161435 831569275 824186631 936636835 771430047 199238985 708992879 102543069 956493497 673619443 885351093 627497227 899930525 48194519 535218993 745922569 67952835 31792789 752626623 404780417 654671535 923738143 333405895 482929635 362336747 231949733 596451639 699761513 669517321 248060581 35986309 392203025 38774433 775657955 336693935 700726179 691405913 557586027 23559995 662304435 72347099 998401171 892724793 625844629 548657365 829793523 640332861 70300779 541220103 187226997 891475047 575125789 492152111 965595199 916936027 565048411 249686041 501114571 396555339 554727069 825421717 928177361 324297705 703418149 758898049 671042393 822269815 57436409 390768317 401074091 147793847 425087467 281912885 803537503 237641725 388912531 935021527 302811215 71605017 794170961 50830243 682200991 562042991 762523723 44328087 71753917 415774945 757023861 367574463 434849117 816256991 241791879 862966061 206464379 434791007 799137533 475250937 472722521 91472863 823880227 303303753 562124679 673078117 120195337 780423239 690443735 864332929 260412807 826327843 113389669 918780999 329474107 633957143 298705815 521488983 172398993 8805735 892445719 723225557 313261749 568129885 653524443 920971891 310198947 563614539 692672287 776149859 269212955 201550731 214451559 898668647 257642915 437055871 964735103 745244355 414708363 929511569 350534011 817809477 569820143 824420149 717202873 83987013 880533163 699029989 668148187 390684319 908574057 463933985 831678669 292259515 621765531 772844917 721086663 531139719 624910453 193535603 919087169 806429049 618844155 332748723 461591297 874478991 455134709 165525213 328066323 33858641 795777779 275394453 601232845 447044043 433124171 398023825 163631817 300590483 83346975 173591689 775688427 388098505 778055255 119777601 721318241 753484305 637819811 692428419 580253 808626333 978721149 59333409 785787231 467386655 865428003 774193653 168007591 750804953 620401053 323142369 494342085 781074063 776857277 739309009 913392459 819035023 968434203 673192373 185801749 745895089 615996183 389709703 562570567 549416019 328140505 168950093 761515599 277925977 432152913 310435597 723917281 756997939 754698807 639538137 231845113 145486039 807569933 447722191 348846043 692178371 623143193 178462225 92385555 829044223 607040109 394335685 545833077 805383701 860509921 161376545 475275805 987698721 328455699 819643743 897765233 869361853 500575087 738544319 70033435 316738577 935269667 213255053 901627667 883238089 636826407 367521051 545904529 306298143 919294011 92097731 768721435 471695821 435347177 278352615 726587773 732040477 789714561 168680435 863652299 355653085 444698651 650174295 170994531 908525153 251902869 350233741 731957735 952471943 537879193 941035545 577485125 686476215 875478425 264771205 501082287 710959585 182064331 443297635 34369955 186143351 621179695 259619405 534040295 81655417 691429775 349773287 798337923 983048303 281532281 382025431 484815823 92539235 388957769 35953875 864609381 683195377 739693083 430758293 19214633 603260723 717956825 545245149 768580169 937013713 682004787 284926583 274902841 632266487 312846755 867727157 149988787 576236895 94118759 694445041 470540991 520513605 293573513 316921231 5641127 354842735 579910103 376508661 14557439 136000811 393065451 348396569 58408867 261093201 585121829 396411637 819406775 508004927 889521837 927827593 399619499 5664985 835209331 915416545 292010799 939485327 117214769 481499407 24473665 423952471 179550563 631698989 786144293 492125617 213231959 652238943 357355621 966916511 653525529 294433995 972936667 378743219 587107203 946758057 602693021 784815363 404646963 415204653 793860115 836074283 789728917 415509149 794411497 606191955 818790359 687228741 712697617 159395111 173494001 882729843 115603913 546439649 314961317 505407363 189058453 694033213 384787833 921116887 789414979 725971585 948478143 859881179 2568931 800866685 781457295 384742911 432097493 61273989 743600327 463753919 722982075 679468663 406642963 754206875 257143171 733179837 909305823 317491487 32237921 911114561 567686247 924213469 257479887 164722811 833021611 64724081 699485587 435364715 767380593 305858425 139014075 344645523 399238217 776476579 332778137 203617541 425073807 193687967 972841929 682098519 660367455 612832807 613822511 85302437 685847203 233121537 106199289 362582679 218754317 175915507 476020379 234306907 369664787 190828497 619161041 863465125 645801205 494944117 918357151 706089655 10493627 9676995 893386063 170980183 815634745 128176547 947275641 245638351 775026947 870953735 600656121 184976121 151786363 880530921 939302129 55150131 48680905 593160783 255739597 311937121 864036319 311394879 110606147 255147509 900963185 927943885 467484495 376351969 486667011 982958869 629045045 885297061 43338973 539301685 623142785 776881737 282781197 115688283 890419209 95378777 917171565 521515191 446043365 110788845 118153885 322872965 502639485 17722273 131986179 959999749 320933245 543780253 679922899 921461379 831806935 724523919 360713733 216324179 541793739 668484525 693026647 389040075 975718873 969231029 351467345 990595407 818768079 337472749 287741253 450340683 353551555 309452069 112532043 705647919 643098639 448489905 537339969 584479351 859461207 558850927 8984787 824806821 580362633 326587593 359278191 275218753 644449497 833746601 253104461 424194271 137331651 249320329 957707885 279600155 625752841 470601315 927129241 259745171 746961339 719995841 190869857 379715573 891768363 2677935 769773085 111532273 445421301 390629317 979677419 457377347 341009917 283142687 472532407 475973291 589852019 15421029 794239277 783007479 858674375 4033477 152248265 89570549 602598839 823025909 542855881 730643585 447639365 45521203 133694263 889576063 865902273 64123205 861960419 589225431 959486141 507405947 301066083 892570747 984414743 107842473 34247961 175589991 155679985 592165935 149666861 438993565 353979319 805814001 485798801 752407589 263021089 381646177 451988987 871882003 760509479 776148593 830355179 192708483 63260431 883336611 327287209 762222227 530964069 627726331 840049225 299159921 797597949 984637191 764947615 900687949 133914613 746622431 342291277 800990563 903631281 470788639 669145275 330310645 892590297 782892271 409529369 215656779 349965671 675576317 629439583 86613435 616632211 635162239 796049231 300343195 195301605 584848435 431997041 53007441 361776421 250581089 101230099 248491331 400194923 770923731 752311887 882942697 100669713 370739941 702029315 137952185 486405307 23118959 865483227 985659701 340895065 424861917 790042437 955013355 476955417 706908699 144531321 106155881 458884221 63620509 240475257 629481293 471695175 540978533 679891979 543176757 74468225 67319 59677889 788021199 389671555 541148257 8180979 444580557 557443049 980991291 764312511 10748389 43654805 615568801 804899345 933086943 194520499 381882683 807931799 212682627 882838457 551131703 34051529 592838305 688401763 862322763 232957671 296922901 420208309 29137847 257643771 226089155 953284603 331487805 392702677 235974547 294983881 676511791 918795019 935883897 94562045 845595489 278149375 637357165 722054585 457096243 311703515 653847921 652740715 162437771 727945611 303989139 570500549 612045013 821468619 910941153 387426501 842950411 542413081 765911417 864946097 525615017 494884799 797693049 20592401 46191797 541329611 92888847 465918651 935020221 772406041 356210285 22520013 291871193 202443333 866810315 189915307 772395173 90995641 564020587 441413631 28811593 21133221 707242395 721309629 281702005 339928067 90367913 879928613 360927835 990609 47599859 780234423 209884603 942873303 434788313 686241091 352477915 709197097 473410757 251935451 39392395 497652635 68773161 913017307 683808033 715300877 693702785 768845289 318872953 447860779 254315343 365319407 953707001 874731107 38772765 948654115 634378131 722530543 987374203 140712193 689502395 84619981 305670151 205642315 306234477 541762245 343628639 491552529 622760243 710824553 194655537 536496549 470176283 123536657 246413103 561231013 115214777 474624219 134565649 669079027 401946411 260324787 903729051 24417723 499772699 154641479 310615957 622896501 858442419 817387791 379906773 514819289 618882731 178123085 788439347 33587437 70442049 207858695 157356943 806883581 964839997 8787215 836214999 844493725 391419883 618101243 426710269 359037355 688902177 496639279 702324217 178378569 951828031 976060111 428089551 882930917 791283499 876154319 507533959 403309619 76855379 254103269 996665143 507461933 814368427 595066257 583222007 220832025 188641205 363643677 888647911 775686021 7423093 625248663 809203255 759086401 524240507 27833051 306330899 996071789 985660123 897969029 893693881 406843501 678639923 915841023 744853867 587586283 945325741 164300667 354180979 464501469 532893939 321345773 462697505 53309565 823428413 481008153 937413587 477559635 885740873 443691143 633542121 881289001 313498207 747981957 315961293 496433427 582864459 926475823 435957747 471087725 987602021 121849441 52615379 468899805 9382025 152757701 440172017 555218509 824444447 676372939 870148821 237459443 698085139 552736683 998850069 46986059 104218335 905654631 103231049 807596057 125109119 574430919 304168211 22626409 85401209 270113369 638135837 284254607 758331869 575520887 685911577 146729769 995483967 392767039 229439429 216946713 161705661 43742365 933381853 611586445 266871297 881965375 619500849 307250167 138243893 514045343 978385809 950119957 873878033 837521913 610594519 440620011 404567765 760380507 174683363 699305415 828590403 8053647 988817317 417155897 943653805 251278387 251730953 817244705 61530601 321726885 221218575 623415713 964277331 18405131 755983027 520848679 159746259 884396633 766260997 192340327 923018199 391201605 965083925 204349787 83709269 780836945 910910461 719184715 737043403 54426563 182841823 247889345 464651071 782087339 138381541 702355599 28259393 757306341 66454083 304987605 167076581 359652109 782830385 553581303 816960457 550751629 156323315 930779039 239079191 791128471 670748371 502618819 540128633 623497505 299097377 418033055 661588265 394362091 407706683 600662199 307631329 252650879 326192257 558773975 896541931 401095211 707706461 817508371 432914963 90131979 980042563 789342407 796097713 764515579 459048619 426017945 361436065 439424677 126400793 315320179 823434059 416809337 247565079 441206925 335039645 124948913 96775735 876893023 83990541 319327819 172718099 758510767 123746969 625307663 582819661 369709961 132762823 336090769 404149391 826959425 254428069 769829 799874445 920860021 672660941 843856877 912270847 970347783 84658775 48782033 336162473 727879461 551513071 412333697 652309077 18832705 505652159 136530293 746144469 23301403 459622529 53441775 458002435 519272883 710466415 503195637 757659329 884150361 610354515 444620377 942974969 426864029 610421625 643605427 218883487 221594207 673105593 141834339 236070315 534871747 46717039 867536017 924085025 585101619 819367299 536731947 497969419 576729443 143959907 957017839 826274683 7863635 103571717 302478679 888368779 556789829 953484775 655809455 594271069 914142659 699893009 42314759 595756315 302660773 102837773 94498871 269130233 188076551 925357047 352129757 723115055 592145481 694284391 821246565 298918657 699449885 557144713 78803451 42082745 584032115 6571017 336069787 803719849 814101129 526309403 524677125 865039403 858438369 72854657 341439 291540897 529689675 219521663 48517657 491742327 206372315 575790051 1793839 827825435 993263849 999505923 893977565 918397453 930006045 548428481 101208269 398460107 193758819 192970623 956937073 843320033 655981549 28807213 603971837 279723233 804011321 300414529 630017399 79540069 347930123 315314105 488427169 23395343 111263345 628408861 278645009 923124873 669917115 715521911 724481819 810578823 389442953 268331363 726540769 998176195 495797949 740551675 377527371 14953725 983044741 833735909 731916809 609992961 994595157 406762067 556123285 718555297 112997351 1374711 605071405 964676279 264626243 69617683 923601113 347049253 166984369 921606763 369005931 949792213 676244681 860711245 330899067 578893755 756978789 118081169 355206505 691538385 557273771 167505043 505379165 962598935 378409221 508262717 36354631 93749401 846175273 878191353 81451487 355183721 781462803 731409343 293620903 971314849 253641733 767972365 892344037 881501027 88662415 793382889 638895531 263517401 240092547 281854435 29464529 162654775 181950463 467776017 12612853 969990839 388039267 277926159 930004611 60937881 280526433 736182531 807416489 710008873 106729 346304159 557266783 100467385 553781561 370919959 521063781 966907811 235678677 561177127 348329797 677503817 357952905 142214425 396242511 191613975 510275179 520015291 327045019 697748349 952354003 10115679 418797831 289596661 66590313 788048873 54317629 645263621 703093529 271545531 436082607 392494131 239452695 779826629 839540627 323184147 948402397 523541885 914196201 873250367 988536369 891333859 812832891 155495769 530468129 803853433 358623191 803371021 731267581 18147665 557334617 507845131 283799909 812123649 691978781 859337997 181958973 18811813 239861517 409302487 586378671 744001251 30886873 511027509 367309359 448703213 124178171 162277621 127346813 765469303 636641713 565448435 405921689 795198143 261474053 353828881 453984467 616129675 878456005 201144635 93322429 609587497 752671371 93678689 501166643 354208625 655221431 295443325 124156251 129300161 288008049 263310227 137789599 920039933 84809129 497991599 728817077 862437013 78888985 399263199 244711577 72874879 357489213 839288895 408571535 207530043 363791715 219525105 50708770 163178955 837345687 279105057 484945705 898978241 340235443 602917631 880015295 272401715 260951381 767120581 769617223 125129149 770526185 299383993 980171885 894943879 32475549 966195745 677706537 804833597 586967913 191703377 527049139 451174169 487165711 629894307 882488721 695598551 937946645 23436667 677965455 838120637 448274637 302651199 774167491 719749529 162721615 200270949 536556677 137095619 475507321 252869479 970826623 863814937 208282359 569105349 670121367 443519743 554299957 914108171 856063239 404896103 595629935 874198477 793939527 8732099 398246053 958892193 662367007 450995731 14324125 904061227 589001111 539084255 318653159 867227927 590256391 117027635 878951135 438831381 815049481 524006823 973899937 665126369 811497603 769697111 105335575 607773499 585072799 473259499 173735411 334241007 912158163 380677007 161402539 491791823 664900313 520737277 247360383 284737207 319196601 524584817 766581369 731044229 502779581 992209329 946999399 950183463 183761785 494464781 989682147 736860045 664035273 574768985 915911245 205992627 6706387 330715381 654307533 243061657 863728131 234367429 853989205 669666891 82711051 798636601 268334489 22189021 631616489 20540489 507540509 727391077 371760097 788188271 245637417 678232839 96687231 905939125 183117259 706555119 860540311 275687847 600972509 232385101 533218119 166423901 859886591 484967005 638664433 244485747 382387863 148489055 631795267 982029073 642588891 240409505 437390895 569666533 152673469 289989745 565574643 983589667 203205377 850685739 754550805 121334157 603294253 519219251 715258717 734211945 603034003 770436591 949364705 312337281 729275467 68066775 50423807 672972335 277624371 171147615 256128859 124185169 747363063 783744783 553439199 899002445 838718213 660796269 261009087 886986511 902041749 305511439 889708923 50435855 448532647 626680971 22356181 250314573 294418949 298923397 782429143 602683981 73732159 935046569 718318297 386734877 374564525 625735335 650006645 933907541 558546285 321846843 810244753 453595409 20730475 535969063 205876567 473463801 408824915 986563635 360397373 52667451 109726113 601136947 24545023 967534221 961729427 666369539 105611937 545954861 569924915 949710721 641927279 470822881 125074513 161522331 560549629 727489273 976059523 634399553 298010407 917237321 887338027 215900527 594287379 295113009 597178739 739642919 610625837 466787989 13251399 250588785 724998951 995981287 853792867 181161057 851532543 33626649 38808133 85506067 853635577 422480557 869986357 522783397 368429987 746593959 963765319 5929285 291493581 303055765 344646223 779586085 730710679 196611727 55312623 11895165 399424867 123050801 565277839 351451791 380030943 468250787 410679391 261419687 505021437 838714515 542410071 896414745 180277245 358455351 144059705 346335035 83441503 916253517 338107789 534050675 706484211 100865819 198101153 263178281 594948297 519336305 728737935 404295119 90284865 884592547 617336373 680893153 783185407 791970193 747599423 907797729 877609965 62879393 427521051 579198295 489146177 615362751 11341569 254293719 209748087 648682853 641582835 881172989 51559249 244307087 990167479 756215911 464683487 181512641 609685471 622106051 358572915 809712911 957577667 129502915 423676841 830495755 706204801 634533919 356887399 910828243 352747269 108397465 403742681 517822223 179481853 892962047 246600049 816468717 748321249 693966623 974421229 359926307 710582257 594599127 411583057 241489647 384255287 493231621 332847593 225975065 549454467 689331863 542967625 824053485 996730987 902805375 348393037 933600321 47976017 379361205 75194909 150847349 422530399 565573947 905902623 477756527 62039937 845936671 602739469 609260443 43886707 716978031 89022943 408600307 425473203 808499273 315975899 751181041 725564043 784577229 485307021 498739103 88443659 453305637 564485835 381496203 319459081 170578563 778550703 639238855 235501095 302817827 529573021 119218679 836819405 578886727 546058563 713635645 684573227 476102455 239389333 982974281 94898491 321237577 372417485 226309713 299390907 923037395 376631667 51272981 876652083 9326395 401095249 591473111 264957943 498309609 365271673 475686249 645093403 434329169 414704717 244206623 174911103 59100139 531304299 526266585 209948879 351728441 200024003 267325949 465836409 559119049 564542089 726359161 82183863 980992553 963251513 981173953 684869511 501517559 334638231 275011543 915814577 686384595 754668975 889745471 923801543 80416615 826198229 257686281 298358305 785605989 208686245 833043655 139227101 744129929 913538309 352613021 405055207 906660501 483125793 649583405 801296877 747280211 20122987 525685159 207778663 223296915 673594529 481589443 218822807 303144243 599611079 446225851 761381507 754969363 975778089 425706839 813704957 671104029 267171421 164730087 309609371 741635651 192079677 830477633 853870785 592058241 384555501 552049601 289773715 765414617 262491355 544499023 159055365 725656917 691366841 630711127 411594701 115690757 282327173 589473491 662527339 835189255 400937093 503042879 835530281 510415227 742170945 723859873 848670741 601171083 558456721 959485319 932936971 467810153 270673551 810289161 271876519 250540627 340979871 410621637 432570963 128450693 831573105 839656671 354748481 690589519 224718835 332632585 796751461 794467585 933083495 300883317 275187843 346588147 246655055 459645667 376159779 135051147 807937141 582326171 893863827 275627825 923481841 870857577 154344687 436466009 644997407 18515875 457557267 975910011 307964831 201298473 777988777 548933147 581216611 899424865 119912225 663724483 620093083 882221113 188349875 951115779 365261765 982403367 726222945 732932985 376310949 661422377 919595763 107335621 227739975 930666437 485224439 427747985 199019263 202099465 184864711 108526225 575533929 658660493 462019971 630054013 705091437 908821103 390290961 851966489 186235441 532737109 775786789 102173997 334667823 664386155 648294967 840291983 640691743 730162281 507107203 485766935 867899911 287149199 356393239 397983911 754005555 640386207 798240189 374009129 45929017 792189163 214882835 161125777 219346419 578813769 319535991 283527895 367007365 347777557 611962639 786596095 144811869 139854135 721226959 901903379 736493871 667972381 174774893 567079715 677144309 816215485 864745067 900075853 760221941 983191445 369740047 641994417 569749437 671079083 46984553 518542713 903829791 814971789 458024533 760426201 748116791 665316435 818502511 445640713 6826347 926614427 417492513 368046925 405263205 549364107 417156253 728605423 220340251 271344335 495481561 185340993 673387209 948146079 252476821 924166811 171874289 787802299 752468827 784005219 398329955 294010471 560455545 365827587 27997745 247450481 875353867 599096041 95282105 817317935 920816109 254490261 638238365 565642115 38289865 416132485 566792393 32390095 844351247 120503875 538673011 381684225 916832761 474606181 174502423 464162963 122747269 313820035 121995641 601405057 77782139 980960319 796083365 216285267 295205999 977825603 465125873 952463635 821244597 507775555 721246711 195833179 303875951 77950711 999745179 370668105 209787525 241281571 844904457 313434243 697890983 498653329 878336953 688768821 719177805 206244371 323985251 665004313 721899705 296273027 660421647 754166121 73503985 217340099 891175685 24351983 909556935 536558525 290292957 375046903 764566483 554047333 63157873 914765401 205973109 544926643 793888741 511838321 526111445 769869227 2796967 162469415 525254113 401410135 973388651 875682537 86472791 915215305 761242925 47312301 77776817 412835867 668228143 36085745 554014523 316281455 535532545 789651131 66232581 568922095 913222517 714601371 895392487 94979791 920178599 38678437 962268543 254794569 414872829 305210489 43909433 841266333 346015265 855012669 230530369 473644055 828065033 423365021 977829011 411499015 304847345 555083475 337134831 120497867 26163293 533931161 114188763 787129795 714078745 259947577 407157671 50108507 335452729 693558145 679253615 873085187 721268763 497103299 838131983 949362229 746712673 743907555 732536881 3558261 915052535 375239747 321858887 330307661 841666837 749908947 240070021 794094415 275162163 825093897 3641585 268779285 947885847 709529059 851336013 124882241 717756365 966309863 605695279 401236863 665703339 537626917 579563243 669960829 340724299 11782449 424414627 772193531 58675345 840013355 443649087 951299767 749365163 357539257 435840623 447119229 423960587 86522889 789929389 231809055 273111665 66560719 613940791 58063735 26654941 239711309 868993557 807482727 633217439 655801927 891327513 958539227 246265417 654082315 693212379 474549697 908578487 878421617 524127675 10301465 166180365 853227221 501204961 549304545 289080761 876549151 946840381 274529317 835638895 134461117 963716487 297832183 620299563 807010983 577635137 6968433 478190129 373005399 470421681 547063477 43399181 165253589 3364585 263564783 410614931 53978545 144268993 963824975 152810975 565209087 273216983 383599119 945413463 884931423 504127895 170984051 71054501 990695927 558563887 236857541 875137729 723727989 421116311 891229783 337848035 101555469 730720911 393044611 839673233 969650305 189954465 77244845 948370327 285993237 713500189 332295739 528462089 929245079 799139099 630999459 862061125 957972575 260450425 498269535 404736237 914926155 84128225 443739119 518666991 852805567 445167557 346702815 201464701 438994347 95952987 637795009 556390421 460752005 956538019 106555951 620548477 8917325 836751719 521868491 887134909 638856325 730431541 813684033 153229357 824504127 418906729 329474881 737318503 162668559 668393503 553194629 76670287 517239317 129592641 105818067 138324243 300957175 462896255 805177841 488321319 975803107 199405651 786555059 405419333 928211855 820545019 264135667 501080693 768943927 819610753 613450899 626157057 914606757 13306803 321144703 728450685 245179687 77134123 688487079 842585797 633934737 870526793 454674949 561749759 827220801 311085109 891526303 860913557 622293281 270104799 964007291 647515197 752309915 48142337 728113325 573022451 236533927 50563863 341850191 405271291 442508483 496229743 663014275 163673057 973116407 844163861 229228917 962433145 677797327 208535011 876088405 570161119 749508449 873833079 364077663 352546425 464685645 837044029 957818067 925879539 251440057 928760163 278588157 363908927 689729875 360996833 810703151 354011547 989465169 850093177 426105283 157683595 738979953 569434801 587507741 696614109 763212025 194717403 445308835 847080097 450265015 139479311 77170381 438988855 493449731 937003051 160244239 391697985 633563067 941006555 182584049 833702829 145340483 796392075 788607225 588192431 256119179 466154615 998347963 143380929 754569995 50715295 331646673 397577897 520293565 808232137 831436509 544465269 470056491 695131013 867600523 163332983 860626785 286409519 576133259 550460491 595506165 821990115 459581337 120991445 324324871 343844747 296894837 730419779 792323901 926637785 50013165 382481161 908171717 66021955 579348431 490461667 635255125 53620745 628295159 95031509 999747627 772760117 870625863 538304041 455196685 361780629 196012715 967299449 587226955 325369027 413539859 955611803 331827641 90754335 7053179 437406391 493200309 582208977 675581667 159143735 695393065 959067339 738263641 701411537 182315135 807162817 342961899 383272065 835881903 762982199 710745525 623854731 362028857 105075061 956993755 872356731 486172449 578964361 198250115 416269607 9383413 861974093 358556643 653543847 864401355 779820385 444987957 122137699 244403525 841665579 600260027 166186759 642503301 983133409 277798589 249789575 80155193 133771637 805521551 954983965 752310427 498240171 256455307 571171919 968921703 103472905 601226517 984442857 184271331 993597409 164823701 787539201 34529759 427985483 477891197 116513777 293938351 394522661 47858249 887017053 499866931 273977115 277981305 630465075 29294031 886263707 457337755 592411303 516297589 486708701 372052797 474812213 865736855 265239777 591917307 686820511 751262775 94615409 647163769 147209205 344515801 826534173 701823837 541534601 130565515 85003069 257089119 797837303 875791587 774595567 676981813 12643619 553257475 192103711 184709537 911353661 579484557 427806073 107555695 562482101 134058673 878574969 688034675 536848969 734708771 500697693 923364739 784197627 513178919 448043311 66010757 258195995 985403005 309883327 626122079 10136379 224413557 239042979 838971913 180636729 145145065 128469821 637931641 108257079 335669809 545376951 54734257 687573153 168049209 726938877 87280829 410601007 5459053 602228939 342749105 311275481 210424257 631661983 432796323 820439269 465634231 46831297 68999865 221962975 955440465 496998981 410456347 113003677 391469603 513592319 793882619 471637815 273637181 858811537 674400661 344053527 22094915 924356195 354927401 814152419 280403543 897311909 691810309 663296661 14893353 485286991 841990263 951342181 755697647 472291107 188994269 416440283 568944743 203572393 402046613 838684351 995823575 48370991 76507405 693959209 765322767 694966479 410576053 320305523 772434019 687196775 915102729 745528129 268761779 628062371 621844107 2534531 506854501 624447729 797889987 34015591 290650981 609803401 998989895 225407087 701197101 839666029 761181357 37336925 27161527 40654691 599116443 558063677 505752205 43741437 950633401 606440547 469451709 525798035 86525113 225205099 339371225 347983171 478660183 445991995 535182853 177428473 787123797 187020797 21987555 1340003 651968635 758000935 927236003 675224569 849887135 483724405 926274043 894216955 142089367 370934251 2374185 994055027 726110025 406205397 855505397 917738033 535858077 481926087 952960937 661557195 845994629 762619295 942853921 14596003 570247933 995977855 245293239 53808355 114801415 875264469 307187793 74841463 806069931 926283859 127677537 389344027 922911487 251319031 683159769 264129613 571611417 621780487 884922939 887216983 834300191 691328011 251174027 440696649 870477625 333905627 34981463 649935097 461874841 330672271 809703863 922871817 175971963 712160401 688267593 319993825 276311329 203178121 171759921 910220465 866882773 789548907 675452447 381140083 653408999 634966647 317846089 904291301 129370805 246320173 820920429 483046287 674978461 108379485 257730771 835401925 198204173 346507289 639309383 61208219 805049207 99548861 256887583 808507635 968481107 802992879 209785403 80325491 419466021 828047513 385958401 20057233 248751477 781476081 646529375 570642559 904309721 493952371 695379657 453905985 778293735 88187617 782393665 537587869 772065349 216679499 444729675 37195045 84525979 209107971 269960181 496860465 194298781 794782375 120442327 167653599 575329795 877295641 22469647 12218907 770129807 191659653 339356481 347459987 695582479 253759843 122650781 283615167 291662929 269166699 601055449 212044769 977379123 382720163 203259701 12483839 927648917 394791767 349567603 311157995 500816225 4376347 724719077 897691451 647141257 839393485 487788129 997748307 739774219 832784015 846381379 615392855 233892579 163019471 856758131 624433211 12746273 289455937 411971165 719063733 103119573 432262111 553800955 567563589 464949015 724432879 360116937 707422005 102675469 135284479 230750413 933449875 149801183 973149663 840055445 716357435 198721985 995585455 405051705 875229641 11250923 831961811 672143959 733119655 687094177 83332085 605282579 66770695 47251243 826977547 493866269 845772765 533976543 96603217 947934637 3892463 72375829 428257609 79636093 5288895 284351789 882998211 402943191 455665315 297497239 252733649 327302791 871766447 21872831 845533135 510849763 887402437 857971235 511223651 388499915 103064973 787606085 317453943 50094245 830952567 763433647 453241153 116941663 10518971 787653619 495662141 579114351 218303835 476319401 509068079 707160787 72577311 697335415 138774051 651586321 867651477 240271621 930989677 104495159 243080983 48502023 257108907 884318173 261807301 714125621 217070783 327289377 686618501 918167891 697777367 772883623 38650635 160753963 368881765 545453473 900885199 249360269 642170407 602326721 78500109 881674071 293316129 373907015 303815123 128516713 865680545 974998523 363197419 397101741 845237559 914401321 985976819 837481239 40640963 367358633 764505929 804155039 987142503 990422999 720177427 893502281 267601297 765360027 665666373 328398623 201599733 498536035 137523605 317212465 169265295 259680291 610214533 776818333 166235297 18903389 694929499 20717443 365558203 600977943 310044199 755547661 616141741 686487259 672932549 977889647 426689689 460869571 683163089 759688929 442643933 273398637 475630775 597252775 755141929 409082365 544460707 776154379 140082033 65328677 465040529 886548831 437983729 508782615 923672639 23614717 6620461 772795029 804420407 325917255 23896561 768069089 838717639 924847527 126926929 413498061 501921803 654402193 282614441 691294639 803216095 764391037 260783263 905725795 700620013 377562095 166273055 39199313 504376485 717080945 887167067 562862951 24572481 511547027 169300689 130472731 922795199 283047155 870766661 950545003 278242537 310629169 566318019 633710045 289768525 681306105 287016863 614611073 937146437 412397305 809383031 25372907 300578545 540911601 659259437 662391867 229280313 622519711 716803823 773649687 363005133 786475215 566582321 743763115 385002789 987181393 111431597 45661615 90954371 227850499 11158121 276457315 941758957 807141061 473842611 2159755 883058485 392291715 910152219 241256565 665556979 173461803 239619201 643740153 559916167 673477053 446583561 901928051 521917209 379023927 327577629 748177611 797048983 909340581 451938161 822839407 264766911 882628119 60847877 734601301 649405963 34425259 575470107 496051707 663273159 289138561 39301693 526106215 158087683 471246533 61051459 262013225 258674071 448840615 393706825 239074645 575944737 537602657 596944815 492214411 987424781 215665207 746894887 942520305 275561095 135955571 166039201 834531635 183129739 803535719 850153819 413907339 262592473 197452141 909681113 110568115 296239607 475772391 42925029 943187957 9044277 90006591 700319897 446686493 971215279 657440489 836991819 280216963 271262273 661846109 560854179 27084035 41481621 282667041 573169037 768249095 775926557 299347897 81153083 670665593 853265933 654295485 980124971 484179409 899214443 152586949 834958883 18967565 263510521 173185139 317348651 607214515 147107661 346376307 112450969 229602003 698502843 327229301 27058955 496210177 757828965 447524915 929501283 39563869 407880755 143755889 330034895 464690829 241646805 342268921 704216259 845836733 442785477 410680733 526244601 618420135 184707649 158239799 460254073 844496517 309401425 891516329 794990731 95589409 376857287 715238879 861384647 8303305 708813115 152917449 441694983 613749841 136280077 500343905 296168817 341995799 69159013 797825451 406776943 425559299 207942707 603766193 70190263 307095683 545585455 351991173 82278725 700174221 274364891 791740481 981956187 43992737 831766141 845210119 471074441 438919105 64601127 716574467 746065825 3832703 239807921 508893797 852694977 401032687 146383033 347987303 310453835 208264113 468510891 789204559 506113771 846161131 435508149 276938083 508094103 819392585 814164431 896069623 424565899 609448453 945490873 49263461 562764619 564949211 977850365 239520783 274147235 431075089 648880619 525351519 910883753 598592885 449029787 877808585 437875125 853548639 365252587 106496455 818080111 702753453 467330437 489643737 931427011 338350275 111871963 333642635 330834149 643595153 11040035 316826991 706876751 532639629 877576797 591596063 153320135 656571829 683792979 702861375 196922459 86873745 317907091 10446453 885583451 909191981 344196217 540365943 333277031 840801823 510119969 604914687 27823971 131936391 857774453 459867597 336157305 178831627 20859175 815320749 723866141 2386137 800731563 111954033 85539855 750579877 968626245 154712819 501856081 114652593 81128957 971324181 334617389 691816129 876792481 955557827 427232315 112254757 409757131 725508845 734017365 58006449 43600859 989287567 589836449 127184835 682168057 959632297 512364169 535138371 4275221 504645959 285281987 240649377 899706345 272104315 432820555 443770319 424297459 706052703 245189989 763902285 106024315 991417111 590666397 40734755 50184339 436776137 653873095 388169181 538427155 261047723 338038273 196465041 949794713 762954743 561611693 402756319 25740433 81207021 118146423 881754349 775528745 187996121 22038359 587840873 92533337 874902287 452565381 823327113 121543651 303435493 146445703 422651145 455662413 874831551 942242601 98556213 526353129 892867593 893403009 406565845 209401039 352943923 6765543 73008195 147633117 866892985 608051461 448740957 373419711 307633179 966645699 126675335 805556961 117107941 842729045 150556081 217910655 606298025 184472891 625565779 359992473 743632129 658487861 665354087 159202293 311828113 5265745 5739127 428533283 644436479 985932773 220975503 338545535 615877635 898209675 451797573 486012197 349106513 537167145 632835769 363404799 856201137 202696169 450534545 149386175 941049065 652342337 874971131 794954715 855018957 457500909 153456301 57767571 279688503 141443055 226595557 582366705 136140043 81778071 732124265 452752067 703886639 374025079 853724551 385199523 522919067 447311211 273181719 509966833 668253763 719177369 697121399 525674197 759479343 944653933 438301837 403472449 387792997 635038105 417667781 832371177 792845817 286570779 201473815 167230545 349948933 405046071 143534083 87004097 755196589 404377721 71209355 816400711 903832089 647300277 709111875 385247677 305316219 511092233 625242171 33687235 720650767 642410967 715231253 585441217 925255189 398669261 470067191 58931943 746961881 549862621 940255887 641525805 329246381 715839045 615573011 335094869 584590317 766492811 891434305 989249509 408627703 923272311 614573663 956759087 867614009 570297377 740439101 436972619 593198371 687651809 223933743 706622999 293641009 583689057 516825621 968453951 409483749 299558537 146200915 300987953 290191815 881858191 368288219 647740709 682169963 322081005 948678687 228676891 176145259 923286123 204649761 897624799 28753771 349754897 424691043 960160251 876501779 915402807 272014839 972124621 925499413 978949495 450908019 597662833 315882541 563130295 804429043 747724755 487391771 737640737 613985055 91953823 844253869 850342187 216896293 301893969 550826929 821740945 220730299 791082279 345190659 810131287 781888543 779653419 95937415 185504201 639340313 590127405 132783653 525088123 297852403 363516099 978470607 44410697 749300615 151103055 446285185 104023897 59385139 777928699 342517051 228707863 323273181 806067 863731467 437387061 280858865 871514931 579803903 853600945 835382121 193542905 510800691 133131727 178611391 481955149 289965259 815149597 248084989 405889091 855925999 681433707 110867119 277431727 548934097 321090009 897776109 459290675 336348077 918274761 527026515 561679927 31133125 100669929 254593035 214751979 959839585 886617899 687421373 824826695 49475285 905518287 668772773 97515789 887015549 155269205 601788289 596790725 269197239 864296333 832251027 460903869 883426801 69837703 853745837 798854927 820184989 16954277 396039459 170390169 530633523 336664197 33138645 514710279 721172021 763595543 925203495 910535623 616376369 333677455 128097291 29781521 129235893 914212457 145006323 575119335 821113181 71818599 560937185 620292879 56488141 713319065 182625625 423500827 829352365 648096081 358139497 993873251 85809839 381676331 80894377 270508037 776418959 195252493 90872117 291300077 114916111 905324579 205006519 166589385 628164087 652711647 112445017 286959121 291289117 946743295 388186579 495636485 633211991 175767431 485136739 118191 171162763 595952067 221429455 180775391 75055265 649275463 332781671 636002603 387377547 770446065 211030527 491015925 765389893 792309475 894950391 299853927 179326673 542475657 804084789 580486509 644931385 858763675 487304999 121549251 21259405 848499729 54764225 83199975 411922409 700535601 532845957 384943651 45063537 221536647 447058807 363270023 136819021 163357417 606721317 619736809 284684977 74432369 52955815 1184235 593922261 786767491 228511899 487485941 777843707 477268429 878618405 645385015 72271985 182330435 642374901 5600683 362760581 912627487 156846145 683234831 345355413 560266473 137501639 779685099 714334209 994466411 688239055 507791251 857533491 247677879 955577637 674821403 36955293 223898415 994135071 914034021 543051963 56623217 799331229 328038423 430840591 857125229 37829125 635953063 834560033 441630551 939955779 727000647 516191111 111039915 555892433 512063227 956965591 78954797 590154411 387053705 94762167 386037481 638257751 980992643 523055055 538697523 733749987 568920641 572266451 478845607 792934119 862366177 900620923 115022635 854974849 944429903 319212683 780349163 20425045 144481081 794428107 469986649 618028435 255885335 836782353 531524147 783013105 300717355 654705459 50424957 784249005 332508027 122791447 645299587 58347407 744176857 244914341 383529435 841378019 245781723 85727441 123161183 37671807 621217765 790335635 219947315 420493507 856201755 441959663 228401861 330643349 56298097 569022189 126229703 462246243 871372701 361978531 970615609 125612323 415445791 739684903 890462043 556900947 663704129 964587679 619248315 983193593 564314385 336998707 301966383 258022819 434067307 583778327 545266897 878932073 884848619 253348227 189201669 900640233 84141307 880983739 829475195 696549191 517037517 347494665 351179809 909968947 296445781 747107517 229111609 316017635 624155993 353340469 923973701 44699671 318581595 112749265 793288463 201828369 661353905 866966011 36668079 407642019 576411759 299484709 469748865 697723939 140482167 269234637 291066149 781855085 366908017 979760241 931474317 564485865 287992781 764498843 659531241 27766917 939164611 486362081 436473015 998063541 352488021 414679513 129181115 224168059 412249419 247684393 413925121 287169115 667956531 643062651 695501277 952593253 970948711 805684093 611103213 937209645 962924039 894815213 918579219 120891347 654633721 457505421 455967611 306976507 282229489 523637031 465693341 360270549 503892327 906597517 505118769 265977625 562961559 132395927 842646077 829148673 695590543 202654763 346345229 124226391 735960601 648045619 181666359 880211303 337616339 552909981 723371413 543681031 251053851 167641191 381661771 567374745 695563031 235908499 101949895 728337407 771085243 796737579 85157053 16128423 133091005 528130881 364449319 802239115 631997599 496784879 94634573 270315303 734581159 58361429 89542071 868227457 437989093 282072227 458667069 464630313 8773941 543234053 335226361 204453171 100327987 533138363 320189521 615320895 141563723 965490179 616770287 703733361 350548137 467363623 892517065 34488699 920019017 609309309 726677787 335124623 275492585 384805725 45671015 292236909 135686419 234518057 792677757 356219741 433722901 319392075 875883119 135215147 497632523 923655223 479033243 100377391 410172881 759256677 775402659 572354885 874444817 873422937 721497459 110806741 785892923 252579485 20339521 764418253 748028041 666977475 820409737 45926819 319160825 362646117 788319503 983267413 506146645 305151525 898418913 103470953 19569707 181362861 436552527 407370223 120025045 613514673 565753593 515523707 845978739 693226217 444197313 711812653 868333037 475783961 674421205 862847913 229343987 44100875 888085671 579072033 396207613 50284689 376394741 398288967 363786317 386744707 436937413 522100573 589882089 513178311 273778271 275768357 437324195 540316487 793731931 39293939 449245203 848795891 453543571 937381783 657375385 685688261 250091563 683039349 449713501 709798593 912881809 888626031 606444367 991784689 530965369 736592885 666117927 2885223 979392223 464083197 772823653 610255165 387723781 729392645 778549843 471226005 200251003 253777939 762487041 475083161 105200915 887472311 830251079 526003837 633307369 327005957 309726403 658100601 918091363 93757085 688250593 573790673 987673131 965489315 960248269 242794191 549201975 833958601 968915075 45713093 596543171 593964097 779615939 924400653 539253075 691687629 64566803 618970121 834268595 977132465 611827395 815422499 982107895 249327803 34574063 398777039 198766717 830239043 341568883 745901703 294372071 498247461 445946105 777945291 276287265 79135177 258918643 156756263 656806243 826662685 312265877 948804141 207633957 561252503 886299109 291607671 523284781 94894135 905879717 623231399 858685063 590131071 964537195 95702887 414402441 39287425 2593419 741453931 388740045 396432593 307644199 727779691 103138871 231891087 770972711 848551469 795575285 46715233 411194683 84090487 490135929 913715059 276450269 195411227 294304131 774221951 729660491 959022839 922284563 978990783 756872333 136036845 862777721 593020413 927920501 699262435 487159623 543622279 510495643 945474511 909150553 251674671 725828703 537169065 374762195 9485657 663296233 415126647 54809893 718711783 633797929 832450879 218159869 707065929 491794647 61392917 970753885 969865845 929272437 751595539 383629447 787967209 441729609 704198491 715335431 158969261 459131749 834063895 856783025 663680333 52367009 433343867 96253345 54105055 308487579 261253313 61932861 116511235 360055231 226055721 940648753 888591327 505176379 313387519 538686575 966863391 354451975 851257749 819752501 835011325 622851299 904768069 875405575 717476661 89385049 866024561 812104625 914448141 870542777 235089541 658361415 492982099 615606811 634973169 106976039 250538591 731661661 64652335 239726579 761301773 421757737 474879427 139043481 866469831 354886129 269110585 580314699 979985271 594213355 8566303 667507335 992660117 387580951 509075985 480926227 425239583 223349055 12696497 788414967 28133021 51037427 590112681 311484043 729159451 353911945 830227885 392795241 671084591 67378723 286953847 350857589 775791865 885993385 117544903 528797149 128443935 245032909 829661033 869422869 146440909 309975299 689738287 748397273 209137085 642917007 260610547 734982699 547402283 998267769 105040793 930544219 850579677 822522767 314395143 116060667 390869281 493470315 386478387 938278887 293710287 508538477 424527639 555486277 213834821 646203837 596709043 804430719 551606119 242161995 320127763 690387275 968038565 148574161 254393929 67650981 932976375 772867789 737800305 106825681 977786839 748018567 974210217 705462107 641263693 960266257 783651871 19860247 951334377 925492291 312825091 618358305 132321217 913928381 212106639 466991327 86326129 552942565 120712457 591342589 641260065 618620143 507168951 842576237 162344319 388455121 330566893 388336493 923298495 37392717 680317957 699167105 156178851 635346921 617227105 161032055 40436079 970635511 549827181 585232479 454159347 451054223 24318873 816809881 527994499 674701199 242737505 2220999 819703549 803808419 127560517 356110807 436323531 710480183 375215825 491973629 234371543 890435719 265881751 154735283 725431705 476537491 976651571 608531903 557572625 957715233 210228803 799543087 176102593 880001217 124830069 342681173 266044859 445045199 447844217 277945549 297381525 256378215 456414475 234756987 237217131 715093107 131856363 712684941 758519269 334036133 735744997 547346807 920152113 109959539 549492683 586898421 21778437 681127197 983062649 934909195 378473885 356748205 843315149 35151109 414277317 372566001 824521653 821737847 573430213 942229635 217493281 700993597 206823031 896620739 155032333 698645629 788471097 819141081 201719673 363701665 625484783 1340855 659694193 381089887 175403787 137350673 206021383 504604595 616030847 795430251 780517463 863706081 439222989 546197517 171930239 916780405 846788599 840476933 444883885 173007941 786632335 547340589 417698065 91345513 518766763 67667493 898960359 940050249 645172967 500429653 724379247 794766481 700920683 116780781 430522615 617582389 902637285 303014629 187369677 443891823 975069579 401443327 214359885 862180549 337602587 458122433 523498715 897988867 301854939 280295037 343115741 768778047 864418971 873968203 610785739 11148755 325177263 272634889 619636761 929436259 895411447 389402467 682134351 587558109 157817047 702095047 75155443 902234229 628287039 813652589 994728345 228843687 962782119 58150229 900845533 865061941 671735305 223026251 697663325 538781231 442026479 404597977 176179399 324618471 627769445 295872093 559909835 643117817 64714755 330210547 220556325 426441803 381925 568283271 849988247 443722503 917719219 444094405 545115113 789260451 739299739 770540329 31225839 579526875 521779539 676325363 766370949 39830193 85237529 157255975 325093001 65479029 455073715 927426715 891518185 211667387 487600753 152660963 55648149 421066331 396990503 998884193 276786825 39236989 821732917 898631999 690782919 716123021 415425409 319377001 960030039 623430717 523016055 296261019 876249165 901923211 27275537 9590867 595740613 389314235 358449609 490967001 5483229 402146137 379112617 494780993 523729603 876481595 834730813 452903263 249069479 824358009 758909597 682869717 135513029 551117949 964699749 743903243 720651359 444784877 827089341 451014961 578770621 144308163 929541715 577972287 994818357 907917623 768733021 267216119 29663261 791469265 493640857 454938849 286424795 939566681 27589455 193349707 178370775 113269479 309337417 708905295 979662467 757154261 698080739 915630795 918051931 768983497 176352503 47492459 98640863 508205997 375763435 464797341 381608093 71525303 154249393 430430617 913378595 385029217 964205755 537122913 202509839 129532275 577281547 140207291 702875391 219869943 361720357 128180537 766253985 716950593 372915991 411750963 667323559 722804461 11293817 45601991 659560649 889980385 520910951 134860257 117807561 577961031 958403721 655678767 80514421 866916501 430275853 635732009 239824027 494937479 701139369 927129359 581916185 251346209 84280989 144688619 614435789 463261615 495929259 261022605 196360101 301021381 653053733 863954571 439328403 643285057 315925727 191269961 930225039 900750661 715615033 983498219 47011483 291100479 711735321 742924643 583829445 538826977 939748843 605752427 186977819 863787817 492445865 146736001 635779771 511706205 941216975 163451631 557245379 290925317 571618403 391148997 694043489 672216825 619941363 794318553 514612935 414416465 738301334 155852749 373869869 913063543 676941291 764730889 342725847 124301587 10158873 376097213 865855501 408145177 28400075 775228131 955366949 321796553 264619065 623381561 540194933 899502501 509999393 673618503 898376547 425597815 450182345 180481121 291306327 600174423 98966017 13729691 308769219 104354207 548364063 70844375 32673827 884524533 835385087 331827389 718903033 365310019 831545863 223176381 950931151 488721343 192994601 81314319 874988341 962543077 755915481 168582069 328817609 841276281 630011411 564687989 617996585 992354693 889277283 86209505 463803397 119793251 516069329 876023121 548966409 650398377 794697207 193202403 582393587 352222271 942886641 741602435 558854021 169972559 153160041 834158815 101825673 404030289 449937545 147557487 939601359 212187133 704539913 756423797 690291509 537470553 724402727 424534007 616961433 659377073 164419755 885474503 53157355 271659161 404315105 396296315 820025367 455499759 608694943 878504823 739306523 593629141 808841797 846194655 827220729 470414009 850147769 119043239 106311611 319247951 12054121 102104197 815939185 560035985 534262089 671183097 165814585 487588037 959722459 540630349 215441715 798031993 154877731 347664783 224537993 664726143 835141809 981133211 588074093 824746995 442455961 135890957 114608155 713073977 344636793 291897679 280898005 223989503 310492539 512153747 44330725 458124601 953669961 404947661 89678235 297262115 486250011 743199171 308428885 284709183 773440945 73344759 762127987 284989021 346095949 559027903 897571679 956419215 526027969 407100207 316355981 94567729 231361891 484613929 719883637 389564649 260495119 38635861 838385819 950559905 380819757 730297635 313356935 922356879 701496745 713450955 836232655 596045615 642449405 288273231 980003083 460337221 944091685 59288951 452543965 932548061 867385255 375935697 682832367 435516747 943019667 649499063 219525107 176782381 782601341 675913033 594321575 574283621 421548931 385021549 735246281 932355105 736091983 597551319 569406243 160259283 107652619 689392639 443720587 950931001 137870191 843097633 111620057 111984729 466481083 914224971 627602415 987369851 559738035 428920393 495632823 892117813 258652837 693044147 219786275 359080293 206221159 211803373 638910513 858471215 694429017 512818971 110714335 390273019 233353825 962199089 767462711 345944707 301524205 526727141 144594767 425788353 822989555 304725177 767350591 745006071 274142449 834430195 23959337 375796661 607352045 384907683 890530615 649753803 442430327 510358437 100979869 58181467 265373859 345346197 583190163 610225347 60202255 952192991 82701661 174261427 609264869 91252655 114538821 578635807 622969039 376916481 569248667 65931331 478163719 705162131 677457341 920384931 25054791 54344431 630603787 900083979 224619225 723181923 4731631 977088655 488104329 860600331 253839325 51466379 136981167 859760835 78882893 175453349 755309863 879139125 475999939 729621705 736203097 598553041 163441097 1523241 641996339 736872657 478604529 275858499 454942763 141729587 493200853 7963099 290514495 152418753 859646231 992315389 796243701 926203913 195094881 509007613 27810653 100140901 321481831 149684601 251612683 790297077 678695393 199678803 372454431 588532129 976850579 177255097 571082301 869416217 440118087 698578207 693067157 733584085 186052047 519694399 998936287 931595799 326068741 794176799 924763477 310887909 492399307 52226829 996271553 925963793 319298827 747808409 248701807 269513779 283315897 946216611 753425207 71679659 747955661 371613519 90141813 512270753 609863499 830737159 758256147 557581317 70121021 848674689 847460729 335201423 618761397 410607799 285243299 861824703 946229453 582973425 12501517 634556895 801964455 212284599 666999231 145055743 522589293 575555553 572471365 555517175 530798419 893822603 821522101 59023205 334960785 687724821 256823471 781817269 205010797 913813041 549096791 501262101 427040043 237324751 84823647 231623803 84297251 229258285 356240633 674407853 129841837 456747215 96921831 996608047 718345771 843328385 147998573 153026129 950986761 83109207 856410201 648411183 853700791 392554413 850607363 188214437 182029999 910497065 728004935 406010461 143018357 191951031 476314253 839268553 558007443 892281481 723803331 116999965 346994843 656488733 980156255 115355487 527896615 936177209 189600863 267896657 349051609 640223717 534964555 437200777 806507099 906510199 983439917 252221531 272732001 444388493 378229921 765299945 855287461 454834185 830327489 545282075 920888295 455741721 713726515 675773857 580849395 127969329 528207145 292803829 397586587 947983883 19124053 840957013 34614201 948589231 816539385 654163913 728117807 439041637 320276953 457935395 90494951 481137349 299390531 332595707 115295701 872805289 899674127 905266353 975635699 709866551 190082459 28119917 970480449 865015769 798780619 268738591 301508811 247364421 595015695 467080319 738686115 978499447 995183453 105895695 833142755 131068081 330551091 585795093 384023725 640473987 529218457 132007075 638643501 21366719 325663513 787662225 262078611 168454531 944947151 624814205 120467481 640930353 427045461 185092819 202059267 130631541 713037521 544047297 529856667 777457221 799192053 508151359 262868787 759421405 470384629 749962253 108631333 239011009 765384077 652766903 428252883 638035901 492203783 986393479 216266409 643948775 406504753 596470683 680187415 296543895 70526047 648583375 502981273 322257015 32079727 266784975 603842223 219569261 464875209 563217927 718203109 193108403 574128475 914249395 651747533 517021121 504334237 615922129 80990209 916544861 896824969 76540459 645978915 451476373 181067943 850772305 620482271 735757497 511158535 938193049 418452709 434050409 708274239 61735461 871767791 70760329 790722923 85901277 203411907 867218243 610165043 887795315 487104039 720470539 316404419 108956251 840088047 794811297 929746645 695897305 356100341 185532679 500860581 163527925 351417371 995312519 841477369 512631421 846901837 482095033 920304415 191707915 904344443 807235191 118911983 658799359 875576223 556610023 723167943 456289921 420230591 270420595 974792843 767775361 601635041 270839249 455443627 28328377 898139929 20545021 113375773 501031847 294211201 689321019 121321057 507625363 440235067 522095127 247877753 70230927 92396403 779186277 390074871 725189491 55880281 76028995 938434033 763185119 849308969 599256083 54369795 394856249 656150819 841117825 565199701 264639157 270014355 785807749 716679571 726097737 354159307 427464535 951393783 716467895 905895717 597837181 538036797 575346821 845999621 269994947 596227499 456045829 500556497 423833407 417263633 892679247 248928767 795858249 980949699 947818305 387895817 376531083 86861727 991739015 765421679 520342509 841673743 100239757 918919359 159067555 893851645 983659919 885707655 223285293 448328417 679465101 762180963 402107211 228082873 983672397 580538357 337221901 720668941 710162271 235875561 987633859 81881577 518163487 731616495 809830413 977907429 114976169 84086979 789520847 850287645 780042983 458417701 400197427 206775097 281167243 112170209 192585903 691829351 893299467 884421067 429217023 76079963 806305703 321656761 711786533 849886295 769745769 699869327 18962033 673837855 504958239 746840633 916256629 425956867 419702115 409636775 679546637 830164183 255198613 202630613 564100191 32345083 806085341 341378755 227992279 700743507 207070509 374248063 898345767 536297809 967734329 766482455 250792525 348071399 381950597 359125671 738141325 905427861 768138329 176741457 573342835 845893219 296757443 32922945 152375763 954077405 742875805 750288039 388823755 495178523 738006919 497631679 645042365 911853497 712579817 957387979 290319703 750245599 762327283 392514579 614191499 480734011 404541341 475900651 195286679 241530115 274380201 414453933 439267073 456670965 117655453 656570301 505030545 583103319 332878027 346085507 495268959 251775735 847665739 78151281 514184643 390597679 911146491 685772035 696457063 885657047 455169927 778797241 973544243 501918811 68527453 138091039 486676061 242388645 514500533 317752521 214474335 742399279 763414417 467368013 406222849 665133811 512071095 848497487 684021323 686814843 790348727 87759483 23680917 645739731 597598957 550543747 188902521 771969171 532010869 774038045 217501917 3677911 585683259 977957649 650890987 361123399 434550507 268148005 985808921 80023569 947744001 620242989 330643491 323971819 137561789 730980869 399001613 368500243 814500643 21004171 830196003 173631567 384942601 651057069 167098873 503397615 589528835 662304349 312655213 45949639 65272947 134038417 661993887 267748151 621864067 767332945 32939265 747602211 466661919 88003491 17001795 893158397 870815747 685438877 999273571 614431415 83535277 664351317 168512423 632242387 688962149 404133617 996987543 103108437 780140607 996286103 416939017 894366667 994438415 329701247 125704987 367049549 134509943 38839775 953023023 883127159 977801695 404326137 51698675 323583345 951425911 702128155 88128603 515011305 222059319 615247763 515128225 546761493 699192033 145949629 465880907 354582963 654940669 5679101 391573287 778121739 63610585 865839035 897378375 297091047 503685007 167146345 928921607 381995683 960539901 237728131 494109963 278048279 234247119 996923275 284292673 437015983 346628467 168163081 460635101 174496599 21232417 670091923 226077787 681610883 175622875 166529727 143716733 927459125 389337191 531925811 316809555 492110065 518921815 747797399 737891119 855493 530779907 80584349 258172589 514939209 83294089 831694593 884777139 307921817 379690709 240934533 446282861 11910237 71242901 276136177 764940877 229356995 432974913 336246553 798486801 102018433 780853273 562403289 954531517 784245205 640327719 173712657 858869149 441121415 191514939 669592235 504262469 534025187 7889899 854856601 233444755 604251583 949009307 509546711 809076649 903092859 79440751 176548967 863554291 72913405 846609753 612989009 934290473 206045361 285531411 862257579 570854467 84853905 470517531 489278859 973468039 997451799 208737723 589551639 542627459 58863437 579963395 334565239 429532423 846139073 789461705 445478621 644630835 986775175 833057711 384230277 651745385 911180605 508761117 332628401 618839127 571497739 49667139 431284137 507731441 245421215 967287835 167498947 987908211 452922417 711891555 982579285 545573983 727919739 652793253 219246789 588146309 470483397 821116719 83447931 225836277 683697375 665981979 116774635 979189265 302437917 576882249 396759437 989605239 38297183 890422625 676069091 370402585 94305803 170735059 504623995 995119141 642188815 582742999 689239779 307069981 129800929 133730927 415330489 688330179 663738237 760013921 57018269 424467491 967436397 462702399 632907833 506380689 14501567 148428385 224173631 989411499 941254919 471662567 413748075 913369937 328636003 496546743 545213055 820028341 598959995 58291845 376297541 31238983 467450239 169619655 681066125 122040773 761302817 901961663 227184949 691236403 47323041 351380083 276657949 317885407 818878407 798212277 554659631 714775897 363390687 93052443 792535389 538974593 697312703 462555401 411419555 1413241 297610183 249421731 228308227 532942511 308302301 835912925 4703879 387098069 812557167 276951917 388673087 614899691 608077169 748570323 729111113 574691889 135422821 552268377 214648773 976118837 500387919 87846415 984772573 190286029 483615167 404490187 296321221 618550547 785504457 924793903 741844149 3439469 741053195 512463779 167167217 822776965 311523759 978341209 61087937 398545487 99240031 127969349 618534011 346035979 10067027 198438957 56587893 421108283 965875017 787651219 83923989 685177769 962738825 556523981 994327747 324344941 967071199 41371631 760689907 407492067 824239265 768511963 379326237 359884459 95540913 527114297 256342213 823665079 197194607 217262713 705744245 44728631 772689103 312663507 626256829 673179561 427077189 475605577 843513915 366485201 538326991 383531939 6075535 463418555 550860019 472347247 577123427 366371515 553810881 798997255 170766955 664243311 334545357 562531467 635871071 888598713 933042997 9756129 597554435 95919813 251240867 767120061 736009505 397801739 375462209 758752407 381867145 649786947 583545287 31710635 923230233 577810035 860277109 61700615 599471025 400255463 744163853 945429623 939879227 872859189 730226145 885568403 40932779 390010679 582074055 770854079 944166905 854131729 576429339 695290143 206809129 926200369 152351941 53144231 171434053 891527243 546077235 872589069 539504989 857149785 701029211 234111699 544162447 85852579 807221435 169380415 357375483 268482993 722679897 86812769 322122699 339347291 511001795 964298773 696675123 520785083 64152595 154846455 77746027 652289847 895732961 153084531 259343543 363456633 421241689 243566773 892292961 308466551 934138917 822549945 972955323 171113325 348629885 370672701 879811101 152429277 419979297 766930635 156502509 813898391 120321109 195384497 334595221 81551533 795940071 639266571 832714115 897411453 594034733 501137845 733896759 882433193 825127689 333563993 919371567 489857053 643613149 450981735 955397367 382444303 261308825 649817369 175611167 93741307 610975921 580125293 376061253 243903141 384900647 616133677 527569417 476077851 610331265 239144935 389274133 767919277 624356553 248016117 645111581 950698491 288397211 145547639 188878043 840113895 36561423 971081045 840216079 736018335 939620561 823479103 442600835 724248981 754951435 60362157 885495053 122019463 54363511 937311201 990925445 529228155 909075791 467080929 491686093 860880825 656425821 711624831 58866895 878644185 58574573 168778835 778373247 600072885 639539927 196288701 394563543 379377777 708905591 834031589 277589463 964264315 669202101 904787643 814887305 522625927 607119103 856300535 234824963 17142929 616343115 902062873 908504157 330679259 672985623 247417195 870961337 568792821 700224363 211680509 85604675 130654897 749857745 320501159 428319273 139646507 993400933 530337799 535127467 436415945 819874495 124713609 150421767 90254389 429099019 585590363 132666249 1785701 890566131 398264437 104788355 424504213 952686001 725020311 103553869 863256137 215192833 29539403 625335375 577051469 582779175 561121759 281582061 855289269 202730999 251032431 300349597 806371039 293031617 668950999 189966039 40722285 996515177 989765057 620558879 77638731 8585553 456754847 269155327 470972337 388635241 426622887 347410697 744078359 545116711 566012121 942742999 297323331 633707657 769724413 634741771 781440833 300854037 455922087 995817809 702568295 609385947 197848619 170581593 314166607 535523441 11142827 252247005 449767901 376860401 351176207 985771937 141821503 656735495 297243655 150876527 443321577 558586079 14370829 768540697 107136661 769881645 520820319 608514681 434749257 751646003 444033797 213683825 905087315 278709685 179806417 77859309 500351045 785276929 137076315 164689885 184967675 775805423 89140995 71630139 28491161 959974875 926209009 940655627 460192911 109567407 336966421 61417047 175947661 691981269 615534119 688368945 960083343 574327877 409949097 342729651 243989213 319038845 918221793 333587967 650389505 154508675 438343137 452409921 39061711 821531879 11147905 229553065 892987235 143379391 831991647 323727729 976919331 487809189 539890151 847802335 251137467 495447493 918534215 819547961 735461917 419747787 312406647 406781139 958941575 446942955 903918393 339608583 644678269 797663719 575045907 738477879 519210443 731526403 374143317 523124941 228205445 63962895 209866523 971014717 373506569 286308957 824026689 380896001 957486841 714792913 150955635 568434073 600870467 332108749 936968221 357483153 942099737 841549633 971521915 74526075 754147579 731182755 162289547 308174833 883933353 592980211 592114967 976295573 634307889 896223411 237033903 118140435 473155305 882968821 518775977 215908379 717910123 238211661 804690471 32839785 41690011 550898141 398439953 413889469 751554215 84365893 471328025 845658339 132740355 480965817 930194355 515294637 745218667 68841453 689598755 575192053 880754657 228825885 869923953 286504605 350418613 387461907 300728171 182192273 332111737 110812957 188034987 221607361 232358665 851084815 657646993 927931945 350343051 720209735 486028101 568315593 922109289 988177839 365125559 139322541 135159897 573643953 823765921 117976039 185234519 342977861 774312577 181189265 880725671 770384105 820070815 859482061 824404181 606124197 884937485 364531911 456117 266780165 472847011 865373615 974930531 133853215 93488385 931954369 857752901 453872277 648191629 438169917 662608135 269712519 750386811 929543279 982849435 914024361 421890499 481880233 255192383 288216879 595158561 278984775 692847991 207987927 32968993 403547303 904733201 72792551 39720211 879751479 380788253 170423853 442012175 424528487 401216763 374545665 525250291 812551345 703250253 470122049 415367275 114076059 516305408 40824657 393969637 43954859 937469771 754516515 476868761 545215605 328156581 897968169 538338439 181509523 912200407 48793955 956723065 416404393 626311913 678446425 118364157 254480477 25547059 966652951 857007215 297609317 742681423 168193331 642666475 884519035 975163425 885379791 399780187 271983713 395119833 515995277 183348849 618851807 754440165 68313755 787116195 910624201 645598727 262798515 845591601 570185977 248039233 104626449 212902693 431596369 635674079 272922491 71871053 830597821 665315189 571160129 590672963 712237613 543802847 780365623 137941095 306168989 752101955 984287421 940561889 295486991 270903307 706852023 843835555 922707083 454108653 101769109 467613793 26999077 688226533 366627663 652123039 793148663 647041335 609433695 697534117 38663205 717712239 963813583 830806657 391073493 204779363 494551339 228783629 417924159 637281067 984036233 730119913 914762647 446738991 623093899 758793341 695503653 69442075 383924307 643395321 936205615 469849059 418176911 453567573 700913929 446158529 636777593 120934739 863627791 198401339 337631693 455795321 380880543 511666719 615437779 611835673 101597479 281161085 456480085 65731147 772989207 623939509 222161581 330166765 331842539 297211497 797847225 485131179 271757347 844093831 496665567 839620083 95309389 587937347 686370059 579826941 991004663 247132697 660602549 764289483 987127997 740329931 895404509 814020899 915095363 524124777 347807495 628296853 268976177 506323525 852163905 547313533 697689913 287236603 867549985 215077879 719100951 661813617 377392585 201258991 56114059 579410641 695016923 405634577 181940323 834439057 147504775 694679769 108376173 826611053 133553283 788037511 91619717 564193641 544699661 583122207 110422159 360516303 697835755 316284791 330963059 788093497 64907117 887367203 621322531 831808125 953399143 803981189 423669403 849046979 573035577 620712903 180603355 951698039 503282887 816605653 157423601 26108491 621803651 409658475 110913771 98748733 826204255 990964487 522536677 649224336 925682141 520204529 75523843 973447123 294274559 356761661 805687405 661859289 82360409 898645183 405223765 69907899 112590843 511676185 585131511 903719907 539872905 9384883 371525523 126612729 189382949 804000189 962792311 387916017 927138687 893647921 165553649 112906761 853779661 419767499 654307679 199727559 612256973 645579033 748713759 616684019 271092933 829336423 260396703 812850085 350776453 920986063 139242577 818731063 519111009 734728497 829014187 655143503 88702265 244606003 189261621 439268567 986929011 394266185 262739829 714082821 924938235 952303787 188367361 965326419 801961547 880313173 84910447 508003209 863762013 249125395 887987557 482465201 903251387 495586165 171394443 705094687 908901491 281290707 505820307 347177071 377227799 135276107 834636601 285085063 394919627 457251785 749564223 709466257 846985265 213861371 584574573 43735043 277420153 320829529 511759769 869233817 836747609 349479715 678557081 120652375 758374671 749923939 865235539 155041673 648291171 954960617 273609135 505966533 15047327 371434315 665953439 922916067 174448287 667175149 408540703 474492939 381704125 401474803 684969521 173083817 750523871 465556815 543653085 653232495 846324599 526136251 521540921 961960285 211085945 318596277 98898011 234193075 657368929 175061127 821080681 901187071 813122105 985343041 979453323 524997399 227643279 760555193 773016819 169660949 868197749 889044881 262335453 342351453 209882255 315843121 297241739 16339357 618965759 742059721 551181127 582079689 438096757 98279251 864969569 207228187 132486183 705728653 641712183 148802843 239993301 965034753 968572455 958932881 25878209 917987837 279163295 57082005 375208893 680019611 298917905 395200641 648257821 541184187 936384245 563166971 837969345 32750597 626351823 839876589 545295887 807384809 240604199 194988173 592484085 240698271 8259219 403228759 341069543 836367657 798237097 984508943 332604135 483572813 325021711 950707903 471551865 441486493 508233325 952959169 976443307 576789361 218307703 245145771 757682197 248481001 547523045 3324005 95943125 39625451 393813881 241229339 417168271 348099627 615600129 617409343 108685939 165170975 962253645 961390991 869613369 829045001 108947253 967112207 416873755 705546991 729146015 852386315 224031457 554589347 959432307 690487319 907699163 549297595 134664869 384675089 141642975 827081371 511790381 250762011 592085833 489811815 262696207 607632035 717754881 862262547 574998355 797153117 684207731 749115477 3851791 858107203 285963673 633261229 406309721 270019483 659881199 133844325 791050327 416702963 303991675 280680589 969925169 647764765 406094027 718821883 23427867 541258293 418089463 257546321 904055629 70224287 637901981 901914615 589925387 890403849 606230497 422718495 431674013 662410087 129473909 883481535 878913369 162217461 88203403 7161495 716764311 54908213 340092643 859069487 399890873 629456631 538488261 531109083 762247721 291896909 836400381 848241839 799157849 105062035 829093345 901142669 449221829 944097903 157085777 71265053 246105839 197689035 891578291 697704399 597135457 829657053 848788469 476853725 64529325 375712289 935014541 304179011 146753387 711573851 618904441 275459023 133010241 655695255 367563839 207753229 611881175 482242603 861975789 700474455 798348513 493134511 729139483 203639757 151214103 437284363 967164647 320036183 968921661 127762283 992219637 582477475 812095261 994888001 392710775 54627119 481408905 613529163 130337311 430509877 961558617 66413199 704526637 281288899 655147379 786437717 388406121 378775717 460156095 661306675 744347935 978693491 707565361 898667271 778717735 831147153 997633985 86614773 9041117 987479843 291410035 452147303 519067945 507356445 469194065 749973521 719982969 544964661 666659181 291943155 644624321 573629677 953698783 445415245 346015363 614849419 507512013 701182895 408987589 308885791 488879713 146823147 432804369 875797125 625027017 196912669 670609793 394112345 354651717 486435241 229734067 691205383 916451345 359431229 905546189 344735163 2352509 122747597 711629179 174446449 96307673 748554901 458794485 448091367 551005311 331873817 736834043 572484775 513907153 729531429 80827343 638106625 883870265 412138701 724159557 421680139 327394603 503413357 333756845 562957479 683711007 839371947 262037225 566132093 365757337 278201203 570299487 133214461 73927715 807332343 379543293 196787553 106797391 942731701 587612473 173784999 703539381 689700721 746788881 518411929 24170747 549635639 135512589 59211717 891065035 877852251 22732343 105004165 85206483 538186875 441400617 471502585 196743635 501070969 737526785 537818377 352235913 801171587 719282021 604676453 929688513 239932429 322461313 57847429 400391243 994255057 960237581 712767915 114297093 858247125 438387529 61027293 197668559 760470631 407324921 156954861 669545621 394043159 709220971 480792179 746785861 237294789 83143287 784400591 740692959 30519701 954169465 668980777 150581345 496070129 95391577 261242225 536882903 71406479 135506565 453960031 783785299 803308649 105840371 658033523 994459117 48573383 636537377 531712249 866796491 873745203 47786261 467220475 746548247 410962815 401124191 10344535 713343745 95939021 472271379 439210665 216507075 234343035 630408913 223715165 100419233 952394811 41766079 250034081 881973733 221973245 384681353 6424685 404153057 328803583 763904105 598038913 263969775 369937861 105366809 141826151 592402545 72067355 178270947 64081773 421259729 389847573 162835347 340108463 495329411 136756751 100183681 803324169 639631617 418082223 874385291 785944869 513491659 41529313 973020181 179810933 765805421 794861783 216482319 741064751 158146423 279781649 659332335 107318355 387239815 470671951 799123635 71647401 54846271 571756703 926807777 390880197 530477125 616884565 634396041 821019643 25296207 127274511 713962559 326547053 331819285 681775537 345074467 90433027 479300955 582673251 716052443 596828269 702437355 971349407 542387347 92330789 718832023 13801247 972932357 591604329 664991033 557756389 248104301 48595009 70256819 992032833 230435217 605924223 841240561 501320131 510950335 47694011 895452131 637694027 876967375 710076245 500141955 527962877 354062365 392515189 14541527 44036419 403397777 772234763 752587235 31978451 258606489 422023119 223090111 317831593 966779691 395932739 226965379 580316425 239818695 14941101 292241747 498794621 468850543 843835167 187394389 709112797 794128053 398857585 90866879 665399109 599605165 495817281 388749003 869830679 346371319 200582907 764189625 947559423 121320633 105629645 956046805 813177331 392292257 634417839 899648625 244261167 884967907 362328163 686520551 844270647 254008385 463785839 157617049 61104087 969404159 701951267 610935539 753615397 430279915 94170267 884121701 354978681 280750685 256448947 409537385 668455293 289670195 163448343 521836675 250420759 196395217 694313523 632430141 660425345 489109287 715190339 445832745 586280499 507557803 856568645 712110561 687231987 574965083 741006339 608316937 126773455 481967807 430258189 450372935 427476247 891473123 765669049 621856081 113252203 795009629 676146729 752177121 869532591 517851725 404812869 814174647 42331149 711931225 356019135 82949535 431393787 78244527 394743051 95790443 231522611 952798467 365922157 761447157 156421309 626245527 889825773 767763745 277751265 990327599 549460569 50922197 592504119 502189851 704736843 109936135 436859289 97263151 778924067 936009905 984269101 439929801 449795593 478568915 112935005 484792019 108671213 55082617 750722271 723988663 169496969 316929205 924881583 441071725 296953179 965404321 739920657 722013555 480319403 470858081 686676369 9308369 490141835 242729499 914068227 433400851 575138259 5886213 40222853 108973647 210313251 417949273 722725497 893098277 178575329 157165399 200762763 900620219 172916289 528701261 743799731 408518591 953168955 959481993 428108073 5847655 690750859 328597351 415488371 354440561 46930877 321175369 682773085 956862499 650139937 181846427 529220861 528820299 237872591 77527757 320387755 361005889 735066789 796691291 305347601 130026211 244324943 596065477 682374679 82575509 471196219 995731607 339742449 621755463 759413153 931855715 348017951 588128625 203617409 966113219 182629473 41801741 237665445 582819675 16485575 788957093 465748123 107739091 160149409 587302469 263252159 44640221 77043855 363188099 129861165 450740787 478023797 354798463 775568849 538335387 58421885 586742239 951739735 343924443 67552541 168037585 912906811 329108935 376540945 827857931 501721787 542085689 430210651 66880459 659546337 635635221 446461259 503330263 576657275 965229891 264666995 569035903 639150883 696894645 547098289 865419159 729199929 21020005 390687781 798814589 976111845 642354521 705167681 677546523 126799897 125352087 356970677 252078555 831407753 761499699 90577791 879965877 750382265 337719623 259422691 446806825 329419505 796532215 564881005 344111931 507292223 850469995 419911921 248841593 280070013 65126869 2068877 875291129 370569803 138385777 385192355 656519003 175084561 188930431 588619489 897521605 835949823 844218955 695610937 228400613 436910349 658932521 851624169 682121201 38846205 121019759 891446647 719663783 490171221 587029377 293177003 565015117 904943975 603642315 178490013 143969203 456988747 892096957 997789607 83115309 288919007 278026963 623514989 762397595 217764303 784513935 797904349 460216673 694829193 281710713 679416363 196774257 668342853 81874213 474847697 961809469 950913029 861989167 820822935 234900167 989230223 912192821 678124165 604717969 848429939 445966309 616980211 874821551 276303885 750422767 217063291 987111345 229632121 857883151 793403907 984087737 236335267 960747525 398331573 379770735 589079863 934435231 600947463 149666555 803232433 157468331 288380085 337153049 309401169 203455749 281244355 978213381 705808155 579463057 298067069 178780039 84100837 431695671 821175415 881868265 909610307 584754665 800707471 487139335 198403223 970412451 878176231 152433977 19621131 778264421 244940779 985563755 33601419 359472701 588441425 340497159 137333971 247176761 384528919 311051783 136635489 736966519 129565053 275927781 471134591 848495381 636008209 826813099 19951675 953455681 251706279 900849381 520982639 260862763 621360733 805031595 128881339 741332495 823200149 833650075 285176199 363859503 694859261 750179033 354062851 104222419 114534793 239166997 429812009 702581329 266879091 351801989 257321653 83749631 14232641 257126375 193198645 947861571 70631617 633495937 718494709 266543491 531780869 335900963 569058319 703771447 114084969 522416161 35696483 552794069 104735633 708603995 146659479 508263135 311508843 493404983 777685279 320813027 404682795 381794977 262295091 736551791 181957709 318390803 101139919 808744993 975761299 126875527 918576575 875287447 476574733 44217991 9249427 903887231 663065357 104772895 473996963 12680331 589335601 862912231 312090893 611230065 855571033 375106045 978873021 969215993 958677175 603425285 156486497 33712107 657558971 503990575 591624305 467370519 676844579 732147505 455362605 624195929 627214323 520790089 865907871 815825813 553214839 289620541 874843287 888809651 972204611 905275229 137709227 255310757 153942069 433480063 589484095 772514151 85288559 227637501 232823927 620900859 851525213 68751299 713388357 955981163 253404343 162519613 291789411 238242503 301738613 849211999 416303697 291629357 23150045 808384171 228287827 811313851 230895997 849301797 142273151 171962783 287538981 347044443 203763369 961878795 974989045 521679461 479546227 295704119 434999375 570288097 81729605 547022181 782325985 457165555 810650447 229328099 921087391 419347531 445467787 254367231 805704645 824619551 292566711 786283543 101314005 725146925 167579741 258111883 904199327 453354941 258870475 112564421 334854197 197788827 344405275 632893239 489119987 669200925 552142125 901409373 478949501 65330979 497289385 441522361 381467331 212227091 513095679 65630933 930502901 160806361 704853351 489370689 399048335 933625071 977722851 409083547 683252313 697868881 185653817 256873601 130743645 991402629 252035579 166617249 653775855 218581145 292394113 221078189 507637421 358988581 835157995 195922013 697400697 116407623 62621215 519666805 884036223 469183395 455960017 638507965 487702837 461950825 935134071 334427659 421505879 895456079 450405971 280681269 221515241 737040021 968956267 370607137 425151545 932000253 388598417 716720567 535252183 687614681 457634651 309558763 215811235 429103103 245925421 326431413 398297023 996528331 650518315 68503321 47920793 261984803 581074761 127994399 247869667 78681977 204419389 944885213 242755229 96762305 499816583 174145643 743031047 920069753 190901873 534253801 14202287 610722471 601857803 771452551 387177835 104715737 860484139 33975153 377395029 910475047 140137075 337990629 513289171 463578671 667539531 820464933 683285903 759537685 472021221 88455291 500451965 108576905 457343799 517596215 320470237 562542787 306269953 698353335 617397809 596108925 934327243 441847643 34838085 499823361 291647465 294738317 650788395 487916059 95185263 308870081 755162949 488082209 560388927 928147055 174725683 835867635 789505537 101563675 710493153 812256247 931532069 283266893 780666501 34670363 945185765 529976219 402443419 200683733 523425853 450366109 958524391 976836385 155233275 527509493 688219253 57018763 772463531 765414221 537185689 534457883 574709671 162880855 502207729 461332587 299715343 783707857 164876639 457890969 747322059 105577335 337637903 560104521 954782347 705928985 315843449 337195435 288448455 434314887 221889109 913590903 861849279 690227355 63309993 753471719 195616639 801835829 646838465 134964421 181097171 6152261 803914291 110173277 695148371 123020471 36844761 903630215 336912995 944618891 343181783 197107871 672611623 942827197 480332955 196406669 719868819 1668189 59044313 654856893 388459357 9537403 772756107 392610857 868741383 122437937 852449017 966847053 235161815 923271073 828636587 510351151 167008733 473664245 871426169 850680671 690690805 350686817 721345917 624883441 619903419 291360541 802013213 820213381 872373659 603715437 627708931 67294783 410470593 619330459 11890213 768360657 898778409 564997367 333755839 219387501 445222801 369795295 850843475 543966677 677543043 814576051 594121649 981846347 839124303 587182557 619858155 886985633 436151563 105509585 886586719 268693293 933097881 759083527 868795055 256706251 306283681 498021379 803930823 825383651 863427731 24763727 228941021 370935395 617391017 510383997 671372397 629269953 222911713 6153767 658533949 68662779 788898053 672710127 251124565 961566615 136522659 67753343 503371275 961296805 221496341 681289355 882568957 415567033 780175995 384813259 917090829 568108531 699116221 398237955 712596329 199606263 393527179 839772669 921490563 954220535 398307677 521238411 417603867 693122213 340642165 60389767 577398833 997580611 975676121 66780371 383585555 271407765 325115227 609618009 109819479 799800809 948483731 541119501 560447703 931390997 400306401 781907943 201791671 821668987 860150381 657406187 258948197 459537917 282300455 256458787 552323989 884299275 532593863 659631521 21687875 162958747 354624461 489353599 906116017 59932715 512602757 199208159 782325615 644139201 117048569 866680555 964439631 249566445 801524487 880649175 556262765 537949123 492144459 337006043 100470063 116822243 935410737 925268027 295370303 602209651 10749671 529001025 319452307 280674079 722347109 287508543 516820071 871012639 191132779 79849615 937763647 126683443 570130563 121170067 134809319 831270559 9490683 684584887 298628211 851389745 174075887 656525929 661148481 685052993 568703035 622106921 14845427 171456427 554116233 124741493 251166583 708865751 358280779 814011609 478053375 533378483 159228087 158128103 151305225 836580789 889734093 703442233 739275097 7430877 183763285 663264881 199050235 442796205 783085539 337579321 873832261 905282871 411803595 556711493 3874513 118047759 992886831 746399311 136682371 387536213 784447479 486873367 839780489 82688175 536900819 853348969 767854167 648370249 528563773 589729047 338157479 874200029 825335923 307927035 323771009 110483365 491501949 843761399 191762221 57187179 239641645 860009973 150115651 216275837 717887771 620984297 562648221 540834221 892171687 645712333 746383969 337954399 480065785 369420705 658447865 13494133 89193729 646654833 13469723 596824415 620573559 697674831 325415361 970739731 908795101 22393685 758739251 39671311 230726009 828504229 639915771 667020635 173916765 55114345 941343981 535594115 746441825 260344277 369631013 443697053 472536869 722667043 949651209 760739657 173502991 90846099 874328133 66090925 531999059 251658865 51341771 700577653 281132775 957097487 202094297 6282459 292220813 418057159 427857907 583148699 806933451 87877115 321434597 362956027 287275761 243492631 631952579 820192457 837430811 197202571 668140267 855817821 824690469 138252753 936912383 537313939 862871995 617231727 66403821 85445589 334840905 48775659 591287271 231818509 94414091 174719705 32793965 907045555 178831615 694661075 229553471 594628037 333242095 446199675 146878059 528080075 881077355 633764989 263285063 643806417 639328969 146136201 9599085 604256877 867987499 2749273 878763457 365238463 857054841 519791537 669365105 243680365 884181093 538396763 992806641 367378085 755766883 662521643 603328509 738050587 867795895 458940919 988566935 776086545 405668713 661693859 308358415 621299019 621476167 381692185 360496887 172950295 305761515 982148687 12723243 405116493 595959477 485308729 445719761 578577483 541325005 579557597 495822163 887348725 81908771 438556231 815982951 67705531 649804657 8605573 543283465 526432661 653579829 213526195 786179453 722919933 43214263 933260531 302815823 92398333 210833929 318445937 469010515 982008865 977456899 672709213 535786149 263228031 759910213 274237937 143847851 569359799 722979125 674364275 421549073 493165295 168001031 571713577 909326793 213153237 157007027 852847719 631454481 844628381 840661749 173680263 547747695 506578441 613773401 560899051 59847339 84981853 105207087 311341055 379433947 956932713 248248719 126326067 360490589 943254401 656178263 910751235 334960851 227115909 956767795 95211503 656411691 144380377 280735889 890116739 49279129 222629997 220644009 945198675 220903063 332073655 834799739 787215861 897474029 357856951 546148817 773945613 396135587 381657583 122493243 132811079 256075793 430904433 137546511 913703251 471800273 528158163 447869039 545726445 191423687 791493169 809186885 891516117 289793571 729643827 138647613 605718999 538424915 159760135 383130579 771592133 642924057 8144227 666340165 931174267 683564407 490890373 201733789 28741847 2572473 836729395 642286761 450238919 952242035 228739259 347229699 275982139 960844673 372671989 272691723 321659439 677184521 202302015 956724713 430609059 453069941 775218047 809847695 553304739 574748539 289159201 203207857 743912771 261199895 557632029 821162963 290148249 373844109 365215219 9529661 890212809 168047979 472013221 962740733 913078271 606056065 790500805 102450925 207761771 887772653 469847145 925667757 695253833 200968471 820463661 797841317 47610841 682151845 176536889 996852485 410784617 521122449 834905147 161517509 865068871 528080147 198356329 494630055 745768143 689369521 162077057 947963953 857092709 26896185 349720265 401006517 496397423 299543483 988718097 549235275 572907109 952335767 185490861 25094609 765148603 258658927 319789181 152313331 880314105 451748913 710731493 262396703 723671205 184184337 779060695 190487437 520057939 275844491 899475397 862722111 793301407 131711329 804245423 557278203 803311399 944921251 166942237 380735569 396081049 840346531 170660891 855605917 979348645 428157181 254700609 587687675 863867911 47327383 506455979 682180951 226485377 199263387 986334977 626685021 813837531 601457791 875328881 945669769 438400233 6191103 210821041 434515739 790433415 176374815 683605759 595190039 695653523 814157867 638903331 461103699 641734139 243952311 494076007 168991843 495101103 110825631 604905125 411802539 179897003 916582409 411744315 602255951 878303985 565591905 797027343 721790273 184819337 923101785 99887501 638125371 736488839 109197039 187749295 105174459 694441479 308677223 369437679 875437067 193038631 358444109 335692119 675597369 791813653 144505719 971587955 277162015 100947203 214775039 544318299 93655645 55283751 721389897 551705259 141119835 251592905 261125891 41214091 809246281 340195375 527756319 634918569 487756321 882148527 542671069 421432379 238178463 553222303 930619581 827412735 336516945 754044773 370942349 651548221 959052931 198844521 546397795 666617281 476142159 198235677 801971865 334583009 62858645 808671997 354762453 827977597 110039291 427683979 957978113 124860153 736150517 347670607 446024787 700269383 580678587 522739933 703426117 445190105 997600841 299705553 581771167 678643377 698236779 658304457 777465451 355045715 549707697 402052467 725597181 135796173 389929843 321000065 694745073 937258935 365430223 574635947 770967341 380402989 675500977 45540019 273474779 352624089 699697863 831300455 772793201 676799973 67370121 663964309 463357867 863310601 280594231 802689819 378836365 706116483 960719579 101977815 485020515 947356953 873619013 294051255 961037507 525470747 319891979 134275245 598962053 189338717 429970321 866391217 257893585 475792447 317991419 981756357 812125203 79407527 215333693 361730039 813201917 944956675 546713355 376225365 282963855 78843463 207560683 723633661 78645513 705802229 372490271 479470863 764822265 900899345 806897341 13031861 396784949 745643817 864409753 16323361 764686807 298451285 161321301 882434191 909489219 800732977 983583833 323136065 451612711 962558695 741469653 948862079 95175287 522738977 405735875 371448991 908771949 460697111 750014177 505114103 574074001 213008007 217805241 619613933 310832043 149266617 341092249 278155753 581506003 116360567 486421915 204918877 688127331 757168413 907699615 951761351 158450689 850797701 483796813 975276195 303423895 3193367 916109589 314604417 384613211 242035903 514302255 472336367 553136841 570988279 876075165 658771339 978121381 571633083 325583909 576861429 583607291 416253841 105747801 624644823 572881695 898377095 555185553 742325475 55829677 389866037 782427885 101718229 200458379 833488055 916541267 278417263 567685861 95759287 622644087 733225851 608429869 136195679 331645903 878534345 603718945 45590887 28589981 475369271 80666565 662647821 195388391 648437157 686846053 854644505 81990271 336021757 825650583 302297047 792077051 669782833 333920819 287231773 591902655 329374781 72498785 727831627 146432239 783848227 335901837 244088391 767321983 915126509 147255915 346114687 56315429 955575723 72641013 569313769 342927969 898774907 471710835 363212801 928470909 563549053 82137965 594268627 786433417 151642843 426803131 671552231 364805211 703123399 561672311 892290135 698172053 411620991 642046469 65582017 264899743 438602303 945344787 977519177 342919595 885470295 983535509 819343775 447396015 10531095 667830727 223754489 514078059 949470423 429286699 332397591 462207335 171809533 348017041 324437563 775658231 307392241 893246475 796163383 450703919 737908519 763886581 214195297 885413361 377499671 203905525 301466005 510692069 954809157 529621237 127644731 286665339 410575419 299739949 766947905 876814317 820626825 871275795 106638619 693871415 527117261 261734001 933704907 392690727 593286311 30280017 248167637 126591817 733733313 935443209 288527689 121837303 43564495 102073649 95363515 12515409 835934089 296434865 306947659 202429503 42592435 95554229 145906333 555959409 855458581 177235375 437927649 392806495 590891397 486709341 699874511 97755723 853381851 865109189 640850081 846413883 526096121 583920943 275637793 35616001 287435209 367780657 148464027 388885811 969476159 366403241 174868709 11223605 750559571 581038267 456939615 974544173 858987785 924004049 517590511 444565513 519847273 837770655 791212035 367295621 111871881 633511973 734151825 554329889 287437441 446288035 436627991 315800611 864647795 183398313 521033371 255531675 247872393 492270345 126062765 614695781 928240375 968987871 586728545 107568669 405587445 630038159 894608983 583304239 511975111 703103433 82435251 567952327 226363831 76884859 847964197 323138273 995678231 342598887 271335141 409479227 604870975 760687759 691135405 99734623 709875093 713658687 971459271 586213533 88709507 116483851 479537919 90860555 953791095 354494543 371642029 310530187 209875441 862517937 59167405 882431429 820045935 863688221 616445799 260825641 424216187 600024005 283121097 160273393 34657195 547309351 288889929 147325467 865637271 984225543 581726181 287946609 607540449 780473969 277244707 981962113 816307251 138209723 966288147 258463141 302938945 262787965 265653833 212236797 426570179 993545631 980803045 677326961 983167101 280491597 712309387 712212913 640927289 974467835 968731501 352983093 319944905 792885603 169328957 443217727 963213319 22455947 79687485 282883543 136351957 491469761 980664879 578753483 789608989 713132437 570622823 315670707 403360723 810817255 432466357 27400435 453520367 461422043 16691325 592235185 765351285 255636187 244606625 171075805 335628655 954283421 784528785 787064367 76483567 386143259 436155971 875948071 70436623 671739805 99947573 104670225 457803761 437223853 773550701 246920695 318868927 611418399 986228859 348986295 75199661 126160655 281342835 404679661 923820789 35685347 836164853 895230725 495232983 144513093 965803045 84407341 706628255 894769707 122105013 673554013 692083101 74824145 525960663 341718869 730392367 177891515 927943501 182338719 182690997 921523893 139088475 334867593 446374811 134110419 23322319 601305903 780666449 486151793 109928449 394698605 716865361 333850165 228139469 481986541 757233183 164542731 923258779 940980769 419061829 623043877 545740633 540781375 25768021 877579523 471022717 183336263 272125673 727847525 630538501 706104321 564224419 483311449 588341369 652016641 463835695 988233011 130279141 310596507 244541755 483232145 3493855 591022577 499082631 989220695 516550535 634483691 103812305 402767791 776822145 28620089 212390629 68506381 815097855 546108245 782752405 391534129 10056885 454434429 821075643 38439707 332259295 113970873 421784889 825328155 931147591 293863131 314052601 94732993 590791481 160834939 212371439 922717933 755266957 238882297 534031381 300184515 766681249 753494909 874051691 106094765 383658073 332175863 563900669 908368993 386382117 585473311 254827741 555992027 845688571 682905463 274596133 918591839 734667353 270162757 82753527 707848567 883543367 484217755 377666431 484673019 877679697 499737937 373467885 110782215 44961677 327947783 903448955 376050173 18604443 525234467 728162669 197481097 325836961 913869017 650800909 739852705 387721035 358985503 675136941 787043969 922130387 90821815 383805095 676985773 164525299 331669543 230951007 375995377 488404213 88724159 55935803 394607971 608689319 958407067 277886129 269853787 574242909 227722391 807865403 235570307 297691381 158536031 597735513 956041153 137550039 67689055 872129943 507569999 306220275 409053139 619024775 181464741 183101371 78580921 256662467 225103497 893098031 528663003 34362093 14168073 333890775 579731145 855733169 64249717 707496125 681109209 528785343 377369965 900579965 341012525 467077329 444185045 545554737 225790125 125619629 852920535 840498049 577995531 389625625 391299561 85972121 583992251 116565225 722735813 170078003 577382401 801683191 703926387 692913291 9953509 134280229 903998011 892749671 579936309 794578783 32800949 294113045 384225675 720493205 611301565 22828141 562465095 101074881 311961203 320795341 364414353 488755689 962929225 259710233 469876057 301056531 149015535 134798529 489233753 817190483 293023073 948032187 248949519 261141187 87420903 169113223 303719875 186110085 276792075 430109991 13152647 63520965 913757089 824806957 395000371 540489139 297359559 687525039 218585703 629558155 900849887 561239113 497730185 459003789 769402517 373038627 533208013 221142789 140229601 581040617 879516459 628888133 11754235 996255957 472242783 523114919 350083433 843772067 542017781 333892751 132837623 524778649 572636989 463183459 893972155 569427591 441128783 797846939 987869199 183580097 907102729 955362987 414545303 861680677 841944599 333542171 315511873 95169309 471918823 963481713 279155775 652977811 130295217 973208385 825480721 934029311 411513973 606489637 400038263 958803297 72140029 343168191 585251969 16200763 569357785 76921531 307503231 574467743 290603871 453802697 406851345 927856163 997681329 481095589 861954331 788665571 641646265 168652047 40139207 665393287 774848291 722566357 761578891 281530685 139415403 297931717 105890083 459646649 452249039 841335483 885606033 370132285 522344025 737737625 975760933 564918927 371084759 944865355 394111345 470004473 658796771 62388161 167032915 529219157 491488477 344356599 928536043 699079425 746520815 76767213 837922219 743154401 886984453 846976689 955641923 482692711 247750361 527008337 183315633 967630725 999861997 16146921 548742969 140608187 622320009 178672541 280925799 71976465 441689019 601508755 23736335 70895635 961894493 319517953 408529487 547076313 670762767 573399329 882905225 582487295 863591737 803159605 516076651 396917933 902582027 8460421 337822439 161190545 724785277 226425189 780830013 706792161 756856913 416628271 173201901 523667547 907054861 892763463 489131461 365906245 486771715 115516181 475198683 305463407 930519627 593113867 435402633 92020781 297916867 752620197 94458739 489858397 27256343 541508195 584194183 856817769 922292661 336987859 465060345 849641531 394906325 843262851 379048771 837634893 219022969 602031631 986173229 586372249 79033191 663439131 763679423 513680041 146163503 716802381 140473425 436751497 725031725 894307933 429657727 305971921 849016701 9510911 439535401 387955869 382475 319552251 441704575 855463573 579351939 339435543 110804469 523377127 683680353 262314281 261246791 670868809 434964453 525282823 635684729 804095993 23637781 214913429 430798807 400130749 399875521 350958783 872238325 791138533 939011459 704927607 874793393 273469253 718021821 167304115 11849261 646188349 972415379 328392315 96258261 821666739 665182455 824645845 566752607 130492435 956708259 493483735 806746569 575072085 891272981 790800023 245441875 72539385 159300247 417350459 154789771 524282371 8427063 83049451 460076869 787675649 403025359 360889561 104993183 720845835 421025791 664760897 788084475 601789373 23739183 24607587 21576199 88692799 275641487 423208333 689407159 247888703 323658009 360072973 317001541 24171507 490203273 62055487 89728823 92421145 132327021 309147783 443666523 33139449 189043985 141668685 947900355 208432733 430356623 29427971 168866507 607835041 374480839 987214373 787557911 607364767 22966623 899748405 717051541 759262397 338095307 690263227 760736377 967161325 517963587 446502477 638596671 995623329 429707459 408885121 318636459 840647643 188138263 290938365 34296007 464677407 187653839 173881193 997446379 18728059 249868355 730624631 903184819 95216775 815902355 27436003 136716287 234208351 38848165 124186479 134445825 54508971 45102637 996184291 984846633 324346009 809311905 323192597 668757301 637954271 536949313 898819291 73154857 358156989 246920471 260578331 631249745 683103221 344061427 79284413 27957057 684788953 161356139 266435507 939453143 259053885 211192035 245544441 829896501 211395457 710004607 456425361 267616711 926807947 204632371 520928387 120572741 974924231 836027315 188773349 589372583 878050351 708147077 410810061 719882803 757683519 423721195 94584673 837575287 162691325 633817851 405653961 131335491 176863223 648724105 391963959 353405111 157754437 919270711 839726823 395807797 668262531 327223917 5329691 899788651 20644569 601444445 782854685 675651405 671771127 606162171 492093245 632826647 861514255 954651915 656828377 618432331 92055009 73975573 284453967 775269049 391236531 943391335 710563085 148559219 565277781 735407643 373585797 59664341 594509853 306827793 508132655 364831107 804140519 440302577 970729615 692836973 766036505 516013611 484218413 90969539 183294885 498587383 375246239 714036993 207128319 352272215 129033339 472742639 655418147 234035217 308758887 458013847 635370651 932610743 950115595 964776013 242583157 26134177 821572377 450076335 965324101 701277167 767563599 426907039 220325417 62972039 665972329 733601097 577397707 600529693 838145335 664490275 228764501 317422631 786099079 687691497 706646911 835180263 176834359 520600481 627364743 216578147 258303783 279096979 732992565 688888429 377160257 889103445 171924181 475423899 637192823 561186245 203446333 839369553 396567495 790381317 270124493 770258611 846335789 825013379 967161963 205014453 785914297 953647089 588368773 939413773 549529467 591309647 651561999 157286971 496680587 274818525 684806539 200880777 657450511 985245481 9215229 510097927 52653359 227235337 548488693 647496331 345780767 348932503 343864199 518536887 262722327 457384505 291410769 320387827 15116123 282809497 705482877 961635441 45533747 661880493 35531445 340011559 193404917 179990191 503656753 956395989 768931577 802246695 607824815 499502851 211016351 674912991 328230775 330725893 414260823 110470635 166257237 353103599 193579661 399632039 369207713 24416419 316500927 764671929 354684215 344204233 399215471 583383051 835328639 403396561 463704359 180850131 440944997 361604085 15921015 190560653 567684451 684565043 827072253 194703101 741802101 707480659 375202649 630522415 210214945 571027175 434894901 901388407 671511671 152570951 270814277 122446195 416629515 452582803 840670785 306177541 337732603 587136435 155813357 582611801 769804529 587615831 49332499 934351335 753087511 669067511 172789891 778683495 25560357 661096917 324709659 477971167 710838363 667400439 373852859 508672411 692159867 745171247 253693773 719490609 377926873 82120979 868858309 440164987 708949061 457533959 970828571 578407837 472735265 167463217 208136531 115510533 815841875 795069055 774722167 883137895 850084681 436658093 457142679 378078141 347831033 364764475 174148049 555173455 241746401 91921775 669965125 91039653 575558663 681298779 193852957 919179671 311858683 683583957 643357069 344423999 96283089 3802239 984851149 729151747 620994087 10198211 242135073 51138445 126915367 413789901 905562067 68021459 463874427 614212249 963714869 481415185 306777949 328020709 925949857 121793995 156753287 437585467 721628025 154898123 686140483 248047083 373403943 244499753 586356829 204052235 530316319 393681729 324952621 403263357 866844633 293252789 270153871 913436393 433798361 65208689 201393131 295312833 427316137 983914155 190849839 645939257 908799961 709533665 220955345 666332501 93918983 560850387 637687247 64819165 253462995 765754255 672325807 115452255 743246569 626801513 485616769 885912885 570574839 478431743 696605145 908353919 304021693 404724019 358816725 472757285 102930425 664869683 127827743 912083927 972057717 784277873 454300385 995169037 296560135 700789165 374459349 582526217 776908423 400536295 579655477 976177875 212630231 144853613 746442187 981030969 428567521 830889173 911295203 804638419 805692313 280903417 373272917 538497797 170197497 267059965 654589053 58967797 262722049 139058511 44142403 582923667 213846717 625040803 186329877 861019543 787181629 550285301 744721129 88041089 13929631 164204423 443040317 33589149 360845571 972979177 310222873 361695989 754822293 531083245 334407175 589085799 611903365 359961263 221502243 473253519 754988557 759466645 926383879 139633113 851410289 824641609 158750937 687677299 338183931 207696833 802348107 816736341 753049853 739273017 399800463 67083327 744610257 581862453 688517479 555888315 499746521 349223553 118138391 968693783 841325439 987493681 613430381 119469167 905767479 179652003 497351105 139062943 314473337 646851193 845237743 439701329 414405323 18491553 664998495 696858103 817327537 913226829 58958079 385654727 489805507 756376571 785987397 156660417 234831513 719441263 400093999 828637357 922203861 722998455 522068549 948749343 356985123 193497891 985366161 88877931 158435891 574930515 45118895 821431731 832198847 593991977 845963705 781553631 595384971 871838931 989465173 153976223 397379425 588331973 100750261 155882093 758787603 134559417 326940555 951440519 898255227 588305847 77739545 939656181 530121083 264997639 443601699 391558537 682739711 881626177 194493175 269208539 572950007 689828671 337295213 583859275 130537053 377653543 375656161 445699073 235399477 120354659 676280637 324355309 75446409 974941353 929212651 681972423 488608107 103363571 689313251 743081489 690947829 798180745 861522083 949304081 503891785 46240245 322233137 429340377 177661075 898223371 283358237 984078913 365206531 592924391 344564605 627847401 448809683 599145199 227786733 262109239 207754057 682028239 786058131 198549599 285909419 509383033 86774049 845755223 440224589 995889707 153820875 625674209 972071305 343517545 566485837 936006275 58335425 231289855 443502833 13689485 102507871 384065537 119544965 694447387 793287383 287813069 348571739 883105289 668236451 677402885 931414359 88404739 736146755 527068055 731120091 101996661 488607555 362027189 957895383 838463131 717482549 761218527 580142787 856019571 210043827 397125589 222223513 657941191 806643297 347676069 669048033 976851751 303694053 255700901 369546411 551980265 519765237 85442671 209053837 706208303 827682379 360590311 31941539 972605153 328079783 633392699 971793043 617981361 514775509 643509983 612781199 252200723 709698727 409667471 695761995 826517067 863431671 347823949 801355525 645881441 333432487 415848809 306473859 787488547 328761763 236323445 234641683 743311403 447339227 704963405 626722445 781452249 608041035 220511767 482449743 403244629 754347251 987311421 914010685 946004111 603569631 388024437 787009223 92198209 675393313 998542267 124131811 838519785 435685075 232208467 97752337 697062351 998883353 982378441 196131667 812022533 411074073 888771825 344315451 764124515 924134153 588823271 191362783 711945609 220657955 764423697 66048219 368455133 782376359 150038299 275996503 604824467 400317409 106344951 396516863 768864163 303159333 844184803 12165645 192714697 905913545 843719013 895205181 828204945 602171697 528308037 882601173 579883339 251424969 744931737 60980899 485014799 729079297 605119 324141055 46106043 809486163 516369497 903813831 258394107 425075269 587984981 112396383 223757629 811049053 422317543 837805241 697848505 214941743 279653769 677577031 793771631 685092949 443691779 576288265 706119721 266059379 181779037 31081095 766455415 876202543 9122543 615645901 832624047 135615041 831528019 647165555 240541427 900205405 203068271 588816789 244014893 114365771 148896621 585001435 532266505 73049553 23899331 702108529 183641347 890545091 606450219 308672017 751092313 137219067 641468333 389558263 474200085 249182301 97144723 740463849 376983301 739573455 427177329 802500407 587029443 508094537 778737443 553117877 989045167 363073471 563227599 195391427 988462067 560166713 371943647 25157189 342290555 227676349 697663755 544677547 690023681 465611615 310465355 899124973 430914055 342707769 513388005 79504773 43208149 520878959 118506853 467433085 409832313 7661865 591814559 32354913 423855053 96130201 549821617 946602825 52035185 60340987 51951613 870541777 328340685 245388431 274507055 444164129 329617169 230962593 665804607 130756839 2951477 728431491 16718693 609120855 121210875 222420881 214424103 483362099 504690153 276117545 156703827 130430401 650529361 344410041 458004985 298362571 349796939 850028465 293273465 604671659 925973943 71199629 543374455 513600063 691650619 691081679 982844637 455868909 883655755 747009279 175311839 413976225 811655709 280671921 342554877 739294931 610466995 399595135 98414327 471709059 894205139 456097549 523235037 534196533 955084301 305098499 891477249 121003767 246065597 834309651 371853311 965486433 25633279 276819449 303541181 320317839 251498687 535341429 166050405 447527465 969262249 518023509 214914925 601220701 99597369 189512039 744815249 403411681 753161903 823424391 575843541 584444659 754483473 994704025 319299461 83873625 664091439 709128581 503771957 252598627 432916643 456220733 624344769 561145829 280324559 757366461 151308367 680670271 733897431 557096453 309995083 781681493 528171181 709368611 208812647 883988121 147683339 511122981 490526369 531543293 79557231 772581159 528422461 772205059 827240227 751299917 398818503 138131119 924327477 709068223 668052245 680418447 23835519 945532591 555895361 24495291 527046049 536708185 733723823 352045775 849875203 134065151 711094029 628371443 790049493 96720617 859258701 620750805 175618577 783134571 335365551 531585451 30682229 258878433 683615155 111017779 268645769 225372585 624919847 684104115 166117791 409581105 998319393 495117051 690138319 415234027 893233403 54647903 528828921 838725967 726091099 326924223 354559427 287633375 346207531 154962561 232849825 423168809 511566497 98439313 62473419 75672507 985755191 663337321 77602109 978338865 50305973 394862853 758117059 167864367 6804261 112635113 883201517 95253341 232668635 10446633 753946899 781520493 53406579 601538391 14171477 741642267 307419347 239275409 270178713 60357161 551859493 79959935 975204755 736115295 59072223 615387983 109778105 146062227 14437053 131170999 337230155 905888923 315302595 120574453 47651155 418448733 893851965 498210001 609654177 313814977 410893249 713029527 905475275 983269049 498041383 570234397 937631797 584963393 109203351 759794371 853880579 402059611 250863485 773343599 16065321 4697871 143333515 452813965 543056987 749301107 503673793 35995671 2245407 299767709 804785503 399201927 496632247 515622835 612933107 359136743 559047481 91028957 511593811 2134725 532226169 32807247 145729433 229661493 370406169 45035329 463689769 981211605 888785537 544321013 891863729 516922573 346922723 735087545 772544037 89430219 213432883 822888411 812854719 719211525 774022965 381461433 644589575 391915323 873336945 535221683 433555909 985683119 33412917 164543027 857853201 509463859 688449179 225112235 800714821 564088603 628366979 820384407 399971591 995522887 395733141 410232953 157441857 989747229 992264001 729503961 182194729 349781131 187764927 256451917 559460155 505565957 425106449 460967275 938811 121063053 70848509 467301849 552865077 238532007 662611989 459100991 314154365 349296483 136014257 148528465 379386031 900886101 842953969 756362183 742511281 259098523 373565371 806893925 21149615 964404189 211284675 421340403 271493915 929504841 513517695 27488839 65205427 573777303 902526001 279852343 457986427 945241345 275213023 707855017 663662271 879931729 580978267 939568005 831873301 416300497 550978619 683971519 899659093 434967901 151589603 352742223 189462953 439273295 116757623 864402233 107927671 914171023 678162411 512436869 374537593 385775241 318380533 420221769 641278631 43179063 347650581 244084123 91618121 451692309 84506517 516144801 626980583 430278185 388289669 766454659 746500185 408493827 64016571 406397557 883438777 775209141 726837465 328556463 268715627 689077475 570975561 890588789 200367645 379698863 835287351 312104977 606351299 940962251 792395167 422549203 952256921 13049705 871668287 676711193 877118241 482144073 204548255 991800899 342603819 809027251 594883347 699712955 444874697 763191155 410634159 902807027 478556503 186239711 125598549 606034793 898583419 455550167 648580781 28155801 629256991 984107201 940093735 729352211 346624635 673143947 259223549 913888103 59097607 687533483 765583661 12417069 510801287 141813279 460401279 747289099 958235915 853514093 655817861 334713515 249329127 290101155 468586391 324344507 812142515 689883225 671095509 630182137 240182103 263064493 42454823 250114855 108566015 742426949 251358781 605881615 412796445 41368909 759373199 701148035 127729777 726506877 443516767 798029147 788439291 178071061 760558515 232693373 212463113 556712663 462415197 324047057 695946545 8744469 248423667 84241739 819990091 604311461 389878233 169836259 771851393 680421859 65162037 167555997 87716155 654579383 516225781 526321539 93672749 612763279 569807061 999147431 178584407 441914721 845507413 429692705 917411833 38534571 968625339 189152791 314311075 168189811 218529305 343254195 550371367 179565895 632753733 850108963 842174369 693685055 54270689 136801191 360564597 697124345 339256663 164016509 846889299 385720731 84200403 61734383 975711275 240105169 989013585 376209491 875639097 266128339 68390287 901208065 155455749 970447713 487566359 611779931 984595545 292046783 441569593 85443275 125231433 702048187 713588747 621817285 901645873 340657067 970520687 279338433 684038839 259315313 428225037 372843331 187058887 659150959 705710423 530757333 923299731 270412435 203417217 481612297 6588057 798538583 490201231 221517433 992034973 758198199 270318665 224186055 996829355 36075067 167494461 506305437 453842201 216352237 235133637 523719855 449592447 523944295 470476033 289623477 645932741 744580551 717824985 343369587 376443415 496466867 224873469 830920371 26782697 139494999 485526501 112927047 952199669 276039277 730664659 934971143 516842817 751282991 307284431 222366425 506008859 710795623 774978215 795869607 269866003 481229921 209531123 160932193 263206153 711545589 87824151 337568769 794944033 920004735 573697849 407254155 391308229 460727783 310892105 552612873 382669739 131313307 329704703 955518605 416883661 916981137 114249949 596054065 151942515 955538503 504389417 497941015 813691943 299189189 247644147 646380393 561842877 805276565 117403415 285023835 922572369 458373841 113920305 857705765 51543881 405809431 815655085 684195595 891657807 216295821 447295161 577192791 209481049 104198111 399033421 937319515 605474979 163584327 914194729 361067121 820199345 937589119 208852183 112679675 53510223 365730769 549002151 363871075 530874257 385679883 157833647 668817949 728637651 379927423 830379473 224600483 986369213 892844561 204902581 219313525 261967413 111538979 565691341 14096671 561678195 809130149 272106063 288905011 16178421 355504653 70745659 553231947 877491323 56782681 31777627 611233801 977335315 863882767 743976509 653673495 4448531 538515007 856847675 128808745 108683539 37357949 555423093 868460535 466503933 277501417 597752787 517306951 907449849 740796713 114576389 487412191 203263099 443890539 290475397 338458513 527861571 70774883 318577297 343863355 979529809 40914003 300736305 466422719 721244149 647114495 925501495 915760131 407062463 716918965 936568891 34197501 135392145 214527821 650174621 939387557 525931145 840040227 711246981 322222593 333063703 634649631 810578403 121189911 881517295 195511471 353648751 242234363 540687373 581225163 164467883 107478727 16195509 17202925 682287837 250372765 579634801 297483549 355362839 367129511 921874971 823613419 235236657 589632281 211605193 891681643 518929867 936716333 479119331 966425149 40645963 439048995 92979475 802571399 462005733 810952775 751371599 831815927 257941391 168500459 244514259 103046081 354255627 331928681 307971363 228723111 526993631 742040867 14325773 334156525 730330715 257582469 131716257 608131169 154245275 700969727 858749759 741536859 669679483 439544587 863777161 518571449 561787559 485133357 857537387 303932127 117219979 224070897 278243869 183265469 281476451 228958437 449766679 471242185 940005421 256155045 639694625 933712643 889955251 77265363 356369219 832882413 472744325 764036633 151502803 907036313 691754233 688281131 403722607 525071003 394692145 647468483 943416827 396512275 559086357 311986081 350663073 669795239 406703191 732620945 724786135 676373125 732146283 702737509 825709143 821348707 758128277 658579191 297321513 654697853 845701085 245266731 895603349 4527517 597742609 903803879 777840691 54975761 956004555 224804129 226470367 575561901 877464171 292219603 859216825 777865679 90782489 514450941 931444787 554373985 704368581 776511915 590317309 24659149 273177385 977203183 801844755 993637643 656216259 662678757 210133181 135043481 128785371 790356395 724058245 555113855 812816515 252048239 343042623 982419529 500540563 678159969 844888841 874687757 536427179 645705403 803860293 991538027 952508723 514746819 948527009 647346825 189455193 852696767 869499407 622245909 671161883 761675267 95399629 683026757 249559859 150574569 520195423 489547735 400473133 977937875 112056721 285442321 55427417 990630701 843643001 836707521 757960399 907712615 685173105 68375103 511837037 384331773 553337117 453804905 204916703 271708015 821244011 74029475 955386259 788807241 871709581 803659999 792010177 348811037 692287235 896625295 731005033 574632583 413027981 172155571 757671765 245818405 535389243 746717395 904096021 678906789 234606429 511830779 44638207 918209975 865992597 360904385 167375157 396086039 670908353 785148487 277949345 993924485 746839313 218199341 313023215 214733517 279646201 659542951 157950107 309803969 875036469 211209577 675672291 751877435 957311687 132578993 389480401 689897247 738990847 664201029 762307635 203155285 938669423 666605941 315049123 345606351 417183221 551846165 9078401 863892617 607754673 75950723 127565559 528407683 788511765 963486633 460219889 685628617 879209937 445309169 733484329 462305901 625871843 440763989 839650593 986243723 596020367 488424015 216901665 946630977 24438369 673290473 102669623 683830461 819087149 556955311 984496957 182118959 725272337 319143863 925730771 374307539 867776879 41607331 78803041 214436073 3863541 793709461 225267991 270979775 426190229 196786491 733673965 987741603 70732175 845754831 446197157 312218865 573937251 190405133 818751173 478651659 515472095 920028731 260952223 818218589 659736345 752469801 574985291 190635095 953128299 806820651 797143977 150617205 958501241 785185 944226399 2860857 785118001 296361839 475241697 869532459 677757895 717645575 569764197 10253791 544587957 848873051 456874221 177790193 781612739 391973485 752569407 785957119 252686075 818270657 437999341 947358391 757922735 159721317 88715853 890090953 234200961 228636655 967757953 929211377 475426895 447514241 597629811 468732401 182499915 632963005 557831633 979468945 999716581 418324179 345043985 172284837 866754009 385013367 121971065 537457417 332623919 518571501 89779469 901524379 121286961 422122485 915885213 225740873 364432755 8185825 514141635 811097859 771596755 614576773 782618849 65265093 792608883 981243201 200051739 472338833 269792191 330868473 94766691 210039151 436271983 180826911 965277811 823657331 823184763 466386597 955167177 256781753 45668649 514631437 724548527 144232799 284434437 940861273 628671539 432158099 897288931 912719645 375434543 469270661 813286113 375343977 588536643 209928817 457654881 419776993 75089111 749716633 14236177 815109543 569140507 984574533 108175333 877962347 479684361 397085643 983519767 614726499 706070111 562124161 152605231 242442317 862518437 63706829 651845621 492201071 998624813 907081495 189881985 572046745 813410063 992642769 90715949 27758879 554486315 112624247 502368925 377393889 873421863 714394505 893372863 890442309 889875063 132572053 132749511 609044279 894007379 199241513 743187505 953071921 990203319 918524643 290915265 962357293 938915441 282730081 702999937 158057909 817622795 383711569 425440969 409119191 703841251 133271141 855507253 131041829 471808023 900219477 867874213 518488259 621083789 179571427 665527115 30053203 871480569 360386525 641205911 198040581 901358801 183393297 580642375 169781391 743912021 38361693 991822943 208003375 814707087 652083359 474262827 145756077 892339535 887079621 6113343 829412947 804660779 487598529 246652281 410227453 742427015 440020619 883075579 966981637 692067463 217100069 974598451 952236881 173320479 453450141 549814739 450362707 503369987 241802497 589987033 231263229 704607929 807433327 472687753 337904081 236444803 472898053 904860529 685012179 237188471 562084849 816160097 983917969 789921897 44653413 316049017 284506659 610207483 7036825 563252765 27270439 965048981 951080145 953613813 37405889 44831593 58501461 426591483 399730081 444561259 459843707 326018665 674715133 895801183 306554265 104922817 201581203 813387725 852451605 702261459 560042923 338680835 984786775 821675697 33459217 564819227 417575377 868141239 758319643 289877749 318246911 676332169 316126377 849332537 327350883 475805207 411588129 793233495 376323463 541752465 507720049 420415111 755201787 937949043 10204941 385743051 236306013 875888005 909323255 346565097 896394827 77128145 115003059 216701299 629465973 704684715 504633935 545796289 223996295 814177969 21113187 638575603 340569663 651615685 102817549 498814703 987537503 351109651 417663473 925876329 771015855 105302801 155891519 832320215 264546565 727015035 144190381 193686395 277284153 758279511 690206843 783924571 93786155 601786093 916873323 111869513 472490185 50671059 174193359 761671131 43067653 581587175 640045181 691826293 603528407 847009867 530499793 499278907 275652419 547120749 678660275 851159073 704979795 48131839 849234831 357508317 191837975 636924417 683071071 968962543 707655341 630290099 521159839 143229089 267959605 311826597 31145813 105736963 764886489 214996135 582873615 200908523 490330315 9968089 585757669 918997243 506777671 966348959 276912245 882289565 875032975 193669027 334895843 480031741 608512493 477746907 88234719 411424535 54295473 430639745 183751585 867115689 800793913 675124765 194090723 753753659 665085413 687205241 373175279 86546465 588892959 508302761 120734865 361087599 793027931 278096905 197897759 918056967 756284689 458291519 875184761 192425873 264171973 14656053 751434501 246600829 273059071 660326177 969447857 198257669 603005781 295303295 869384179 386873383 934244703 253846547 796095945 781167275 703193279 782196201 636176569 161208355 231628575 613704021 212267217 359952615 863738673 770680309 580904873 479110167 617629107 212928683 915379039 530414747 171660899 223293603 374401431 809047587 552988427 557792853 130755715 485734439 406655105 775886969 449665493 438200553 667672477 692094741 805828045 798841967 639504449 716859511 751029811 161018251 567800919 73798703 370716499 601485011 537038545 597421085 677985541 61010859 133151405 998957411 345095077 950864185 426135529 933736815 786128667 422172011 406019215 317574901 459508693 422440957 921879989 239411951 275883463 30414191 890101363 82402725 13894515 771001863 691243755 478270367 433451231 922853079 308621127 646369973 961961621 908042421 303595707 866824449 448754863 644902211 379152511 282918377 820755403 457194475 648327895 735748887 854929933 286372569 776990221 610496385 809708071 844424713 448788337 60770403 551078475 617748025 909914721 793405505 520697147 497502707 82023741 389123557 937259321 834940039 859967087 400649065 141348631 788415755 476305771 535763235 391553323 540441953 868049321 696495291 747001937 336106801 499914157 546525723 137047281 770447085 359888385 361896571 57838073 72315081 700866615 116183891 855991775 338237897 650296297 291471209 354332065 714472629 654062521 101769673 257757637 358524699 942199889 702999751 145125211 557030485 31952741 95474945 101914871 278506115 236727981 451712601 640917945 883154317 299364077 455608061 979111495 702445603 856420591 907526751 702556109 906388669 29860997 127806015 508969731 919982237 981476745 288044957 318685993 679796939 732573405 396431815 486098691 733308181 281395563 16708435 170035167 702307091 821646119 409076507 994953877 658773801 370301449 903750979 38870145 30671741 217449237 185954361 497972875 429439743 252661077 754795441 320314401 127216231 735362267 939035047 891842105 410545975 323227585 924031325 904797265 251783349 458697513 333135459 204586351 529241329 575962173 524030347 481871139 699463623 460683569 257743345 82866305 42220501 300458045 32422395 61688105 849175425 983470759 490510931 464128577 460314111 936917939 270472945 501925749 967070789 610261433 649121291 78299135 900339219 468513553 84956971 974145945 718668019 564402461 651910171 368596877 132928821 628063049 966030831 975381927 513556207 177124357 419583493 119432511 727427843 427747787 794990335 651118641 767352857 544172575 832317899 131810279 615913891 655806091 670894747 892094539 691027671 451292065 535653869 223034581 384575925 898550779 655881093 673027459 625108999 795793211 895480689 62857691 6849627 101125899 525841153 806482413 535798539 344926239 914205141 825860429 74370871 320514865 371423439 745140763 343710151 605163009 409290525 41958397 411513963 629988443 328839475 603212575 481450653 333351185 472703947 187997499 87750299 561270013 927823597 206220941 349520493 656997377 916147937 243550425 638278885 252363783 388327231 77803123 226420379 739571715 102679009 84377389 861414127 96852207 472026605 595760485 4193545 422382795 828299981 292501251 194916057 443084195 835147575 906314869 375817751 819317385 551700005 499494321 151751493 770284183 541138911 328359735 224914601 642443759 651679471 234267401 497784149 567654589 474489641 841801657 868992545 742479919 970382505 226450779 866478765 4500869 56024789 932275343 286279775 843083005 956110681 610689403 771164523 828685027 105529127 615636683 582361031 485656201 367903613 9704633 383343157 662777161 441827551 420098561 113222971 803891077 740644377 668184809 436489257 275916201 459399487 918867007 36428827 427926821 349591727 845553243 876350701 72164725 438236683 829839899 607610955 288325401 145119041 994276323 561731745 113933981 439169923 527397539 198859307 451925395 95651921 990237905 331255271 916476821 966502507 959283051 546339487 980581189 958766303 424210681 697910243 133729103 305640963 307483783 581532425 304939363 721732209 903388843 777329203 489339707 747336205 312921733 746306377 663180189 745640709 933595835 115642109 331366735 200410829 544923259 585517507 116375589 491297569 643018873 934247649 269921273 478126339 387121655 852099929 206599597 394954179 428452793 82897663 669464109 943484403 243695887 645618027 285836649 186911855 135605453 663063805 97960283 284697949 313357905 791591901 976475401 268384551 253700227 109876477 11065721 924668291 829106899 846650641 355843263 117306989 85390387 47431069 799240437 909244713 87949347 923535847 150136637 405287235 261641643 810842113 348731587 525043599 421125719 849128387 997857719 850081067 127894845 407570893 222345301 798889591 415403517 705452167 406762973 190200869 222845885 93704991 621226395 399015973 561667115 423483539 70319073 40576183 260788349 959550621 666493193 50035547 396104815 536773833 612113527 271413727 220033357 227236711 175234961 161688407 840442591 108336783 81315021 319010081 487608959 153009951 259373221 387137503 262130187 920434115 757261977 63215743 28867815 255882729 372361783 660538677 526762755 493607113 463293965 361153147 874755543 723487331 416649911 241285657 187604317 587594369 626793431 124409879 321734943 762524083 831231769 559028685 759134505 437873743 571750189 229379797 734852881 59556727 510553295 859310101 99517175 714517525 123809727 143722679 456511617 798080981 226715081 285134641 202976221 64221747 666780609 982856253 703631553 937763693 259511933 420193251 993698155 890811789 366573025 931903597 89209249 859579233 814982105 475041647 461410737 326350723 667167061 704482501 932368245 155043157 291607377 669509525 76170565 926410235 799034317 9911113 711495949 994656615 442141909 357517977 76455223 333316945 650758013 342954109 561579963 789609531 602915547 945012027 14660377 249014381 314896147 461984607 294390611 584868597 841531985 265564861 467408637 508760749 632070085 39980915 914389031 447581493 922434731 310181091 305046387 830862325 541403461 238959801 151184135 955947805 192545755 28493805 52583313 263508133 809916353 59266999 518900039 718975823 74329169 652904093 503592679 456801697 202058735 161874285 362137783 524919533 291698435 611783735 452839303 483694667 392627967 243174747 680303531 610398107 240734047 171402365 491894787 813910147 938551459 548422535 516586739 86058359 551064407 985404333 107771757 728970413 321443599 243756143 710272995 597167911 167649121 630357133 219518295 394863531 496922353 280616727 845102155 934961611 830998635 523991647 180683729 264653533 161426817 996157697 440628351 97470211 768824809 689733347 341658481 680231463 816146027 941513775 162589519 277307127 380752845 679791707 362479943 912418793 231326691 18844963 241537039 633105987 142167177 992639371 500536549 211961097 801873565 187940063 556933265 218418187 230423821 841893811 177704541 285354723 592442313 609049315 92010787 798233587 676498637 692886165 192942145 256086879 921789723 577359669 122137245 738913817 936943035 537521781 182236579 223971035 834113731 928649811 908442701 102728995 528661065 196836883 806407701 236124219 424990579 295990081 97123333 506701361 904028007 797288627 336529833 163982047 367516253 500784003 463272985 440655077 61432459 670317589 173126385 735838891 142854451 947297047 145429339 709967713 719650211 396442235 622448897 3639297 968323113 827090049 534581531 934680649 261570849 808370857 246074727 892410305 256483311 920811715 883909419 34149563 239183355 904235999 203187767 878739279 279026103 619647837 59774431 300167261 960241567 259491297 518287875 868802699 183470389 885829717 442641927 138370381 584526849 206137583 226037725 692364763 435369625 729310249 977577209 257718833 131749779 553712587 504974679 280238621 389949077 242359263 930402433 370134569 76929351 90585017 890727043 99172019 436422235 839714549 349507317 239989977 556590221 103392377 374600181 62631297 627479455 186231663 745099047 645088863 376235865 146787405 830997691 194971881 366388879 379215823 999709287 109031263 169925149 108876281 374685801 461163467 498368995 684497175 636129927 575853309 269411785 360071359 654187281 802800011 641471175 267790537 817221083 639098073 485705683 518784093 517156165 489713163 78829297 471685351 206775605 720730389 498559017 828477721 167962137 390740395 799944335 541086707 253016037 250117715 359771455 231699893 589860635 818062671 424350297 757518573 693945279 14319029 560021511 844279153 774093407 498872409 661957499 969463131 161914131 674789597 252484081 854166031 794643065 622598313 135035819 499348283 946949301 762098159 876495089 38270419 526170743 286364323 729164569 126921489 138755061 786502025 162076537 59819389 679334893 501691689 518733431 238075871 280472743 527354065 935088763 511165519 272131311 191800731 848286457 99189031 269617947 571228007 242543465 666625037 315469835 949644253 994882125 264700139 349718565 888826733 220856883 2779383 842440277 136659535 109716649 988494765 794631445 372591493 976530253 872048081 781972321 340642773 320325311 880031855 564114367 524866257 358178729 570735579 396627261 36067793 976919485 332881585 261145715 528297205 612772535 179209431 314558079 10885667 273100121 473428089 687994885 266486287 415497837 21648137 696744501 176294191 517966275 484005445 403487685 160113861 884036409 687962417 766246389 275848663 992147887 444647193 395938695 644209719 305554959 872917651 26686925 970935675 956467787 198956663 785450907 263604743 273144927 930222831 659156563 402003455 918718797 735264865 273277653 37697111 854211615 202568839 729909909 111397829 797087461 420764505 519181959 836045257 693298109 299528735 289219113 462461357 972819911 593426017 266916993 568326529 690619949 61066487 274279197 533248283 391842595 692914427 165904661 511070493 105992929 269762257 201900039 351039985 419610283 587532071 187213079 223118019 387767241 945904113 891367413 383986831 744461457 761661291 806431703 199258387 960640345 397358871 632586877 365705689 73268103 745346757 617985321 42720559 465655939 981888903 104395693 163414319 381614273 965110969 236274527 370122937 346724025 586896129 722915355 384605301 119740399 377441611 715792201 571220435 860878829 864713161 365442263 738888717 872265539 77332729 627014201 647679777 144161935 517983901 445335409 449680087 107907953 571692741 288686595 567956929 1520019 988690117 634635775 47448631 548580265 408670261 884129529 47421785 754892907 579018749 887877905 431262223 305335709 107895113 976355819 282420233 859170569 134693515 600072631 260096703 40644991 863652483 30894637 66474611 926944221 15228721 288099207 884233003 380332035 103680227 746779535 763436473 45223387 800528687 683063441 983650995 130585177 205663213 447514723 65348989 296529525 37949511 612233575 269586749 981288499 806053285 834160511 856726497 344675229 932726459 872123161 848203045 368044995 903521929 827807279 464947081 271786947 378387279 114606909 613702995 805009341 636116381 566119497 910152085 301471195 245654341 840608739 185483557 819169105 412894307 901630495 102260133 289872215 117162075 570025885 259764351 945273393 593306333 9976961 857037279 115363369 303563481 985603965 577328065 277460625 324037003 392489155 852674787 400628929 916161403 956746003 15593423 13921567 964920179 377869493 916448213 280900629 12209031 168667765 896077835 590065425 22700051 450439339 581802067 882838419 743082173 624395315 85111381 378257945 811596657 653755253 509754499 360188719 252458337 729417567 201792273 385680485 886863883 646770279 510645507 961988441 182402611 7993227 257635617 267379883 810186981 46769489 908978937 8150277 389539447 549902025 931677157 835310107 275919233 246040199 344458245 67090341 367697389 261091243 549948737 266307175 652310497 446197977 576533577 525670187 111409879 932303683 40602517 768569795 328941703 630711195 293407335 580117513 160494583 826111267 285188551 19815647 696983669 223445151 628733827 34904367 808902803 517505885 187689779 559503085 600949037 890784307 705058619 674024977 589850215 186790019 743239105 430398369 295538351 638843183 132642229 744407713 789687737 734691751 657968079 939804969 531115903 497630945 390723985 172185425 838838089 986312795 591380033 71956539 135279265 200102683 582691823 605341971 596829787 105562289 340912247 822566919 320830355 494412337 144525943 520507223 11514543 682153787 686717525 380266561 236467801 757622515 63021381 280435729 761023111 68774155 178053181 598524697 196603765 626090165 42802941 996989361 516975783 626857907 723025679 476154689 660408297 963281225 119272643 709232429 264545871 907268421 325456431 238506987 760122679 829369599 268856885 494350835 395683651 810284115 665460095 32682697 76955999 603780265 197369721 227099127 924270019 43950575 921191263 56406543 133219559 962607003 778293551 412329387 798942353 869896621 909177523 759978093 365827277 268580775 29219961 626436609 991086833 216977819 715285723 346754839 1078421 905575197 959135481 131205225 483482787 560672845 280942011 184472507 848909891 503064273 126779089 23822039 200731625 226831061 140753333 84734095 339780181 804915219 551631013 415124925 790048135 567136453 999083945 118087235 521462223 294512309 803047317 232174093 602070717 316496945 861491963 610484747 572652595 754835723 521546561 577406775 584098127 617464231 87117709 713162645 177647489 402161127 641317839 91606319 85059453 723294267 482505663 643972375 419110463 523732121 669497823 506356327 991700491 340745599 931957365 478820161 16086893 626847477 331337363 101332945 55825977 989803399 331183889 997952327 794486411 119206219 817188239 939682013 609147849 712513761 466622323 140377815 976179613 45584495 782887665 112691585 972332285 702511777 506344959 958018599 182968103 676516273 469900639 712662059 326118043 409473627 610782103 305317353 177515047 431875301 919941111 801686477 128702431 196545053 168280987 291460427 538219553 872652891 501576287 995827165 642410127 474990715 254801391 8456195 997548311 120312039 405436599 774507593 267876587 867096201 198995699 555314241 547416969 911229913 339009955 191845253 100792759 360194517 385907083 711195831 884479101 32811781 992402497 420318851 382680115 847967861 242023705 409262745 899311475 869082299 55040565 565499573 87786017 943217911 995851645 206737815 338076267 385359311 865952163 958956043 96059333 237447791 714778395 612455907 397187049 667018641 626458411 412364537 636076511 423256689 377195733 904060975 85210865 780557781 896049645 545305201 761189297 861241611 265520651 581974959 579301633 255550187 591963023 901210085 65183487 564017363 639153313 389118483 881251357 434702759 246024243 797899589 558964235 781570775 97414905 905816461 368343239 227716955 126472823 831143173 97975699 992741549 806988275 787448527 690287103 189917143 891855231 873477655 75238623 683215971 156309235 378004749 509429067 760482157 322327791 207970285 520203691 826292367 843612635 858372087 80261291 208567537 354374887 919683191 945628221 458854977 503164683 936122815 945854111 416502707 860617735 282167851 215228757 554125577 883834727 526966041 342494763 283684743 852961141 700699639 251547191 347758845 914197583 476810037 299170003 105411263 117825233 825176909 750805155 839144619 104260519 714344389 951761557 264944683 654960191 557962787 771684571 162316073 790962641 757447419 685564917 535810845 700520029 292434151 621582243 883964423 915536813 393594251 708578805 196169577 882750033 80402573 215800379 536107349 832082079 636202147 571534359 443829089 327115193 596515975 634481767 465899945 685693577 958195705 110581851 910052309 299626171 136876743 165455975 980523027 724467147 712808895 950789959 142440985 710420983 54454717 635245823 146261029 831017289 525648035 167767001 726390781 52533903 575069789 873196397 226266095 513607267 265533915 193457559 912741331 850525223 321207321 876529017 161660423 830013183 830739737 658940031 712986735 460250845 248207075 441179999 937993597 924061561 95344779 214738709 649708323 997084501 909136171 580080101 973770723 264123065 74576615 56203355 654164927 492955827 392797669 260174923 765408585 492810781 441204573 958784979 682541719 293963927 692755075 718702677 847007813 360654217 306550687 94619007 282470523 708200739 888862967 684284995 142291943 929084253 581413343 107757537 449351871 816127737 358338483 502674137 272682945 256601725 148031697 632983545 32979763 520655675 938709415 485799767 13693925 834805323 533187493 719247693 727600683 544062861 872821831 355303807 407792869 329628327 52362765 871455707 734189175 215692813 477205893 391780245 889300433 598172149 392209981 58405927 106632555 921485665 950904785 786994265 844771903 41180439 783598309 396890933 144217815 666407081 852987425 444183309 701091391 383634797 577260855 337694339 426022671 444859783 358563811 450805109 385956963 909675739 882013413 483487253 787226339 778525213 710593801 101833683 42638781 363410369 627452963 191842411 539480999 908850445 250918921 481597157 323745759 593912069 152185249 100633739 990100267 925300089 582488017 862548465 480818907 250251779 272436881 368950261 70799811 670301445 526378967 249537209 500409667 404259491 43567781 56453289 288640065 355201999 81262601 621084029 589052457 97980739 286294545 410204973 215720949 217448061 555916505 869976831 94758175 207258823 892732293 627389567 481119409 173855279 6583101 607487617 343407159 334871695 964215347 402913827 88742601 379838599 818929315 681124295 220358659 748965503 183743437 14964251 594321165 258369959 754958591 94410003 517388181 183529721 742599303 542281449 372268241 33286195 715399363 911369509 190706303 415114461 535521041 588064655 226343399 620276553 310386399 822515519 904234197 854114191 791755933 176569231 273235615 324137615 80668359 859147555 250923301 109306097 6823647 72018665 970939851 747282979 955152493 235255061 344743555 556448099 863496711 942409251 541079231 800412331 408855107 472450519 754362497 911801289 944448711 803723323 869704525 311943495 50786619 572091047 633820465 861232003 179725905 24649399 51369925 839325595 141991109 898257741 340560677 555964021 669348441 894046101 715594489 497636805 392442581 521038853 342243183 923207425 626252047 80337241 567392319 324231785 114014685 672622997 143780259 139329543 84127013 735028485 12858723 873099947 129089743 600118077 697021391 913070315 647709645 12737051 967983291 170847787 687456539 94038721 546758791 479714191 86202043 963894941 690312985 472431371 310118581 246625377 96452317 459839059 497141279 40709387 259193293 893788653 313456655 41286879 802366053 706838043 219909291 215068267 170647211 946068979 697383963 95709567 725055277 233569865 349370769 510557243 402021891 420398270 949278793 376481795 280571337 876803261 217737349 345291393 651696809 275201141 142523023 8057513 511869261 536752091 616281015 331959739 923088877 543864755 626783579 610955831 555317575 246326405 825694681 517820141 304091553 977143199 590336415 38610415 780338123 678087195 244612639 621552025 70781467 69847513 843135185 143048593 414417261 605977729 455429177 602179521 113260071 607799427 708583647 407449951 880933179 465526807 848665689 388808679 283132189 95920191 502606909 532793371 961176267 93305281 343763761 820730123 774617291 568308783 542207453 217133321 362607659 217472225 797521397 196364467 146058627 934198263 135874865 170412523 987078127 380402519 488657491 428500189 235769369 874913205 933439529 465308415 460500779 526231431 518880899 506800143 148363741 244222991 533605177 163704589 127672173 172654675 30205233 234900295 528473763 831094821 648773459 285258577 52296395 862337307 896354707 864398345 828919995 790954393 168248809 7330193 240082387 548346307 530692439 915219031 881502457 82038925 860866283 946370573 548766619 214659245 159641781 116726963 670287021 533524899 58130637 457701257 802066865 177943225 459567193 485813791 901214635 981431295 725046401 864922949 984847915 536999243 896160121 366989339 316110405 509046079 392632697 188881669 122632599 953432645 873940933 877606573 492537675 170637193 273711525 671621897 193407243 17473543 729761647 750181459 432525327 175830909 984748923 585688595 736881687 27907445 128037163 733527059 149805669 32148541 345080809 238243175 828840139 24836591 6068775 637166443 953593503 100314475 177984609 206338757 749218237 164554585 478682649 55988831 345082765 203544361 677968601 523562095 247413243 270467605 630275891 933154161 55097985 878331931 723457983 946003753 931758363 236803331 835463715 95501219 559604047 246242655 801678343 8726067 924664109 521657223 909797919 384994935 864309833 67469979 745582883 333315409 303445185 997475715 737424599 781677551 739300927 172570095 782506757 139934915 567751917 904470871 894059133 232037515 126183555 621010429 790307357 824253771 719902017 459489255 992062917 574360913 425695467 192125927 645751135 431628333 566033359 158939795 436480479 625679807 310825411 835516239 343998013 624874793 627316007 963777857 591194237 797781465 71645153 753642583 742579881 137140355 50998367 392212557 111570899 264716321 587362967 883475363 521358611 424055035 946676999 252529311 380379279 122458521 299691445 65224787 344414833 27852243 458349873 850662293 930770407 585483203 592449935 111758855 566544431 663226575 352243055 334194963 65823115 253861537 146426613 282224869 790187077 464427055 211937489 285119865 368300975 799911093 482500923 751292815 572750627 505782967 538417901 298701739 399614723 668161793 360930865 773356323 872804281 482264487 799256019 915072267 731752633 19832581 429860907 622740805 864015227 997025473 261145109 114230649 50477187 299558597 117368825 432257561 917772891 957804105 650348741 11325785 594405525 577236165 944974063 136795709 387626185 558904063 10637685 769200013 378360221 920983043 762693341 568975575 720741819 946942501 887630903 80296309 913949905 560316931 661264407 398935943 924511391 308297087 227540893 60177653 650171363 486301383 238480237 198487663 588153705 14807885 147240121 638763631 769737985 136295633 156547635 122523185 565417097 290095187 297160987 886791363 360657633 749805345 535208505 114351089 685510389 642132433 113764057 657768275 317003443 361519933 476388819 329689933 483537435 661591435 598733955 75963909 765116971 792087845 476883411 375341163 398904303 365672383 494383915 26887991 552770423 445709145 963702151 220306923 128700641 125187893 57374821 728209357 406680909 704475869 851416263 322920175 86742503 499032873 939253311 687656743 565965023 366675763 83406817 246956313 894862959 469064033 165032269 664225577 154913243 514599007 3365287 181638795 231588461 521799711 758369441 458989109 267478647 453809885 367430509 589068263 194096211 907282977 185674701 918979883 809951587 525699509 807346437 565169745 930982161 98515631 465949923 91204975 900020177 207561319 461448383 602867047 943630877 179820933 530882677 718155491 877189493 163425525 585285997 378492239 305122661 64562409 830853525 351947751 791698557 807161311 498064995 291779241 765791579 709344155 719813077 963370847 497436065 738047531 400443251 480752791 985868533 34624223 316440391 897498795 904457229 609082711 131189485 610708155 132795809 87993461 137430143 370591151 230054261 724970343 605573539 342361911 577178451 174227105 73439883 790908109 823296525 970101469 397648105 601863343 838480509 102046243 578416383 872053477 147345029 977856699 801350801 452842051 744627729 295260733 233117677 614839643 439693841 98135171 452997867 763709331 526358399 819351219 50630121 285419537 353769055 474222135 817496267 254368453 527298747 308621253 26710529 868131177 499165605 536206937 632008577 152589945 561790519 986569781 61393353 208516161 678721685 7466473 618786017 381969873 60064997 354549575 739629907 7395841 171401309 328623725 409572155 526790257 439843895 178540731 815989043 776912519 350941363 268896739 213914465 863588471 556174877 862836949 495296631 246906423 501727687 995011279 334341801 412181129 561366283 721743957 636541107 498579955 828395595 511310387 372281567 558396869 880098291 841847421 456415739 478626075 479330163 210664337 385568347 253365201 160906821 359075089 284953309 831771539 37941485 202429675 180067817 567024845 241205749 127182929 738390639 931558843 486897391 63669955 778121953 793154909 894189429 236126465 68164671 149395575 933144619 112278553 428333839 166591647 700643255 576867425 225558113 154329385 690960847 35534451 426581707 479074359 28786733 408858675 730859369 188411825 298304401 458813391 904559843 119562825 783976647 797145275 842252901 571038325 751280033 414514867 759332521 858071925 629984249 328103097 496256747 483806801 84532915 787869725 622001649 399846107 450889909 927152497 977090313 439025323 756233205 755504529 312234251 938004513 56384109 367874211 764813653 707582309 779919645 21942033 161243851 597335913 747299089 901213329 282512605 959566561 440215131 807536415 940420225 178481489 845701397 885534207 485551415 583144959 300937315 63410365 94525441 261228797 298126187 532550189 270827633 898046499 83182179 787326829 572909981 5276177 560486789 507411167 601385761 514027311 910670353 233975087 49819685 188135085 491526485 690779731 207183445 927148419 134521247 196990089 821222123 269533553 706479947 156615505 562083747 599990275 684510651 771994745 373193155 750502787 890627675 554232085 482360603 23913999 491952539 22706819 753874687 135380099 62243831 206543205 115193677 644617099 736328431 244359849 840097135 221052053 591019535 8157827 976989007 363876057 619235305 903042413 863886437 342245463 343526679 178632495 873266353 931465945 539868477 56671697 998964149 284252399 643961859 539873963 928796035 208808175 181214747 491973975 282268081 422256123 247004223 180193467 666405467 811844861 163377205 846593025 589963049 789069729 443418563 446729119 580045897 190893411 558961085 329400399 243879279 414970497 249627389 599591961 95350493 12592901 824513383 938465095 927796823 383244733 843172577 439466349 461803053 300061507 532436579 385716327 600443443 809558777 508064993 426139995 777385161 771784707 31002723 538266037 310219219 500307539 983469807 978395687 101661123 589557667 579032473 35541423 374695051 615548015 740935547 68699793 73301675 487458565 195219129 450228057 57969195 361916529 950172539 72479707 983218583 792549773 774687475 415952437 873291527 800479225 502469725 423842249 56723223 255407389 760081913 566934595 363516399 438374697 372750867 913657499 868767805 528312341 808307199 332600329 448867895 895644323 543515923 294213907 886154395 185453401 78515635 525237895 970056623 446002057 394391115 864389749 810022465 266693195 979942475 98975549 921510059 117240191 186162479 991955587 887932869 819793611 976831865 661439025 967842299 73283747 213053361 439573883 478643767 407939389 751222123 776827873 581855475 439582107 638972481 136561187 190414121 270464131 489889495 229579089 554555747 733154695 610806741 602165693 587957933 346751485 48461037 127688707 299829151 261174793 261332443 124406793 622840661 98249615 132559199 627657209 787375223 993732931 317448775 890490185 846593075 79838107 732058209 675986869 785091391 801684439 518367113 835783745 343538905 418067713 219986083 680864313 273744839 998150887 791430807 823107633 37333337 691370275 973451095 352837381 808164963 902861335 439638751 800594139 420025925 649395175 155660847 9296927 363669475 317576069 834180181 564397187 972567727 332496299 463609695 921460741 677827995 303053783 914255723 713904105 665113641 842982227 957196183 292667837 847434589 715889197 912176913 686939217 836516549 123945535 215425033 535283909 950671737 822141481 30260411 89935739 648206613 390160979 42134633 832504609 957793473 601848813 894211163 153325993 37050923 556943345 785797349 575102803 379735689 548855325 623453283 534038943 315072409 178899961 641676851 870103133 475664547 275421655 34228163 137461405 849217393 997971407 458269573 748468671 439982943 355494593 864471025 333858407 334814277 64050005 888406665 329035135 62855567 365943035 609475291 433177917 881130281 166056683 461521269 81284125 456841863 427080997 301447413 620629473 381916075 724084085 649428217 446316185 904393241 722780261 522826031 274201495 134511583 570538579 894110791 240025719 791830677 30544477 60545277 8099359 428674647 362598249 220632339 979108793 662232781 101049131 137402963 110209981 11115557 498010905 663989645 114952419 409202709 263081843 854897053 749475631 970042587 352215107 75786343 818254579 466200127 236217945 576708563 203417533 697780365 908527691 247856851 444379499 900702107 932093309 490066531 745914147 620371401 816639251 476753029 355436113 445623037 652625153 399885635 882653609 307570083 375402237 936490413 662012453 449023413 660438407 384901857 529176075 880911791 77674727 8990973 621156839 839576981 687040561 476138031 259116943 718880251 490178617 922245033 343916829 185229555 822896289 25201315 690896885 362680091 785210065 748875103 675556293 627082395 540488443 279470123 667139457 460194849 191579411 327781461 237399139 549025765 334918621 678916923 109167859 337624737 544276449 64962877 437418489 967887517 176338029 885155525 525335949 582367913 841923739 213416773 691578889 254225179 894772811 840200761 338193683 333318863 856297253 562687523 386427029 559092267 339159449 755300747 49293253 398461985 56690143 140979719 577368095 258844965 265997561 396268847 461750375 918260275 115093933 110100899 47937961 507122133 336381325 557875729 488311865 159009561 990214129 905194027 683569843 380796051 996947705 592397737 359765757 43191649 539269261 630116687 316973379 341488683 401993563 972784101 872911607 655083553 844848097 578432833 426415063 885064693 708559193 709813561 230830311 968917735 767357135 484522675 332761971 37431231 145751571 951390871 804021777 200882121 658161339 275546329 699580825 728187355 86438187 122610545 134953525 739330389 721974663 720009571 560038475 806431005 878773955 35743159 516713877 467032737 891837333 143807619 267843083 66254549 646027645 898505183 274267893 266806075 913807813 317808875 772828635 799203031 20741757 630453975 345357205 507165497 97302907 558312399 697100605 845873013 619426657 25117201 913502519 66477865 495729305 38999775 388710961 876046719 949324879 309290883 725764639 178176545 798258047 85117005 952788285 553215559 933736423 171935643 270375183 985831855 677534993 390380237 987861855 565946785 52601675 131667277 78116677 468099561 374622383 953567119 691317275 53292509 76962845 530053643 169270919 754896735 540111933 464054341 517327733 98170831 673285759 780830661 269052183 351460129 182345245 25766689 852015595 266385609 58458389 813674225 692303285 807143109 981803311 469442773 712331905 478899355 266758397 439580797 607736739 269940315 593291991 846209173 999685815 187226009 710049757 832028637 51578531 874899571 669553399 562363409 605610643 93481619 441870293 111645441 108673785 31721507 360484847 718231421 141156501 562352859 104031111 131449437 125330279 864516347 377433763 481901447 449954237 660473413 240887829 438690021 435223853 828781323 730463347 657547109 290676113 204564259 375995169 121377799 468666893 775055081 888520005 133649095 950822927 122253381 918018765 910773 898633289 897039781 958439799 46003169 15769531 832106751 130947517 945163877 597974181 157399249 751805419 276321123 580430231 939522849 914018577 469100293 672591459 877130877 879098373 273882239 498728229 180968191 119578729 846501129 150071107 35993919 346042791 910367975 293517415 620095849 509245419 763953761 484525959 301629479 954617137 517832397 604789213 881143217 480631353 874838915 32722929 133546695 715157383 830216933 975669389 633497005 184402545 330182493 932140997 707588401 893840395 457903199 544275447 781971369 542098487 761954659 879823043 677087735 102577821 489884397 498529819 965664381 337029551 298251143 11584303 996922411 560654241 966290115 445908861 303544693 807339895 628559419 554284489 174366047 759707129 711291025 53190431 704859753 319716533 147774063 629708245 85577635 963344645 7908745 38704259 282727847 582608137 910615447 588949267 873146253 584979113 516153693 988938155 226394625 919658133 691814309 532816837 555288621 893784391 634956353 660239129 473108171 849744379 80423179 242815663 686147349 786657727 681850597 496010191 743313877 843255903 742710969 904070417 327773271 676490613 917030523 111944015 179819891 986379615 503954467 46054061 159858309 461812809 69275317 729554841 614676085 770715425 817398587 351150023 641001649 937876127 318060999 396677425 938513455 714117189 49891443 961578783 984310893 926666073 282674273 944181019 221636211 135168493 902068923 290206713 834894795 745342935 775589813 428963541 368899473 355500475 552263047 944679445 597943645 108605949 288254837 50750563 356216411 203667921 722742473 443797941 583702581 176634925 84034005 875786311 263820837 146355921 349612275 626915229 668173287 534155079 187032965 173834115 446888639 108653023 718456567 379270413 65579137 359686831 388587447 868504985 838723709 578172569 926920261 940688841 913203863 463846983 81131551 310484617 774426161 688994597 964454609 655548433 518585147 782713455 556738797 675381977 523055403 904661539 690413325 311287463 852882943 198814219 753542867 780917127 608032573 731627189 917608937 761209551 532579573 82058363 677616899 867418137 407717565 80266877 738447579 359687753 307848367 394818467 468455217 98955405 309413495 379486623 317940177 74931031 201219137 262963685 360624525 504165223 682437569 641697977 995472703 750361277 583350073 830289953 171078345 67663785 107079277 800567537 559544341 244547517 157465003 900668349 849124887 830921429 166724811 301936613 319210441 904795157 450802217 771743381 461232427 930756843 171215279 967821243 800638537 404359691 127534535 676785937 449273909 937426545 613486697 625845523 242934281 485211745 907401235 879681551 101115879 559400039 395821771 414863119 286591993 50288215 333096225 393792753 206833523 507062349 637686571 971147603 903084431 804255663 9746821 804379035 195295373 128954407 890599509 490259453 642271929 707202221 207939661 500414063 32923493 629981305 393911199 557083059 187131371 320316433 79714061 913862735 784370349 518337601 826391771 840146325 685011479 830739229 612188121 965578395 658651033 84554499 767162969 830688579 107713197 240812949 980077887 777513271 470598105 247881409 311833837 255635171 19760035 80421817 446226515 46221955 766306207 912056827 553920999 993893143 134924647 496774733 374649513 176514915 260135837 81328055 619659035 141427453 461605101 732636817 597716559 758261561 950322439 870624117 912055003 660417081 971787685 735543367 68090331 665956327 53404043 157285173 652082165 108207343 975016323 159399859 686878811 227592653 134438751 354166139 246337473 781054399 885958907 300044181 260947811 464947661 614514485 84305739 445540877 67513801 835463417 957701935 361233159 38604109 571242557 487375907 853327147 274517171 969111797 770036293 501416917 10742313 167380519 573577223 565588463 947821727 460511967 179554585 32767715 547071177 2327851 558814585 171444137 907700267 538239783 330801257 653864895 797811211 980724213 838178169 439603245 124335739 564834497 435900797 985584255 258967891 608167355 648168333 844993997 153880883 127222045 479989777 178117043 582322819 843988013 856543669 601975639 811655795 89253425 484176491 589447275 62191099 731397501 829927537 735933475 314163419 869469291 604970827 239611453 442547359 5473373 75898565 915037695 967959953 239453375 502605301 580072759 815539663 173796865 656478261 85222717 883557431 259599007 847124521 420763119 70873967 135176729 988937407 452423857 603488491 767268347 463417385 236563317 122342881 957266137 482189031 791863213 218226769 360768329 605553849 647036249 235414021 400926447 527398831 469640705 388424589 868107127 935491867 124788657 498382655 276436881 820412569 805370879 635391549 994796025 781756685 54114061 695263089 125125743 532856741 516423293 468018823 345054399 193793237 700873853 354801403 726374843 959698777 373487303 454662923 820258879 499261237 194181015 997913281 809093673 864536755 566123187 534933739 808213351 181585259 387242091 809469989 380249321 313436473 222569619 874832843 407552939 45351743 888954251 915331335 867554221 90818281 656546615 39542217 40069883 466664173 468363271 874924491 875749545 267940423 124675571 780396939 35885005 200391995 859006325 624494417 596043403 978668117 529748631 366997551 315108623 211275627 473232869 203628285 756394633 286386325 26776437 643503963 929545781 225530683 640986089 881192113 912967251 250085129 108989795 213396783 597664049 416574193 505324179 236916429 816803357 39098931 457860525 64302669 907589235 719134543 83186035 81116725 285138071 614944531 339525163 969117655 832603375 398561685 746496159 16706635 400007923 39734575 644895017 927359857 131130903 784266117 353178791 603780847 694309091 526107781 125640063 867969849 964852189 842304867 171709597 526534789 37728409 837499289 380359289 681856469 872949939 881656815 27256339 224479727 160214217 508292975 605642735 184809061 300910985 653465707 538352923 344656525 854671523 926494597 407253549 857915531 279268819 505331355 435515975 237221955 802924507 405381087 803276299 564728937 549774723 721623233 203424425 33455987 335640223 863060221 664483543 574153377 497624843 441298843 472938963 866863357 871775141 90903525 619212899 610711125 186880347 530347631 566911959 402854469 458116125 263276055 971392771 949625129 121393639 812743935 426881863 775161131 105739195 908945811 949808007 999980859 515532961 655852427 862786357 401221651 400309933 595383007 62838595 225582897 289965563 957443797 194894643 758389727 97410473 845467385 360719369 227596843 682583781 574565919 27546963 946914799 35025889 981905253 840482855 73038795 362883795 487574829 55897127 166200871 279768835 305633317 501284981 786243123 111063479 653092417 554166465 900701929 744697157 840993211 228036161 79570951 703651843 826257435 618674355 650625301 827414359 393491241 579883869 637617765 596618921 530207741 152803855 868233743 86387307 732400113 263454237 662055667 591636761 716144553 570764135 31321017 840695861 765058069 186291539 62783953 433166151 602916707 161231821 380858995 727986403 83968533 409474127 288184735 951068069 452132845 119282899 787436833 489497387 348978933 594121443 963786117 530721059 421289605 50706061 328253731 948711999 16071225 946221411 205600031 854068535 427780339 872405385 734125149 546598349 511941087 485576353 537315985 699251663 859522931 255533275 861010225 940487179 914007147 61512685 346907773 376839007 875277003 427845653 252129407 420299177 25031903 979429147 228812295 271508695 545592379 645488457 802349485 175305179 834129597 612276347 355458255 269039021 491868039 473407243 783711895 478091855 397762055 215993567 15195895 57571279 524509935 301193321 281521573 422489915 388218685 791538589 404053281 410137009 715084599 652661495 515541941 950049105 609879909 15128193 173246575 628445765 124708253 877766345 124601385 615035327 173613565 411413473 328464003 357704955 966118377 549817965 363188453 389605947 716432651 459119247 744504193 240790983 835096151 114778359 758307915 70254325 378739469 537874907 317655047 287680283 425935789 936266747 823236413 408548511 773178119 428979609 322779963 164237289 313826093 643144071 681424667 822841451 736449659 211850265 343947453 594180513 434324119 31758895 19977673 299007501 524664171 176205871 992559279 977318969 641828909 571317511 210009511 704234933 513294937 966187307 781999027 469445151 142928561 884428189 505597337 44138007 770622533 890128097 519837419 113244743 357359975 713098759 365964545 800739937 184020149 20115361 737597435 955310625 943089681 695273683 598371777 53123145 598346151 636355135 600105217 591540131 578657007 359761173 984281145 247885823 3408289 479575053 995537059 846157627 266401475 193080929 302643531 332178487 80373153 373391065 840248321 842521565 646048975 62566085 212804189 685842463 416107307 270156539 4795581 422242553 590872791 801935575 927714123 744405869 151816257 531028801 921464057 159959173 842251549 895095205 26701437 613004369 887461733 544449277 868758871 200194799 277539935 20081861 866047185 146190207 58440089 425018883 11247867 288747819 451357155 992668741 800701867 283142181 827511389 855138979 857238915 731156651 444513131 581448379 544070381 665434617 436625847 73496497 66299669 417833823 248486711 328983863 443797239 157821229 935107621 10386047 481223249 161791931 942959625 318686537 302091437 583078511 715812013 882822365 571281497 849532081 574633253 657485063 890311535 681229045 704486605 307212061 148782287 973366707 627830347 789913343 151226657 678266479 399319689 272127507 638812629 764687539 194642365 482972231 334190117 796515087 71436899 65103121 638005263 675969057 330382911 222240367 635412827 575351689 481408861 495646183 999683227 961938673 770861329 346445703 663001127 8359693 792008441 647313127 376152351 436428949 618092023 844742181 759338603 96633677 479384377 229908709 711031227 754852093 925880113 281245017 920467079 34299515 833048221 995391795 517759761 754768031 44235649 526511283 320945503 45958987 222344235 42398625 131664451 433093737 67320875 911686217 180829269 825776365 1746273 817106051 529474803 414237647 305372911 671247019 686775113 126711059 178424387 738310825 403225413 400341185 765918737 371405035 161293983 185391599 139904339 932098407 941732823 899877301 279600209 652265113 277397303 761867829 635089299 398979725 401584079 177493401 808285425 859411403 476507765 193538837 737084037 617388653 571900109 887578593 428840885 148202769 531835963 319046721 657153067 427063261 24129265 330893439 704084701 288759165 512384745 941681131 564619527 690621993 27850467 686162915 667947821 292404385 701692771 768187079 73815579 472303911 356466111 878109443 413874149 328018575 719917323 546211333 23208679 829381929 928267049 886769997 154635463 993600983 309275585 619465049 315731823 516801279 723657541 297803443 76104215 305167759 748610025 39041265 530331703 77478909 70752945 206268843 353067157 90120519 799063141 520142211 945458749 172599285 210806419 605318435 872205187 780559633 771475093 106382399 280472837 934991669 617040523 878754959 473877157 760982911 885425757 979778263 509140113 160760469 262226619 714791393 931233339 945269155 957287967 915488639 292554083 967021923 447167941 779790219 525260041 426737935 338054331 960472807 217486971 579751793 297712845 766330493 931175503 219973077 576721301 11636289 964852063 198046483 248456561 140905515 970691025 985515655 905611405 370412863 299584015 945252121 273606615 610176135 163166669 105576503 205411847 749282837 516986635 11157719 346201759 32110083 996826379 863644791 742480613 999095667 518616407 175926813 335388907 403543951 209787591 64427865 869429895 416536203 463049845 732247359 476147293 340034721 918604487 759096687 765868241 129911569 59161705 141866767 354816791 787805479 786789197 88334283 168064549 293943091 129700273 986313437 731952059 1587603 167413527 295013375 316820323 39731623 521824591 659087483 88269165 446472923 69354861 571663389 688824815 982346655 840521417 493802045 633422283 373505645 420359691 417275577 892297131 537368265 694714911 519486197 607375611 372176445 500238647 792917729 953539831 619874139 436681169 961421299 596568989 87614653 468721073 631977513 284829879 821432325 562697957 930357001 262601427 177920735 165019837 582665891 190257227 206200313 486181593 880295051 888419903 780424723 883363355 545512161 973991319 644297963 690685873 284950347 500012549 915138637 138513935 19049461 779958525 47024395 483496431 896169625 682395843 100564479 810443609 96945523 667251549 205529355 582253717 213048393 649062815 566360601 286833467 308759401 270875677 101852701 443450661 533177003 568852023 930438673 918139769 553393771 470461721 203797493 699732385 736288401 826008753 132934101 639577683 396989323 863654585 457132739 964843147 446236495 934213037 906462169 234970763 14456925 350553563 595932473 126114019 401003191 75581517 992431375 762417509 643241199 945249761 620114571 324322351 163818265 6506037 437053159 166606497 811673557 624643759 684409959 791680109 661652809 738865539 964698965 196353155 3174947 364264103 647615235 503760929 376533655 11383517 739030219 882736587 888236903 353615019 165382929 855286861 660876503 963030883 261631035 566516669 919233973 857448475 427248063 287583859 519917145 821938357 676042007 229766167 109883297 181205211 698841795 41125013 243834865 560789241 256163663 670281505 517595193 142331211 751378509 51699509 483044591 780147921 504821591 486364055 161039633 208002639 296839951 710146389 786500903 556449115 300686369 224104639 781129789 295687497 226870333 794102901 449549545 850316859 666958109 793343067 808434763 189557787 467943815 63821467 259128585 883749781 889569857 507984553 551107665 665233189 842878239 916446789 984980183 77054473 724363771 707803247 621315037 682922825 650953143 206080631 812334631 142083255 798457663 650576111 673082117 268466669 158410371 297611955 546115403 55212869 934443389 319253481 598731351 41852141 108722995 308698363 831215891 551809493 308589739 331678623 783498473 845239473 686657529 45592017 449629393 889717509 175941943 441443541 663495753 835886103 425454471 798429239 919483481 986035193 85190165 664988363 440202381 526129795 738186001 817113519 206363131 373103189 866082487 388500805 95460931 435657687 528589895 563233849 481174667 331028025 336706317 106234499 849720961 44852851 963466075 520871515 642782043 430896709 788541323 871966535 595247831 168812859 742317825 581284115 96463419 442851743 642638627 897417939 404861269 77193615 629649511 298052069 512444797 980875241 618901831 764434669 105301649 621065555 614841669 413290195 450210293 271730497 852763113 940473809 806680473 114938601 30848967 651486815 594284789 778410059 366083449 835585093 116790787 8310065 389519009 590049675 57272909 915258923 730259691 926513545 491542495 281322895 162348807 976498649 388469327 957447295 672155569 23969121 521713597 246764005 347942569 949445963 179930063 828529005 399349181 342832653 221317811 849294995 556318651 682696289 468664863 430693781 469205375 349451855 657387089 589474429 896658667 138379809 942206735 421019161 240011755 175689579 742448297 524440325 892177775 358608905 766980851 649802397 104726131 862201121 941332555 834325003 209152759 529329695 785705115 421773631 117783817 454698933 8295501 744384499 828714423 305223905 688812889 926514341 519435293 353724903 47469119 499433885 546082397 575105363 683383043 453249517 449964195 466769657 997911091 701566061 841939487 94289143 503265253 269218493 491698189 933623983 58318009 953891909 195280047 190491087 275735253 510259509 276935757 925249353 326161639 262871941 472714811 753715291 878021925 899197431 120275923 538337161 423087693 320959249 469591929 798027681 469335717 877778469 768868757 430799539 317720829 783473739 280629657 678256415 699722153 963841379 837971201 734630025 53563273 10002707 759003725 133449435 764975873 108376015 238333961 202026313 504527107 954332109 199501257 208579923 465150977 667101199 114952995 257131451 167399165 21778779 579112125 211803531 67126905 232768323 700651325 571172123 709738377 398058781 35415131 123634437 43174589 495367949 565211595 328119599 276479289 797217015 129137749 156540355 106393503 142349711 995262655 390711863 971242781 186980171 210621151 43302983 273838189 87775083 203084939 924363511 486388939 233313529 153920679 801547155 459008767 416076739 98464799 201110191 78779987 547624805 267904741 632000295 509180323 93473339 977273071 973831969 55433287 325103215 912304453 117875977 110917931 596492017 17017069 423074961 711384505 758897787 909487613 735769015 489528043 988764811 889977483 369028543 20746299 798772843 322085821 590271543 194662067 24930345 80091835 910831599 709084129 339107743 678561207 767424007 986777303 539546989 655088877 303070945 889901369 523608571 775948701 468720427 140421161 609119865 927816469 544956631 782239575 231748577 164537251 846213669 588221945 471887857 895072675 210275989 810565069 878045745 294870137 784793079 264966681 764001011 911096205 852719963 979987117 253020239 22649681 696248865 695359197 562852645 472862785 268722925 828866185 660106269 756550623 257182889 390046999 68032679 892792755 317285771 981399667 119888379 272014419 718552079 921791511 543221273 28940885 420844023 817727485 821508813 809004383 690552659 558794159 815205539 130220825 708046197 989095225 774259699 404140597 952303609 608463411 834773473 235208047 451649989 744309947 51678033 783858825 392232963 376636021 127661559 515936587 484003627 953807249 424150857 677396105 848195061 590376901 577932681 313406751 526505063 450413391 991381691 424356077 376926925 33251829 593469877 402413021 454507195 100141575 247974669 761532129 324744205 30314843 864528417 699363573 229741035 191092813 194725403 958977051 474437051 454264003 74793709 324614747 430459447 379255087 663064141 968302283 723195479 965322627 140413115 925705857 576553057 244265025 255595649 363330979 225398497 11694445 469354669 955759193 910831533 374238613 522423321 662196693 395195103 270011089 802384997 165018451 122581467 19095999 87387897 99685653 53061199 623241347 834558471 739818851 612918063 989054413 633820035 948746643 471349685 710431699 308402737 302660347 962422377 149787475 280704665 977247745 172751379 853524629 384114185 301955341 345537227 687468645 245031323 629422483 883858155 727547673 287173935 534804747 494086681 990853521 245562477 997439993 915074623 992311859 486689221 119603941 727745171 645080555 584195951 288258917 763721361 368166195 883875437 432523535 829253885 621453575 955225989 759583369 607816419 693283309 39626825 695217275 710000791 832524019 424797201 823168151 557555381 879539889 706881789 796555419 894159139 566651973 669483253 582752579 902948365 290291283 880850599 68874591 839303397 482970635 35901585 547933885 629561705 848206371 376739821 67609403 196125341 575492059 191145415 209475513 939491789 439175157 387811823 642755873 199013263 177143235 748551165 420444005 417056957 173328411 8776271 891877507 952354171 783371865 368335121 741999991 573673015 468971363 344820015 134248273 151122595 113798827 954375525 380324385 99510973 624674085 786344753 640448511 825884619 278035023 478925277 944384017 416935253 242798895 748257145 462216063 943003699 294195539 592589787 864913021 602998655 734303187 219433893 297826115 800877469 104977485 305745217 623510293 996356411 410577893 447783387 462416699 250400333 129137739 320847471 783561227 373344527 594706103 964232379 372750813 264926981 324881635 419649609 267119633 373110265 578125849 516669287 163940887 588796163 921728549 830340655 697388635 364176767 837893213 344356225 428172635 614537741 364623009 595671557 424243865 749891487 915752023 749455147 275976095 983726181 438301037 645035565 312409341 880152285 264514393 896087305 562463057 904060619 429342231 36898183 626193467 872021563 939301171 635327033 526042469 671258753 152861365 831946615 235702147 591676729 799772215 527021153 971944781 87971145 515726295 177647071 84857991 353903069 168761657 642939809 620392187 408121193 724315791 636624671 893083513 337630887 261158795 564933275 363119327 937830813 169680493 561950747 221122317 92966551 633073917 777874033 979678701 574887211 213837703 514177077 93663859 491581747 965480419 9989317 786987927 433861075 691566701 513111885 508428637 513449593 483236109 843529659 162179535 646561239 485578799 895707591 132833277 201240301 395090381 151741937 341145861 446473723 548886627 594143363 756239111 459251601 393483255 703168141 82139181 285393281 647006489 678662373 104064427 995584487 151400925 854651183 617557177 368756777 147391203 727962319 892764059 220357617 871931471 184251897 93760155 933645365 986247379 706005665 735856395 394770993 612115617 670558605 275412549 983451751 173273211 446768447 334321323 738907559 804274339 358733581 980893351 749303299 505852907 912061963 663792045 533111769 134825129 599834651 898387765 713278155 640586681 652671205 241700291 939796677 379387267 100766427 242292193 214696701 50861813 625893937 451907359 609757423 709139077 927751659 412038939 977981791 869487921 107360977 409584245 567521113 935560063 462681201 571239897 688811315 309908095 115331109 719211253 444948869 843644613 933350413 810937225 578004537 983808881 833169425 626886739 958647669 612527911 278057185 125158941 894957235 815553305 211093751 221963453 913415595 33955833 237591439 977397259 523528037 823945481 253098935 473088745 154835241 75998989 421266235 385483329 120158607 859840851 521380789 782555143 212744049 78738099 680211843 629188661 12768499 661376137 80447697 396582859 565165187 472221629 668024973 857840085 910244309 348822461 754553711 659528291 640116453 949709695 811766009 881260435 169307381 32021633 431009905 34973317 732265365 178424777 608309737 473072741 497211799 60699879 766077239 983581537 313711639 282434799 914371839 635187641 990699899 675859329 382022053 70792875 735996013 686007235 72914013 469723011 91955427 866152289 680417309 433406611 200280857 196922773 712956069 849865781 849487507 254603289 553964927 929035211 725917469 451318839 31471867 729082559 849903051 808420795 157186351 847969157 589954555 198523901 326882045 554336405 291615823 134349529 601278735 488572275 534874547 578816951 773927633 602866089 820746847 569819783 903077247 419395529 499410123 96744123 407382295 569254509 464697021 678165075 521963875 976162615 953707073 106938581 734302961 693898195 820241581 14025809 512164379 80500977 594573211 924253787 496410625 971374411 243817967 212539667 830018443 493167269 50038487 833774111 25163883 926338761 420777157 524858795 233193493 104147593 578274937 703871345 307076813 147060415 219163635 462492075 654864539 138285389 432613763 590926371 920783949 654513183 79151803 307248935 369862781 700186149 198096759 249767049 568938121 615929433 696973531 743117485 775377309 339643583 164713045 726321013 643067303 95307105 562988697 735980369 803024993 296670545 652893859 90252343 222127175 568273321 725881527 799658661 266353575 202008203 231124833 119555235 309175691 89614371 580630645 321945277 978062033 465830305 885502991 237656841 378532119 739334207 15197077 389842471 944552387 248358467 423111345 412573757 556716809 596527603 960962651 274820087 705656543 31746723 32232907 794480527 933073927 715948973 870419335 151101889 125914375 32864627 118596187 622789331 894695729 664199775 631785051 811906963 861902235 931591653 486166501 916115033 105954855 696651135 508198555 95233537 601456255 285919661 300474987 474099445 811242767 636017403 430412423 137825311 689690643 261231867 810496109 229013495 332505227 926388551 108007139 948987259 703185723 997740675 617766129 228190003 623054777 414341461 535966447 403577387 556232537 210314099 785427831 564140281 779377213 967650455 197181549 224519869 40933455 726737793 99200511 715752477 977409595 286159613 219275169 122218055 846676093 137413853 673007885 490544623 359318099 689274107 288180555 651287639 439784645 470413369 914438565 215139395 986202023 309762435 222616751 802245379 1085069 870302409 17432901 168464745 383102937 187176967 2857355 232361689 215802803 212383293 990809073 141605429 722991883 431500407 286238247 756184815 78616217 15848135 631030827 893751289 299093983 35029319 497500481 371733715 132595747 164483355 428516083 58555013 932083063 562116457 938604571 436305563 534346675 848398439 378173391 337860651 189576567 615357519 592683639 90336981 59275563 125189217 149181631 722659263 483566591 157213673 388584089 995479 822786795 76479291 544999491 692175505 337533359 693222061 568760641 38559599 527055831 806732195 504650081 224332405 813211053 833851785 521345459 301588851 127564623 77396175 934416791 807381437 386626971 19111919 990994351 260060979 115010359 888313455 804579049 1872697 354463639 502978517 541823865 243570623 371275761 48078517 699669977 194994235 2423877 911078825 253319631 363990701 449158749 251021909 603334505 791831193 824869065 37896799 27760633 336262669 478921695 498534015 200011547 706381471 969283777 701281641 72525235 602153583 487742553 857860837 576947439 1690403 371693651 275334329 899321667 789492457 804909099 869416377 339404139 74822007 926182943 590799039 437734763 358827787 930547769 274281903 961429901 228229483 83574087 28004463 78812521 926511333 338532837 169503221 373542107 751220561 959080815 454443323 783566597 310194957 43072783 762763331 66533203 270151167 751586485 437920021 140512891 433456275 162160155 801790149 241193849 335625409 488783295 138195565 446874257 346236681 748460521 604817457 103831631 234293613 556685227 737088057 647244425 328750719 552331229 326029239 534694743 552447573 542906399 296576485 237473825 946222475 950156249 797859593 572265619 758289993 584796987 364020585 148683679 494014269 592995901 512312409 191818373 820595869 148254625 740714293 922788293 174720807 152806381 222990939 722139693 645262113 369825907 906729529 492494291 18302299 675688011 989436479 31655697 768341033 815076693 146479081 615245707 299371115 357834039 222556087 620881711 665288837 884023909 589557303 752902449 72490345 640490773 175275255 448164109 200265097 695519305 305565587 175135621 611850213 43360455 300039343 488825769 118721797 396954657 706995955 839980491 738931701 988059565 390980625 408116871 962863437 775480719 912261061 258022337 939002409 710138795 55891663 921530281 46518577 68907701 882752509 163552687 698746771 631781667 36919581 617534865 700298245 75412533 238187531 611712593 877808581 170171125 43500971 44356927 824609179 666316081 445746917 932620013 223311569 868611205 865961899 461061689 687786561 78566221 421944313 331441989 1929545 143140787 423026895 408628861 269712591 472016551 538852667 614848409 919711295 280256227 804235083 415332497 657568403 287804901 170382107 417604779 358809413 648516855 451025871 310919027 513913183 792618023 277054607 653761983 912947821 416749391 350359949 856234151 950781319 236692751 173306117 426733205 218876489 208393679 801966649 697798703 200892891 296187071 968312433 88690031 735148523 916839641 692097537 506203277 131345327 563223003 197045573 716355857 599797479 429561165 314583451 490703555 538288853 172987265 992738929 536972987 565050699 291150479 664811577 336555091 678369693 616151383 968005483 793917999 569148331 949206145 49474953 844298559 261641433 270253437 463960609 310005681 967153945 772495747 541821377 503965191 678403037 642136725 496738053 690198019 319476519 16266873 302110609 300065201 247485051 647217601 59512589 8143973 907070951 69970627 339083307 998053819 324719875 319056035 556872615 835337369 107020267 456268869 566457155 100571177 175722057 663627613 666554567 150032609 754052167 299892065 285274889 228844925 712036765 658893459 128222431 299254785 672370825 543299321 214778415 775889081 380746961 423478115 140268769 416363833 861856965 198328429 619425767 888148831 262295609 173337971 926347325 506673229 389224333 204248479 276560357 737941873 604235943 765171939 131876071 978384253 511950837 373673205 707594329 9903983 768576363 133569621 168665937 313167757 372306827 702935885 347038197 811359839 143669337 801826027 600305773 587562939 560691299 479294985 809790957 602153919 591608769 91867207 153763757 250665423 878335247 554074893 890084335 749938069 4948087 296681613 140073729 221212677 416588451 394867387 50229809 332140127 878453707 645022299 231781085 69463331 717365933 105141749 523967843 241614113 569472913 968247511 942487091 151860331 389816641 420278811 820919481 390153053 792191001 851564449 672700531 639493021 990317811 622230289 221232099 345262869 735634999 501005531 388401041 489991931 505593553 238988087 721207059 877703883 418750779 581381415 97433087 414801223 61054065 153503089 681238267 469000575 215918329 825737127 500247727 809771461 674747361 7551777 243085007 603763383 963499969 925852671 319297811 818860087 570215351 863489577 514398271 561623665 754630247 415710797 462796059 159881437 942186753 82042601 910223741 124798259 967522363 174965047 747412795 585970809 789052755 85615683 392978235 560782843 266260241 441538013 280694373 278728781 143773377 128836509 370636973 524612173 224606521 491839969 646696459 737298973 448291289 348149461 501097347 68467755 402710407 282665317 859344413 150821419 225006513 968694349 429691375 566639127 135255885 103028491 205039375 208379189 257693655 948434153 11549347 452283667 536810587 907460087 802567635 359219329 973248097 298743307 559168211 278404767 882798339 122065863 563415003 582456273 885591519 945866645 783491631 802786497 33112601 720511649 836685593 42491237 122198881 266482663 737771753 12994039 977228013 211142949 923759101 146921471 12956285 607647205 644640181 766189895 377822547 116732533 398496635 732449507 844926785 982828783 118390209 76479535 878456221 221950515 884010245 571979217 639567427 453143785 115490499 27035315 907012251 184225921 29535883 858417419 663097491 204746293 850834157 156830549 959293855 393229827 33800833 696388437 459582401 136992179 897026285 652945687 549386365 834317271 768538075 174451183 365168611 30459079 597885433 288656763 729486727 153581987 680905733 985761437 481053577 646387539 373200321 658539139 220668301 157792647 26596599 569909151 479366083 810323895 286038649 905981103 6605283 137195557 821153055 111762359 17696295 723076311 604530383 673322245 715260505 682869407 386984817 25021481 65035461 102535189 373583865 142173443 987361601 420993687 384935775 770047669 990530607 420557649 566663591 348500653 690251631 753581617 345940699 618956703 509242741 485641455 132574221 593065607 780049461 324512779 156213845 708246439 93530669 586499023 818916313 148292495 246464867 344718155 104106691 851945487 711927399 571661141 60044865 678815047 323142989 3946897 734021011 719422619 440866485 350819171 881724151 637561781 421096643 475643647 416073911 163619211 547790375 171596377 696881193 912153945 466419481 285336631 911277733 859752867 865145427 977051419 401143949 148280117 496078879 988018779 573160011 879884835 675445065 108650251 118021971 671996105 500267561 735127821 927052061 668724941 748460443 751625737 390154797 577432091 991198727 87560305 466617613 260498405 410295387 740637817 853174607 712597929 963587341 388090661 57798795 143234091 94372635 254506813 993325415 957513335 412689675 996290639 241992845 513895137 190823405 766462389 876880301 622168583 833247829 791823759 380645505 507217355 584055139 779217349 52358605 96445531 931488699 617986311 681439323 440625961 74578063 737534927 515709949 214091765 470604433 783046489 866619019 573392319 251185411 484030643 556515051 940644311 964045991 986629033 100628999 568244429 26405585 14164949 933053391 276774785 189695057 154460565 144237116 159618071 12343947 410250517 576352341 289801977 88615521 737980739 691320609 640652763 71574851 879136471 262917299 889994941 573458471 105501523 454460707 418285793 406096011 616387069 919662489 378004433 513397621 859817703 992560441 811018853 514755189 671127015 381568569 834763705 529473695 77190561 566459601 580957229 896244115 104104569 861546565 585941107 134459509 763536803 212468191 139712635 289885943 670384149 978373105 943602307 395869771 696588687 133010645 215005197 375612979 763661723 757594093 182480617 429930995 285845641 880850595 213142059 530779481 331732079 83723627 914885931 545747901 396686895 48885951 886464145 533491451 820675699 818565151 887928137 360068731 146504871 832642839 411045765 875839019 781442567 693967417 271920067 442801537 496599185 926173727 633481673 482971771 39930895 981185131 202075551 877299361 226462479 93149383 601434779 963033087 439390187 439457767 612241499 744094251 895164867 664205443 606746049 611684165 754098559 980844129 187282427 95681265 917313745 430637383 46812029 947658593 384427309 643066375 689764097 42942537 637581015 119227263 752485519 434231781 886073303 805719441 640310383 412895231 119083771 893307939 697638969 671640291 920358621 565537323 366271431 244103785 734818523 640606881 848688703 45834991 90218017 96380299 367600395 594152537 762815645 37720815 782671073 225282327 929437193 331750369 104418493 53286687 924471009 875490683 935484641 279077103 511537011 778310623 738724317 96067727 761210059 900237623 83014019 21088907 117936065 568370359 775058929 809405689 643985401 627128729 980014215 852074617 249792215 488045597 387230455 438927153 720291983 430960271 820610609 766505933 570773271 801971777 451410803 477585031 18865969 557408909 684527425 487871003 718707555 88508373 494638183 459183823 243047679 357025925 87617787 255130481 497698587 239824397 107482453 757723225 800812441 189205479 839270685 946927203 247062051 564882583 882825791 850469369 686452007 125445287 253316079 663076869 997198043 473834921 566671783 155862271 489888325 400461625 896040493 200779749 582670887 566480885 414182031 714374463 861166615 109603977 222207773 511942167 551567721 700942505 824055927 71350537 169163839 676002831 211282049 478393647 571090563 415627643 13369189 362707761 731499233 803690937 568106135 529805371 43161557 89953947 844799959 149659911 309493917 914699771 496565799 554336977 318996033 229842621 371651281 104535135 782648469 169323463 669507181 809162495 330089773 59484431 639852501 447913865 2347627 722876559 577983279 927725915 915233911 736097095 401488613 99339609 535827521 900809283 631110829 711026931 70718593 913571221 388732035 442715937 250138297 921405785 686507947 584654173 123166255 557222061 32922033 661729967 868366069 526817983 196699497 996675751 339591395 442619839 766059505 638919259 789159065 51543015 752651179 300692327 250400383 914116221 930167619 352634099 665810885 123403463 530744497 996896941 942618467 246899481 988581933 956193737 581041947 582841293 246259005 868534281 984134771 870283333 301729197 195441329 187388347 187910125 765073555 675370385 874388751 453511989 142495559 263405053 138433869 260861081 439707251 455648211 970611995 147937689 971496701 694930557 731214317 124230081 591122719 822940645 631405817 387880867 44127571 407255427 49765951 196660699 202061659 710218071 268571529 89661959 446608197 122389219 68330855 957346773 873671783 796210233 971182639 354641397 800020571 134439151 652788997 15979809 111195143 598187297 619462861 270848287 204471957 591818359 769437497 892341 38678651 53512479 444682179 297384887 600002165 728330957 353418921 288923647 369242757 462810563 62863349 77822577 244674299 186308039 615885941 352076533 667604329 379810083 725317317 705496701 210544555 692832177 124712513 422142467 826905831 910823887 815760403 277527437 264974985 33041761 663247915 871086369 201474371 303975641 382922307 688522195 238942227 153762345 731255513 18644159 799043389 890996689 256029749 691468291 88363341 796360153 322869097 208128461 312710679 288463565 261125965 673315149 901609401 714461381 311775617 631699391 168094613 242576477 466251629 150779235 211632985 732601789 614515521 162186373 777802231 812765075 153853173 621539961 179356333 216956949 208699723 337080469 154033665 487329793 543960265 298242365 402821819 494740893 523484353 471259869 995419889 752911801 811080779 73926373 347243265 113997993 69457735 297477841 428507791 101400907 95304539 819044643 955878277 273393161 514631419 114188387 927042329 112142285 124104797 313850405 805822149 129605393 596996227 26520581 110640977 352579279 689186867 747797153 248840645 478861201 17421055 806847655 714390137 903899235 665050173 140760007 340295687 461198813 548474385 592872893 679767125 55450907 377321567 758962507 339718541 485050053 285687771 90383673 655755557 363663369 100380411 185930075 396640985 758633885 99097343 87643019 898483629 11575487 509170929 697463469 871025389 37939253 244721311 88037289 241205037 480049487 118668709 964591729 563604809 285077217 7915103 390719233 352260967 151526987 353716471 545828955 364838899 319222899 710050909 571708295 648218783 957518533 79262539 589120665 347936105 454651449 587712319 227531693 511866773 665346127 263492483 843641825 320930993 483123211 137060389 634732643 213624717 321144571 125233407 425582435 383561033 661610039 751361713 866404125 458422343 70190427 436883363 117508307 907621173 238587279 764628741 386076109 55670789 246015105 83497425 93774945 557419255 228972391 71376325 138582757 246103435 695424511 131768425 728952511 907590545 296647057 502609423 335981399 734418457 662922727 70229711 350375711 460438147 35540573 380217737 296799891 674063731 2479309 838056165 321879859 353173459 379556509 618262611 331826829 863442393 624397759 78732555 266146607 558110721 22255013 974625039 205552567 124143629 185346129 552640037 133295043 56871437 109267783 830001375 365307649 196142931 521903765 256296339 874403363 692587387 179874259 820204901 531709409 163640171 553738013 140123961 150622717 297411663 373331483 227204291 478474309 572635801 995858683 839927161 985774983 136201991 492546931 592013213 916132001 609751965 317390275 999939381 868060529 603223207 322751405 231227665 153354213 558513081 329724291 367101901 200967919 786717361 116210457 295407301 624979847 699860657 742962895 275373859 239348143 811074853 418235019 190915289 529832309 656745669 480569017 838850973 943976935 51697801 460780371 228471279 274533411 663235255 872988373 383167001 520904263 411924955 845063493 235328297 465078913 253633483 918173489 150605305 771628547 190037665 745513137 652128809 302935557 399460289 705674337 239898913 481323723 152969945 899804265 197800723 44309661 470522077 620366713 668528627 395473 975965959 272801731 434290821 924629181 328090591 317928967 32766289 759439559 166138927 452532875 452890533 541102935 845083145 945307679 246570651 354895839 972962767 779605785 206407699 607542235 43769119 630884949 588972981 533630925 312385001 14783033 774329329 699507263 761705825 979334071 654115071 770982593 703785219 952293187 474206177 985654513 203710867 375068633 901418335 653007213 392310813 937232899 808155909 15238885 30788341 355941583 365133361 989434117 362353335 907649745 526141185 266311051 631602505 338329383 702229341 134415673 623805143 609359995 436419059 130799319 216253139 226743287 974841153 535318587 360255227 933703763 652758145 199446845 472224339 258392781 997658303 859764925 406004263 996702253 774139851 85965225 922168077 322382271 267421501 59818483 749862367 91277401 788081523 92328851 872786625 852681563 351338137 988985229 638938145 45407659 108944795 535467755 299683249 578853047 875099445 214459325 2708847 134717811 394398437 460637217 423652513 585263969 308772341 466976055 238772431 352087429 514360437 892221481 119309521 583178095 454490683 980302121 587927489 511150131 580161513 965185139 790137859 250144623 201406441 716157257 471182919 566277709 571472231 223847669 405175419 722185847 827328351 367746503 359429857 589770021 128661903 523698205 200101115 322159639 33456513 977141591 931680403 879222927 599438723 568278239 387241153 832194655 495633327 871671081 699728609 970545373 220213989 201763501 242227091 304970725 82182093 764482799 347967945 414324447 62772695 552186743 612688819 543647671 52859965 430977243 549056975 552639974 408547581 51654579 742146529 274804587 535727071 381497761 883405301 185040841 966833013 727098959 923915103 51338513 309373463 565586031 951896507 401723095 956312293 386538175 246961137 683738937 956758727 116348669 224579879 396770273 738607469 591282419 987689943 715155193 374154831 853919607 379110073 477655097 56900527 462949217 682769875 115249121 127462803 502873747 754781553 60112819 658527437 604700919 374243113 675462147 770173941 458293631 395764437 640414369 715756137 583584553 142483353 414131183 563681109 819473907 656189155 692579795 357583015 513708519 830791015 744329915 535579671 87197723 188023839 466073245 185376805 591176615 332907347 772585463 420330267 99315373 695158667 673345743 681350153 966520151 948335775 406568373 70771653 987411161 781295785 492883645 995650035 344619627 221404431 16832645 176542199 476766289 74803067 549992759 145100805 900588757 844809955 957140349 707066897 150960967 131623555 475356561 440241377 973027589 48714461 278031405 70936823 969834095 497343681 704836507 322546089 238834671 327971905 101204647 197217291 636268281 696210363 308572585 623052287 632689413 793174225 747124093 45131053 517496471 7204719 550777995 773560839 877538873 456711371 509432257 93215425 771512189 516564577 983699861 171076191 144384509 452450549 646165253 571172777 106232411 554598805 373636247 741622317 505507649 251255441 170702171 874232645 859033699 381523593 838941669 794409233 979952505 525738847 944928083 185155961 252100935 253377345 269489743 214261037 22537879 433008545 220715011 98300071 168122683 715019325 373148457 936013091 461848333 411653147 22508283 24377775 196867823 336158339 565817923 236831767 370050507 201826317 480620621 38125045 525248405 970088851 668521457 945045415 740979781 749271865 624089227 379200857 56877791 485269869 687464707 677549561 71603821 172465635 255192263 803704895 372542209 109139607 411244749 102482861 737483957 742390475 322513043 204155785 542256811 931148303 115299617 885220325 494098957 381607221 440337921 709842071 465013007 981562201 744141903 389695555 810346473 289237217 558198181 328312141 192568289 924777591 522466089 343869161 828790331 710476817 543357581 975038989 875108687 916252651 14972675 400649849 969969013 174610825 67609165 53030839 206012943 928143543 192234415 779871767 986145929 540719753 83602167 162374575 925571411 982173277 298276733 682513249 367337703 237425365 705953053 378457047 429244105 801802461 501975359 895082109 938139779 553501357 696233937 977986703 52712103 162562237 513371209 364492811 709979087 848061651 547848869 678884539 111558045 896709883 690513005 219838253 542002619 442524299 557910955 611816891 53233373 778965789 484952059 955991429 862013373 446366101 566343543 297309043 432847899 463387425 962196421 87620919 165468611 952802867 55180567 346119237 5049223 778592139 749241631 266066145 240565825 596438825 526285343 213700883 514522067 577610589 680305627 747315113 163143719 799328185 13143713 875288381 661494833 800283161 914113609 481041197 559843563 920425377 136707375 398721189 822121557 161388993 612753213 699903891 301100667 676506919 56249053 736796081 525207663 302639829 13923335 595744635 544527179 182983437 689941305 952483647 174769457 753325659 833841273 77249033 336332365 289970835 503131735 690204849 153151949 217706449 718689001 78214875 378917617 450923387 776508619 307461101 953161719 140523323 96529955 596004373 361199403 457184265 291153315 527328079 583982047 767111965 528053119 726237275 651716973 376410365 167405683 568726975 324455479 939589237 746282185 86311117 94866089 456368025 563641167 583082651 958809139 168646343 828632665 195416845 334276175 644480417 624548549 736883655 808529283 207005717 281038587 805621053 939730517 442446677 159061481 714526627 88688217 869283039 816532487 663079423 337942313 44025209 857172559 826429717 137413479 497268267 963488073 610837621 44208063 537327949 743041541 71318393 328212961 769827193 205806873 869897281 474536327 31465107 653776289 951167159 949623671 436657353 480496195 796855175 29854839 460535695 461148209 926957357 490996315 901932703 759020575 369996519 244202237 360207617 685802827 272796093 676122943 228383743 493922939 184518531 125872141 19182125 952217853 468728269 368970583 586025575 581431721 896341245 476854039 202794195 680559581 144971067 468169811 414819803 708028541 954195831 617250321 534183221 579056377 806857321 64264293 801474781 625364039 327476627 102254953 887477783 758519271 902048315 22446655 584392815 262435035 889677939 211900435 88774841 803319477 947509779 476907285 705931793 499933835 587904955 893311361 997946589 394156537 284724179 765635735 410879433 115893287 214048139 739500963 783449287 140864705 651487195 430030583 297627669 524992257 349539973 995449069 216133431 204290211 288318735 844659433 179982331 316652269 442650571 429444177 881595249 639985071 755971791 856265627 19856121 652356157 375458559 624136513 792393525 571194485 127305983 807218371 971007763 988248513 231181891 961927087 661184711 690955275 104810497 258350739 203790027 334780619 190513209 954305035 554797797 707251199 126832821 258825145 68515619 87955247 255057413 706152265 757910231 7758951 679398527 500833643 426370461 467077439 478244167 748000475 125804121 42764243 363833665 271275353 13120057 141324747 633433119 894354097 885994929 62520147 950363483 370399671 775819133 76143141 834241843 137780545 440584609 603073149 600010161 904419635 779483241 398689825 820793763 281533817 958836585 791882593 707008933 11504899 551093373 408845329 851693843 272747725 300124875 418380433 385284375 460410071 987574717 518178501 210128289 638591277 895848457 750955293 780958827 622577379 572140203 112255889 379262451 586745615 378735079 398333595 77428353 75067861 683440713 983462469 816468775 365051233 202161063 169191707 384366781 228831459 180515353 349575477 150661347 604716439 894193415 285397295 688379137 495205309 813350941 194749233 555763015 274187171 963922511 915465705 103092141 536668311 132211927 588414349 837496565 698708981 403039803 39841497 922115493 226207777 377147207 174891033 836081423 627281795 991611921 486472725 7897163 440448397 462264563 68342055 255124281 130763195 176810897 529816109 131723647 60502157 327071193 18027405 808309649 257706639 898358015 509325363 935230373 24278869 28555391 916692633 261669565 209364085 17087259 681042361 349295007 826542227 880684515 617707037 194986461 717305435 858965801 310888657 859804877 974462845 79497097 592938093 245466259 589054389 438473961 718582797 329641747 943808965 732910963 472293465 434488577 86230133 842668701 745774719 623895251 148664217 542207011 826436405 601244105 534760717 401859847 201740217 373383405 281793455 42796697 121437905 394322957 534833261 224089963 98340301 681876165 745528631 360784475 729104769 335231857 879161865 424648075 739195213 389796923 418829285 238402919 442928149 504670739 597214675 332221863 156865355 790526899 897367529 546928707 469870049 592730265 747713085 539864193 617776985 28598799 918709747 985042925 566428855 862602787 325479479 889220957 366521737 290336431 988940603 23350249 390041319 918711379 881196343 408064507 872238701 185283447 583800685 713454649 878681411 940666699 284305195 115735709 858400023 218095305 734938815 95169887 432538399 313120175 548182661 640872967 626629913 672684421 330048481 781635165 556454987 690386589 845323323 407601017 498848901 258759951 306265605 525204149 9029915 174083515 730195387 531615415 178821613 744559945 696820959 651865193 502143073 932221737 552893689 481120255 279165027 367697555 123402397 169722873 227891053 110249353 117056615 595667481 257563003 629632977 296205303 729747051 883664403 373997565 684251895 616033347 680406339 803175011 789301273 216318781 677913251 38697511 872365593 730907711 387216463 133676077 981491895 993023603 980605935 609933353 380605889 807614543 36893105 516453777 359398917 582108815 758728011 969449639 790057057 644026167 840227579 753732465 921089203 880495763 441512585 639688383 261816041 957091383 653674049 236902701 238663669 291861505 999023609 73425431 470250703 467022611 397787153 742539431 135202171 496503515 929997423 635590351 389091329 552977419 596080511 82184773 401051509 412696481 540649275 330318729 660234995 885706723 343277085 300361445 34345115 251124057 490522671 415425895 61082263 408801755 260359167 733032425 892743705 862918017 852758945 869097995 438772829 599980469 908420531 331061047 483346341 27166751 483757661 784712089 516560441 761322931 634468429 732069163 895252847 929289137 594654137 424134319 940342941 900232857 280590177 252038829 556187177 893464379 240720263 616781427 562111099 477241257 267650813 620479771 718597383 469532735 791244823 469778053 529826117 718347427 42970549 474203225 276725175 124690111 567018557 576051463 788850411 196154313 481826973 718484167 957216879 329742141 751931209 392235163 388472289 99095519 974570307 68364107 689626081 467097273 857071375 497767525 128121113 328064549 734082493 868064065 682635067 222847673 536550369 357967875 730181635 997637213 844135065 766906001 337170483 890654011 895748237 884260251 531920533 513449163 424946413 215733657 614743801 736752325 552482923 81702347 907534653 1751599 297562695 391119163 356717633 227362389 542360905 218582457 208327407 286808011 192512699 446843613 439526713 205438319 731075961 410577669 463572763 705887075 521960669 400802397 924679063 237494805 170477007 368434641 464379831 296164665 926500795 87042589 419065739 241199817 32283547 835015361 623211313 240137227 597391083 405231361 789692361 979343501 152766129 954200307 83400317 812523807 164843133 176056939 213026689 606540001 899174243 881120269 170594573 442886199 557742337 579140157 992285795 377578443 36277887 46503981 727100625 828420499 71631757 70654679 218724007 849622987 923515229 964271609 701580349 966333941 731348399 215150365 406508281 316276705 799254475 21923985 577785411 515715745 48525693 327704687 585182351 930464145 757346331 777795479 191102037 358315863 820860807 71521457 144463129 580746973 615142689 564108077 148702821 639485529 115537117 108409925 21699273 46079559 267882031 272369655 877182691 33938539 16721685 63331339 244086867 861858513 56104213 513632531 747922627 144023757 407996989 119664999 687808231 881427453 901364775 96969255 921106295 866433347 726021867 540220987 450915383 481397709 777499189 66346835 923228913 786554893 259666991 629483751 937994869 187963585 620745873 616719673 162195361 255986159 566394267 927419471 641946197 358910943 779560719 318780155 222777467 869519911 794020671 59953109 559653639 634345637 381929985 677600827 237793009 868111995 526950321 285957977 204908093 589883159 353125431 708904221 605380853 890142509 981166593 360445247 121332777 79916985 541810949 759151679 182577911 819528957 942897089 860475495 755890047 794197897 177426491 478245575 581410795 903491373 783837441 921317429 420104559 117677579 320377899 865875541 146937155 144950657 573045335 501911691 407450027 476960575 554184619 259550475 611338481 258077241 377031379 188655049 963908711 169576363 579339271 302302091 729352037 370602521 920026631 455605459 92785233 323171407 357469975 150091511 23122325 735534689 208447493 926718219 406290591 553579179 532538151 381682417 25926895 798572243 467507039 331917393 776907011 426784453 615518479 367906717 220021605 576220083 353731879 452917001 145654699 280265499 953642011 286462873 603342189 218809281 866648813 987003413 301761357 38062257 827281955 919112203 267790325 736288319 766744775 680509141 295128857 992919305 565670259 791327379 581827697 658558193 518924101 922637101 231058625 239642149 506005219 118745427 625566419 958032409 862914937 85273983 969699449 287335559 137254849 558009071 426777485 604279413 972609269 885744299 542056689 222238513 203239903 944587397 694207375 827680587 890935755 396443157 621257563 713841059 11672465 215229881 124532301 658482269 611964557 1162141 737043819 274810851 571865511 741059247 719554489 623242731 310061645 402990503 612588367 131030127 581843829 96887815 826682437 849801911 57665693 919990549 791849917 4704331 148781261 770273507 679724257 577068035 938557839 827616071 719654373 718501115 146002941 438772453 85520643 125466003 99154869 740402209 994375035 376810109 466166237 740132911 181765785 115233705 580193313 551072773 659814063 803474773 425797563 671594339 779173909 450041605 920027749 120014291 176942131 589470341 754642793 41003941 470112877 684601577 410723989 335691503 582360377 308487565 288203067 221982355 80127247 496637207 521827647 803992891 24561523 324424307 2121731 438793299 993934831 571768787 476655479 292125975 113789717 759557045 702613777 640878469 361698175 82964959 945219279 679118695 360928975 977217113 166484535 785123147 787682993 388014201 704836953 190858635 281925077 394777565 522159049 379367751 106614005 167606631 559140263 131231591 704380373 778043461 342919833 28140957 919480895 793523435 666370765 120149341 240916229 95835667 359140855 305334507 555595009 987380165 492894809 379991119 870870037 275118665 736170935 437485655 832812589 511570231 560017503 298156445 909470777 61992041 666760745 830164351 938049843 870276357 571278705 334810921 95177503 408998517 995728415 798150793 336951303 392182127 609141411 950090073 531353853 811677423 932156655 961279509 531029787 497132855 338770307 542938891 840286851 438706903 638231653 312922439 130060641 590680481 830019621 550771105 274760933 687321011 616223959 127400893 111388233 57911407 459872539 243507969 535059921 46972289 800563991 370398107 160830407 510394335 292906873 562137991 243590525 694705349 877259381 332796293 677628493 826586295 578184397 454367771 212202651 40849537 111520965 92645019 402280653 89557561 121465643 526234139 815913049 327034423 410165335 997777023 151528121 97053731 438382375 629529963 759976045 69657065 784480255 677374803 285118465 480240317 682452943 491349611 463629575 866358809 745890061 751253945 251273497 865139395 679939257 954041345 135339737 306188233 146206549 263335123 234738931 205256571 605038067 947286409 892414231 422329465 783032615 13208643 216603393 101823143 83547153 232684267 25146737 999394863 700320087 225341485 133239091 281977477 815645735 990462085 241617945 945739625 304228151 393305905 332435965 864178141 958708163 123881785 795370433 416711467 833882773 434842737 98971217 967838699 522047227 579921005 639719837 79162103 407136201 228347279 744159649 164107893 385056861 628429311 785954141 992251087 860703137 163134637 781043677 523080635 291304703 811063377 630832947 463504693 680087919 106697325 853798265 389487233 160684143 604981831 89512401 677860139 426348295 491839985 89203559 982921735 588570307 4009283 275206762 281801267 850019513 591803101 107606809 338496017 679508107 669022503 130909361 616649293 38641497 635396945 638386303 97945823 566394071 726214739 742970069 37762559 530903097 199033839 451019791 389028147 754880317 316531627 871744907 475525191 304892713 687348185 933271223 192306257 480930763 970498190 452328451 673104041 797289595 66032305 89439209 961956857 997437719 173827299 288697327 141487401 59280643 443444377 311805851 965085805 943452209 70261513 858545025 467391557 961665043 754994739 26067003 166439025 616420009 453143521 443635053 758477055 419013499 36638371 331024573 545110853 99132053 4217551 67011809 969027293 139880333 256705929 310504595 881019053 418506885 341222325 765558163 483478495 370902813 755222277 334302639 377454825 165143945 203328755 420691381 527997063 253603197 550743997 70422145 247855291 423278391 703335277 511477 578385365 756146301 611715793 115878397 959355751 22210975 338074245 760668041 948010829 707251825 982713829 151566229 340298413 508025681 25830427 180169761 87326963 887952425 496812311 90398011 122161873 615935843 790809747 497501169 454206789 299755257 577238797 370005855 394573459 105476453 797625549 315097513 412580167 810507953 93114085 940018421 585157941 622815593 607125037 577733755 895615099 6965667 796192325 913211759 266915451 251795969 93188245 920435737 912233187 210100901 894569805 54505151 706493605 135681597 666763877 3893429 166781695 345698051 961553055 384738135 721156215 870921139 185284225 469346051 831488469 851869333 565710685 728524327 712975153 653338739 614064715 37528115 923516643 484554151 541365035 776579235 742932629 374256911 966335395 450810871 51747375 97733905 555094055 935909053 209537767 509620377 202896109 74463875 195102775 515495967 528462583 264997605 387521767 828443299 423646987 380179079 943137791 544141481 970217659 805655055 357375447 947417919 62462813 802957109 15243529 353473787 707639061 454671791 379262843 781922047 139264967 786207295 629896023 588236781 456594983 628814257 109705747 882172661 524780715 586964953 464090475 479241933 553949843 123615885 457613923 112166579 995570921 953438387 201297991 226198893 178282363 816276785 397602731 78371403 891098085 142235135 854652267 926389793 334359171 301939475 605224877 230987343 505366911 590211951 211927773 353990073 520269259 755339809 14613677 47755729 288780827 242581815 965407003 932578697 408129523 588044493 671057261 672364131 678548123 385454087 26841387 108349793 55001121 521648653 980239147 30572055 737835103 535211793 90696331 65190293 915561973 55972175 695651245 182071679 960369483 891239431 21014335 737314551 331419537 55758471 519618357 645546413 927510977 151789853 975529417 233226455 425357721 134726695 511822465 581822003 219681441 498989827 739401515 385340679 664800043 134816031 997533399 246860579 414664015 639787755 227393255 131444187 376145389 847665379 518710777 898978575 838349229 767671433 87786749 216920613 810246655 192701285 966049831 27293449 499059227 312645645 866769907 108575029 789404163 372791575 139549731 567260835 547791741 835703337 87467719 190579933 410151195 763570411 73085233 390297585 931385651 554453519 518578941 835317617 555394281 521684561 292769041 260022145 458320161 614780275 266966169 607659459 312908175 51018557 680573959 815718503 800782249 577471109 126166041 466055459 203491249 324198945 588106963 54489653 247436205 791134199 928759425 89081701 152213101 714829295 679197367 633823485 410842765 824756475 546338131 718726873 511874921 487850007 415551351 328344403 888968747 902170949 417026191 2427985 503268037 341026957 105213779 819642949 298980589 972363525 85160635 986253089 403677475 571866051 898757901 29439847 30450609 336262893 373118167 624636699 987683237 120477867 852312553 597979851 391003097 928236079 725894243 282652815 69338093 540270261 20933031 654647045 543444811 317187711 17921379 232242257 833894431 749514711 424801931 972328227 982371427 531324941 607992409 885964721 721329881 966715519 366922069 804921017 780588553 915389835 609963081 690126467 957247809 649688991 289277255 132862427 871858075 878625325 246790833 910485271 221029623 389927085 426388517 656476439 306847485 304210339 450165651 411014721 935441437 281779095 156156463 19419011 612338319 518130719 954817909 771634001 345222997 417301713 934777897 561080493 514694967 404803155 312392535 454633499 525073347 445414221 785268051 506239657 656669777 602332019 45086393 375276783 142898437 393430653 421308783 650707979 938209221 708504365 821668769 664100513 811098433 604551249 137396929 974915553 836726257 879632313 945557645 210488961 374529813 176517437 219876873 980491713 337854391 340270019 145839747 344778339 367709607 567343667 709107339 994473401 350667901 862327425 183840001 101737113 992909463 465543845 984697863 460901983 681237025 45269921 337192971 491080179 964762119 436235395 787507903 378850497 529582341 976219995 5012515 946728387 949253275 959945281 946910583 681047157 503093261 688922715 149311561 112535005 22287217 267047121 858167663 621408137 998770331 512885207 68440067 257396369 339455023 17932709 721458795 434725011 64311441 781628287 966408529 888421043 763304691 499969197 143856809 884041377 13404751 57101189 758750899 769132949 735258211 866800735 236647153 60154697 259848889 254493851 316346669 94966023 603117983 921452457 209072767 27689627 267161903 956165109 165740099 780503387 153474633 542078461 192000281 398106407 189766037 198617923 72785395 378397029 637048451 285651793 451369729 765051907 51195469 421029561 945670337 789629047 374390001 762505747 906030839 246149823 269510199 649272581 297716143 141332577 554446513 278747959 59150397 212666731 341337271 324649309 496898111 903229813 976544105 997257263 138527383 550917277 17141679 711457649 499513969 613230727 752683321 520636141 82557509 691726181 38583167 59402099 703235275 861670633 528427715 732326881 708916745 655056211 925442315 729465879 157463627 695972971 885569833 130651135 287502119 810762877 924797877 769907341 300160119 909321057 660823565 723064505 144260447 174980467 340929373 540510343 131232077 705624731 322195347 662396929 345724661 291489607 44077671 607880249 132350801 685846379 890785881 176513095 16997033 210470793 372286899 518953041 199122821 183679911 851286405 869847679 106591677 504652879 319976613 293093893 682480491 525632923 590486199 718940699 949216757 687643177 812614943 795324677 899492613 609619997 305022993 971207949 633066385 320898089 533887873 871995269 441895125 470508159 388361269 149454791 47597907 530310113 738621105 591307317 42332123 21163665 958944837 980265785 523384959 261583203 65071115 214820935 560703389 384196263 889858531 766691031 858144983 929445695 580659063 31119725 743392793 383962513 379222835 400824979 272291993 479223435 948771153 33953755 852243411 597186723 854584533 426470109 566581387 407017687 772418689 654900287 437001679 833723309 159261673 306192043 471764975 316282421 675431013 395519951 555429771 948573955 914209301 458726763 700468357 689249591 642154209 865521725 215252235 682302839 572210553 949561105 221241999 688456431 730462807 291834807 921794767 850066519 202028217 485350925 487043793 244707567 891714471 467618547 120894941 18367867 882608883 342475605 722901131 847472969 662105141 753515809 501045173 167845169 358473675 290458711 165029247 390808719 59801569 174072309 251097175 634848843 122585445 535906567 331702257 277793747 431220495 86596509 79594569 33199645 193987169 579174357 619531937 708077735 268407457 787731663 493090441 607661687 549518817 371976631 807668947 741748509 841187831 59373245 369712795 835003309 529896327 59440155 869373511 767640519 437084917 76979477 728136833 120419473 459446645 485171445 783698751 703832503 936073213 107923981 170894525 8948339 517670477 670534327 481624191 471090303 71732207 931883093 203090513 603887397 817854259 827185745 376248647 258035249 511147055 290051871 51648703 928516347 803556293 987886393 97647963 560760159 805635231 736610847 503720455 208793287 76268073 56530269 268858619 303903517 293080479 325416323 291386543 533344729 14936319 953582383 980981993 535385337 403987 483711489 331989941 463839235 882430825 457798565 432081513 291912967 516911451 255433931 118559391 650150297 737116425 221233709 526096699 652706265 687326555 120960911 201771883 248993133 419836419 11005115 804644259 360053889 58210933 641608835 72440477 938694863 937478389 107946433 581656671 617984659 896991627 992546903 634784055 881328017 282882821 201816625 730632375 342575133 792074749 811774015 704220347 720102409 906287571 560794491 484615783 974383027 762607533 323026921 553358123 195917571 281758079 85170579 238288821 895444071 63224065 423603595 33857287 905673685 455958703 251925227 26304867 61765581 678964951 933316567 848066901 123118673 532897925 783388277 554191537 644595187 375668369 167652347 399581075 461251783 357340831 923152291 370712929 291397997 304386069 253748141 152997831 607360011 170652449 432607333 790782903 174622031 11833279 397451037 350587503 935933805 125189295 74664751 607049331 40282919 812362359 453442813 694343311 712019137 878994025 973774067 988894935 824237321 265015195 408961151 9826729 885184599 676667889 591336225 908936871 219358089 14179599 401573207 659411903 388505347 681683305 487471533 720478243 598449077 516947763 947458997 526058835 727072789 174231923 731225865 953971727 190732065 706243309 584033357 340357477 570898273 987880753 578164775 660362155 444300769 29349273 202872909 821271931 747205943 620149829 884211321 557924537 279567491 287293727 6880107 631397779 192101995 838626003 761786863 717331325 100707357 385298909 483017175 966975027 992042573 830874491 732514045 335212215 437944381 824492213 154597957 697878617 27236529 716399455 708697237 912187819 58445561 286980877 215260131 600669065 2379241 571694625 759591465 919573529 677214943 739210435 998400103 897286085 450394307 545626595 993437097 586708035 8999685 897816121 896687105 627404687 725662871 292043591 682453385 80585965 777093369 436996691 998213477 507228137 336195891 589776751 40632507 579856215 34434769 814221939 392547777 218827859 660467945 216907775 652335793 964094787 713797403 559370363 999818955 342613203 566186637 146527511 973584221 263687925 277438189 363613387 371218101 885191655 174660977 547837273 667472687 606297389 938909141 706463303 503489581 704342677 236828517 269065703 253190427 258723631 72752617 956273743 109772905 849993819 530298043 648803939 756887187 980917947 595433401 108976327 66130713 949965629 76443207 496687343 529854855 485705749 86334549 207558161 46745199 542769597 211751771 552007725 202787435 499906557 169371987 718881037 817608479 764623581 163610055 202356033 989254193 109833653 206703299 55839519 832376409 377322015 656834525 149931467 535756363 371703039 488560949 863472169 138580943 814723461 890666609 926346731 758685867 158794271 428601791 196420235 268883891 586967951 27279573 906176071 241946561 87663575 428509169 866810665 23489209 441788739 421821657 620659713 514350721 386447207 50781659 760345445 865360401 963157023 695529681 941358263 254232157 554818705 385490451 371322655 724668269 486516263 475585933 567632525 207693639 138679703 628991401 897342139 566577407 937654749 804909663 50516007 324071855 285378877 738047535 471908121 40328571 619428931 882338587 978238627 845061259 850880709 882112439 314985885 894224913 631363291 217732115 933782951 74900297 925285357 420424913 276945449 958085235 264251815 484286999 278759763 524997595 986888957 277295763 532199197 58972373 998434601 591014011 799112777 373409463 629162673 60523149 950068063 208705509 952218211 563177743 140409771 820192459 870769743 98816209 388463691 352411353 158179541 455049255 226123549 185300875 899071383 105914353 986917321 562255715 917511299 839709843 673674941 355041001 813335245 699383551 166709813 813205425 34390001 179470759 697578289 475667797 116019377 547517837 892214391 833508985 525550621 27812659 273102233 968864709 694314631 851332013 694760429 965251819 827505803 977432459 956044695 881284007 416543759 407516655 686880891 881036985 181648189 574661503 394833229 66593007 72476555 852125545 885369987 590816279 144007861 633362019 690077533 877639181 451845565 937288107 208355557 279411125 927904243 554530313 78864105 681099255 858968043 669489351 199703301 995670213 747773565 595433153 878112149 774233115 642088913 280976207 824869059 557833977 48917075 535374173 831305089 827200621 513467829 81865813 208634499 728304261 317233653 910338353 798405453 674046813 494009431 515565931 58631975 363164697 290417255 803218957 620142111 285014497 145218811 455694499 293506063 439556327 370124075 367900229 687650199 177806694 510977889 248215695 508151071 89958563 35501635 789477035 153557465 94082019 457800139 320959043 569462969 700659579 584254513 481958031 236468099 17161671 589726973 671081293 290832317 557530149 817519095 619848643 72920505 279790595 946115639 21624257 496892303 978893267 955021591 55006875 604921375 859907085 368384317 922464305 948280337 427290675 879696275 162622953 192115925 837434323 830793295 895330735 862168483 102223227 228434411 468532989 291204221 763598279 748394031 605965773 317213993 155502171 599322917 188639657 718706745 820805855 390644257 608969373 442604035 308798981 429081791 685756481 651669419 192313481 553638885 64842931 486151701 846324781 9891517 265633687 409081077 628174011 546801597 210645789 685754817 391325443 600347041 851415291 296361147 733020641 268285549 423970159 333873641 973793081 710215789 967323199 691257883 102344435 852181813 609010107 652940269 752003585 932138147 912480695 624276155 292515167 623156697 560496275 818903471 58312463 605506629 558683701 599046843 436116251 622046873 881330443 102760341 731327635 572957653 467137801 892468413 725839509 21592121 648061105 108076669 806269759 531619923 151733767 897150947 435679935 682896889 924578713 321195465 582878279 773486403 985398143 228711887 134180623 633080219 752688727 413951839 822986585 300309161 850888261 121826469 456505715 870473569 566483961 935934875 4620971 838023939 737332649 783355139 963912799 198610961 109455891 995783013 419123439 322138453 957870463 852000271 558593221 273861863 454651577 7857691 603636051 911786273 409611287 57592169 147257877 990417833 302332025 115832225 888885133 426229353 454865477 651572531 204669507 474848919 298083431 224584791 212589517 786406319 264856921 342924303 363427267 314384501 426055191 640373027 932891333 837677555 29249831 110509345 744469377 477028995 419809687 92434785 779009961 338208955 658455551 901984775 528513781 38185603 740226941 438491385 654389801 47179269 784853173 149180647 346447885 63444665 25209047 30731337 760743543 686977111 294351001 33019999 89190717 393082853 501613371 660560947 86986565 862428335 426393471 464551829 82576759 885263177 327424183 491628061 561169351 626866833 750930359 338602025 213423149 286485161 665241057 386374629 668745645 1022463 600761877 92002877 171899215 172683335 97129927 197067245 399528233 127626619 526510059 202121333 747060563 542601441 112625151 857714969 463826157 951618567 387006729 923994095 196412197 495677375 754496663 748407499 84206637 928983845 694800833 182313041 174657597 234754205 240198181 454144229 244897945 143388373 568015079 127451577 765268107 320807361 813554615 22334919 419078755 763018653 848889803 578524877 677026431 271498219 317117667 985111125 962468927 558454395 602902081 400156845 794227469 669090911 335707575 51796975 741225309 392545011 743454363 794938107 935707559 656184029 676604617 16612985 529358191 461944583 471476137 50541017 28573757 551865767 937842985 270567509 127511207 66245945 341210301 284171755 268268357 931923841 685698663 984492131 180637111 899501707 240500141 40350799 956220845 363985837 652935833 186131463 246271955 38087807 82136261 355766443 737703655 818872297 931496015 460130083 453691051 879132439 984396507 469541663 411386601 650088571 539830425 193267735 739278963 765936339 257446209 965079117 448058913 236629029 75224845 974354375 482188761 591109305 220765639 452183895 397627781 875157541 345936827 78399381 471746579 775198791 740131007 568365535 603809409 509030979 213251893 883164001 464842961 73865601 211954943 541275145 145299213 584457403 585242251 951726991 140899399 328548075 277277139 434265715 699460505 783235155 812535635 430154495 76640549 364159875 596434193 685271107 854441237 946816075 732501917 422138133 241861787 760672973 468917515 25727769 697962229 84320359 657354235 285815219 840267361 517474505 311349905 638893847 933651753 181347047 113268095 619003193 270716067 484079613 969658615 446344927 91960359 669770383 958640057 407930509 346962455 611002217 862074381 246433683 865021661 34006687 575348415 899951371 899805677 554828429 426279463 556103381 985225919 974287065 83486497 170983067 843381719 855213423 54652437 897030857 754849215 267484545 472263153 410320283 375143945 790592653 697471787 594747407 315118159 979776343 899503297 857063149 719105331 370449643 102356281 272441287 218194783 703146909 456132515 170155509 559468167 219343371 512727699 893658519 763488355 726785559 498335529 445555349 459921335 400472047 668818953 207417247 872661325 608050951 707317861 346395951 625540343 129795865 787633391 900419715 301260941 916363563 383049961 284088483 720435447 203437195 512996119 703992161 414287129 924460489 180475591 338806869 864523497 863435205 984195279 118937053 473557087 316496547 546291857 278534181 916147327 67053261 469959407 606138395 191197779 825469433 508523353 173191799 17724397 677733409 695180485 978407099 210928999 409947789 20459697 394184237 999892451 650462919 536974371 779029727 281929867 252594081 232430251 175306407 859329939 480487997 501024093 489186857 699049267 761082105 591023065 685014473 301608623 4089991 801878851 718480571 781952849 846988503 757322061 796282869 276283755 575099943 135991081 375267639 772034903 461413371 720298137 836322827 382524023 695054367 37792481 56979649 671415863 877691815 159305679 246664047 967045381 847944687 401122491 626649847 379640161 971436957 204450689 732884995 39148233 277038493 410023305 337219583 421662409 927136801 914077377 190331943 997228019 46784935 690173087 936612473 456341729 696509941 630891299 763417279 54449973 310700819 22612943 702071175 898546841 389034071 576017077 170492715 863539649 250342751 124640617 319649483 628071271 816185615 329664011 986988879 58435915 44328079 580978753 574893673 467923769 102218841 673765431 162184077 248909315 258969383 204145063 284337919 181373059 214597371 296058571 608487623 895794843 627846179 877893485 616028083 39975477 993930805 160933851 420547677 41544773 108958987 891168231 432482853 273898437 541667275 131760629 905969713 673914549 636369375 776739303 374927477 407328545 772578301 585866285 501700265 385950747 533298977 23123645 933768521 833691837 499768205 985576981 604755619 594236713 196398033 713475133 553571267 208346505 799879615 308290497 670098817 647178001 238427509 494424247 324794241 221345531 429380181 567813055 906492713 949365127 523096075 111969023 302928551 240563969 219471245 89995043 623996921 671255227 560706583 225385573 381024729 641198095 598317613 942179713 831171283 220186463 146695323 303868093 814030903 743972119 616481143 756496615 87988507 815133863 763820313 346105431 341125987 373879177 142776619 987312105 449441459 647268419 173940115 111787015 266919295 762072923 295783307 792892315 380742141 888976485 517056651 603470621 171964205 709345531 452868953 270941579 533324761 507268031 518294787 297659757 876255631 31705947 157144025 888609231 499122089 469943171 766242427 93719367 421324361 860394993 424758477 155613429 466002771 10347877 783126777 116726655 389086585 674020523 553038451 215732241 493287221 406719381 366458619 98513765 526144453 988511743 809596307 326982839 377193521 381070535 243194757 815012557 981770829 404295385 179650409 570638069 752828333 567774249 792859673 624381959 900739763 108648113 516774843 322573153 781626247 722981745 432148665 370132967 586195737 155164535 482886857 432976649 351912481 776460497 237233639 401508799 168655393 454376347 130234199 465036675 132805215 697008375 266400933 438038879 269244143 307830801 477865637 873246431 724568995 204090649 780891765 40263449 879273249 75339337 285696631 934457773 692739535 123012327 614103383 904602561 263596253 87526457 112305933 946212611 451084099 380657811 115092433 597635751 122788035 54202959 179612969 165943407 616448227 660619471 13643489 119835551 235901429 54467455 752943631 350247943 971735055 175139535 366682635 913670395 571460117 26084667 531096959 764957273 171674795 271611971 34303827 917704075 560885573 681614195 546699707 855701627 316116761 731559775 128723767 488239265 31498279 925493917 599018375 917885437 123050041 955289809 137141435 171846161 703286239 18000807 95555107 578312943 525361007 267603919 70903135 384234029 747819021 246982149 63036755 445100519 12230301 6311433 187955497 421309381 228796625 485834663 765170007 72867317 641069603 735601073 203808409 223992877 911798993 765275395 565142257 792110763 841717989 219791227 271642799 876421941 940912943 66901255 316247397 327011353 798092869 7760023 858905839 481156911 741147529 735090471 551078003 546066645 465750563 271188151 98389341 434432239 946276867 511272787 332321887 631662575 834582243 484117517 816799863 596751303 943528769 165356545 609588713 773397241 685245285 810242381 48661825 932451207 527472225 402276383 208639571 128645123 354814221 523339175 82793789 351181443 410641161 368262945 549616993 489039779 135403453 38227149 924865133 492741515 493849433 220015865 675015507 503042281 796794327 28110579 752605009 974326259 166504435 514309655 58791661 356864359 515506747 556044489 635260655 765421451 818272251 776659823 337162095 376875823 89087051 351699329 704012487 781793959 8370959 86144627 467752603 804877011 453479405 248532173 122032857 672693783 963125587 960581909 653466293 614644067 476344703 949041887 514576809 862586159 598902123 72406983 446468221 258376821 85669347 800240235 836890169 368051135 914010743 103902585 603638069 958934553 426706045 740991137 385161739 100468251 421800473 661991327 575305889 388638433 203879727 44335925 317983521 191424787 789460595 757061163 586712321 273621983 797034075 232126549 282265085 675425787 461079591 151998863 10775833 640454821 433406689 826724535 864242593 137908899 629547095 809629371 534579241 231619909 120425509 59427211 981947791 523138399 120716455 701672227 522571765 235597905 131970567 288982661 931977671 999728385 341405495 893400249 236792507 780161755 553474283 278206419 735374541 983204057 578380455 743221231 7349571 423775349 434132403 801187371 789805477 405621433 62884893 787930549 144240841 904792369 82612159 786686143 595831245 107669237 130385721 674923903 334288147 687973281 865086195 460288317 201352009 831177309 623750687 552800575 61397603 898516183 810193841 447431131 247736987 550299205 772775277 425013607 596323703 22563941 173126361 348067657 232486597 336644735 962846279 124494569 625957783 107750495 482470863 430888633 404629321 902259035 709125713 46907701 532259967 750595923 312387701 508285919 614240807 746900395 26645931 381801535 758744181 808283221 666507051 110295273 381657061 121028803 475661047 431018105 756466745 456025847 188118741 830146189 34088321 907814005 199525719 842417363 493597455 652664651 336450771 112948733 666962047 955262225 908383341 246198979 978697911 35142115 67734281 770561255 882255587 564642665 818648667 200206903 821837173 340107219 412485593 322099585 264766251 451179731 250282437 9826723 571105289 753238185 405475365 886335611 255469147 428288283 350110153 83601911 261732789 669799545 275858765 112648457 601056245 867632279 663383565 909936297 166661181 179469269 926146355 780909273 574163961 871734809 505979569 425350055 780845025 323197391 508960829 512124449 919562477 371438833 102919767 769278309 932263779 616239099 228788041 253006225 360724945 505824499 609524257 858467539 280696327 361466471 678998457 501190749 529896997 91067503 913016753 208536423 365895053 379656615 769044851 781516853 519722989 695512633 715435307 1053455 318945337 151528655 459959509 350897995 514621869 670067105 597370159 29793343 377359051 693252461 854999233 538884689 576101475 791005819 498880221 43580393 602647685 197941653 547237531 979847801 301764499 500654871 378950619 102893949 892185387 119990747 409439301 893482871 720868671 426795593 523518025 772804849 104985343 272952653 445018145 458683259 553433063 65952097 805159113 568460467 431476415 261977985 125883663 117795129 81088145 880250931 184063103 631806391 837715889 111609989 725750385 321481695 962055357 492058383 185961225 398848877 873256853 675767533 968572973 769706275 898029163 128442569 549343373 516132811 787585199 414973901 188606113 399275829 242213407 609801393 80484265 369498943 557655999 234343091 601926319 44263111 189586653 699066011 572270467 83654845 732631049 141225397 433672125 17273101 126504995 175110871 491301819 702774709 898066765 840265057 829564841 753355703 830693365 401590841 294933107 42422813 919064013 901791437 613528277 903110391 852587221 890403859 998376527 970330211 795642445 57938823 264060967 704010113 280682435 449355827 274759277 933269883 494171661 176825253 70875899 892085891 631920709 892230897 5617779 778544853 803791569 1529781 314778937 952873395 293588571 281133851 466194047 556905063 540715735 113283789 344584511 780605251 838117509 663006723 391740727 712483999 382558951 621355645 968374769 82383329 489294791 219859325 230942651 810161777 747735613 395770069 289859759 38631619 588829605 118553563 131796909 71079759 492939423 457158763 919638877 319991705 496665117 173375469 34812721 553588011 43470415 20196431 335746141 810518677 516671411 906721029 751147237 946077301 565500941 15801361 988178575 232855659 606822249 622811383 281272301 117500961 812585755 695233991 653668183 702194251 634196673 693798933 635627501 204905889 492265789 520324609 539880599 532817383 870643643 602651951 538146053 84642533 6229171 571711439 325613743 618380145 396947165 353482649 758065623 712761443 246310975 991207623 286717059 506291613 322563365 526120739 932040581 613657865 178940197 738380025 293813621 287097243 501704729 981837855 233877937 836427851 279367461 197308661 555623781 906029341 340068279 306879841 880793727 574882329 795315843 934161361 817419447 443991637 771348611 704238651 524988045 578412265 907764223 235479837 319561291 638620663 923404671 730082941 506147073 37157289 333988571 718237419 733004165 210414899 466392109 809986683 617780603 371520461 180248283 991027149 346947655 82930619 976299151 245387525 217510941 391872327 722499135 276613843 651976435 657107905 2460967 8165231 352833929 825558663 919693257 183429523 780649065 241312761 506002677 627255689 971165409 321567363 499304637 644348957 70622219 777659283 783265151 161268135 558743495 811775657 628748509 949465859 371049919 666360899 959916227 184981657 950600287 898405099 445261415 578431831 957555171 578277431 234304325 379297715 397089097 90253247 481123873 234534059 691225945 329243173 936794121 231997637 889152421 200252947 214615885 823112465 244756357 997327677 263603341 82692643 570857753 528446811 651919787 739453723 744099913 591061297 835696853 806307485 384753605 923193225 93807485 726394843 264565767 342210613 501065569 575818631 514701389 709031183 629038983 992135395 185936799 568034041 401940791 538732209 61833167 239270109 948686601 309234245 819665013 606332591 512614359 128009327 779500527 968877671 399701957 783701139 551606377 751574281 24902977 560162707 266176721 816358303 512552447 924244191 742869983 329643579 168991739 986047851 915156757 288616183 330257527 91335355 202864569 676276981 790342915 400856015 193861597 752768863 40700529 212226617 946196823 674553961 15220701 354590989 732698315 133085773 280835501 236932075 820135069 308331083 299291787 955852279 733904897 516083119 555836525 864232163 139607021 291028681 111399311 477978081 962185761 22753271 239801205 966638771 290710055 380300953 101991403 372257949 677823567 197751323 450961925 279528813 510230703 720647405 624999201 418497147 258566699 936403337 901365729 921964963 473963367 764780915 102370609 64676429 170464213 334740533 750641481 1987175 723931823 636805729 733589665 686876519 966432243 891900561 803049215 612684107 637480811 776343655 391677039 471748507 24288677 147601293 183758919 573906019 372381435 765825719 329393185 620448057 408341133 859904671 212605665 823476797 120903493 731745541 256616373 760083731 165237455 369333685 451600145 776264685 364658853 3058561 316564399 631611517 228519177 59627843 353642389 230144261 736078339 887304413 685936913 308114761 820657249 527174201 147405749 533800343 316369597 691026507 17937245 107567047 532849783 761389069 648823085 778824759 638055605 615571327 451661973 80453835 121991531 653388461 372932677 871761907 648844369 561099945 2776889 244500901 419526629 522424973 955315641 6658143 896242287 682014843 237412943 142797865 559227137 547162783 126989519 284078989 170348145 58372137 428576597 674982567 775427683 994000467 94096199 687387153 125449789 923329377 622790737 900404209 714536493 67837341 86356837 732329721 444810801 921778265 330879937 266923869 267331843 636880623 851740649 142670809 298227503 333743555 293829801 744700599 275466245 177183035 794155541 942531781 933016219 590966989 16195211 885342807 998646485 39466483 920584621 402342475 24494167 889477421 520463209 571970825 112539029 75046663 859422961 972643201 272013509 996720403 167250373 320014885 643626215 886982379 656933541 442220021 74481861 30358833 569611935 745438583 277550573 432078481 590363145 284332475 976286137 323082427 826632573 167778647 78045771 827675497 916221151 924060007 939949447 621391713 965294685 635078803 827045919 218397033 294129515 249026567 166563981 803222357 835458501 839439485 750699023 934952703 263364717 289687345 725186989 760390473 574670003 219649769 584566587 395776799 756871977 307971315 71093837 418604145 538168491 820813863 678232389 726641465 353108831 556101091 359474763 217434749 540211631 743146251 359300687 47342915 739242321 434014991 107448841 322479519 785695809 125887205 321158907 736236971 366229443 800393229 597951085 65952905 739217251 25182601 35101293 874244965 677152245 787011819 740696275 734295151 513283733 789866313 764757571 634010083 92069289 290529343 704560419 780819713 106638813 28879605 23404195 894503701 133767459 747501847 715121595 777807473 284052921 291010527 351237677 550288239 139236133 324905225 103279487 886046579 799795503 970327515 995692035 361219043 286810349 257251877 924618191 395996469 791055805 650844475 554060231 167981027 935462977 966037243 360723087 618131309 142942567 751479503 884341659 173399393 960116067 937325729 255605793 112045645 343156911 475736553 753991713 856372429 147854099 713224871 666710373 730709635 473974935 363113053 729738877 53910299 717610643 290969885 513943999 511633221 59353761 176766077 622191183 276446141 659434917 581841049 338574097 403820611 973182159 444290329 864179129 304397475 141804173 395354667 299035579 272690609 929081249 979087747 270349659 444806211 557796877 318652259 771328673 605659709 89514013 402708367 665762909 953415051 696237925 950503511 814307109 629923613 496603585 291228559 395602011 439962095 166664791 905036695 763169063 808104961 554782353 507779155 377591673 461677921 481998117 464602677 386883339 33087773 254734095 353863983 101225563 840469073 686406291 687988673 792410033 774254879 43926077 275239411 386379295 523695027 167230947 304742481 60980861 460297533 774109085 67068659 271919723 619538681 889514197 864947829 726108497 651186985 78186289 411412223 897214303 682061845 752246699 87121727 566983311 358017809 836137851 888289131 221719453 486194039 181009703 429833793 387622679 503504299 938333565 205654023 506691145 242103829 113860749 332823947 303983691 403020839 706784951 728034599 596116225 830512989 511623069 541308339 634182161 491990583 973561133 914845083 923033065 78394177 802301595 30665161 141212359 650904079 313374563 638428343 541674917 936434231 572429383 653503839 643208015 414725727 205740631 744570443 113379157 287606061 270555109 607556743 509204749 750594649 658630541 436563115 245575323 359697815 991117621 357652947 382044131 751366575 959680263 889859751 982789529 389451111 148405881 525416533 821461555 1907349 980195655 291548563 539566833 799294223 170691189 466427295 544635613 351298489 122257741 818904383 312595909 590860159 111595625 773988291 926764357 575492691 439609503 667240447 165183417 729120299 123425815 149952851 740021067 912738831 523071805 220980387 424515309 375317253 352474563 312909153 239320915 226025251 172926375 919250559 922615297 20574847 278996525 373899135 769957951 228877375 428461793 969628517 468985371 272040329 806676121 119237055 451574639 251247765 313108589 674892197 240719579 685099417 115256007 749870771 187249863 573007319 74467407 598171665 668221029 945177245 290695929 920891245 367160489 808688185 471350533 519367677 342013783 776715527 262387699 45836671 504253429 201393771 610868113 953170235 143441621 163362253 657941749 200802555 620798479 752379807 443587961 615872539 956575875 98719837 33820611 142887539 870106841 604030345 219730109 18552175 963166849 172753579 373043869 442885371 661164211 416301657 16199645 169774731 202786161 627171625 327202885 28070433 400799873 913535169 630857183 797176641 393618549 345433801 905804287 649606649 534218659 156168691 352382017 557886945 906396463 566819579 33126795 363093781 104845823 114036643 484262151 105762621 204497857 85448115 971547435 782927495 93433841 130165247 550369459 220824233 657412815 848435555 272530339 506087395 725129825 655583167 346851911 473327607 51225975 658617597 145780277 265608503 343102637 298420751 405400901 802238839 523100511 434206193 414223007 100545815 24490679 758850725 56375727 274803709 209033895 539074611 720256295 875317909 721038565 97720241 928328711 368702169 418700273 247764021 830359183 659596101 747357717 646019045 494528845 762068445 360302175 480741097 154507287 440906549 550511017 908590707 49898247 959929695 858881429 460921791 79560577 343885561 504476551 733431055 851238195 181297195 981134257 866294955 981786897 720252323 882037773 546548201 574313557 316056473 30917977 894326815 373619079 705555143 316501533 386431923 848673135 646137717 856495019 688575757 807025701 377983091 17794331 845206945 373587971 446862359 893113933 745930471 14468783 820764989 27688169 941502817 831239699 354516043 760416607 312047517 930029413 700467 342414825 314763563 634123297 248505705 442195843 24199587 410324747 369342697 900871419 444567979 542039855 76771133 376235997 884776427 881706721 98840947 397456257 440101397 186531005 700646431 15879691 106060261 661063337 200274527 169909601 230230045 13586129 26584795 943833651 462062983 404783783 831488707 752422137 516436979 422151657 133403849 267861235 552479551 49368987 73628205 164516651 788150347 8175881 604338103 763064689 609757697 758501063 325485235 689533789 343970387 915002291 203358711 844468557 877948223 447923183 691261155 725184877 207022529 60026857 367494749 477180073 538474729 315041109 244511187 174341565 410638021 193243181 96932921 512579625 307003251 294597047 194408721 576460595 118699027 330407297 754681183 750273259 659011535 973469789 279952051 971821355 661496539 842158439 659184673 524909717 796538735 917852419 156153159 162028941 775819471 442341343 583664463 996202309 37442627 353801711 496733667 407162039 267815969 430056303 463432763 832453537 921288895 471435745 972369941 957908877 935990659 744469781 543148217 844087497 693885909 937233949 363832819 300039023 485372969 750620245 327828251 141420127 219144439 255431779 439030797 179054657 693574083 823846193 841418289 957783175 635786263 900025589 47697779 336596069 88212099 184653355 709490509 745907167 48053157 269683351 959067579 581115579 740210973 598518853 617722947 818221453 509813397 399127179 937214709 845109415 642448065 704873217 233166693 986922287 991894105 453057167 210090929 517909515 564804385 364699745 787662723 220355819 867772643 695173865 426446085 257632071 508291695 437278949 386665967 200058721 630318243 343095387 806546049 134456639 518530399 502047123 493771901 547082163 737468045 676014115 378144309 293769557 889099553 861668841 32367999 551264131 694881811 242531337 392246455 512877417 811155815 253152237 42211269 684569845 231819559 946116681 829086999 835573727 710188643 434937373 345828515 597835943 948884537 478704041 955766503 275663255 174440137 510952829 309085161 669030335 150157885 247223147 215281209 108477429 14105033 204223375 678913003 342507485 838227109 626865997 746155933 532913883 243836181 40976469 177615225 817352995 239072099 647961493 144500777 448793259 426666209 122473551 287206375 205567539 840098025 567305477 353922925 574919749 556947931 323771523 944144133 450598447 215238695 40604381 553125243 344114443 796907323 673193583 681577253 716367033 906266769 934503135 828630757 569524451 943687341 435040281 93109533 518873589 456841241 638759247 273506493 539635243 530874469 570641407 135353915 510598275 333608239 904446701 395041941 315130821 389470487 985263909 992295505 939382659 140296903 380288253 745515645 150138645 218938867 658628877 473992115 556793499 376758357 261626173 455035147 529056765 682989741 741191097 375270193 326915051 979296197 584569845 115404111 396474079 702660979 897703339 781120543 7932439 962288527 200076769 145893083 539573403 286978811 486687717 827566669 318779453 266669729 662607943 662964673 677665429 151639669 441596391 676639247 614006785 412246129 572808425 218389139 953133741 528023445 478084535 738237493 886710663 902056683 441221127 584642659 65313607 416343177 976783827 554259475 118544751 798008967 558959203 667415235 899478341 167258631 516699969 663443323 469704923 965884981 411424575 994367941 329448967 119439679 818687871 675519677 446288749 328493925 327980639 723697659 58773873 197607909 639074449 917068459 141493063 619928587 810275845 858571897 341839845 927593513 926315257 876792985 705776395 422019225 538524913 739295949 773097539 177677501 520783289 204594263 626942941 200112639 417454693 553501963 89966063 897398483 10062417 504208953 538983261 758293937 279693347 514106309 318119115 806368285 207512775 59758353 755014571 202080161 371551855 4246029 932530487 93393103 580282779 336718895 93061997 461165121 164548619 92794229 333206039 214899097 224077261 251281767 800159171 251673219 459732533 533420047 403608779 732454831 655742177 932007689 763920975 739960279 668341 846963309 631109945 286539967 148392153 285842919 811578165 153182769 387944903 606114723 787132349 715642623 445975097 637849429 891862291 247622147 13989937 985576767 12969791 273766175 10491903 763277093 819226383 852335679 78286643 602067285 132979485 91696723 633276845 537029031 810843337 749470293 353223313 890222711 113433913 546438217 151716681 431245743 337086563 454724153 818261643 543457209 459841017 133045047 6410579 556913293 159209087 264733789 232795109 481855145 847945787 825422285 195141835 486246419 485878335 191223731 514635229 523327323 791683937 45755199 844931383 534026903 685103941 648252843 524530235 117679715 838934353 785583421 97474709 858164965 891506611 337312315 432177979 955836111 341474921 894328825 606672745 462240851 762232877 749505489 468994979 491514419 470394251 145993765 903016117 670991027 580758483 208032607 233178293 347266211 498726427 505116915 14262267 176208469 638648903 128407643 415586865 355630765 477815803 281381911 777034045 796767757 427681195 111993523 774216281 262778213 951014285 329042369 145313533 549264171 589934753 375551707 768764399 876406367 300648369 886631075 2762301 393434499 583032907 847081925 633622071 549698473 352008137 332383217 272347773 84393319 671618125 58508515 688525555 327851993 281299387 844956507 637400003 87912357 375199429 683121189 496849507 228644349 17144805 633855251 664215181 481831829 946952793 714884607 732803913 451201451 990655785 260598219 983230943 973138693 7051305 431872867 160180455 31398641 155538669 521343159 77881147 79092295 178015191 28238787 895262465 262955107 786105615 619877767 404081829 522717231 648951685 809940239 54231001 943146261 269352945 689499245 336467097 837704205 43731925 154069947 727835693 469621399 157081209 703692317 119581215 32081333 673617899 520238777 545807171 918129913 218062851 828639173 380397751 9223033 699480421 466123643 913783517 818417873 331804791 133954331 965168737 845605415 822490729 847526897 288357691 763586861 812930611 739129423 77316003 806220567 70603159 44479121 206904095 355043747 34843163 31206933 338662267 685101079 716152849 958327881 421840845 539654721 133611919 349967773 520167279 283464569 873459577 582180491 526022917 589411229 444725363 169379481 213229437 336120337 226964977 960171341 580179721 67306183 355124009 756035899 4485673 517189937 768406555 136964349 609334941 107168591 138801297 128477751 714731125 596549801 61958427 844207759 499859713 361430859 251405327 625075387 992518625 948482765 174039185 746860917 96395769 260900683 633702277 706954879 360541811 689340525 333587615 832191393 814815685 104430687 52581203 290710959 603797675 649067227 573985767 564291971 490891047 771413533 158652509 478747393 866641801 62283755 247348107 362814991 192489827 951571605 941782533 474281379 839137939 933736431 28821293 453902007 889354297 667244121 726670891 913728845 469455815 738400695 975199471 690282861 845973485 678903929 99364659 457734187 54811049 455345303 668041077 655756961 143558975 677761675 78885373 491847411 119700283 805993567 29692893 531413831 286665585 992994975 460219885 759685845 580212223 76363107 193995213 807722193 275477575 716222279 184047333 337617283 360570359 125798515 265333093 565103921 918545409 12398997 120031559 794002735 84019107 863249633 541852487 87434969 807044963 27648281 275521011 702450829 937230345 40994435 873825431 671794873 133284269 990948841 791146571 694135501 285152937 505803173 158648051 967753285 452180641 215427733 147886645 215616417 439569795 474257695 181639295 214209391 383426179 414186031 110472207 746947389 450157339 931284029 116548063 409361063 687463955 143971913 125698747 401252945 131517555 756187351 612288051 647139555 778733715 424978165 783096221 503902735 746986253 911819577 559000349 246859153 698005959 697766597 871867543 177905193 446619883 959505979 26684095 201640613 562074095 926011595 31947787 160974035 528040079 697528107 957888443 64114319 907625935 618676889 203833049 830211261 112493307 808862683 71554869 124223557 396793511 716772417 831967333 905470233 353006513 575408799 345607883 32010549 782683195 499131989 72949391 226445721 815899313 502226503 855606947 653040979 858456777 371905511 859495355 154656881 44265601 956870183 116249947 63739663 409120537 822199433 861073099 654945361 571121695 779507729 753368089 439379807 380998759 481548877 995973919 738083947 76284687 879067219 24640637 995408305 633611385 110575557 571352219 178763379 90245459 945833413 503638699 23709177 455793553 102476291 17184673 969930903 111169389 240084917 311283009 900765865 789011565 510204569 32482577 959906701 288779359 75773429 971328867 181276337 304098389 474811801 119097423 221504647 289082283 728453849 76369077 705396101 444307205 490077077 800107325 17448755 633511761 565097779 180691287 985382169 656572099 834722719 756135483 998140871 249965015 418996819 751694315 912703449 734616655 233616203 214514221 390278899 858918971 596249611 491295123 957463229 441572589 146234535 616425075 568359913 24607235 449859247 37662193 97018675 421340253 282161223 98236659 911821917 6049581 499107601 187339047 602228527 821537507 777155901 260162057 687360639 998681661 97748609 220489177 113496867 908403519 487086875 804884637 588226305 14968373 864557779 7509797 306762753 580460723 205592053 807597069 332273941 137228439 943395415 37078193 411659577 212468483 819017817 97673787 639736943 264874851 391561183 52028573 758476991 757910639 379232603 754430349 142426431 762348319 966680257 565141387 168157957 753671097 305809549 658820321 544789559 977192651 773579465 504600733 735176445 573892133 395676163 620804505 859664009 258720231 961291341 51206519 998986265 634259827 642617419 276765595 408288745 760378487 364572703 575785015 355498057 558961127 545968249 668342085 687580807 142533375 675965327 661093251 655371777 349319745 595094561 406956921 543841045 445843069 270319729 242303097 599036465 589218245 88354129 417642395 507090119 554436725 460265749 778408639 667891279 650111025 954173597 188412301 425360717 475656937 256699983 161341557 148259913 962986957 837486873 737279409 120592601 56888921 655907695 272826941 731480723 974173013 850698323 125177063 466666013 839565259 618654793 497398587 400347679 162987023 248516193 478074513 525092429 581027519 928911661 642988301 793948767 136145853 816571345 923190933 861036825 425207605 768819439 393553369 242246979 881350813 883704247 214578001 843359923 397415345 961339105 848658493 310862655 245283701 392884135 710636457 475595725 669374775 583751889 390544223 280961861 958556551 949681071 832198909 783247771 584344901 221549847 561365727 24956103 752554643 633068133 36771121 757799373 401312223 921186945 422754015 500536757 588753627 65358551 583407269 325138069 692625799 435703905 850001411 562983555 738607907 678810779 580840511 306538149 175080253 587250315 855395177 16308259 182045867 496724415 687085915 546440497 284856967 505674063 626560695 357377031 586862903 662146265 142931425 874449385 794848101 400270209 814529547 420657697 130415879 217016569 396954671 356659455 224077911 40837235 337052683 482640097 388520669 198830511 711020329 665175335 531440227 589182453 946914263 939834171 38337019 64113937 990070831 898307471 855867655 604398681 433287953 189571233 985219623 363659181 982567717 542964717 491414599 464151667 579361757 861353219 163775901 406633113 72533613 639003763 589122213 853230997 607818457 664522965 309447459 956696421 842690791 396864463 233301795 964756879 140994347 589934857 937917945 455886881 981234167 136682295 550148931 264478387 211669617 631446289 277006307 943809891 945294207 105367643 560476933 140505045 127843537 779621599 763686177 452662843 520885215 49768303 557111535 483302983 293281515 475444451 413525621 95612985 490900475 645726497 382210559 885835737 911240673 879653393 613347107 415160179 22154549 79548583 6885819 528881887 773278549 24992219 765793515 123413113 388849005 869111729 855019041 161237033 766739819 457036339 4676625 760859229 150281479 123484275 72340917 171078923 87692481 227804041 704678741 459783857 583943395 722935707 880516985 357386069 409419901 105474259 375185401 995130757 634656869 587901023 549583599 846030681 355640383 514255743 754674113 850692463 260111215 223374961 587095577 703084013 624964137 248836479 7510253 640428927 577167459 495531007 849934713 738156637 51957981 413306185 74021953 149047111 287727137 295047103 730036751 89475713 942826365 19381707 389883 496796889 119569931 804533985 891027809 549939365 497748907 398943353 663749347 90630855 25529351 957197591 708451693 678092193 340671883 456533829 510283317 204095521 515785331 752566421 639108793 90440897 226440125 96346271 24202681 91586173 68487729 923560969 195143747 682580445 344081761 534267261 634532523 629963243 427655845 853759147 802980239 211701057 102713885 520626509 759875793 147903229 262012337 902445095 977480863 426012613 385251857 209558019 175303275 22016709 114902455 607968433 959762933 619336887 122013665 195042831 836594749 338242773 477106583 223124221 910398097 881293801 247543979 416048743 513262471 532302655 245672629 392618045 182115321 878268335 785719317 107750521 592951307 145577621 736213745 93165087 908690987 367532249 841685053 639475257 429549069 1647081 24292015 911046361 934589357 809039035 873711049 416356375 984102477 554774733 329317073 601165083 784204157 899452197 521484249 983052553 714781711 500094803 390960823 679726615 445218079 93439083 746526223 722535549 732574483 608370189 377136709 720086911 519087765 702694239 29260429 426883175 331357595 523136013 170765277 832758151 884959841 123105105 862559733 88779577 968742507 747322597 741305951 695379679 697611141 431598099 123267435 513709539 748752579 916022439 424175919 595567289 169992067 319519225 325651599 715233755 78688359 440902631 504273967 167348937 760008797 144582101 740200833 89221391 943579031 897074611 146113983 685664063 765019283 743412471 347344615 775994353 423798549 562747807 450625219 603885261 687256363 519838001 109413345 547922295 911645733 761764285 784439963 483262629 178720675 614520535 897959441 690436879 235488903 121980063 308806957 688600187 89662975 579463355 886354331 317671085 317755007 691813207 841550037 317864573 427960513 468782637 267552541 218015939 82183373 445252985 591471227 182001507 683329771 295945473 534191549 965148739 623475891 64310547 293620093 326761049 867538431 816714631 399600923 332234909 142643189 491816121 855449535 344311573 719070207 692019857 953965913 972391879 495485139 972175229 488847265 55583685 647039851 740486005 306288409 657414189 669485583 307621619 695022087 994005793 233362761 177831423 158958461 863653575 462575341 198560553 689495121 314099797 11694359 560480901 500003367 582200581 760734509 77090995 62316133 786331415 122223323 460685273 80635195 2443479 357925139 872921253 411385505 975364503 393902355 161814347 861925719 119107761 510467935 557058189 305935847 358630023 160626883 649923759 688514977 531025285 506229587 584922751 902850459 643801883 894753133 320155221 439459769 300629187 519598771 216826639 248398239 865584385 961453331 505364753 11419073 608841311 693430719 199326539 436193877 644807791 709854263 945701427 730196059 756786381 322698043 275022025 321338013 800372247 26713049 831426447 542821033 182722297 131354727 911459223 937445337 827816743 82845055 78189941 692523599 525863515 656081669 639616585 850097647 557332309 720220967 55215289 794962795 716136161 195911513 823788531 376522045 979564241 253548375 942002347 557320355 982961919 143621155 434099747 356035239 937099855 400953101 987339039 492255511 252277159 16482983 819435247 768055693 528043261 405011405 237335143 383482473 419069515 181781669 848936165 426082771 718616209 386235289 131559251 529607355 694391003 185674335 481336603 541524953 40425275 492830963 775352117 732093615 564993485 213681817 330010911 245421701 319451055 891845341 733964769 99718505 588997133 724294291 538541831 982445363 990937885 406879959 678663079 689430663 119521043 240120847 57098081 910416843 872811831 865212135 689508699 578039855 759345359 117258577 349121347 291136683 40058415 51469707 933935183 597656833 595470257 813905691 735215677 48829111 307274935 17573833 151915091 505634335 869910701 359813803 141291615 796900687 84107779 250557215 164267961 369334571 249184053 155428295 505172543 302864983 168029123 592577425 259146069 247123527 918563129 859200689 751546091 944657457 563101225 581313441 596694649 575015959 857596719 907661865 241429497 130317245 612559337 738764881 492061429 950506937 435604485 846544753 37536121 608710751 378093107 879980835 245547291 693775059 191004461 898464843 374967291 38626809 540719801 130107417 467087807 419526021 387547293 19875069 69368469 834296555 720865197 359417267 60751923 824930417 227616451 960519747 245412055 575101977 154782659 214527223 557012551 778955961 654855317 462036323 959501523 714341093 153721387 448368995 106093135 363877375 221703551 155707421 448485145 810310959 55790743 764694267 279650075 82919013 657630073 221233333 585537215 235734875 361153849 790188099 289330685 78858383 267380979 820894697 270393685 489378889 711408325 969444921 548658891 983360413 927398621 776253697 615086829 177350493 356472939 615240287 748371409 922534191 639435435 687307195 560749593 156700793 407974365 246578875 931465189 845002091 762344525 334266969 852560873 382503935 132588367 493028301 420516953 823615217 167619129 287733149 410131443 95289551 264642415 818323607 437599485 997899493 299844957 345926859 316173895 309455947 72027507 994951321 677832229 113527013 98427181 573230501 187847031 203388505 392722189 537859545 198773409 409362709 103955355 469210729 10787477 213666647 286485611 902122709 114225605 572510233 782471961 334946269 602133811 52720679 484109379 762935953 992680801 520594193 549788823 682159427 637950819 28967981 100690373 980386447 650285001 502744479 595931017 421473883 972054967 245515595 559092901 519711441 732079567 571980773 362217441 204092775 153647937 298705379 200338193 27131865 160376513 568524421 200086031 257866539 162094993 823630549 300793279 356959401 839774327 388688547 439861513 726631655 769711293 699468677 572756959 23676609 444612415 765001181 964758077 188189277 108039509 675188691 778287397 352805415 155600875 598559833 447436191 273326545 127416427 228476963 388800447 781844313 795734991 153975989 738871713 884743683 745582995 433152343 549381731 821754715 880292539 591723543 642171699 217224247 23547611 780820687 32420417 29622705 700523779 317306399 923495369 189728813 549183703 993599087 557886733 163439193 490301817 637122289 932883285 277741607 575879321 486761113 988004599 442371031 374465389 168186667 497008201 427614953 184085427 164420141 475042481 883746603 301764785 785054705 911905173 236523955 984192567 586504847 414999917 697904603 482161049 507154151 847437487 377137225 72323255 391637921 51465949 313577959 444374263 918484013 585741189 702787819 899763781 520640963 54869813 790790607 271893531 272845413 839220363 732077659 435534451 450452441 954538789 16731801 224424151 272799921 254899377 615723997 99940179 803849027 709619681 693220803 904969599 482013363 378612077 428649777 394583929 880394727 309567255 817625425 755819237 849162381 68879021 496898713 81486323 315577889 155085053 279882693 926849113 351800035 558193891 655716569 869581909 497562841 871338563 42150945 893777839 132379859 216960261 402676531 109998257 682519405 776769053 119164903 578449207 808771587 287089795 159752037 660233115 660002753 531560505 121945881 204529091 968716947 723968845 562138549 555977761 282910261 958891725 515423289 715302055 276612389 67003863 371216101 870436311 788266413 578089097 451849799 136161717 867853531 423225617 867778101 407338191 275464073 879314081 159920841 515673405 517069145 810762353 779596647 33859997 792757679 107508419 371892157 840390163 976380093 422117349 861010111 612428623 856016509 510266661 515547047 800785287 64990637 452963297 184979197 621694329 254573781 482608761 15263625 410605421 444080455 768953175 420364131 515136559 376119835 632612333 681556197 403083797 614188849 537740727 511058357 120949759 31117361 378621239 912042429 750992979 755562379 607304439 156611635 148509693 58126713 3811975 900468883 771809655 417386231 801719173 906516897 296987069 719407315 608890511 182631529 95680853 178052249 776002131 645607743 248667469 517996449 915463811 125001919 291863613 387825167 974204119 724521167 567088963 860834761 718285843 661682075 986348803 711132543 905655551 251999381 360440493 427210665 871056241 679403387 309404919 684393863 479171905 370593617 506161441 943365669 673612111 805772643 130063853 526908237 256064137 950666823 254121645 185494173 917867233 366780629 178381367 386153585 378596431 30376245 951869927 8383221 543804887 97408467 246146723 796048149 299660417 87957603 995878877 364756365 860730467 884728543 264726153 775137245 304940949 306173071 616706597 601847627 87331127 598540027 291582903 496011751 6682233 879980795 99083469 341932427 32657287 223896489 702476927 136690393 428003999 521262953 537839211 3495989 238644995 265861865 867734965 266500817 450009597 821805597 577571853 211288487 993401821 186835777 647169195 93655669 275363073 445485527 599724873 395081413 301242569 476770223 545207089 527269093 623337631 304037851 781223983 97747183 785769207 891560375 600488345 975731651 253309513 124889065 921268047 89744393 401284633 256848731 509478071 438299443 705894383 808563269 833101759 702713461 141305953 437915421 142168541 546705875 517924871 737649069 90148621 363898643 777360515 390525951 112986843 730349257 874894207 883527529 148390223 343073607 365125037 529420163 573131267 79636915 955826635 908649269 904617749 313747187 309195157 639075755 91423785 52150967 318389467 636343639 708541809 518280823 174013037 887904505 829065375 330405493 361061669 164275857 842846707 328488631 664888035 403723373 293597493 836392975 998940567 947458593 949031089 431893781 360753197 310308747 168792127 613955367 911814053 627377615 476035131 56696689 77310461 529232983 517824141 761570785 591458111 459456983 220318115 7175727 697928321 486912847 268639089 438478555 771845339 904891647 874181753 838408751 663719535 846061943 69762241 902562619 815137639 738278537 880497875 107193045 396454135 736226897 450450121 103359649 968535639 22828083 362130753 304675331 742068683 149470175 997741663 587654447 23919517 192584261 687898325 263150107 480356125 711306401 882325205 998782343 685218217 131453819 598429473 227148797 927106977 602646941 819341819 765307595 249518959 619603739 679521333 514720011 407402119 34779217 268834853 20963485 830114913 699264741 45750951 127729451 440970113 38072515 677192227 795965217 112766065 704063261 845975943 775799995 71508675 177670001 617631049 862893303 960200209 153569923 726201959 512165021 475932925 5597023 892631399 623171903 159515185 701278299 753534297 337250869 172394849 137394191 829932241 349287839 403338309 932423779 441385711 704039269 844306849 654251395 409867863 501048887 962435647 12187363 295304763 751343247 19462129 848830013 57993549 709425067 960407185 924692631 53179087 402130067 643996929 913671487 542483333 201736473 307483691 196847301 876146365 557952213 621581315 326157321 109734735 158415399 161534081 37396783 561002135 735727925 166014633 379712161 451657085 205558515 228834181 595096085 926419823 544863767 737424679 175374213 398844259 175347235 719366057 885726777 790572759 406962269 387734573 615928251 863467729 135469271 566559709 318863071 231544545 716387687 919482093 149653697 178613275 938885809 84210069 384926151 609793567 572447513 156098329 144533147 767075347 742532051 970854595 719628595 751298467 823195605 662340325 663538123 178415113 620653281 851532761 261229031 879640831 662193787 365740289 259039059 180262351 223933177 923424713 997334819 421504581 591427695 751628959 501842099 97548217 57220545 317406211 330871465 383540231 860396947 860199283 107271665 206153369 655736151 352152699 799415997 126123865 693781063 211647917 806729613 591566271 128011873 37294499 264878625 233547721 479191407 167145983 439410823 487256829 842874879 193639019 763871765 635433835 616036971 207515035 317977187 743832231 100868565 244112457 31547483 352307921 765324065 562931765 671594789 831955855 771042305 360998699 425486645 22250253 50436589 740927485 693466443 480914181 657299239 5403013 974448487 823807409 274078647 918700965 435568601 907470555 759353963 395311687 739492913 950843601 751216605 78397535 102712911 164681063 312642925 466083047 154157399 549214459 548353603 886987743 716268723 315615605 427027535 146289491 653830425 878952259 520216393 282513493 788270469 183354459 586096051 656113151 285104187 20672827 133019603 46732915 576105925 942011883 753714363 895586779 180120059 252107511 650394433 28570987 94216953 645183093 785923337 23110237 372443681 742732037 571730809 116412657 51981087 704043725 58400961 366498675 854009577 817150585 581107417 670959925 398899899 647719491 314336385 133994385 138088217 599125735 642612291 263279849 842969297 138103979 386511727 961169833 624055795 141069405 484278043 485229889 375296223 990494805 399536427 985861419 645080375 766532463 955102531 205331949 160811751 905341973 773405143 771835405 40137511 838961969 77739293 532938015 8901487 352716603 603847189 261718717 102230149 459205425 706456969 666701193 550945143 239127963 967285511 916864559 687873685 416497541 812671465 28775007 938095231 554626437 751748689 792644563 433813273 712877755 508958243 173529423 143573645 697872333 908003857 486029727 247046737 71550953 147159701 31874705 585174559 795487171 553898733 582746113 992495359 593722013 474078243 347870417 478501433 113858363 103340549 537318381 12938853 852137709 522919981 680691013 51293279 82445957 47832315 14314707 499484231 728883047 122438295 181451165 79344271 163217013 84764145 721046185 242094311 209813793 849023425 68732939 908397899 57606237 450225545 954780637 232462083 367506345 657937041 212388161 959465369 14072845 698645223 962425187 751536097 970515733 749041251 997379187 557124345 137366999 31045545 671725739 71969603 444003315 886919967 927909201 541652845 706411151 506721781 304128427 810951529 406517081 277262115 806729741 362074485 806486407 60264043 322208465 460819733 114221781 22161235 676265819 582711317 686669453 711721005 467217 243143051 107539069 771893519 816302185 960176337 825861113 70268637 859044317 266265227 514124513 413297723 626556653 29427111 688972953 175044253 3535655 780058711 196462353 652791097 331270937 831804699 817962943 213700625 150773087 846531507 676823715 950842089 347433371 913824303 208273217 995759703 455708537 101656031 925976999 507153071 619176873 850940515 742777707 933090581 321523943 120757407 37887149 335508589 931148531 582596541 669056787 802956907 579244441 821821491 528217291 774716547 784804779 45989053 870131083 435472123 419046405 733609309 614506897 404069845 461100677 154736739 358562979 763939303 308907289 452359009 663831311 674842565 999721137 296222261 735907501 123842257 238487113 384209407 214369243 938461747 932217825 63296049 874815103 505848795 414196613 677135739 555725573 460730243 586565193 144601819 644983141 358495145 912398659 576337045 191506975 719438997 462736535 586993973 937246005 602497883 153363057 554857103 753608505 948658381 895179265 454610113 443362369 433399441 332907139 464541485 866089193 69504013 702396983 381604737 303846233 122251633 466472299 570719407 880920639 221600439 179335533 718282231 781914065 814933659 875819417 84489177 965761741 325837227 182220371 648368931 432971129 786306355 530310145 675169259 742852773 326456395 724456475 963873931 746602149 749658839 702592023 656008871 948720217 59810429 475975799 175651885 286934565 234445229 253363655 703884881 116377339 810020511 807225755 918840973 961353037 209764435 457630601 109465001 148614171 985142163 387582517 779280557 753381357 768285167 892522059 755976177 583805903 977080509 50797947 867970577 877548121 807411233 499499905 186510573 162696871 443930111 960126751 117808821 967437665 431309579 228676381 759361757 346958773 695029691 901459791 938542881 485826137 643057999 811536785 557185669 300152971 56781009 638581441 907348565 643629843 617606673 576953805 788269349 182151483 42002085 938956453 863736787 292838365 176561391 813375301 106117249 553307735 799836439 415934127 316396955 355544975 967066639 830068203 354905303 920538865 681389707 271230735 809076787 264171895 320933391 261940273 575839983 420442779 400777187 40514165 83816601 855736679 9555477 352255751 854275077 947884391 922339967 398838297 128478801 349787571 705602497 247397859 793534431 562493415 490448451 281156007 379632989 976370987 404959031 605065907 126890687 175109421 133608337 998082389 132122687 713178403 759179541 103492585 79804259 537298125 298521929 948937683 330857977 827427181 812586625 721028219 656997139 134059733 640308431 200938067 477174285 110114393 807196953 624962007 574382987 759719385 593171973 538689161 307855483 935377081 825875203 679632369 844384017 553977067 754096971 495096995 627924425 823139297 335802591 778459963 363403879 84062109 487488389 250149209 933323509 950904739 698246607 45219493 952117963 468115457 87073299 940045271 478385029 588998223 930889589 414695333 999591427 643376809 251556571 872026065 519193463 186525369 271958003 573534249 463497809 224416425 800281657 473579387 4787535 645525553 353054701 936597157 709536885 638010767 15725845 50844549 39900687 323104393 528161409 449478153 679526321 488495983 31374029 963383587 852818233 335522837 671831893 265168843 692634569 889287387 704252741 722183171 250387151 46929831 584328329 66923993 981139709 905431271 500896989 441548891 760710993 712254607 278444735 899948711 182066703 590705441 540796025 425016029 953623493 173246625 445438233 866985255 125858371 238352285 891037049 201995959 738982313 282830893 232332091 123516617 265174875 146078957 128074691 851098015 680985345 784697351 148305219 779486081 638223765 73329701 21812661 880418757 228854353 972591487 49901015 795025345 162143159 353702099 826654257 613979611 752345239 643217001 839537685 22372475 703199491 161974029 199864987 769271573 592191831 478310677 638145955 186236705 959443767 981191521 654019797 963503905 577300115 856068183 522021537 604978083 684815515 520125155 655143745 313221685 612378315 430563711 885628337 636778613 331627499 819795751 133851327 484949763 190271237 996086881 519015927 208194185 104712813 265794619 468640945 701952697 498425025 605025613 792086801 500178767 50150883 125482165 273596157 216987405 454880767 549609239 77090085 339465917 662909067 879686051 891756545 910668335 968421699 444613391 217481937 311034177 572164397 367772313 635074209 958250195 478099857 94881545 115701051 625458639 841094405 837966763 92209213 59105319 144744039 331074389 421843459 763601879 867691993 62505319 313109177 822774753 211305417 825339591 491651915 537093455 630726633 967103715 733895797 650638385 791938105 112840369 102809527 99545253 885342201 335703469 775221847 410423755 324373177 451432675 467430501 682869965 606197065 938979803 172202939 614924253 914119369 178708399 770839291 556260665 210334109 160413181 370115209 729633309 51546223 910722025 850196887 758378457 507873077 822474019 46088479 124309181 473890345 543415521 59296479 478656801 373105363 764488931 237716577 806207595 626127101 718084203 283437043 597681667 945152955 629829451 692597679 494298717 554238569 738124505 216437877 109449713 407474605 691502321 388805869 41776195 338906737 145813755 4057225 405781213 936884459 132493029 256748157 904754767 429832599 979501603 602450125 698585911 717723193 270940855 573940033 584898357 18836189 682317861 546399847 521981939 939684567 262564989 450892951 347098149 951756229 124391763 982777589 87747715 692662409 454632647 234597991 202320081 970503759 11298941 75268253 392341719 659395983 252263077 670802191 102677355 680734465 430642935 732756991 681502053 781375659 451788717 679913331 112901799 648404187 589752977 706274877 685280027 44933409 19108335 536164597 235022261 513666909 760090525 676749561 620271469 144227505 65908733 380540789 603996743 727761035 334615791 713395287 95627341 987826079 288238311 89068375 336104079 661875943 317092825 195656437 716524587 47845547 436189251 855112059 805432129 271879539 170672683 383957497 601244667 615102743 873076257 681474885 734471565 49121713 552953913 851976451 428333359 701576359 498871059 262872727 930504485 193623971 357152979 71837237 747972025 612698011 910922795 364903379 546440765 832022987 420890445 793966641 634075657 790950583 90548473 300234713 855334275 316881705 461692791 56518681 489575701 711047481 586866579 48323595 973140525 651244867 930678693 574916497 919960139 163060969 524920457 425695823 557224429 561320471 818634407 803443895 161465757 472338949 974410989 88969475 836501233 384681003 260828113 240805425 36585345 536436559 590345297 465228041 61322223 925077117 811199731 407154461 23588069 715407881 813298375 839380423 103789591 470496401 135171169 317567265 827031869 693680119 317661409 316723993 333650715 221963369 787206891 426683999 5489275 830448985 493004721 618325863 838219055 265210503 321926117 922132853 203484433 390077683 485135561 497079183 416096003 658779627 142098207 253556103 390219759 400521733 874552379 246854901 781029833 815521819 918707949 715489337 98843273 183924817 589053081 504259961 783149363 954137877 593194529 172406697 561829585 686645787 8581877 31442815 289467253 942683487 852515851 488462461 503904057 570984995 471333089 37957609 886378303 196738551 139243645 526070741 888759985 633936301 271751279 200796185 33997251 76257889 851119563 439421779 150265519 474830969 695083569 809819119 375906997 250294431 136416453 488940313 884722977 705177801 197199161 896083405 72157763 237741363 713775295 527025611 419160185 137721697 665434393 993581719 740709155 951248159 527252875 857421447 932730285 364980097 824876515 149644207 583469191 693114853 960836985 172338931 254863915 598445805 631215657 206306551 597909533 177611143 113402203 99736365 176031207 32521701 496783101 255331023 50270747 703699589 113547397 175458267 677055315 842186027 177616881 890282011 69160241 650343909 422742729 960657437 415403873 650849283 632465177 8599613 965823121 603739429 3798647 543443351 823185793 443959341 550251779 731607829 465250287 973746761 63499873 786866279 131178919 237258733 724895939 654906117 335137659 83504083 510102493 473390897 893536325 286880259 755865067 913615091 500106727 58578629 650417335 126721305 682447949 903501745 771335309 39590973 558466661 610212001 577827141 793685951 715425071 405223611 626999613 416004807 342711465 526876521 344807001 160342341 837987039 90282849 814880521 868871409 6866147 823390621 564102467 433515085 87822799 228022885 337593221 696580511 13402565 267532355 683115991 915710457 199054577 535804171 36362437 769518643 304006787 916187865 977570917 108661227 839397301 219840787 512872279 954407053 906414283 352271717 363160513 301796423 502549519 790338241 2472527 307775249 77124307 747099749 560882491 516690347 472920689 642439381 775999297 567342751 442019149 136415965 472519847 582141757 672326093 399458449 809798203 130544283 876385127 412753999 989193813 47018653 604796821 674809273 74911697 216789735 154320087 854189757 254606617 812198893 345941433 407351949 666499351 414744549 291018701 711128745 134344259 391474127 1764013 121052625 190730139 77125749 158691067 493977363 334972839 486927717 126346083 557678277 402144625 228591611 325481365 296910721 568460181 980924499 660989771 576391979 239365933 498309207 168810315 648367089 356637409 185289911 341258843 736182599 341648349 181194733 51601999 359399657 838980827 969037111 357798657 85516761 543605015 757416351 658895187 968082279 264556375 792888563 565410353 546258981 959749353 702669005 331852171 608712943 461580453 555486605 228641627 716084715 898531305 649801563 625856679 136333187 510721433 798946087 491153525 341050733 248516389 75617705 928290009 6582181 323886469 123529315 300166637 142543727 559014451 530367133 382176467 97242199 207887415 966219365 591718071 576520497 826768161 564785557 351778249 966356249 656112647 149417163 260513349 718742133 236697733 477641331 399707499 609757681 222003651 654375355 884560007 329721727 889400175 958194075 395474923 104438623 514029757 885776341 813958129 689514257 961880943 403622383 750381565 250573411 296740041 972445755 955010933 393224297 792297627 718054607 773474513 525433985 800850489 834013839 511879301 480989005 965715841 826038303 428783641 580743099 383951837 788712179 321918227 436212735 916995895 740220993 969153543 104945811 395286279 963575307 867586447 179313471 725895501 80791063 736812877 290095627 775155595 157830389 651745005 70463567 274593747 646866689 519516959 325046181 234609083 412594007 380748959 57622771 561451359 845228769 263125293 677951331 614913127 796066641 615034519 336708459 359288065 96879643 832836011 205038021 323128547 698282373 131886405 346002553 401856585 318509969 294326599 769088977 519500031 424240405 34538397 949145953 214491469 366146725 155738423 235006213 230143757 22750115 940008209 601355747 529478301 984281399 830871851 988059493 566669793 707424593 710973331 480983619 969729867 29021611 78728023 691209589 790821069 881582275 606709139 208444737 567751399 123838689 424930411 426573875 756466081 532669721 112300549 71907359 940823431 569794111 781091225 742141219 960177 163733491 175656027 467363489 30510523 459358625 702172819 231171653 418889421 864522615 741521031 147996423 491295893 854334319 21215627 355532831 948105545 913033285 719959803 888924179 314101159 403896455 516615989 23804337 483714549 317270401 468647591 841309449 936422659 130710603 28089025 29166203 394462501 766014665 680295679 283807147 268724537 986200225 618558945 721448067 766452137 566539331 517979125 639174711 856919391 489842151 538350793 357892679 786373845 217934477 965355513 213619059 65831173 152093951 425894441 919200971 107423353 686376141 162242047 83851937 599874621 398983503 983682867 269578641 118683881 604631715 220983675 428170625 303085465 338762931 786979225 152652443 526978805 75637809 260053593 544004693 483671083 192674707 815602575 492261483 770057713 504286745 91841297 772579809 106780037 606364365 401550789 54587395 542354349 300825983 164614801 978417509 724084153 252684229 57148269 395883235 607503997 255158785 582464079 575013027 258813273 110942811 867439161 179729169 704641331 505903557 120774199 101135839 972752759 392451315 76319837 70021899 420704029 620851563 319232193 780524505 413620133 88594543 828529289 722042837 460425235 392106003 331920093 232101333 227014133 126691377 32628719 636733171 935842915 785452389 104891387 164506003 758769401 577713689 928387649 293841507 840311007 904202109 664099343 193722197 503092163 803838089 646944179 635471017 508173019 912640767 129614219 365775327 108064229 131842661 942579957 247639751 660136489 581378319 51865439 537100401 909537649 709776143 925859641 494262845 854471961 124697931 728022271 8313039 943003387 523126889 952874547 553691921 506008701 671812057 212978781 64240441 893200273 316171987 177103891 289334721 715166633 800577369 991580651 22226545 910846663 916616497 552168331 898114387 105148015 658458861 314882715 85193147 557965487 276811493 448902605 218851653 176763167 255599671 857663453 239607511 921227739 343696335 325745293 881788827 811405451 956819289 844590501 546939911 674191709 527246417 163981307 714921175 909767175 926990071 463169637 477052431 486363337 392065873 544014025 99074043 444336485 108272687 783173903 777594929 670884909 277403693 155192361 780431497 912028917 49844903 781652243 298891307 352173085 855310025 679335887 563445379 371602827 841653887 837819493 922478659 789778347 13761925 603560427 301565035 336635511 125138521 374367607 744660283 773135979 381761349 995752239 535712577 609293197 62788439 798617403 917181523 831047275 212846955 463192269 930172555 212967197 352727325 224767777 61756749 336254527 579496919 60093049 913947719 493059065 559515081 320806687 461910125 741592315 733444333 124242531 398851833 422244727 543619585 240696227 41712755 50941485 960958349 810477885 133908899 296104803 797347555 44760991 969115297 933537769 698085147 404313659 423075271 658744341 729120277 453174921 518306491 435118275 606690681 33704205 249996647 309188185 669857719 467143247 99324673 78297033 956845321 397621733 331608325 176073607 986794091 467691365 562682935 300514959 237901483 229196661 191068579 319717227 390025045 593892029 213904797 407032617 589950915 693885681 860623041 103024221 176311315 763945417 838537973 63864357 332613169 62600199 743657573 209420075 714121419 2714233 209045123 820195481 50287193 693329135 845159181 873210663 9954331 820842305 715451143 291767315 558131997 247223381 447600573 509681701 639187241 137876755 436615621 651076777 466105309 370620783 449969143 346915445 532212629 645854049 542281853 260196073 246222973 972948971 344713149 781992683 772930945 122607643 35134321 149298665 284146525 498916353 648761745 799335639 708092817 52186549 346089317 761493815 605479267 634339933 307249781 402281485 154893539 696580385 899617177 869251305 114253293 967887925 610367979 324763359 825444637 409605073 364516303 437619085 689312477 807613753 596336627 666015261 201391197 269092789 439351883 435031609 319325335 815264667 470998291 400628505 960812873 921019715 72986573 341923453 46559741 382206989 606074953 4610471 563002625 408514921 334292377 954793065 161713775 421650883 531404569 660492825 585017639 558623641 694665583 184716947 229253073 596532845 914170247 430995775 45582303 966301641 761815443 220775433 364109957 616800319 973224977 169456235 54165959 518878823 814132419 870982241 423547757 154788327 587521977 831375217 369390597 167843943 91528263 114654123 705340393 262829723 637833221 183012515 91886647 850435899 154478555 67439223 28727771 639944203 274581749 321337553 108354179 619295445 77551557 22389723 440721831 955871337 255968011 944024909 83455881 720518565 570471623 86746471 57222191 595944553 727754055 955522029 263473259 7977631 263318561 724995373 808536789 495113019 588885805 119806717 795312331 295671605 563997077 97877437 464622969 326966929 654298305 585096019 616218829 490338649 548562789 976104493 932040831 692322975 580452993 815154753 503660815 179282299 461781589 341746189 158770375 818134035 91551601 974510999 499168951 675312783 394837415 95063919 853666743 66604579 72722707 283614633 757222757 591233031 540522777 438024419 730969899 218755711 775015273 666817351 153477435 194579413 889486579 831974783 518543755 840121179 217901811 875161541 544287963 938633835 462712817 364583123 815062453 961291111 50075831 592750835 364114279 374691513 925729113 312410865 428046603 988995029 697287219 807755045 747999875 328405555 937915627 137910379 547327347 279273047 946183021 300961067 752115789 218943691 58312427 415878227 464705355 695830303 177974499 93618265 259351915 26851569 665849881 975472187 308675957 703502561 162551193 438129791 206913789 733005723 350523833 257165877 585977175 678428365 653089041 781147633 139183267 64162871 118961035 159936723 741522125 836701335 900881229 428466047 992862853 507306681 15501777 464188709 166959679 914989165 19789519 678146685 202551615 477387665 89167181 477845185 833810059 405920517 616518297 702577339 56098805 883305909 161258307 596998071 585880341 993333135 53287979 553371277 730783819 223766163 379605365 515914393 226504637 663584703 934192011 95240899 116174431 958298655 702140963 580192377 597994727 790331843 130249015 989342897 636916951 456257225 89720335 463383273 837398389 925937745 900408373 71299625 69492947 421493127 608989309 772151805 780542153 407470235 69807619 800839035 254122997 878608327 541897517 592121923 706606275 420609103 921956005 546473849 75090015 322013053 888552033 53698255 705857989 298924963 873709213 400237943 598962869 730739483 918930141 403690803 82711219 851591495 871120109 69880135 841634325 966770577 352953313 950356353 476879087 18525293 30285079 561609017 519720997 798556243 974184241 865115211 250354779 383918281 728505627 43782687 191849219 736976213 745392907 326048419 690432343 700075657 573832063 104544077 349695317 956435203 798511159 16023579 412584135 183958627 379279681 245686933 943519291 960441941 866241523 129353413 943672845 888087945 644562917 60200007 797506393 660948665 57522177 359340341 109436169 721075113 596322671 584723253 306264781 707308579 168610979 669023353 767417885 382398713 439084637 793233587 897919803 456617221 85891229 884201509 432193583 633936937 44243891 235688083 20029383 425545809 661956399 975202379 411154589 260239469 233306355 983761701 326567953 755250551 793682461 571164031 331561291 939092339 602860573 513844029 78625851 97961579 293303719 920099535 319165593 182439281 325557687 552276011 403045607 198638495 937062033 684518863 200870251 52468505 471420097 125602755 589997367 677050373 550030875 23336593 902770467 194993049 582706363 97782357 495294157 147749133 232398855 265136553 285966753 176344231 548871081 314497203 57617869 294760621 738219159 352387109 808402249 109997683 264450061 312033331 636016853 985473363 305067151 937437081 798270203 776410031 107722475 109776545 943564043 709699057 303576369 786228761 890090523 304513421 844371905 289050197 260746767 107810301 970918461 742697523 62386315 764189121 777977489 222018587 157069827 657021797 927696885 29060859 456621229 438681211 964564961 954105163 932000137 968720541 802922781 691762181 892671329 761395311 585421489 179057585 732249027 647882903 585202421 676049247 26045451 347393227 949841537 414569893 110654549 103868613 809320767 72605087 210446987 248633669 164417367 602460659 259581789 929766679 578415167 431938515 569998149 529757709 566977969 168664051 65280897 962774017 869037237 238060945 448737051 146738647 220874387 171423603 563808737 657143413 653415907 271112423 400933229 723513297 189901185 913370309 659643423 877745125 178653069 653102699 321522207 300530609 30257273 357551805 456163421 495381569 530813429 159699755 265983377 73337767 330415103 992454315 516500285 586924541 233003993 241180349 957162665 717909607 208631571 198648419 227430883 759808523 848749183 798343471 34296517 609164575 898455867 334846519 41496557 733211101 190364585 573128471 539169735 158471557 565176439 262490871 118053761 654164837 924302743 391658371 530744851 162625483 125598535 128645109 510583103 309283091 111147275 226480137 549491851 910740639 647724207 878923525 635393097 817910747 781640009 830878393 612409999 62931255 453963315 331394169 919349825 897741615 771868177 361263651 548924931 587186499 294452177 931602209 848036681 418606335 331187109 349759837 605335881 625478901 638256653 31349327 975099909 499391423 539760329 179657205 710131011 235625217 345906153 231716823 97346451 489528417 576313021 809694721 129013585 918566039 832525543 276242443 883977113 191905879 575269189 888674833 879630677 152617833 836506375 196181435 489883191 223313811 210271905 91078455 212731315 266479529 686613199 956116537 915070479 871047813 983729045 352665347 129956173 961150987 259019581 750725977 963725891 191502881 370196319 711085451 142206341 543185343 527094743 396793709 484186741 1256409 175304647 129225567 401824827 509932151 751717531 508567365 792231111 598437279 420724489 958651791 904831443 150291045 413234189 695876661 553320413 886856163 796299755 406159793 167930157 517209661 532345647 850395149 419440343 315214747 766910893 178425301 716791215 478860079 233119619 71882017 278306133 275331637 855442451 751769229 562792757 956992237 150224139 272673345 737714557 600310179 406322525 316738283 968036391 463789483 401559625 440400577 695008751 430009947 171490895 134076545 817413987 379587607 191254589 336883313 88119247 399296331 297410601 810592607 250015307 641002343 438138989 303762853 50472635 802043879 578636973 347565595 660783813 973653325 82469591 655999277 94139097 104047137 919309855 228835269 911842607 538212343 768334335 363387997 657102023 177827945 62127935 64344047 823996011 853015067 391664361 174268165 675172267 845851573 510220623 912908971 24937439 699633897 164667667 488701817 915457829 152455027 180481043 195530379 511217511 335043603 793292417 580625545 27147095 624936855 3687373 753632417 472946027 262946765 960452531 399700361 824821475 465457809 649887035 186475135 843722953 875303623 791003567 857872969 621124845 113369431 923983267 464986679 305528549 759253555 212102133 55895837 173094675 617401687 111890631 920805467 732950431 151304131 424895109 215537877 118697851 510736517 740157159 634192893 586206555 856394155 587066341 384106693 629318853 767865681 377809093 121125039 922792699 691941531 939375379 568560319 825131025 53004465 9242531 422439043 458885601 317989829 689611155 849084691 802078983 343303187 492438853 96089611 812497389 840164061 761452903 407812755 61073347 152929131 609352685 803902041 325486465 120090129 928107281 849604755 244828905 104385323 237461595 186333439 892006785 708432919 499890067 106754787 840041885 90327107 848416209 24265231 592064847 217715745 556289647 547326423 598819709 846670889 1896465 372651547 710872781 716563933 799527845 923657793 815176367 370937547 45750623 943981109 6282331 9499009 72793531 102902129 946284499 620123803 461915261 578245617 337869021 383926205 970328495 16610619 113550347 161814671 9126569 36433757 474225589 656541123 735296775 163213295 746555641 1060373 733495721 51534605 837433539 5282119 984970689 701853279 515418815 380247841 572830143 779440659 438100073 918259833 780977249 145367007 665763841 721150501 263909803 989012481 778892173 427341323 531685865 19590721 795169759 508511763 243336367 286450923 673019789 84700463 463864795 244614101 255817209 921594971 935727759 903920479 456650317 271777177 103022137 912798063 955857525 497197811 464551307 409410673 435026989 808789369 301077379 967542367 371193843 35842119 567107173 843863987 375486993 388499329 122661055 519460983 245851541 720087887 861123169 837303609 266740571 777741029 378198379 965837325 444052223 512613755 218432321 232852369 862907883 464053075 254892429 141423085 576422991 999533755 971779907 651295695 447158821 38260993 330843043 790671213 62988843 349114243 695168301 871694727 854984425 663217313 936261809 244977247 224903089 70230725 979698753 495264967 218707867 614919009 711965753 746351379 475503751 169313265 959844925 843341859 517028893 862020855 837353533 9409117 518788813 819148539 634303337 528998575 783736017 495232915 846449471 381411725 131665701 585741909 203309697 841693689 132033687 565918695 974887487 126668407 481833139 590829809 518131403 829843479 123793619 811168551 421249219 191317357 381681429 618856513 234288649 125180311 969789797 430900483 678986953 246283069 153446001 243857461 796465785 210022799 985135793 829667245 291332311 580798271 204739431 381840193 237767907 412327821 415618969 646264791 466481131 696389441 630845719 413395031 544006787 283573671 529467773 803951797 694572937 303256469 290589991 780795625 212308767 660294763 720046657 371680247 551583667 889519887 824923065 127768295 349450487 234261231 641080901 518142927 178099947 862090495 594716523 250179271 696081103 931236545 237397615 528556271 450625587 437434681 583904609 339784053 810770407 451400183 473215517 586325643 927223051 830522895 306495295 826326633 703287299 28048671 886966577 642337363 456135033 587960399 827202339 135677331 687106403 198039375 577624591 12534393 854364667 709991249 105939379 421912419 506100425 101333525 519552921 590228401 624074647 121713379 294447119 19701965 742524793 511042951 643915055 495263019 510560715 900199767 229671385 581332291 899365683 322219573 729503415 479058585 731079835 943505793 392074037 452995765 786880569 304365871 344859789 356882477 886509193 525296307 342761665 179709849 489797967 921406475 332884889 361061017 984976023 590129341 970528163 850153693 212731317 362563289 96998713 882482449 836468295 534390771 397889913 785706995 588447023 165407785 7979855 357652293 792662427 341205285 233398889 308543697 117443069 777615633 300237375 775377257 274747155 606097317 794790675 692574181 648303329 851775265 13752043 240837675 843208629 563086663 20378777 736853029 38488863 507071081 561673909 823203521 507890943 175549533 983164063 313517821 263882359 487223679 2232189 944148187 940680949 611525047 163673411 56265317 929614637 844046707 919418791 250065069 216828953 202174633 267692329 996148429 55837697 247184855 574474259 979896037 229622125 95156995 193247605 470017829 987306549 129051323 78643751 908718777 621680755 892121881 675344327 564884193 160616333 987925685 185616319 797661659 368205613 983065531 600015937 256944113 842529865 604750549 300822851 337789561 104956445 176513083 297158533 978161867 368921389 799974061 559064977 536605001 698153539 959569519 835608757 78726237 85487993 161853007 472134155 472781179 190020901 402544291 948736373 595760667 95513327 655397965 401933463 820549825 210460865 561948591 261184995 799969271 525316563 166799289 552680851 288744271 926737821 950353631 158483621 751965795 726333157 993169443 741957089 716696021 37565623 552107531 952437467 244988495 381770087 611375009 606787815 885506949 263601555 173319553 664356389 497766191 712611101 711156419 89319553 238786577 731400243 374913043 951963307 406279413 423076935 646976155 889643287 851363245 693255961 222835989 223292169 616640529 468313001 985620155 115402631 650800903 898832197 545845847 262460515 517397881 875767939 283792181 677696821 30160215 930928189 510179885 77113949 462576795 492152983 456938651 96194561 945439305 853181953 731210087 521385749 199358315 579272233 752152063 759512655 163690003 400719121 347203929 76682033 553160795 859664891 43116274 659613953 215637349 920841841 234351573 680660433 516981851 13140811 995649417 691467641 935705969 265528227 418166571 379940503 526631135 66369503 848921171 718370199 100217321 74270889 622424621 136754597 206053337 810933241 684487267 610237885 528142081 427515909 489752111 263816607 195665851 626077783 914042189 497982161 139757929 875415225 234623233 53838755 990297461 103668289 253386015 831568943 574169171 491303495 22405367 657632599 647573629 540934515 135201389 871724991 410571123 508395697 746607843 401535705 211107009 151105587 419309129 97987551 129923321 705861239 557689365 339903183 546657973 407868225 240293957 227026803 966468503 404031647 815228511 871191129 875464521 864617953 723752051 651073501 163575423 970675367 587854357 853983515 880113651 157547475 271233893 510138621 296187237 199778451 706253833 539882803 117270177 275344731 392167983 509468981 343596153 720836325 875717515 453753669 508081093 907324217 543955551 563020139 336433773 4065439 715847791 481351285 684873301 552273071 542431241 399729405 874931827 952959299 190476549 164043363 431380417 456608641 536224191 219395535 204113471 567019219 575052319 944800049 857073145 991475695 916532885 954938433 763030529 978508239 835496723 519505281 995421553 740462779 478547993 761427767 603795051 882116925 763734957 712587893 370260249 501400361 454845023 435735059 816367791 678227099 956020803 340788143 46777447 380880121 807859705 683321013 527107201 235957743 563170215 811895635 645372233 508194415 910011387 189422465 566103057 657281975 823508777 69541375 59959347 357190219 762365939 652510039 378210833 533196023 907506845 959068377 427017751 448697295 454387701 641414043 547308981 806881585 982478931 919561089 454314597 765998783 729474197 230370351 298699949 300676199 484588319 197025817 201770259 425271131 701909729 963621749 804080939 27818267 945837649 816076611 684069007 871084135 852729967 902869069 318718433 633217101 70712765 813106209 848760779 84310307 285094221 985620507 484733953 765765507 28095923 572056151 983671357 756561233 365605391 885799615 998841151 31605947 75582215 662098947 650337235 740054837 481054665 575772317 427670987 309243003 880717579 294082507 421102851 438708111 700691977 670223511 848731225 108701121 156385165 539514575 621501113 30606755 616470245 190698509 908753943 626078225 344336101 53248689 786357869 985100081 518015211 331332835 703329979 833144173 835973089 720809363 754081293 339007611 653237041 884786553 966268023 893245527 2215891 33895447 602882575 212023365 630144837 373549749 228298233 487537617 141968527 568035681 938536289 217723855 18602813 93929973 964829303 608265565 983066725 713272591 457790837 796249309 471625641 817514779 954849185 203045115 982732329 814940999 245823041 965045165 166403993 301418635 174064553 217905 321384749 942932649 927130163 46428423 377838243 908552487 539348801 520344829 330016577 218978903 313797183 80486439 158078677 413910095 612109725 912622051 950098615 354860019 997132247 470909651 870347461 51075561 814755437 98864101 790788707 601320351 999401707 277030221 770461059 218383441 918407139 250153861 820826519 407772159 487215601 201886293 769756319 438894191 427452595 550545349 727544355 414683185 177563607 134026029 69568559 63793569 415655437 502578727 243009625 347203547 177193489 857466777 612759235 59081673 745276323 608138413 552658191 256845085 782665359 977668569 371703147 653834059 427003815 32239575 125598097 198638745 339386823 832818351 750857661 161549065 588395213 355646635 104805813 484721009 549620391 201711967 893478345 725750373 484501573 734347943 453914573 931737927 396707491 182878633 679734303 705399103 667325889 686620111 33730217 104087101 408476075 574754257 364031957 932765179 815304051 584346791 978481565 518144247 879318069 838974615 243447419 436682617 418672655 538404909 413809785 327477397 194781487 909430077 468995107 74721055 513389253 271878629 205303695 453493943 619966477 779409799 206976351 45362889 477825351 194220495 640118197 99202947 816425153 327071157 690813247 259075295 833262537 511479409 480622135 327889305 923959227 94118025 284483929 703636031 652697339 866774731 449082605 467525661 265919983 874349895 440865213 493577803 939863055 216944733 967945763 712069293 497566927 722762161 315659005 292356841 113543863 686582573 393352369 427410799 927364685 916147205 367126571 725695095 335479589 127363513 65467875 16377089 26594011 87786761 246701785 631006679 163035661 106151685 313498513 484791945 70515049 819263999 740623129 515912815 298426015 942760083 931780103 290623911 446752619 459393191 873424765 902235675 489647759 430824549 879197213 637187709 390372563 53505859 193934615 498559811 375652875 52459773 60869409 56114605 186013203 114814615 83485049 232702661 387618761 707009885 31727845 231599195 582014491 141294563 704532661 303203333 107389689 844127493 185683389 204211749 623303775 944202985 544057693 749012707 295068495 695781371 772227705 589459761 900689105 619725293 536404611 376620995 996404985 4782781 973668973 631475231 704192995 255743407 580116409 117439367 630423725 920680527 934727017 633620497 277796997 715583347 96548625 924568465 749698971 21310517 889973185 632816297 330605099 778221305 601821981 710612929 407394679 217864813 304053319 211859977 404949191 43618947 90530031 894478457 354748529 686236539 869805643 883609299 446238923 895955669 490196505 566517407 457670971 654808161 64078751 235648043 749950761 903302447 753815213 15928719 183812871 240177823 421798039 967697327 260895057 186626389 268570429 975340849 252299145 102327867 167833605 375615877 620076343 822121351 221260507 743461347 191339247 668062643 29805881 513318477 515182413 16736391 117392665 650764425 560088559 808162317 834880005 134213929 752343683 768422297 501173771 379449989 42675131 456406727 813101245 975580091 796767311 835857533 456667711 274807735 166865921 428942821 407730739 500064293 618454175 306521463 598343369 415105665 316917495 523322345 118893495 281150731 404358119 136521541 549499707 679214537 528161613 248723413 50217757 682140045 404349207 434297647 315180455 862623469 913441335 455940395 431718581 123400011 420238757 791432945 519176865 372393937 906985827 72812525 312261969 561206379 796049791 755043539 725485879 379101397 600967943 32919197 873493575 921811341 121429785 18937745 630053117 978287325 812925395 357602363 576994659 178912211 654007139 756928113 839711751 507593035 909779707 717841485 372027643 242935521 804255699 475767603 893366499 515209215 73948207 459791569 624326625 274993877 828486743 678888987 914846885 620090717 137586593 260841547 949880677 775038037 499548515 113607145 785337057 706230853 463825411 636224957 407719259 499914879 263603689 437172191 461378469 640230427 178781831 185529513 423481363 285819129 174447449 166836673 396530053 584792257 80990945 417423633 274890337 457822691 277304745 541991375 297679765 495040665 835238209 894865271 410612629 449614817 802859335 377778893 153891171 206284931 219403355 989929181 545439619 134493201 925144359 40808443 931810563 629598179 563641693 220012739 224148603 839314455 867050169 962905883 812253449 766329497 207216125 661002543 300438353 156479511 240521203 810584689 17857155 197738761 391591019 7247007 364070743 953803441 238616899 483925181 393317639 159774229 602770265 475854871 677443675 273454853 901258653 670558019 284290211 316562205 301598715 700737817 38215349 270304441 472514673 643945923 258536941 329340421 447535617 194392999 460055347 440676335 273440181 981683327 802322419 98533677 733531037 922984003 230973223 38782789 969744855 404263995 121324619 46838139 92745603 469049327 721542757 729640415 554638283 887617079 777498371 604548685 845397729 649209389 496447293 630045537 953238785 116956213 668621489 819666309 615675757 75376893 292696707 653852139 401077615 331038841 705385061 888256391 961870681 249867493 313387401 742158365 109319555 163987907 691519919 943685429 982221651 725793507 966189599 534906653 216125489 952525655 832348837 226806767 762189457 958050939 408955031 708664971 637432043 874226421 33468373 718413211 52530371 197300657 971377093 102928011 742496675 294445793 8784469 777255573 923030555 57391875 551761659 456903611 113068745 489051611 794122677 791404485 17494861 31188341 698102281 19477825 735239505 997984549 202918405 247674505 344995209 728075911 972961601 481647803 306721965 689944705 691553243 493235395 30776961 433473599 82043767 241944143 377389773 23778867 456503879 900528343 201949799 877569309 372335613 168470685 180908071 380769533 501117145 651485095 944206319 606268961 294180515 770792647 291025321 257673759 54873511 269145749 251285063 823504591 214666173 373442161 118603463 791023451 199556929 217227137 213719847 619772715 148152859 930661305 834846577 918929139 193998009 596321487 553062587 443647411 985904911 571933507 883535901 88965035 749472671 797772127 790834617 559420779 547518063 632402483 487325625 781689541 216853513 373214871 914372433 391029717 858361479 172138537 46870969 960760319 616134279 813013075 797809461 319101683 430630959 777866055 307623951 863266721 503450667 509650683 545520535 499004229 735675059 449803823 311798059 620290663 255517319 669488493 753286443 327870417 18754025 69871107 646884865 122742679 519219629 818962187 441427233 77270551 388358179 175583335 561821187 449341681 277088813 428506043 283022123 321627671 919756337 830238585 751049507 826105017 772241181 182438363 152950141 189065301 794041191 238403551 904240083 261260719 815276045 155108429 764937927 468639187 143939477 864161465 686700803 892814615 323836175 792979063 225827899 982004755 836761871 204586921 690745895 790067889 953499317 181441077 364982155 53401879 916087463 715587793 990612273 668784319 719607825 228448239 318222059 267326305 462240171 316189907 174356115 563801605 912445621 994609795 956984075 87096307 523511283 645354193 520582461 530696131 653711539 606896981 414908189 270624847 37317069 318770799 819877027 808385467 416899229 717127749 365804243 303779957 923815435 761985483 185742519 956244017 514857349 510345145 623661665 878021865 155453441 631617931 370322411 50278885 777373437 580979341 644570743 571560111 92536191 564946127 356617519 85827099 974063895 648770089 473220167 456982341 632217305 951518009 232109561 238042259 723045477 582082667 464865669 23019695 510090465 881566443 169723959 432606607 982940153 36231605 766327391 584404335 63435495 68555401 941923931 980901843 504513893 176570605 327989643 70052999 618792637 602385201 437493083 648072351 378314427 591767407 67258939 362644857 695963319 905105545 782417061 340255159 361894543 428955939 791885853 463666757 818434983 87677617 954412077 223501659 282468335 277412967 957973863 738334577 106377949 596027977 879713381 534206029 351879279 403959839 119889097 484337659 451786283 694748791 488593469 631117777 492669985 411832749 152382837 702239079 261579749 3286749 312944939 918767527 219909527 254596337 525143839 264700857 619102429 150607257 269329181 212233745 233920483 813649487 149933047 249125743 404505699 622470991 622129287 937208787 249247897 638273191 504222383 438965133 972630091 14039843 59418713 60653615 922438599 428558173 895814777 432572309 194870501 900529333 718290441 1394403 778237953 653179475 946281225 212982151 981271299 854411815 866312581 622045749 644833881 791626729 522568335 355399657 903441401 337394203 843884353 957428455 555882083 792390915 645966781 783017915 142102425 758215091 472125999 189157433 503412781 634380547 513165255 17400957 801975859 381771921 533552575 124440045 437769803 692409289 618972763 759438387 875061915 922005209 28483557 30423111 898331601 428615097 840935855 461095265 805525025 274741545 845451539 319588359 289451085 207943603 898787445 189143813 31867545 715916967 99683387 246595183 239590867 322376987 861821403 427976867 751829587 141535987 355450575 532762435 635974903 519472083 620585879 619955773 411689507 21588527 135217855 502127811 221075143 663747133 855634905 48917587 593193305 882626813 858197119 809546163 186247895 728839481 264499539 657424363 899203529 60514431 916396289 309501267 456031547 128025643 67474745 14588037 934113219 206312025 803049909 134578533 510611073 515635955 124891451 580776481 466569243 744191657 450399889 25618477 637555135 460719605 766035851 166883651 661256737 208435733 96991235 891068011 295875715 185207827 41437403 162610415 361497001 792205245 608242431 655439201 475365603 285212333 719495263 910257827 892081925 300593475 950043893 192047315 788490605 983545255 91990471 538693731 9847555 376894153 928752603 164603651 590869815 976702819 701583685 819001521 591563515 670406385 932786207 838996655 173132239 924306113 733145995 888630413 921087675 373275871 480124085 102749983 349421899 988565797 33166797 641076093 991168149 589837361 341831951 417667599 309370425 529003631 949553595 848182145 998867293 851128077 873311517 522813381 927141807 868055299 555927431 105015577 533104741 319728147 486959955 746777345 774307643 947662787 717838309 84933961 366946685 660722277 937104547 491542279 947929843 90543119 758512643 998977941 599635703 989258661 679972991 191530903 63574375 391542733 114929047 751457275 549030823 98920949 591124184 957135603 325264295 387817817 337443539 109754623 397112543 651286009 673114145 739191775 227840329 277178267 476773989 852658083 592094831 480019663 62048075 677527453 80009821 142303217 311517571 344788841 219794089 784161309 869389769 779461611 856588659 105490493 785723357 584013393 875354209 717662723 320971659 874568975 70435233 242198757 955163559 82928353 547814633 321014051 521170183 599944651 410040439 676177093 892815247 30209559 283603985 729812639 297813803 690660701 451208199 180283205 832696523 418625913 817508397 88475673 852565355 521918349 925455585 998358595 471297803 526144773 714614797 867194291 200604601 910889623 796327451 897176099 86929539 7900991 77985539 621002257 650321029 374262081 95684933 985382853 569183713 788398889 761103589 483242067 552452803 897682123 514740337 439234191 119133787 212676677 462007807 15860249 616696293 878290169 315045935 793783901 874614691 948301461 816788775 905335689 873002973 549953035 126955413 354529687 815578599 281044123 889565615 499348805 341842715 127258309 144763955 610761499 328086493 407568727 977431399 243265643 113723541 684415079 321846299 868550219 702365365 193791055 668333219 339196575 717239737 188894899 123551199 790228749 891926049 381643649 476539955 374465541 322831993 453785581 968728721 530745791 278952533 274485105 726965611 416093499 922555211 65053397 84229571 613349699 190822911 391247139 824444955 626119527 793452829 786125997 950030727 652497151 289899607 164209685 844338839 751181865 606528355 119064889 139078253 793534671 246698761 635326539 583578545 257109923 895779855 488939195 63715211 421139227 584480331 450513477 259810999 751159927 387517331 134359025 941028977 605038273 514546891 845261065 205974913 494896585 780561119 197893665 452834609 228759845 44057025 814655511 954601565 921838903 595734375 939664653 534370909 172993063 846916313 594098031 567227933 283096295 191365917 848362229 319971079 868622381 249192521 935492503 837848597 41115513 994370163 993853083 596669633 688657427 472817345 859862413 723575829 202816527 478137433 9663297 981676445 870161217 583299443 296739029 457941105 2242635 504058949 331265707 644109871 538714517 910409745 167764849 674854395 444577359 163618853 977450779 316602245 698588529 785578703 175998435 359444995 666398909 564570219 661967185 719668531 673447355 622626909 988257581 838970459 876547257 635749901 673341583 802788683 179552207 51074541 353046737 10493271 490110433 651709561 525733527 680722527 145387413 33836339 99953359 305411017 942208603 735486883 675718573 341520769 148143467 110588511 612148141 899076353 190859463 868624893 80321171 490131523 155848757 594947619 880905321 308516049 910759495 124143225 467836551 328680631 503712085 266888113 502343817 91693453 233085053 367496839 951621457 148931953 857083051 375250109 284226571 419534855 351596939 638306331 163553581 479528319 519508123 650895733 603098483 546588047 766336021 17703847 630730465 332132469 655407621 982334097 32519107 888268791 691639611 360122909 426615213 436686437 568943693 664368445 28070013 170754965 956562077 72190189 72371541 924317665 655568213 753206575 805166499 833926965 890940001 75300875 982930457 578657277 31366013 352997015 180827061 963269165 451108135 347543529 18327741 737708615 784169385 538063399 685725113 737436751 498497041 521444217 164607103 960469715 602400059 494790929 243108141 390779371 844857027 677660715 403497255 545234997 542732819 490683145 593141271 518745045 422668635 290802675 393779441 676904315 759701653 99125311 194664693 660416349 837758591 850109763 647864995 240599097 822775201 904957285 10105547 180683863 520738127 679122701 282991999 26997891 310580379 643400111 800629019 183576851 448972139 128504003 560779589 464332519 668075877 253861579 897428455 663025253 405649657 577539669 176170039 81276025 809722465 655858415 435977649 107066269 249882267 820393527 989203223 528563405 561131119 794321101 625030009 345678991 858889583 74700635 797201193 879433713 648718067 341528467 646436037 17041291 390393113 71430449 238285871 158476923 73239501 507071223 259782035 233284453 655468989 931097007 517198439 972266361 720102241 229850409 803788393 319208813 819177979 534220099 711367833 138721921 203229329 282725085 347545157 894386551 929662195 221544161 922531841 243348385 869804733 395996481 60449963 928630227 625581643 946771449 695870053 469761391 797519305 698372107 985430429 78105941 395163173 759843457 339841029 374448377 590601239 557145451 597276573 33796943 334469407 777553127 469266853 308664789 588643975 335618581 215649709 299639185 908053085 932599839 660041861 930579985 214412413 539367737 920590157 132034669 101570435 38696347 205383785 197798467 404252633 786800777 650225795 396363447 778393777 689135947 92200337 90563961 687267071 429670455 572945869 881869249 776176775 503215523 367358655 701918537 186843345 350257909 127730225 434835801 102283307 82154389 175111479 74666433 459273903 919671287 82022189 890196439 460647231 766788755 480937145 658874231 604848255 559620845 890441925 162381321 537026017 199830671 608166279 540448123 631544989 104236041 4803451 541471555 547051701 699730937 505010789 520264541 689587185 468438015 24617041 604367701 407063263 40644037 381212819 823307571 336857561 121044479 271024841 934309009 34599933 245744997 514086869 838049677 386272311 455155131 668564197 34350027 215980085 725061323 732743275 117234555 755081585 227044197 315511077 779112021 87101991 579852391 483582231 258444435 233309795 713254833 808305295 320985599 27105525 30248749 167841053 117305573 243615861 632367055 397073057 455213851 680180803 616114319 863391805 380355843 973728133 833609073 485203295 947305087 671066671 765980287 664192187 406219261 926971383 264664777 944644939 955508599 22098783 617222509 598956375 385324905 892988589 930048139 5491559 645987801 360656625 639267405 466651987 120930135 662572807 599431143 84841269 192788983 103851147 25225873 981006963 430471257 209426663 939720847 802778807 655778977 343889485 170531371 1473271 810426241 961012915 559323319 696310895 774470443 579318489 208232331 678235555 60326495 744858953 22579981 595916639 217871717 744098129 133410215 568884151 699247369 56579597 672627399 205319431 866649507 307381081 347793389 891216117 833912335 135326943 700254615 997997931 102609077 967901455 868364369 793814433 818560131 483006499 517630891 523051279 689229295 517904153 14192963 583810683 373509623 349119673 923216313 74804465 411414817 282138775 314849207 728091333 501684349 874811399 918783217 488269461 296549535 900543787 325623073 906003011 740489383 889538539 391064327 907281405 973639993 984899831 489145197 18420533 291034503 684810951 986446377 151858091 82474563 863407261 985058067 651153503 332250799 363418495 841155853 412872351 17750927 567427390 623515393 573080833 827447857 665056117 619759843 774943327 981938539 619017857 820913325 776914143 101083295 283036809 652732767 768079083 146984623 32049281 228250627 651129911 859591947 374523169 163208367 395636931 652483753 57182181 294542715 840060369 822930695 345244697 92793737 807233259 810503979 398040525 993136645 536802025 509018789 588805337 224341789 249712869 4217481 145675739 363015441 297038149 2628727 523108671 666229535 563338421 825610645 535233585 956484243 833474343 202169231 60147117 899494847 200448729 91826589 320913779 79422717 423728973 994738047 396428041 977274287 491662931 8605817 125306559 622922559 829093119 969490521 605845681 715680289 861493929 294758519 239508923 123335373 994601465 5222575 801230983 959442119 633207771 418642537 199091335 861600153 774629505 651625363 378825455 153087957 29276265 734705059 277567427 746442261 930894167 423202457 372584139 509213179 269356377 203406327 604502165 265643315 108703679 393499087 856795005 804542061 977492009 866773429 526790303 82155107 515914617 107092937 654652645 134491865 810396893 343448497 759148543 251620249 385779913 671564185 271774055 211967861 385608695 625521979 926939481 722776391 352536687 583489233 571027939 264124145 951406201 887768613 711382481 19515487 143617453 505276293 390313917 645328001 12847077 625066179 788780295 871866961 855562823 442683971 967350999 43391955 882137149 466750951 860831517 885708561 323661949 775711775 622621585 543505181 259585539 24628449 872492213 750888209 556461841 223040171 459625679 499230991 688601655 635350917 962377969 313782083 403509063 111368699 413974515 929905885 295261791 876299299 184042867 125789463 793579231 313902237 139694301 822649399 704453753 845223311 53846111 636783235 935578141 641875365 632414193 141084495 271641865 889970457 828712019 840836085 534059457 598646951 892265487 150411991 372517649 409781397 992847989 671359583 578474255 406247857 751224477 735296513 844389395 390030931 215577189 360565559 752959429 2680663 479262583 883028609 523420689 970780967 660027461 963096171 871786539 882464941 78015749 2395271 696536461 320458849 431853751 63799919 42066173 753575745 949526565 903922885 756431241 963860437 994395869 457309237 105209217 636771625 643913787 785325167 376279941 657696723 154091099 595225903 97016695 660632307 441925415 392495413 151810439 116175663 857210191 788990797 991351075 749624757 196593997 566433609 840205837 7489849 250755167 834000643 202151237 107466493 775097743 300907869 254425627 408170437 385042091 836416323 983989025 917275871 487656781 918368421 873660211 214856483 864427477 483984255 137526903 59236847 181443691 314182353 578671959 772206119 328045055 629681063 64909193 793050427 655697739 912507923 360265993 280300067 891042251 954398255 1973531 856087129 395358413 891350303 845048139 581039335 968141405 155897865 982497901 52816729 124877397 839524131 30571423 869162693 258076499 693054119 783135043 404179147 649842115 952597461 115854341 346138257 972967635 219837433 147827163 807367109 306962811 83648869 715169027 955501979 777872765 526822517 413286653 885707221 834195039 767962759 78634903 176958903 598656115 301884169 986389989 306060561 900745681 318998123 709057349 692994871 261194583 986129703 325103707 41233929 159061425 389604547 599644687 845062379 999206475 208099525 285093019 110007245 374335073 860486593 745027191 633723429 155587571 138376273 905046379 225304563 295333063 368199193 541664639 274441913 654497133 419889343 311573515 79820937 294873153 325100793 9000617 761796857 365645407 981141889 36630591 632468005 399990449 940253721 553242103 64831925 244774633 447011977 956774471 15258583 799836285 842413989 688728553 288820801 224167341 520281671 590754533 204072753 775822465 480587859 4788613 938657901 82736589 325519791 203627357 243757123 818468389 799630673 842302537 876463755 377985771 283053619 979685231 122447267 684431175 329326679 372445243 875405679 715819817 135879109 97461087 336312929 642669643 799348113 556540377 493103211 116908331 796660949 661113325 389008399 698486291 307065781 736554023 616735567 660953617 230969943 342004827 847924413 546616319 811959283 980743847 151936111 650819453 193301437 242462829 432958209 104836081 568395773 237729113 269081243 872339343 663246073 466407011 78347243 301468751 797195269 236715715 778474791 376416495 961388157 672074495 633964813 205719031 586803391 299495397 668983267 322732217 227146041 779641733 67758713 423373901 296138075 35092031 607919395 520246417 771175585 389495223 371975361 3456817 641850763 595518935 43852215 844955803 197208231 895044051 168643317 206864135 897300355 357728043 11401971 276071285 567061435 246853793 398065835 930865839 780281331 45852479 6438055 29142597 621184723 854212957 537687539 754885519 4025869 287828885 880107815 847866027 374555485 945251277 735435615 536121733 791010691 926549039 154140483 528712393 318784333 276297777 391028225 972316915 210496649 444854159 383154255 241792833 913531667 573975373 593802091 83800253 532652495 266487479 762791451 174692151 748189093 430239329 539248559 175828549 802204295 605093159 559619323 480201801 359426161 385093423 186966879 899137899 424321635 182834917 194083265 693169309 283500907 953693179 325989261 586241685 188615063 212675183 685355453 323248851 854366467 599804805 917495243 850514591 518281427 660376779 809308865 28540429 6248495 241497873 169894443 190730481 133699401 480290679 943383329 317374445 821571165 460984415 720638783 812615529 279726253 926933623 845906861 284419733 471883649 961067953 555361817 634255465 289556781 262505037 690088889 320035495 287877645 786915787 293354059 909851351 764288383 7185403 328226583 220903239 131579633 10499053 165347817 341371921 857517269 352202497 265121815 314259475 538335649 641673179 110424961 929364473 73651933 430265701 504806283 873836337 3867663 520132053 101113383 558465267 146172877 74167207 985257159 129367361 1861805 585908381 137661293 513406433 542403157 247781575 757937565 283683685 503793773 520649591 706542437 547146277 279211943 882691145 784387165 210510143 425896127 836416547 242173601 495075231 836337015 740960303 38855643 622324467 467686807 789662437 361558581 154215091 671528437 861316861 784953703 833094431 853978471 633079931 731414447 920032833 976932307 503611825 115991251 446638313 436100897 347639853 810824483 864522669 429725251 852692941 688818291 888440815 723270197 726711223 93990179 460741849 397787385 222368599 400950041 579325527 385428119 945197409 109951683 245464101 949384229 737061583 95322133 974864065 259764921 594032103 814124945 138868341 3777657 750162741 263966523 449142863 114813325 422125199 201271201 765915435 237547303 349545999 262744283 166314661 60609155 161290521 646979461 251296807 674013667 881231195 599598537 565729761 561094545 816414153 750388817 861846477 839017181 368326045 913904981 947862185 190132517 989552991 497304467 521732861 347530439 534724567 80728403 255018013 841348145 569193757 576149855 817806621 205571285 684958091 188342803 143289309 452175403 605348039 237417033 856058377 353945271 466000059 962290793 161342991 644688129 899658397 604723551 667903017 715958943 327367145 125255589 242736469 639180583 231143779 248128567 185581659 844128063 900250135 826717083 285523661 646018447 281043033 599978719 371806211 774286283 560359109 274939547 355455515 504453035 306576193 855581163 61657857 625859059 695589881 214743929 301250915 184686443 831403103 571621999 335073209 655587817 552093745 132327813 243277637 803687235 375485555 483235833 318354189 834038879 612599921 139460755 252563681 593300517 516769985 110608543 642564189 559327881 296405563 222684403 639302109 498616195 654898953 179124463 198698893 381925399 347424145 645740409 62328411 778160461 591810445 582184447 692528895 493554491 564139765 209467767 186019577 479507959 479653137 69136221 367331219 256848039 695423849 54963899 803870939 226919027 187611861 942464799 948714157 333844367 876590703 427166109 718021029 750157363 978496155 53012947 805838381 16939427 804986375 463885547 127049079 632732455 571137703 776632463 622823543 952134421 859543223 796040695 455476977 611967941 957566907 551133923 886716525 75455641 686645117 535027861 335123769 342419195 962761493 181830879 18856305 185594205 468435423 115764503 924266993 420220989 632401531 118857497 857926499 713320215 157916635 505065549 463315255 120734075 710921775 704746145 117209765 988976633 607412725 708717449 63152047 81237801 461876465 352124167 627465245 997986481 734037807 937868447 683332733 103526969 647041539 771057249 815523113 460148341 285991177 622933473 937092927 426002461 355222823 538874175 7971755 896054005 397624201 918817311 66665499 678927047 189558433 228053169 584366601 901480549 309966639 63312557 783103921 292777127 244312371 288064589 971787551 794421619 650753275 525235547 412287267 724342961 605893149 605063715 428971605 588375381 601549427 124287611 216386581 831740503 678314273 414333123 315724681 972060603 578874261 42717921 609091237 301171083 764444289 82129731 875590943 568865497 412595941 80017887 591791481 784966333 315080449 461260595 915410425 726821725 911481701 414511429 14536623 77108451 652531683 783610021 272050551 198349949 218280087 965224807 626214125 727215467 551856871 128692267 150992763 952955371 764116093 663626005 784116563 389055559 238522959 209943253 222623339 295337941 762058647 113694627 143180163 936154605 303657181 713459257 581647141 926561521 218347243 193396961 56131231 2610507 775434197 957308007 703745293 603300463 1347577 100664611 52138571 212576213 193335031 866349553 371453443 635494401 36213953 309049145 763695269 196365693 611394695 551336937 514123883 261268955 777238471 778794103 997702227 73622707 878506309 438681569 492869413 744987307 355477005 525209261 417767541 547046509 372295797 191802347 923320727 593830311 941721877 377243695 883858093 264787993 375854039 754819225 204880799 492809345 393686241 127558605 752398621 199120811 387081645 569179389 221447583 637496167 918502387 60102875 187741799 592821651 57103547 439469225 924908667 690459919 457535309 999789353 382289837 155824839 579502145 523777967 646318485 186187945 95234673 121910027 551184019 170801333 163912193 795674785 217850573 935305705 189452127 3300179 585904951 107999569 71938111 657135249 456974473 235684095 676464797 957070161 57617983 832239371 637703611 395928849 968532901 688634011 761513257 442326231 795381963 428061401 964352953 913744435 636836233 794427381 727730823 463282233 788533373 57124393 433152505 585496713 799064595 403742393 310493881 313779271 305388407 489662703 665297597 346127653 339189157 993527581 541788737 236939861 157794909 326081437 146613961 974150553 394216741 409365457 356743713 821504053 970187341 630954787 37416285 72290807 251857393 566487559 35091419 291145271 680388333 121147127 57138749 225727185 466705899 267379059 484048751 605067565 675555421 809304327 128144297 503000889 321258359 914322501 926785379 246896747 765177661 288385989 171433059 605014209 433445751 888854319 937928885 510124483 970630325 834222119 512711087 853061501 156412237 779636579 617110251 258122629 295802977 190839707 353917261 456695803 911571673 509115539 488284675 599985283 157048421 612670485 860822399 44689743 235535999 161417459 860717185 75138577 258803045 93775367 988636937 830604043 43276063 742960435 161927527 633445377 205386879 53572707 218963757 150426433 768491549 695070343 476802103 888027811 312634201 866585753 216440745 94144133 924489051 82793631 188244721 493368523 487747091 366765727 183758019 500520421 283490617 770600875 144606235 287707081 688337231 252976865 566317885 717251317 707839643 911976035 232963765 797108081 261089327 217325143 72354903 750724039 220354275 881941491 805815871 548297747 313398357 521072241 77649363 663695087 801311729 388341265 486200509 230498947 94476261 653922079 393939957 543498107 607767593 92240621 914869939 778023441 419126653 195185877 881121661 147721983 612525675 14646585 329942303 198367375 406806083 477699717 556622253 679160719 216519197 415746089 602916229 989497939 29562839 599903647 249115209 259493305 28089115 419079019 438937063 249825833 210902107 11267607 897066385 632173715 164624845 302713653 409152197 910772073 593129073 61592159 172270665 195982763 365920017 380379193 659849509 153948641 535700283 548337001 665681329 934449429 844442187 148125605 539849863 313855971 436445277 572402855 258799499 88296293 716189019 336280367 375037675 484772419 223849973 314053129 72993307 495504297 985345701 140006663 430543061 614570065 282558633 586271747 408244257 610421111 723869963 954921441 615708489 908778977 971121049 336164743 293350113 302126813 541849069 456911595 209812933 279432515 719107175 212911623 329515033 846634097 409209135 448659419 656330317 545762123 819552053 577731443 857997841 421006657 796502835 292516065 640967011 905790281 690494629 653491775 400096647 835785443 111353561 522714801 431077895 996025617 728836571 138211165 87366077 990663013 858323845 527978107 851724735 16483061 134044277 239167551 73409141 304064349 157123351 595011567 792159883 170366917 978026649 268981463 620502515 400967641 45149683 514587973 977200875 849563347 625101031 926430613 67179767 840193135 786735867 11475753 316918757 366401523 670813313 713663341 237125829 116053807 222571409 981769425 721324791 301502839 28419849 246803921 485045533 553802409 532301205 633182701 281287717 86533679 541441697 607343793 363399235 40658419 866772329 396144815 974388209 155016045 370622957 913964163 153333493 784244893 802942451 275245003 156144477 804556037 17846283 349013045 560023675 504861879 802534545 286819953 684666347 663453001 492647073 865358649 693126801 473346775 74555685 423807571 696925083 251849993 339274191 188668805 349376381 84484109 29140501 259192227 681613555 884988823 200770103 910922631 691791361 407841257 13822013 649365781 361202417 62280393 876014331 693006389 867962715 541559937 404324101 297678297 387368731 857875691 694171581 824441595 923450195 425225829 447867979 999591841 138768239 268428499 874165409 435608017 332481573 995473063 133468275 145591455 494898289 611970003 629652549 564433191 18731671 651095255 921728095 601865607 906386723 594585531 87073231 912167917 221512171 530493195 602583407 65554825 570600199 174077663 95000287 517683607 792362975 779113427 54141317 279690327 237578783 301598223 537458581 670291477 716143801 819189313 726971143 223935013 204442349 78724255 236700825 42247645 480429883 550630375 566389971 711437729 908796529 570277983 664532743 540813277 990907045 53591255 36546125 388296193 757962289 349436835 663741571 609749385 506826937 610450337 440322901 935602935 705747499 413448507 637954865 406038227 602741691 843674971 652882511 548360881 345252069 582297723 785934255 772041773 997580395 180180373 803648027 425502181 389514077 338677555 914297123 441641095 37902861 62083169 594627615 720448963 813719319 854610359 592690477 963037525 202175583 815507025 1648697 58238461 344887317 931636951 974176751 118422153 220098473 255142007 354930379 274395847 26236121 826566119 910175755 128262291 940267687 175985765 201237177 299396817 612316259 263336631 642671269 114012777 645107871 803055661 357656933 452986701 738136633 18723739 162180955 29560185 558269267 736815201 121179823 455851503 114916441 665441635 484072019 248659383 274436355 485490707 224341245 148409573 780389705 574712675 173080621 551365525 123441777 929565397 738750763 826740965 806576135 245997421 25716747 154100739 240457951 683984569 942249121 964966175 596611607 565863377 764069775 830982773 758200339 729234513 679353149 505226055 700572539 672584033 468701915 133455069 945717833 110248111 718422369 223014285 322475189 712658801 271870609 555238829 642725447 740436837 203867635 725053603 637641927 248774611 796169685 773163477 945722189 836542085 358796881 599868347 634699059 418803927 759176261 781657291 986069277 907126433 796389981 195315335 961322491 344501071 119315463 380179581 38755323 835110093 825057403 87083835 992153503 41360015 898405307 705733983 807512233 731377303 562703757 797130375 797183779 632218217 972978819 758137441 971365477 2216467 20979957 149295519 546779659 455421229 78650369 324873975 494143735 748697555 201141395 105842225 989282389 995424173 223405657 305309461 540135579 712679657 150275275 489887859 728923269 79914301 73583657 8027943 919534103 920690921 505782397 519160597 974016413 25184175 220292759 120692261 974021803 6628321 753499917 592203595 901734687 793900371 223004993 758019967 71395867 763607653 601708125 709486787 118048525 876236029 841526861 767870757 900109479 330853767 276066509 532834227 376321511 939198461 347065435 795665291 714553619 174858971 217288001 368521931 185010867 342322727 376927885 396472737 200072349 684314223 734424859 192634687 450778351 357229003 302788231 830554333 379134221 896355543 117550651 404713661 918239905 162451899 300786791 841088813 388559007 358286631 424948997 393019259 377577543 231655757 972891859 78755077 600086041 824314605 410667609 603817003 396454629 384588877 601109739 854849879 707551421 714019389 210350493 232924155 385313789 940259603 187358799 985257363 901909067 375881643 407862445 714292897 30359953 900911723 224489765 385509295 845079301 274509381 198610929 843695181 118090275 718635949 437932047 891280409 48002477 14108063 581140039 503177137 33594547 168267429 643869227 416448963 866450311 901094349 409506067 371755521 761369799 932983723 575684381 668769827 791738453 637473117 713815605 38842093 479138909 876019085 316520713 768849703 548677719 494164837 23443473 339684007 182665211 309673885 78582415 600131397 392947791 99761011 567967113 952379361 732777119 563760047 895255249 875838313 960562559 656061853 848088061 734093263 710142413 707281427 875756913 833164555 158550955 313071729 546742609 926762529 274073991 876120477 636247697 118545945 436048149 775665413 338413031 175981321 426857039 577274781 49404627 642279177 194817659 789711079 698508959 335462201 701248295 143129575 322980697 918473417 419314979 495159341 112585949 23091173 891670415 182301901 314554823 934949067 856284879 602408293 932226689 586421949 735822221 111402271 27067453 565261061 18584511 597599653 130972143 5211123 905481631 307850799 797345115 84206053 665387701 828601979 210677257 180082235 679289035 873114065 880498759 200905823 107188981 498704893 274569777 906498757 95241359 28331095 247724707 817463781 300888127 753829051 836186695 286870851 928034543 467332241 411508877 151643751 405722837 237777861 803469997 785347047 512804973 567277009 814001833 108682331 933149051 910769841 795005513 881198437 808609291 548705771 448661531 90216623 959591793 883054991 24954489 252086507 492109643 594036017 760949377 970206935 498664059 576135407 260111647 208675375 281109551 46073459 995607553 908018371 929381081 607905767 320973473 746396515 941181239 880926467 558185787 594397417 387709773 574415879 199096797 554649397 445627753 378598581 429690705 852679223 58031899 617751391 478651957 621618907 888214595 209748443 696093671 859574817 843183107 737415813 996757901 36553221 113518537 297296197 968936731 670765207 196539977 302504073 987299399 428500199 821685373 328464967 296791443 462031375 676157613 633612029 270137669 860253745 791869795 167482545 949158509 174159735 27994225 206586867 877681639 175780117 145604599 425358551 185407823 730806851 362661721 169318907 344557071 19314501 258571841 630119817 455922777 386081381 804061093 155184171 511495203 379256051 582447809 155039771 239128109 464768589 307783705 663646227 188444417 936727763 441787001 812000349 383681005 189111535 145128949 27241413 997807629 130757653 593048809 592883875 989209917 986927549 169186043 984171475 165812007 131343979 624907797 276339133 956441147 752391849 992365423 27245391 285202099 682337289 30365825 127283967 217234829 193944613 578142737 232957899 737160593 954538399 459371819 793691193 500521555 169681697 199544355 321455959 369281319 231127135 141949847 304433087 4750383 10892561 233647977 38919817 948792659 204844539 382180295 538728033 788537667 459958247 160181283 752927857 989981303 352317607 497761341 610922867 851225137 370890773 937555221 607516321 41384823 670881555 162198523 372448453 452589083 456176779 766801791 572945195 824183733 637589617 703868033 4901035 508728997 574656701 947673381 214998689 895170835 540548723 160571349 205923829 27693549 725723293 386555461 128967189 572178417 525526349 964050549 298567159 37682329 729951389 621706663 713395993 365425457 141316015 278490981 682335875 261829577 483932077 69195911 989864383 738256441 918375627 206130729 989741033 775500575 871315265 426115243 88951961 515698407 428052051 179239103 410866427 118252733 922784075 187847765 958376123 480235421 465009275 994181035 169827597 596484935 321491517 410014275 861355955 558467393 56595955 111990253 954284017 364995035 476668681 875848125 220485013 378173745 607370221 510687499 277982197 786009631 885008159 979490943 824211699 5077839 667920925 534434053 785360369 405634099 333382259 856860367 401862879 673931775 749258419 719596123 575833907 517842617 57151351 709706093 218896619 836763683 962011745 258830867 521528207 573377747 651106587 366999453 418683689 642042653 27698265 450807723 930576213 10802211 411010773 368273695 281023021 346234573 154403407 87474983 169658199 716745419 440614547 163480119 300898053 817394583 929484915 335593225 289727721 611246959 428944585 732052901 265478981 327831131 427290999 152347731 91394013 999405869 41989223 593025195 547427071 626595453 837799053 266680455 791747203 715807659 958333155 212065037 288162501 379676127 933244777 53589415 795373999 360387849 650409515 751047435 199520683 157559521 576756283 113301557 251644081 920326121 886694067 905172327 644520767 822515815 973365685 579882289 232215899 129082221 94786411 636088677 73359253 139618771 894175497 834031649 238492163 96401719 707433417 307151045 254193985 153911045 626504683 689819395 865173877 880626539 152971707 556826059 466447697 42006113 380348043 626793051 700544777 802949287 287770037 642320695 486948185 557184711 193184155 777472811 554744459 625950225 402115241 182747725 203122029 476254109 219584591 531764981 532066385 982977865 724353543 194455755 827276827 374747327 621152855 333978555 677562669 763734129 306108357 641300217 236426871 334013589 695324645 154924543 908036719 367169579 23241297 803786131 275242517 667543037 598025131 175618755 239116267 24480665 197026975 775099359 806013187 219749979 195398877 245520775 137217523 774940255 297484831 456009119 647126999 338733455 422470953 880788049 23692629 905012891 194174663 425762577 484144543 269046269 157635783 219098015 869126505 856839923 667683589 365764347 717762545 812932231 399659619 717254773 595313149 613603463 556732877 800364191 220040411 490205325 268587315 639357013 453610339 737447673 662072463 124119485 335324915 680705011 163222757 134144833 804443247 54528619 554020673 242326167 585639239 443793691 875858865 384005051 577771633 473520511 306288209 331481073 499199341 396938469 46015555 840623813 920631613 160220505 889865907 845697803 5873523 374420149 354072017 129182177 814486309 523215767 827499479 708481449 437421551 36090987 456612363 321534223 387178745 92013151 712988595 892086795 200289775 739820651 573852451 456736981 586854923 408381521 454030517 139745523 747845897 801826199 327117 417311793 242136623 634843791 675914193 735976869 303669067 613943121 323563319 621741223 948728245 130610875 100833913 302849505 821186379 570314617 97373975 963930169 31795569 605153015 563948701 285513193 742737945 964032113 613792671 685544297 774254261 985572327 191746227 758067329 285608261 690487071 772455805 865900857 930997073 640759977 135364521 757830377 192907493 655870177 146706919 731182379 300094361 335961315 824621811 914644709 972426633 569684377 382035085 324817729 926905437 493216949 44142209 698110645 806609473 991356333 307532705 211118587 872690927 432914625 207042249 199663899 14822051 201709563 945073623 130055263 126139683 792867881 409327289 989999451 913650367 250513893 419082847 376450539 988839243 690815119 750691269 430923061 209466151 102462287 60403435 567529125 927419447 275984407 970399197 874216173 624386283 624242843 549774767 225300747 694066491 995145567 199733111 185423683 487950753 949629099 73316697 632506401 299495463 116716941 157377409 925383545 324906329 472075999 575655199 686317417 529850191 213686337 697492335 696697683 530622629 348545305 738057905 413374181 790801283 857041309 778303795 870471441 332346519 27919295 662124611 489527573 491492373 657296451 263176509 723290999 334453439 300338095 822785669 113320703 547986139 65481045 399416449 131012547 594080563 346442829 56020137 900161057 395365921 768139381 892887665 423667645 259840131 949884281 746495073 320064641 493422783 962601415 44988159 410015137 649469889 398857111 751765473 495665309 274004993 895184873 128266909 160093751 722029183 681985415 380455383 750816121 821007807 502019073 631145531 181629627 229325007 312049327 769140089 610758807 173304391 425810351 344943949 324892403 882115907 831571181 284410489 811119609 196569707 944853269 652188101 106782495 983596781 779967651 438020869 706058273 686227327 489171669 165719061 209270275 591565151 610101941 451082707 464122385 20497747 132826643 198622509 239210207 714760875 236651653 810249747 625902921 409266747 241619053 840934529 276579701 949455203 562533877 199241593 273463247 164782343 730263049 526295555 518086153 139572377 887848805 761799219 951471137 915143947 585302407 951523365 392561499 798693855 857882039 526523639 962682181 608357401 980615177 573403095 545466031 214991175 360559185 272390903 20161209 6224513 168448305 199751823 352456645 757517155 474871569 268266977 813500033 360959765 393963297 11409465 831433439 815270213 608293977 11572715 101403935 918337833 539190395 955918157 789339841 830221951 432420111 716096965 616770453 377794189 949931107 534291131 142069419 511047459 10908305 205565089 888038755 4146069 912809079 781278707 992470113 281695683 925133505 591172147 510854287 582846227 318938333 40541929 453702179 40376177 456887811 141416105 774458265 931863127 67536437 121782799 908567731 173758401 664538937 413029049 759167361 970366259 229206945 224333909 625254229 822394049 915795909 937749909 914257867 180641277 828431555 367012145 380945865 201453317 305200519 748519147 919844987 770699649 646896063 68477585 531026515 61389215 30213347 447242481 756480527 258290453 190540595 473156841 606832563 114596385 35283129 744878167 414972299 677450379 865769029 994809641 262280491 114663583 8931437 663150161 207372911 892965427 93392019 22260423 184135295 608331175 181821409 95783565 354238657 122689761 320848963 572592049 216510959 331176013 197974901 167723841 791381249 822781413 293043701 680695387 169413181 937522723 194332173 191777567 444495919 5488401 346519757 48257463 187114157 282637629 423195915 585470293 241839057 795268281 170775657 505211189 327276799 110735913 208078415 813370265 640008677 793318319 874636013 604884681 699597687 944742395 154415677 507327515 868498159 254594883 900007677 904284389 359982293 670360135 977526197 854865293 261023731 719701833 945761721 363805307 229455963 525146907 666195485 272956707 918810735 941807633 289189569 268059389 563436493 600076555 831769937 206675595 788178021 916664431 214294075 245482587 186344811 216597291 761071033 678315515 956175963 841176499 255289033 577529097 522761209 947126537 326750259 556007973 934544209 259595185 145324425 992511993 918501559 239728827 952470563 114094135 408794311 635865785 482197023 717219483 128827239 306462415 860075369 741927399 69927619 907677087 881797295 151660773 815201869 468462681 867546217 773150565 746509251 827810741 357441497 467627845 39275049 583758573 65213445 265011557 59255499 9854153 929936063 749486255 540041279 368288921 169941405 333110549 123842911 810473779 917312771 705859219 604223055 945666547 215252245 950357547 136893821 833108417 371248839 902892263 109730971 176371209 932667599 118032087 309356455 375610309 458036397 362219033 32492519 396969073 427468715 400302541 118503139 327759123 260689879 59999517 894073715 30548793 762000653 922016315 990475441 497388539 367478249 841426277 917966081 873352439 538464981 655961559 357486355 784221521 404670723 939732705 104377557 446839483 689048423 125101267 267349129 207968871 519581125 799642629 682875825 473571861 206480805 575825885 381525527 345891085 957337941 253589955 400107219 960085787 83823345 590719019 658980161 930306453 390313813 118887309 399300609 74143835 538429227 702814573 368339461 807532243 860105699 768165205 905645437 115763947 370124981 572787157 300162791 810797081 420378531 264381323 492328967 97793115 202305653 291590679 307555561 475887927 953611705 628321059 723106017 886496443 15099337 216694627 419607947 932500095 796581317 420174223 709077455 422530721 873638547 419052395 38841043 726746311 555113959 379965631 888395537 434589469 376847673 103060577 819969857 67812187 995467461 708214057 680700777 110974401 468574361 830311161 984298965 582939153 891192703 894628795 471738907 314336925 235002901 114789475 809890837 648243003 72570297 245951977 315203815 974437959 770368913 785266257 121999871 163879337 94421905 975566757 509192721 857668559 345936239 87814901 454622231 208602287 871467949 835148127 10429015 388767431 482774673 369180931 519985503 390126109 519638315 81686539 862601985 392441663 925303383 116877227 211148121 523393605 457808817 853201179 863539149 79275469 156189859 808105631 341604359 850825213 435273055 115063425 209143549 159583617 823483355 667852819 983426539 419815057 743743191 182381229 921833811 760645613 771786973 45220021 153122309 521249241 915551035 267800725 628462611 984550179 927843085 913076155 117154779 145273889 536155695 501605287 600005375 847476149 607581259 870667479 961749355 433217601 815529937 350698453 9097301 21548723 445914363 129635895 200266041 697705861 656574151 366956949 687374043 637729203 302086141 976670865 955194439 806639557 750836785 780236757 353757139 638041797 173149879 41027861 419110937 312744269 275234737 536906249 905401597 386062971 522608391 993394549 383476395 547902197 726077801 219086883 714095259 221034471 602427727 502305253 470323845 831115275 706337275 333658261 29308785 440891035 595796083 639882005 279068327 876756577 850524297 734582351 761886911 864557737 420937173 565764663 243156627 7749707 825747639 668305093 295398471 584986787 29374807 316132093 334361161 237821081 731359907 101772777 173821517 805091739 424035161 76023707 271743055 915367071 162898163 84031021 560502161 401538339 270634685 510764737 81752995 755435565 583653063 162270849 219422039 829450573 889673961 620646305 768923593 213222807 633210817 464008283 926114143 351455403 649215931 899871727 485354691 152114607 780431363 888728489 591606251 641840207 960621461 89374681 713186067 262055877 474400817 774534365 115536319 775472587 715776861 479953429 93518267 713807787 947762537 953984749 615457307 980094259 182979185 594934229 335522877 437175221 405087057 805484871 965010115 970255637 484437171 344375495 832290457 188189365 628592137 439121887 464302071 324432005 227224199 917204769 106508117 996060155 686022195 723962151 179465849 46824213 712252623 704257427 410903407 866560345 73371889 523773969 366259597 688019159 193689837 28441423 87139949 439335203 543096805 745763853 972950259 702958685 680550081 626071049 19264589 892777515 529267505 463848719 128396013 489331387 438333103 456411121 831117203 335344065 405597561 832167817 649197119 172038527 97646999 443937209 824616257 733282745 596792283 353557101 812255787 316526269 917550813 105505427 474024665 153253987 421886461 121584939 868931183 760152327 856257123 472541747 801483355 715027601 412507135 377051575 753225553 764580207 80395913 735899849 729791053 534771097 3341955 197621379 122424723 251115401 867978803 183516423 73004463 845002567 801855659 148645505 423637621 132182371 557353155 140810785 604625409 726254577 628532761 792522529 941239737 594247569 913375769 548109765 251151687 685961833 308392689 847265367 833750947 804541735 921946777 92378153 3163141 469292031 787470801 686764693 689136883 774607795 162975011 747455999 261220153 935517831 608887775 79745741 329017067 232616265 828029725 865141365 186770535 691048017 83317435 283262577 370217295 665615485 778359907 522814785 226345873 991254065 937727623 182518641 237110879 60422237 244893021 418449043 602527031 266221943 362702309 179779649 770435295 923072639 364936937 502306589 33350751 458441719 980659191 480216531 457766415 68149489 200611435 787685907 592366729 353370113 429861985 452992919 312607153 319303239 531911107 656012069 299391413 902858857 422880577 897429379 144624137 803851669 249645909 700267141 906176615 277405313 715499837 852507653 410484183 383802985 625747459 382004453 191653795 208801303 94240117 298066449 721872991 219849433 786094381 894868345 684988647 285059459 193291659 416965399 559886177 460792691 599729335 485411825 775619127 860383635 397881761 459282701 975715615 747662157 891405059 775114879 943504405 654253465 824746073 101985 735390813 422207989 977787633 940280789 438421379 639124841 758114519 481674247 137191003 780454785 258821605 992452391 827337729 81708371 251710649 415956337 997764315 480918143 904099775 398626853 89047957 142395435 822045733 936467087 922865185 559987205 48180451 847970049 539534013 428363587 845514171 579269589 652207341 207139235 217669683 295504495 125995135 811540075 898584221 84098613 283694211 402676073 563493649 922003871 388257369 56698357 135071341 109617441 741746339 474245101 571388253 845869123 276395599 148750517 139156813 254033547 563997073 303045693 336875897 21011085 687874275 65467901 270512609 703198435 62552075 341425135 737868363 844441391 858812695 93800861 303482695 876869405 788591449 631032083 895789873 683962205 739028589 636987367 587027749 981643947 225729847 962143289 847406605 190782663 567693541 400626095 908210075 212146047 238647787 940328567 978812229 927676321 519282437 907916359 742954827 812010505 129570359 419518813 892821943 144719513 803231179 11969407 875370327 424171325 287022939 49566461 830607557 546536165 311155901 257215403 980409185 907623565 519561497 90964455 341503059 509174837 571974617 424834971 845992333 671112683 400033203 944088881 79215811 905443517 901801891 657210529 477439097 589804999 899495917 555907179 127924471 520134445 959074077 165475987 814552395 339909397 662929161 182530471 351772239 696332469 313377737 118242749 683254179 959994183 806612165 495820663 354118317 945430797 709994409 802058999 718145443 479457871 389231465 311122667 601195639 327390305 917919551 948153741 35428845 712995485 981689777 664360857 125706379 853623655 407964555 49675093 124446115 386880807 961545443 363701649 470795341 786555727 8485395 727542433 712280167 750834523 262028991 450560357 920805789 407578059 336654037 131616833 318482525 849985837 89748873 651739687 624143583 455286543 247445079 459596169 203512355 267796749 739047937 135199081 426232563 950325195 219108759 932628555 422809823 316862447 539892587 606940477 687738175 659939633 939814937 780368085 188408369 673113415 808708485 977693237 607092641 884537075 665127391 990206463 792092219 88669953 621249687 955147107 739827323 81804101 364495723 49280789 840298399 569977237 536886621 324534873 902895281 793957079 933850557 775303151 537488257 631132657 429388061 343841575 17022373 355214043 390060635 688983259 881779583 79561611 48000921 350304867 297315641 562414339 850120003 995201707 44921279 478423119 322846993 338882847 699767757 12707715 679016187 945041587 264157409 270809269 466044999 612366569 523517507 317816075 852281473 950460099 697581063 436509101 925640831 486210005 750792705 140685517 886164825 373451055 246050515 655588519 613417849 583695477 235628773 618983035 231683461 646790345 686939495 148692375 168434551 683419099 551009617 721115209 985047943 559075041 249860197 728479471 358561597 510996377 933712427 289368295 990238305 141764425 80986353 259210143 750992395 593978817 445563601 12110215 108247957 853240917 684124329 517700891 522565027 284095205 784712997 384277981 366021925 807361239 840624563 571139413 738814537 932366359 433241995 987581977 889684881 290161183 86706863 92063423 753023679 555303145 829009637 674195181 141742047 622482943 533126335 940056651 895596101 4850031 341793941 783513995 404774285 344416971 741227909 794640233 90658461 493128759 699992699 670783911 82524831 504478549 274272037 776035853 7043593 285998165 795909371 654664561 784999831 395174637 895739965 353248937 710173517 776924507 660844277 661289371 548559735 364588903 75326963 427245103 49318313 54664539 943480781 836349783 442046913 733753107 42804709 370850319 312583393 654022377 715388773 904791641 733606519 943851203 241493561 960648253 571770165 293234451 454767133 47084753 145332761 775355339 666785167 741847339 526085993 827738477 654970073 212895089 342582701 148753917 293931275 392264139 2626237 947608073 688131323 770126187 7696561 655720361 976335947 192229261 165387507 48128379 948315235 330056819 221612843 557566371 473821555 745684583 670651469 912611537 318474101 918212793 26774425 974349115 306304295 106241735 140722063 4816287 359554833 92816623 6280447 952737861 768225927 293802399 477391355 324269049 524231325 222980169 242311391 46167825 208004917 840890981 362128721 630351981 447155701 675751031 347189563 498539635 519763795 320274183 355563987 316829713 655143297 577657771 629914773 865949627 414113667 99790329 369625667 209985139 343019039 547038871 341748717 109582525 719876839 442007085 700733925 133082535 311856947 450890351 182603465 968912841 506110753 32836885 43345531 315045441 482668189 150125281 508351271 949958067 519262293 382090401 366202437 463204687 599901377 207765027 344959373 782919115 581634339 950251845 461332997 78447719 61818497 48499943 53793017 279023589 120281261 492658163 582627069 418308503 300727101 247665755 769754863 319165011 918195349 591619613 159116017 832523125 38222041 300380725 699387249 529352165 581024509 511288755 242025507 655081231 580220343 713695911 173772545 842866669 457820807 915548969 162137937 217630203 529044151 451041887 269747361 183568447 531923029 303206257 842286529 221601863 312669501 466032275 436885969 882437931 403424779 26467837 984558901 474110089 771590441 805374707 165628567 808034181 946846665 379989693 779764205 807660495 903930079 967622577 400192371 38792351 58574385 706393127 860423339 84517295 331947841 934253439 890236261 550669385 622777445 123560745 103547059 320901689 815632817 645047697 847154161 464876245 389655559 14544181 379262917 539829757 23706639 374655383 116692761 813698839 748884281 266034753 13700131 894934545 916077245 619643845 796940639 542989921 861910685 579296955 302851217 115159045 509650081 103193801 409717701 159450755 678941527 174616983 632275023 908717545 477054233 534200793 497172429 603592143 735428359 889579079 861709089 441065555 340264967 972321445 921209209 451332889 775960525 883417277 712337735 347181139 693617105 202162015 197409097 160341939 396658255 917980009 129445763 62047609 172650837 748228283 587819587 780756845 120276909 149693759 393468185 674806747 231846389 869682153 458120677 828659867 949271435 735151537 582151625 321205257 381061013 95996059 697434163 975689741 209748487 616753329 430097879 929939221 796106903 850420483 995143089 979910421 870321095 81121967 756715011 963955855 257907677 693467605 610307421 636069769 72054249 301654687 895347599 633316493 30697159 896357953 990327483 799467957 308700691 372879347 564858943 436700575 2288441 210681849 598354379 91624559 669477477 879269533 674377811 446127831 657011603 786819889 790942995 548946697 524568449 639093007 136904847 863253447 49817785 73348249 838211987 487300435 149068937 292920889 858367539 922812543 731200013 736988003 231041739 611015585 981881633 15508367 778636033 347445141 964921711 596581185 64539329 687778499 669717351 538306307 15371581 986137 415737667 71581797 955612659 614860301 564708865 943309061 699247527 354516893 167617643 835158403 982622053 153833295 89662991 865614475 139760513 248694835 405962311 362541515 991896217 397569757 135466291 705219331 835207311 248745069 867269819 153852657 147521425 25517449 96238479 584842337 33209619 301039453 800344615 877956899 707327183 397757601 614596037 144816405 907370955 303970965 360512367 344343319 749258069 535152637 810088183 730735125 141337597 348475943 526837 272951805 185469603 498256363 195185865 755834575 964222827 680216229 523746715 981071241 602980031 282471229 70848857 607199543 790530131 957315873 407920833 580651497 843087399 45862215 847060301 990830525 563298173 797001005 470087241 215756243 946100191 65509849 565197765 515814231 64533029 574901979 746034073 686465145 141269355 584374599 667139171 571951475 3327505 220505789 415944335 219148681 23976649 863214691 918659913 130955269 7689603 760211429 207355789 513403705 255391869 74097789 808828699 394091391 583889723 15487973 314927993 1191481 688657799 996872039 356522743 667916497 518274683 774309071 104579505 37513659 616203117 181713781 275755651 752499055 815133445 764148533 783967255 120312179 964265007 221204857 284208095 302642507 873096989 596742187 559393551 326770063 504910413 320839363 548831149 430359767 794474373 313663 540327803 768463557 923688141 284742949 951371023 319066373 564033403 37563013 442198205 731897927 756848429 279348467 174060967 27363141 34155205 144873103 115782325 479834051 133016433 550288639 316866455 770507659 802333605 377721455 731455431 844230511 307917339 928229017 934526339 877646409 985464027 953824183 864771283 99589627 799271981 551424403 219488393 868675185 4006313 796561531 774151997 171329691 831526185 490091587 743877199 911713651 375328211 885788489 337969383 108163325 63762705 106196341 167792885 417299779 748043673 986025269 725773873 201829207 387362919 986503295 962202397 602685523 546316221 834516435 710608383 230564441 636874283 359927091 625487849 410550677 234246531 579073841 338497971 907516727 112117219 842171361 56485627 773409913 241126061 860966883 26672941 173164449 764375949 697979229 735150199 100323061 906601849 10962683 174154449 153508809 869928365 905060599 420103419 951308151 81957549 800206861 507777919 669603425 368584517 677675651 792694189 384964849 826307467 912436007 491118749 258765467 986075095 968923217 909935661 406874841 999952849 845560031 337143303 986798123 604157285 89956149 651572893 137192221 38279623 570899011 607188517 521400641 79857777 238783103 110126495 523005489 675844649 610798311 917428693 305904273 732461053 231759875 615634005 115004679 138125885 459217119 447997051 674061129 850293129 376809489 712710755 721448209 853582789 257835193 586477047 913193759 970729243 873090429 838354921 182339647 126598399 773128075 258636973 139295299 183046961 525521815 830635399 283791621 808886451 742723811 644237183 768455015 219252943 181747763 647023715 718962261 334970397 182124247 52829133 798899647 229142391 560683427 540351005 122453921 743763715 108193781 360014715 553345275 362332459 597576373 753238743 83672281 286305189 128555347 654330091 494852429 222234733 655038657 738862901 430257777 140137159 171652735 358417149 504669545 777225791 795511189 736929365 76951899 381151145 526095759 987491605 937896573 201033763 498992515 615966171 142313737 831566863 333267217 216710931 821002303 700930073 471259487 204925419 281848683 83188281 562340891 696723803 53010657 201283239 455207035 843205925 660328695 215723241 456808507 791573199 799658257 369019083 270894759 510132907 142202523 432757091 278582151 398949585 414080005 127478793 687702069 651281439 562179531 133742951 732885135 995602241 181592941 165069413 15880185 502334883 153203831 292309815 757167203 973627009 996726139 569598557 362565445 855259099 829096211 930736535 742707865 365249399 135036131 74487027 622424041 376193509 739856017 516941767 416889153 692745601 549131477 666573741 648436279 536258407 988820067 861366667 155315435 758285953 654925059 145373323 684153603 555664513 600945787 206658339 133756077 633649885 341274527 156667919 527037343 723048405 542537 368054097 795276823 299720563 785190237 282679609 891951579 216809093 327488961 835169625 979621689 277399461 182347117 633727885 180547593 567436339 670741845 437019387 163985065 499428183 514150785 373875471 384345855 928007939 707842551 398393979 915738487 573188843 696077771 37306941 641265673 981733779 920492055 300282521 922249525 341069635 451473151 939288603 387303677 996975369 380832939 233393815 266852853 516678079 63069261 275469867 659262509 539818757 63025441 871710265 842780743 77192259 930854759 3028591 331449961 77118889 367469931 373414335 789596993 843682607 836385919 905501031 970017541 418510231 130712063 426592749 579017843 428900199 924747849 850445849 711819217 219138545 318215115 603831299 377704943 698166349 827914741 809601539 839408929 204172889 903768643 84557763 202447431 911696321 781585207 552157995 406955973 513709299 736828249 475079537 616709773 107957287 827854909 98433551 793554193 711633501 191467389 637555661 711146067 675585633 868436925 242593203 682421973 76974525 866077605 597387289 302064553 742403023 492622567 789382553 491324773 311601843 749684031 618360857 485445413 909416533 683693933 537240515 192021393 157692257 776324671 849427469 488295383 856450131 987205507 102881971 610879661 106484329 894149909 839786169 988431697 552500909 655798745 192810347 140126347 99686639 860788407 432483165 759775141 571241157 620314529 733175147 525159801 946439825 860622483 339219899 234585957 749453949 982974605 488773305 930113615 382888309 834944669 506792471 903874467 166053429 944423633 787466707 603311707 965103163 956276037 222904113 126331889 880434895 508815133 139595711 847021423 962884101 915772289 910867021 889199201 159884721 765141155 928820219 758451679 412930677 455885503 781206315 645202821 117699769 128152855 399558283 684935293 744169901 49529075 788351501 967807087 93194825 938169511 949098481 605408919 840269391 991869583 251997111 662644403 174603079 586752009 145375535 317864965 476667775 613186179 803438441 439236703 450881809 946941039 683342791 318825749 751004891 210658885 788743911 715128327 553798025 347875207 45069753 776396953 34218121 516867523 636850801 136600765 23853843 414572935 976380811 399835621 935545129 997351279 974632649 898107411 246082705 975303967 474449467 516997323 844850653 131886143 117343539 96023579 100649829 866815873 548556621 621566363 397899847 721432993 498527599 276290407 595819887 146941537 487591109 678220073 307140747 36763529 14950337 795387147 209122067 162974191 365044001 607835845 601470279 632570985 586417897 601665173 415158065 575084765 585252197 549230145 762384801 427052339 931916329 755403289 911100717 102504541 167616787 73928177 255594807 179293015 483235653 985907753 366016745 834438179 579464235 313204391 647793199 973478603 753834621 896776153 112207045 415162975 831464243 5186483 193621289 225216507 804289171 963118263 534871461 761159619 333497641 496578281 454661449 750589407 625722571 31619799 205264619 561954179 742870931 469685401 935453229 59510247 223966949 226419405 805872759 965743437 428062319 160826263 54691321 627008515 522327845 295973287 963306157 131749719 88419905 621779251 649259345 363382439 403720267 396030713 934121069 489681491 417569805 830750529 275381589 528252613 982748569 785860823 201675549 160174959 773957969 465372177 61879207 663164877 770697939 297637327 112114841 403355745 965316623 383799927 350037609 755877299 706518073 931366645 530500937 770904921 167718605 627307459 34739773 159413993 721904783 452990941 789787147 29725961 344558219 188391369 587962437 781519457 697842965 628038293 387869763 362302117 951675081 986882265 198159907 187563917 859768717 926811571 232087505 729660381 5636493 163746759 751097339 108081757 467476027 916510277 431496985 23959779 387873109 91310563 373444717 301630277 404959711 837626847 970413821 169343593 477633829 213838081 828938395 306327351 895096253 354953365 34589405 411221411 419733633 891603825 271864359 425757605 751196565 619563765 209384605 405399105 853712743 148331015 220416307 134917759 950491561 203079189 514653855 305747573 724930139 678715925 163066465 979518009 61738173 887825797 968143811 667222257 990034013 764628843 512884435 760195013 42109969 800652117 590369133 859468009 66641139 326817371 847486509 208746133 545344871 892441627 847930237 485822989 784553501 918596537 699434127 518912155 825160451 343240421 552438871 709237391 390281819 600028373 841676443 623918151 509702055 780556617 53936861 696735523 951602353 204376451 985167731 595700877 718773393 405370709 327407217 406987511 646751907 583750165 504529593 14617823 93426567 721493919 470688499 314869699 400890415 953734491 846791823 300727085 712766667 560548151 121126085 954142643 582321113 978146983 417713047 134718443 989430557 523683757 547267277 181000571 883871395 527823309 114447093 656198669 31089087 497044759 691850345 274253903 434899983 692195615 748285513 510171903 951422069 984820229 681385851 133749727 228931613 760657261 30585779 326638777 825785215 583730055 854058601 445221471 324575571 515018763 174046681 618027433 449656735 651307827 583252497 85408893 927942831 563336905 800165339 387693765 9935385 849091353 601976789 89119599 565595575 577066489 749782877 642424697 661484205 812617163 582375321 777248997 402367593 476015217 539118205 54867389 687838111 908614745 712099263 439918355 16405321 21486973 18682337 805786625 763901359 195378777 830692649 692081319 346230617 399576307 850943143 566226229 395793439 581091803 349251895 39125719 896765979 613850405 474712181 226659533 685655219 229798257 129306061 247051093 854083985 238017251 644566379 452285113 600240555 749409837 7934795 242231887 720366141 833547649 568763947 522697071 234542537 359948191 920549013 552861307 674390815 457207503 51879895 199097821 366234705 848241117 516571917 269608201 541758909 612206369 914779667 59908471 997921029 853728119 617460371 52201387 490685973 768246599 309038845 410881583 673493539 510624639 853383051 917227157 674630827 961371285 241841979 385116791 857651313 375290759 733717207 844223095 460173443 314472155 446987757 502652223 111540017 490746273 208044503 466274435 420659483 913153133 426627765 898866683 227923491 309658719 144877167 571546731 595093623 722393115 70500789 666447517 134161801 781762771 666065151 850667107 19656471 296451385 308864399 818758037 598990375 690675855 338099819 479933209 34525697 259496343 933162341 893880281 232574781 623859621 665621013 812230597 182158005 614025097 890886363 652939991 231926413 607001767 572019167 562905619 439483187 53036001 940749841 843251331 865847899 876409511 577548841 963081273 811049473 509341679 255691687 316505935 688975719 996307767 518626261 375580391 364922909 547012997 992733379 786205739 134413557 198673513 133113417 970347855 877496587 732825335 874236677 964144267 967167685 244115663 852341603 127492899 306381 279922965 459160207 43110497 516000025 677181307 296746373 802979479 425658341 977519411 437185541 418726431 356942517 401034239 52975509 642577499 62693205 700273443 118729349 343094453 896658137 169150573 521028337 341901217 40230559 44204341 366346677 936747929 323147593 246815063 492403067 77497373 29498819 343271483 440915381 689998009 66124869 15144911 460818327 66431999 134247239 63949193 675832615 847568009 368353423 280442729 510956071 839753721 976026153 806046449 287105837 493760505 765590891 64968755 668598925 387585853 589133295 715368643 194106729 258904189 735658649 900481729 972812457 750763391 28934295 982501843 350439421 678922249 430001243 785014309 998127839 853314797 196939429 544502641 200256397 489394953 208293749 775143409 482027023 230621247 268712731 607421807 481426231 776266357 474609449 488163897 430734749 16936097 20662139 200186401 105365665 294157243 987947829 699970443 48671595 298802633 454187975 131271257 371091435 291948753 164598239 354695931 168495065 227828199 368726143 405041511 471024567 48495653 615667177 530411547 124280779 144308653 205073577 681317663 964132647 903112361 747543187 296110335 380245155 368496205 650513347 536445905 835478493 278389715 555386271 862686773 619751489 341807483 275912659 376660049 527312381 805347217 534706513 299658961 665829129 650711399 463102295 819608047 98072613 580286551 922459241 482793575 719801819 780936387 585424723 57953919 25397627 252398359 667289641 967383301 763121693 468599491 66410313 757593169 760776095 515882817 35730005 847339327 600668587 166284565 844951867 411445305 285239987 915094731 707111725 722989609 190190317 832334833 965141929 189754759 328748377 754268707 713575285 450006353 766269633 134133251 191468441 798149135 449327285 58611771 250546285 915519693 622877323 355327103 588691595 843189793 464669285 255689353 924056023 25798443 964017707 318577945 635710591 795785873 493748367 816465659 65623031 480279935 18614277 965731841 40463355 590039727 525044177 796059141 306809229 399023965 631733499 15444971 432641533 306395215 44667217 619366041 275601373 185380051 743778413 522153989 213617673 118600129 471571631 364036649 313270439 273263735 565359167 685010949 477919265 28669401 964861965 848567973 172037677 78453591 136982739 258229275 53675719 707940329 381393935 863939203 424731955 314374921 554949897 439368443 282024701 665020351 583448531 746511025 817014521 265578395 915889221 975630293 505112643 285902259 621971199 374543521 929366849 662098339 300830823 654255707 371419807 989910163 227126193 722788937 153472079 972069937 462272467 895119039 588507279 919334321 469069967 226220055 971133667 966672597 511039851 954159027 183013145 507959521 107522745 574856447 384944193 755605413 899392145 727229035 116842427 254728821 647572433 259151987 921425449 347582767 920084773 347218071 378392185 691021629 344017401 617448035 863396575 320557193 374215561 449546345 978302421 658679947 830019541 411494725 936121121 981869891 642980003 868083861 392278737 675491891 929585283 761997831 637572151 516908397 677581777 111349835 514363119 410286727 935345065 439180317 816418269 965275549 494548725 330177853 247995439 97153623 457318247 58554743 427747417 436034275 257235573 479530397 554220823 266426103 75932255 885559947 211723885 827048143 455097647 173176351 368808615 767436855 730602419 607689287 291472729 333101943 14132357 828824563 906026591 276379241 995099397 314008095 270044383 744837995 800096347 63706827 407123011 959305313 746232953 412476419 247180609 559857597 430122771 354830553 85356245 444432753 472595117 198655593 305959235 772992511 754930575 426814161 617310999 398989161 548784327 832440895 205826087 119174721 523210031 200768995 857562251 94075037 759242855 754497273 761212843 978810137 404482007 525430721 937869619 683576797 710440367 96308361 813431319 290241943 742197223 464989855 158603153 967813757 503252289 15212383 929480231 338248013 38641731 618234157 46240421 221219917 427782719 887923823 170157857 610051661 786548813 556763805 841268725 712801185 233237067 712130347 893648581 466047785 942444517 722212001 445656959 286899017 158448009 330864005 809209175 200026353 439719279 868457323 547360201 828820633 848406167 301142511 459243415 31774523 170782157 559591855 201067985 130484577 325210779 585824601 147333321 942476823 137014367 777029277 249497883 540801013 525994293 428008247 368773293 148317207 559867657 28488681 587471273 133730597 683452039 773160827 406925701 671347789 32300075 235171265 322036733 868232261 849761077 263209111 794517011 417950795 741354153 612658395 301732119 556509477 182069341 217217915 525589405 852169763 223134693 248565351 186980477 585082905 829059491 718401435 787754975 717651047 993064385 179937817 81581615 392231411 228688171 77490921 708127007 986737193 580540573 361001503 889143981 889112579 212513685 104275927 781384733 317496571 424112475 569511215 838659835 762178075 691448835 372453205 40067101 446740719 902005089 590208121 522586779 680276111 845909015 259062999 336065759 960369303 627860109 675079089 513288079 91533871 12520947 586033743 890703525 552770309 601605953 849123079 140078169 719353935 147834937 454969903 89842227 523901387 13940323 340067117 127849467 33088705 954877453 620335977 552400585 801749243 875234129 587681621 890760183 523441621 132996365 721036653 583406123 154439977 701506541 134701873 895410767 188052061 668666207 694107183 11073689 739879267 28139675 621445877 622766467 475177901 63997347 799318561 266512085 753949501 405211197 250638161 235616921 93945239 645138171 666664499 404290595 523624137 191984181 547752825 364225807 677869675 969242377 578627035 889864771 24522905 124656227 313604379 915116777 431720699 947109361 357898503 98941303 997549503 152114475 903374445 628072617 432646299 780272209 415006763 181473923 163191247 510785901 83403295 597830481 122145565 849398607 344947767 447490727 247193303 574268045 65464677 356008035 960716497 864899723 422064289 174829479 638886763 587760237 582650349 514610145 573009547 943818789 961046359 251165635 153285789 733489517 644859373 413895243 181820827 718500547 547729613 451880895 479349761 538622577 225221141 60374183 782458325 713508743 744816115 146096347 297132453 889863387 895923097 971564659 196404617 143607311 453937727 491853017 403616797 565924491 30886441 605263797 368980363 974620799 971227551 364655099 727879293 836494821 133368311 469317355 8642859 736163707 764527239 439560455 984210003 709816265 46639029 971712793 519896635 15770659 292230121 567366969 105041843 507735453 632039061 69585345 291835665 139718169 446021941 611669591 741386033 206274367 602923595 70425317 710735481 623805823 468088929 602026145 15340507 926237969 86212359 238260999 198836171 716856567 867815387 773159643 608748869 407792119 79057275 271556903 684773077 89634211 788400279 283945029 942310275 201217875 477786843 386942155 804783593 49713957 154370053 603085985 713874211 90564357 195029207 320767985 419479515 757821345 908288027 393857075 797068603 735114609 823325601 856966943 208904187 875801015 65838407 496376251 576374105 734200697 895069163 262853459 435708957 418555017 238711421 763580539 948214675 953551997 955184873 6540817 494562961 21966265 913388845 487413303 541758071 922472545 993465931 363373915 822309931 372920681 794130253 53202737 400696091 311213447 808820803 514898355 950719035 448847931 249450827 720884263 794528013 830180559 767105925 592884251 645656213 708433233 373123099 203297889 458743907 241007005 7166271 143621141 331500939 876483663 294953261 310763931 446163371 803942353 97253671 820490145 151151085 870065493 510024823 790786075 946953211 172162511 365501805 393177925 24008973 406818053 261099111 241869985 851639523 710651513 885539525 482636287 793743551 921775745 685089265 327947889 908168819 107779377 803975775 925144915 819534677 763519339 809160839 274826059 719425857 168623575 296699885 98027843 276438431 692579301 757913113 916434801 28573275 784687821 545144225 774207057 818952943 828180113 191804189 134605223 985724759 274927865 928724015 789240703 730593049 211204243 110739585 553986861 958683205 709435321 156689605 652439119 873128559 116526987 395627449 853462471 536417205 217882351 929370395 332015811 735151041 230148505 318409397 395118517 723060925 509351681 583572829 222349659 258149473 739921251 502174699 117811643 333510893 203389133 678225985 145852189 222478373 263379467 378448457 448491287 936794199 998833077 275410677 223858055 401968473 487625007 403526979 280210833 414283147 418301341 476625201 629402269 818208979 417311987 40899785 70360933 505693599 228967143 49340193 202145507 431018981 580603387 955751249 650677593 569424419 896678005 813924219 122616663 105618527 911934821 667815369 753118893 468544809 146935719 660018543 915945853 396099733 931706071 693022629 436811557 455810369 663191649 227669679 103999317 295119703 427466865 846929623 797273857 181836673 563583747 830611821 478027109 315571705 743872725 92845519 975648005 570805625 291030641 415648349 327386797 767958603 522339109 561218945 973903473 34283323 392652301 169013935 535851181 11064993 443886341 654470495 850189575 847441241 542909367 920392213 257989995 292267467 541605523 713389915 696982795 546885861 169289683 24409795 385732453 391721757 398241909 632964071 356146493 111123825 860739395 548283241 306367391 477307495 453312459 108962803 933660383 120630543 830301543 981684025 274792347 375531517 460219447 689790195 629183925 12262481 116503075 71552485 595756891 508965551 60467163 761145049 172169217 571641415 871857111 611961249 278448993 144021969 51687769 258409495 850005121 384486535 591376743 784495901 896115375 901395251 343160275 733515165 321730171 50634529 919915573 74887051 226235589 432407849 76112621 355185375 855644593 780182183 888569379 499240093 496795049 32480901 595390663 129765327 807783011 552769067 397585297 736919175 299557337 134132373 793549313 447857887 945201491 156234559 211216225 349648377 232639065 774660913 781184449 795098367 967986115 732584951 167137017 77650981 52578477 758521511 269530023 787400099 237626231 740101345 814996535 504207039 29610707 137995721 789433815 607887549 187401905 995675409 946250109 383723509 250891087 224269803 676243695 847769279 225721905 530585113 457030065 785229949 423085347 951004895 692546067 773439131 731227961 288323083 400313905 435534217 594593743 976356597 286340327 638218689 940676491 638161785 258731743 449565895 204573529 911712511 568174987 966214693 956975467 324777333 620335647 344285293 771646015 619550289 507934881 937259065 884668827 969559441 44300499 612289323 456310151 888582333 151269195 855333613 384212313 617049055 983091805 876247091 3643055 413175955 884608299 793295799 952706667 511771891 153418397 174443833 888118715 970362533 532107363 207937157 127452435 299072475 470426615 585698413 749260077 600920135 85393815 250652619 222305297 440565291 341844811 904488577 24308743 783008587 784417253 256215673 941350567 20619253 439196669 964764327 303806411 801081857 630451443 533839877 194565273 287924685 151970287 512190611 784464507 3857725 136025313 862568541 149687847 61946049 732520321 416993909 238000281 468969551 135522897 841399285 769297939 165964389 984413591 484230399 522277157 533633291 454316645 137334207 352706977 405489867 847021459 48652645 435492261 768319425 231822527 774849835 624586387 66966663 58681685 355457365 30127127 308017475 751806339 855540269 699438375 73485991 904432449 509163781 677923071 324178151 398473039 132838199 851926051 620911807 185452089 723782949 679010143 122892409 324970313 846868283 433681609 892063971 872349085 161758441 384638649 29855825 744875281 860147627 599560409 280724385 957600593 924007425 676081935 863815483 466970825 722471543 187323029 393498637 883692981 999537823 97884387 372592271 609219347 395050003 307384511 22601147 550655917 720318837 738957111 927257625 522305811 327623025 169143963 244705977 165064347 530231223 897598347 876558385 416341095 558368257 138950635 15437213 15540319 748454677 814086117 140353957 330345781 139226553 628522221 423678837 741453149 850457537 469180099 387270599 180888603 933385479 230987369 136184279 9905783 680949357 892549929 143902827 649818175 149036767 751569819 990570193 781741325 707645517 230400665 36161505 551244609 966446257 845672521 71355129 110009091 608462097 664724757 927076605 46957891 834572915 681182899 638967645 453328571 988916971 390924063 751864591 576199401 696984723 947542429 126767507 721201429 872705165 556787641 11275243 102017361 953153541 213899847 680909225 869791093 309982507 354155109 123280867 575200801 259459131 591538805 904844853 82338235 879231093 416297763 553720775 335514487 72037157 564319335 691586117 62283339 270234269 386449017 201349353 620775417 156656439 230110431 975466863 74011655 20508247 484989797 248699677 218207431 166943075 821389601 708291011 861978193 489402065 163467627 110515893 862079363 881549595 256931565 709075921 915495177 526052289 964290703 752656513 723599951 942502481 199884933 199632559 398310033 758397785 493168463 168102867 243712463 591935349 242140845 559475179 290709455 968829511 880449711 163357823 444416289 400071547 563762853 528743323 131329569 611097537 231727663 896842967 185278955 104736725 85747761 523945551 676562281 772256631 536015829 941216171 875030605 963555955 376819601 324446489 782159373 163067805 972055585 782071885 103315689 331712459 256674695 98243465 101197035 205303009 254016019 280924817 339206369 435619531 603413847 500059061 514376037 578211961 680874287 62253769 576404951 793822439 856224961 508684333 936796511 454742549 363805561 902038981 524869103 134977553 495106569 247669251 835398459 946078697 849303407 35743961 974840775 379942585 585542639 184458951 433831899 5638819 507619861 514926037 995926661 196699091 310180789 322086543 586121887 753952121 754688749 501538573 787706825 202311377 625751327 892112875 411609451 919997981 579013625 914770257 394588597 277765029 750020717 547650541 214266527 539407549 742408121 43748341 857711851 105503935 361832547 330529831 451915551 45840911 942486835 385182921 547192461 30632725 131663937 665926825 614440013 160862531 949770213 730582561 806967869 785519125 281630665 551646217 820818441 691164171 633924053 269474509 641706527 658469297 565536063 988045655 509224119 344997019 792580993 219878433 33650387 298171999 447999331 208671269 541980473 637498273 952799725 695763949 687440761 262492429 324612983 464480901 652159727 23000149 949804699 334254725 253665207 390607151 384421183 358552841 250228669 753034851 916467085 805387449 601104813 67897015 739410171 822806723 538617347 787030527 192583493 806940125 102477823 640333335 745889647 337208133 472021157 821483485 303270597 636826049 257863115 90301503 45165531 160820385 135623429 601570095 633911183 826487481 282836661 648462499 201068545 94721897 51048197 120591267 281469347 274586005 375368929 406282037 44410405 117474991 287390981 75533679 637658501 570518953 61332719 520712807 200367881 162767365 479197159 29259587 613695545 860580551 678582785 269353769 782873579 550392701 203958033 50411601 512241469 409702207 380143033 621999857 587408529 496310697 221671009 522016331 197177493 12407779 298597433 672497069 546355005 811038107 793699897 169158501 243229891 991065607 70225955 56858063 704413357 684203237 397938047 580618831 674803401 483718525 444096667 185159245 798629929 616313753 387122577 101003323 316461097 709246613 687850815 448438421 289772909 53020233 406508113 518000349 964971747 980546593 983233589 758333083 374045375 187852809 715833379 295650917 946744701 919386485 451692061 639506641 783059167 93710951 717520361 613462405 475430645 802400355 13719577 881551401 861193489 184791415 237603589 75842927 971944143 188144955 676377547 710093331 439402261 689878987 197317463 615908823 255753999 836374223 575654231 48733827 75583791 600852085 976579907 867320555 534713907 235146867 844434267 693860843 561754143 745427207 390485417 732169571 326450495 545965561 429655805 669340477 31916327 920086421 937122285 116959851 859529141 381979057 593791453 64602089 943542795 168503469 14543345 198055865 51263381 876619887 293519899 674342371 211449099 23920995 564247573 689971581 585400165 693393795 385857629 254968221 198129897 93017417 901379389 925326953 558335525 901684415 895906757 987489289 773057769 396026483 367634123 126105007 98363221 376015993 927361521 534375575 60107 807158639 635829919 955559171 108161785 477593469 719640325 542889275 999137491 422277969 274670365 240236181 294901141 955735331 614429605 168300647 410171329 337701805 832924455 875447575 145530407 467743543 306851569 870173965 283282135 896034961 560142365 125818301 547335731 88290831 149530763 619192479 366793689 681948305 698308579 76935733 40054715 677888637 131103893 492323085 584776455 855621313 671896793 282445493 989570879 124439507 880284081 456026827 417465125 728593583 426164707 538937327 32225733 598571999 325711105 69169355 893408627 413229681 412871779 897119505 476899533 767822585 841703465 435907197 118417331 239308949 298526777 832587217 964458583 57910253 352064327 550269399 871534633 132933681 662377417 456612447 563125991 52011539 60800257 786951495 412130709 847974099 475362293 571531119 760630657 86692153 832675447 610400705 925566267 87700625 261824541 342701103 951331235 966160305 561960779 759628981 825415387 603879417 481797669 92120661 180781393 905599567 933127071 979594777 307980471 178963489 903995503 215877137 958053645 469127267 728960021 702082651 147242899 214129815 849866715 630748695 682267607 880721857 734007761 203764847 385417391 919172977 569715149 464156567 922668341 295921339 205956721 12799431 709845455 392839485 915318821 980249155 778126119 941967905 974897179 166077011 747505457 272938769 19278151 813391949 495151149 801917253 361219951 856499847 607832989 725408379 999146517 232484455 229519179 335184379 11269519 476094805 193101391 114793873 5120497 242805189 199004165 995284627 895722013 968608815 255468301 993653475 365471419 853266967 546480217 899012577 755707707 104160519 727201305 35109249 356365525 181640079 71398091 570147639 72940427 62926925 422454835 532415745 112794917 810329313 595115101 207795813 48943665 593988853 785079965 670127987 691223305 481353021 799634577 402105791 540630221 497826929 341535003 748423015 851532387 804319829 130151783 385955861 346059647 365967027 425811949 883606003 301638041 27774555 970976613 455788729 566822637 563726379 840584661 802646695 295949193 533883907 613814665 220811647 132889145 20432333 965141527 677780371 375340437 700668029 465085785 710330041 586383617 873317131 156302963 451551053 351931809 892051835 120953555 45045047 487634793 805196759 75165485 862202597 720998415 42549039 835072635 467987021 161798677 358007969 155350277 853004269 520188353 908926029 693178195 368076235 191042083 228004957 586699581 177752181 39530007 514136069 572069597 626101765 715797305 888655997 687548825 102940947 670529269 393703945 173362459 729328075 675040631 426723059 195636825 487039191 831420091 357520525 889874063 995683439 626989439 798097455 821636159 884304211 178891853 423654463 983572537 986738119 938157171 322947879 32895631 205741209 186724109 922451029 401264543 890968607 457079799 869186377 817191691 407785787 411344091 534204545 974186687 278514255 687135273 62142089 268789233 945285195 612103195 622312689 877208093 569432483 462766511 379162967 388294151 143920473 118590383 561047131 721133245 52249075 919007657 470935207 689789583 646510203 523638519 828676079 533751837 789135245 496527289 161538541 773529417 928669761 953285591 940225377 430027841 845605699 228580865 217391893 352776311 869560765 389474479 312075487 123758505 225557097 584966947 648994967 816318685 399967361 422395491 424016671 565588827 782774479 923374145 279781729 445776315 869109407 926330965 354122065 738857175 911139529 614641919 507434217 703091923 905044649 846999143 218641705 667074077 933967655 938398589 657923867 443446889 268126641 502640377 825836757 321959859 859140413 344745563 71173231 911501117 553174345 573017837 376867083 743152791 332207325 426372287 185163221 744434835 268708227 793498537 392572667 871030349 51858007 269073481 179494589 705012267 786157809 110170891 210518105 727156439 763123837 365384989 158680347 272628807 79385253 403006327 842163541 826398391 314569891 63933913 39400799 40619947 933324339 95491533 921733793 695884527 235797657 776257953 153898623 864911767 587268521 701386609 365466991 266281217 911804595 603040281 957029353 220885455 688664987 81753667 129377137 708247277 205523395 614803297 717477265 828014739 321990939 598127785 829704411 636550969 210971929 33804315 550525929 506855589 858676155 100131711 729904733 4660963 672900231 614553961 270627811 164915529 111588237 896904237 636306731 949708657 56626275 946043117 52736751 970610751 571945251 678995089 606077171 490642657 123984761 653412041 565304065 369591755 29290385 500045071 281108459 105376695 633853727 121844129 846199947 135200427 832986725 707113095 957564611 387112693 950880551 742393491 377828991 480366119 203082675 33873501 217637039 123202077 699742177 632141125 305751117 12638203 855382029 802434163 386002269 787969841 287374369 96861655 889187817 542474351 778484871 722847529 714086147 687959729 437767991 219749099 637557189 745515071 47693999 756359011 998718033 641683875 940819189 41090467 426275027 378665137 199354521 824925827 882954875 940929413 778443697 982146465 190570627 129040261 282141399 520626793 824056625 492543069 787616311 74531593 913908427 220377343 15822461 406463865 525388965 40852649 59697117 778782331 758035993 160941535 654254361 733450901 909387657 434685805 200441461 239954199 812552031 127191911 360953025 47111453 5357327 248323115 578639951 40559747 390044179 574221659 386710019 556482805 413148395 876114149 765226047 986800863 295250467 731153403 127493107 756472957 662257997 754768925 31713173 380397261 266316291 470964235 739655717 720876697 189776103 164790995 217902117 764557169 109455013 968549067 903724199 136556203 819193069 55956621 582886975 818974313 901940603 933321213 670210063 612696723 387638031 255802697 948062391 579880411 627734133 29878245 921827179 748720821 164866943 280082317 603329759 540069477 949397511 446875971 448124495 721955315 170187503 650670679 426261125 525637933 937088803 758559067 847041231 550796717 297874579 921804587 861037057 242119635 745377595 618749933 507241337 897248711 871882779 105355787 595894305 663919737 942421055 341366075 920998243 118360739 790456249 947842425 196035127 378223043 85998755 527328265 295288859 233032993 873642527 624587383 408991767 668840143 168719193 401178007 94356407 674973861 85917313 832172165 530178065 592223043 165032403 298326439 899967687 827887375 485810319 40765353 787868409 226115901 363501057 497173629 84580955 453447365 64370299 451182689 262752801 444263267 109304921 723428569 72627209 288122531 320459513 790933939 680360281 890285269 532513737 405151743 541753823 15461905 107391801 614081309 386642163 553581877 427948995 463230383 106561139 879092461 21020397 979729571 78752707 880347303 193907261 685682221 780679381 554878363 11758151 411968711 994546459 186545609 161258917 183062073 788067989 378787579 550537723 598224011 954198731 590351807 171106031 450597141 409785801 873740401 707958071 418185073 773885221 396602925 279033229 724470403 714975489 726749149 716746163 609638267 416389887 10408755 933766513 460376775 908387149 739983781 733155227 832080169 310860709 217487219 382631691 398487715 413431875 980262567 8391587 549802881 724214509 435394575 299688783 146615639 519844339 381242437 932818175 49813505 535069993 725900969 375109039 93401765 310554351 833901155 436399457 396403885 656348457 898183525 36402205 759288015 940331079 52724579 72919287 602819591 623465537 333419233 761662729 937591449 803943313 663256615 526270071 773993233 810273857 403070019 676087143 115506501 407851741 851764751 837456657 961369421 11725691 191008043 933220521 505377937 169865405 95868671 544629879 682432701 320595141 666808251 496518337 993724613 374743617 836642135 745582811 13433827 548299115 768535189 490407457 14233245 884976895 866220027 149382385 426071489 890509637 766171355 210650041 301151071 39936263 119702093 187708905 963313623 865551007 94653999 14057725 250898635 999723755 395875373 242650997 15142953 373355601 292240565 45506527 996300069 816283069 85762047 196208585 272573243 810117543 567569165 293971151 977253677 652909327 359086757 347088277 287652363 737842809 854418007 373946051 613921831 726052595 308547967 560506379 510021661 926443283 54386745 439618857 800872915 149545467 331506801 614005469 573661043 547745869 381617875 898410997 471528563 911361337 757221339 133794879 405790351 223697781 246797001 979663255 721152715 410067519 696741025 558838497 548604529 412552797 570098489 749415173 797987867 685914399 111889445 202725877 605701279 916660057 581614023 176052141 507127333 951468651 928230985 183174957 860977945 170722105 478285975 722051971 444295469 47250229 861849965 302140093 456424543 176371537 326382665 652639479 68417011 528471823 361298035 76640085 897841013 606365553 420107263 967734527 268143547 522423307 130754241 401294887 742561245 866807277 312069979 92537097 245674565 271357115 746683445 437688037 536810907 72734103 528621183 241285385 66291667 926432817 326681395 15373251 344824107 962941375 444859405 96350065 125971753 271706111 194482331 450291569 2736021 267064887 181330729 912669489 914736519 47923767 664086993 294726435 758527065 109360979 854217075 373365181 769533617 220710251 437406901 510247047 11231097 322296805 627250443 475599111 639355623 285910701 5968301 926693331 647115125 946752829 258126999 189139329 457512683 229936015 852332437 219217847 791834963 262267693 21287735 113706525 951659521 677178917 117511637 811183461 201425553 417144841 570483341 8348235 911806953 455494909 595964491 88925841 879510323 912360099 975279293 317021183 890099941 474567979 384912219 815184235 105848251 961775179 796179557 563979179 323353529 452428353 676883429 118522533 253958443 112489173 425612459 280629313 982487975 933050961 371691853 878915953 940553989 974876305 266883375 252213553 387730029 249918959 109458805 977554307 222287691 967323217 801481233 44226671 123146321 119138857 397872317 144558859 29715583 508937579 40641015 583989869 71791125 631284883 908624905 429996219 880580513 758584747 347933699 510257181 605337849 500826945 954871995 358300101 288618039 958722919 672644051 237641967 207743679 605118145 271080115 870348765 411317823 962099569 237059979 534682329 655420331 721772583 854584405 847848755 271502397 684879641 861151695 244420169 606136445 15815943 552158339 208369785 245012275 601214003 226848703 897223729 251819639 824277359 476627613 308627683 873623203 357218063 560091901 953182215 328913245 540188147 276368519 448891425 892005519 312970369 380556715 34825145 598484847 578172839 7085217 708404325 270190969 67638233 244328555 796229563 898709361 583336473 115324879 253270625 545083489 118539499 926694495 811243263 420994723 857483101 393353587 830654281 491452621 760812551 775049515 185014007 140303559 476256775 137692013 237213899 977103549 649989121 885176557 82996627 875856929 302860069 295618593 824897311 976459953 417327147 379894859 778848583 197547377 256925773 436586097 765742321 732209581 959030355 853050469 939930373 777764345 432823181 831879101 815756663 247118643 683234001 645045981 899789887 812786557 92111739 380578793 129930337 488542021 120399475 155363285 882493669 413281343 759361317 577796951 450588129 187361893 71305355 459374063 14662507 809760509 303407137 342811367 377440425 332471189 44541677 675363919 834539203 947521791 573497469 512849405 725216237 248559703 610473449 662025363 901087839 803729921 340734671 569218169 705588061 563176619 616737875 230599393 341107247 65669193 804505639 631373505 8211755 441696535 194740093 551336921 708936361 628814487 802392085 317877681 178940939 588618905 716457783 951046813 402899643 225564207 199277231 577353393 761492267 335701173 882840531 288572111 302631383 7621841 755045507 871125407 697561153 683595117 340573733 275441809 994943987 238525119 966442151 755192543 661659519 591797059 335443327 311491717 248479101 777180349 715535019 660900689 280743827 660204857 588374449 228040655 844133737 178937869 699350175 567544921 497762227 185555665 783113997 891904015 529417513 101978733 624104729 313282521 494182799 103926285 733251175 980953957 778604719 273153059 63293225 703115313 119095131 701916013 824177937 776590967 897528427 923622385 932574303 552849477 78690245 952369143 329491163 801468007 254296401 447115541 471139537 735638389 977779715 662231849 429760025 469644499 136850131 786573655 719198991 418218405 11904453 670651145 309876635 564222943 739010787 661030643 408729643 332284727 73856319 299437077 41171123 436385327 327942129 716739759 532506549 756510477 135540511 401562449 381726007 752932577 269405427 285714893 660080579 182423687 425867931 329974847 724377459 922465691 92040535 887984651 458880229 747585417 654582627 647314143 16076351 163766397 375316239 6899119 878965805 807298675 29546411 81341367 395192039 795208745 667021457 473155963 449688365 251948585 988124195 820282823 279702849 907240899 349620427 655498927 28051959 7480845 906586109 94861455 353370015 123648745 124748593 11901197 15877915 490925055 756371691 307263509 754697937 544701375 663383477 632114905 172561839 121945187 469801249 177469655 218276395 735618793 914997959 197982419 175202115 727363099 187699021 443120601 808945023 64509319 775986013 35454525 705202665 958063751 696960165 287574173 618787099 257116987 176501989 865818331 732535347 826362763 542248667 958432549 183646679 405547559 674093395 770948335 63313203 900222855 843048989 307105267 328713471 880798957 483375383 644796727 51168891 594488159 255956769 624321033 225559147 335937711 871345959 881807097 387995677 898114677 712053015 123101927 717506665 79803153 114288369 641982967 567259307 871237291 158715315 303758483 240461771 634166835 208843881 111557745 422944055 887062625 923309349 361036171 503654885 604485813 573252607 586503465 753968467 338743419 636778525 979789013 555134087 433156029 608109225 173513569 419759889 727395417 700338643 416863215 422332933 459752683 807885781 969186525 879970563 13556703 236307955 708210397 720232241 874001507 909265783 731965919 702067771 743322991 4948659 717806113 500368731 917028547 573847553 223887655 498174027 25153001 613076675 37337277 741896789 956683567 388972643 738722295 300270405 691720881 529454421 152860721 862510195 566188363 763101715 315912209 88548797 610455975 120369693 127167107 111709831 110513463 709839615 2897849 512688833 22779697 201101641 727247923 822309345 403900821 939489177 979245489 679440357 799126571 886761361 398892097 787942995 756690823 376288983 101877559 805464379 400619005 428889633 317296177 12013617 830616751 869491239 374168595 613951317 460358277 891827373 736196101 864575565 505895215 659288445 562921089 273082181 559180839 562223977 516365889 8844279 311830443 679406923 142046535 517742751 320075715 516670725 849008611 411874563 577297217 320991363 39137701 176446833 467176637 637601461 151288429 823776193 824468887 165263509 279755103 897634383 933473527 328603689 677436901 734146819 297933005 712732021 610260661 815283275 343820497 671874961 992275659 519703069 748520837 973513109 163008107 421867257 794890031 828149669 607454751 97651937 79570145 691003879 94980031 910481511 289478003 686754705 271924071 526059935 71350915 103519197 117837945 804939049 841087357 878192395 838235809 880825131 972480655 804364135 9606869 580738131 338609585 85844547 967773777 137408725 226160549 254252281 421499801 322000243 450717425 329891819 29786489 576374897 387293925 613757829 279211527 688787101 285523101 777090359 323877787 385781327 355838453 945368187 842491359 365001829 126755481 86375381 651756217 963518787 943289589 668845519 392897891 211843033 338586437 768267771 65748821 130124445 472167559 240248819 807940949 3205261 26707333 455699547 207619697 259861553 986451919 891010521 732429561 819840149 686716603 321987619 94437773 316419151 993107051 139758835 41708561 972295807 807007943 941586697 881638575 89347531 884150913 31472945 646066909 943414113 3133453 690420029 53858901 924332533 335449775 388170503 101340703 989670601 770448239 990807411 348630915 355778209 34774043 603598695 504373017 353952973 632968269 64510169 469750203 559999521 108487781 525563331 389638031 286209531 231389835 383195429 973381375 47770437 309309359 773360139 261109185 914941801 536493195 466901639 557910481 98975071 302801053 237912755 342587507 566649509 935736109 142367155 730542387 912241219 318458445 865047725 327836901 717608901 977344981 618342871 664323751 307054145 679026789 109421931 888824539 494965591 753805411 515089577 860089389 538688557 345796867 930574559 331423381 514745969 292969277 633858651 758399563 774596953 648295629 664392057 882376917 206440611 270417727 286345627 137475071 519868821 52237539 276581933 347047135 540604413 848476113 98570143 976316621 726293299 460215015 279878765 991945843 101607701 450825937 135047191 353018553 727147271 583206653 847267881 423285203 628965625 113654435 298105141 253633601 831657571 698399683 671072213 452002243 638529855 216798247 367622061 194760297 68947223 438084701 941943397 882186627 176792567 296424641 701776559 603963057 425783157 620494959 503885637 727449303 780866481 735794259 908269037 69066527 833302609 65059865 697582701 333192703 656101763 833102653 710930329 394409011 398202621 711118333 202453579 753902525 236407037 295817827 8749671 577221869 568974153 52202301 670230485 159008085 312192049 387787557 984886663 45021907 322950537 876211067 622278263 528714887 295926703 655016807 6090923 298547683 265007757 799929563 457675817 588438423 478496397 226192779 869019141 628613793 176629671 402316795 889397593 210991429 237450843 797977715 248703049 640461327 368342701 706227201 11804925 421048019 558033195 115789183 325999271 711358383 275353579 415326861 225705603 859248133 620402573 652498579 939978961 603071363 666933815 123708865 825639901 244505883 814638231 715758095 409721083 917245451 473092835 393713727 848678273 527966425 381029849 119315159 40616915 282339405 493291455 462429993 482218589 389879423 816620389 710514765 424034959 428696009 449355551 923921441 288756197 864099279 240182221 166859345 419274977 966852735 326767059 909123403 416810507 225086221 861029411 768679239 241209591 545431283 373637935 280047943 519572289 880829177 536327673 432128529 11621767 304013863 376182531 986326325 936770679 688862421 723747681 767149583 79257537 679409565 902693795 530107579 18330401 643117669 733670123 974840101 436476247 590410583 111625185 837621241 23225137 270105065 665579437 420631987 946345085 892159447 514172171 905002387 415208727 286275109 950579511 409042077 281157091 798978079 25745657 891488423 823673289 61150297 856667547 955114821 713122491 804916145 103783929 999234265 6286005 702300745 642477931 297700749 745041591 412779661 563605213 150618189 805917647 845472819 297029049 537500117 263978507 469370169 996276985 592289699 716025225 674609375 101068311 395062017 10811751 235700915 164183581 711329789 160593619 735313289 155418263 858870897 727569917 58323071 40958621 647678717 218515745 620276215 243586509 18197001 393900417 377651359 298717515 209710789 146437221 880228971 681749191 46662187 163202083 370225045 15585143 998573047 512523537 965675427 986425113 561907639 501035157 37697635 689989875 915191735 596787221 872302823 801180373 964563985 395774473 93367435 965942803 600426405 775804135 285405171 527603341 203068697 935011377 372563981 210887593 79215585 611959157 499435789 530918227 938082101 603050817 251845999 550409989 43827473 179692595 93569269 133506233 520258881 651486697 423923119 632172537 738535509 409841169 541210863 557150929 642421925 413357917 882383955 859818201 52550991 425272963 412521147 674450991 290777919 878305611 677037913 89923191 766694947 891156861 598291101 156232673 618225523 669130729 712169285 738838051 457861999 608600939 472432469 38436731 522289185 139087335 890314009 703450031 750686809 367737157 136108069 676138767 292181677 204342391 571008087 727269233 496668289 950336633 114783441 498929455 437140729 199969613 650481407 878855733 691904519 231755517 364139417 220227823 959352165 441774233 730064279 127166801 707668371 251207487 930788159 990605789 735262933 188131085 661204767 197235351 424705601 105534001 613012743 853348877 516517547 647094237 186148631 894728791 415569845 261321033 975086769 315381779 998651591 966094519 151086979 118063461 722461713 19678325 554111105 840311549 383184781 872346065 635134695 606805777 283620857 680678953 668739895 287413855 124381151 866715613 987100737 316661039 973603469 846725463 995332631 803478093 476463901 368226825 65562389 71415311 600055151 587273071 790871263 266651989 190539051 282037771 413882213 344205445 581302977 720943719 715522007 898006155 470897257 72627219 48281009 572336097 519258405 829007533 709939643 275526531 395879355 937306835 719611135 124902903 232637373 91459379 950371281 552149579 453820547 788231551 700506831 718893847 101000237 964594543 164051419 877214073 69646497 994750919 698584353 656087061 708508307 974543695 262555159 35415579 496012921 299574749 608367737 170835521 266461589 644969799 879874891 586709959 329989869 164332659 229282779 613882735 533803603 77573193 426437305 44021899 167411549 26403517 306020037 714098161 955129967 38987207 556475425 831359229 333193133 664116843 469262651 350702741 652808203 813626289 777113541 782472747 976265791 146176943 36302783 986607795 164464073 882515069 877897321 458369963 223596019 195760955 737399121 11317785 627295437 797538073 308916557 743985547 605738029 165505603 145941367 494720793 430547637 115669751 730998325 77095521 750884045 963666039 500460081 510189703 263907751 667995661 876393823 324448571 145008697 776610313 729149951 283595189 985417283 458000073 386290067 390615983 73451341 276858797 416695783 253463667 148944299 959938079 97432589 216033229 22662513 176895123 732289895 485126419 961615233 262047105 34124949 233433637 523479683 611862637 257813123 308258409 20728807 435551455 962968423 448092109 541351143 893811053 34203581 928103879 223976319 710132911 781320009 976281683 579529597 743680583 52771863 731468029 879440237 907885535 439289211 943489485 209365929 856462889 340430099 861802589 161274193 313625571 19077569 466215627 394331469 264226505 143991473 87664827 935411021 293756587 582877787 260937821 475542217 198803033 436048247 129885545 71963137 317016237 142888971 536900633 527426817 209270151 63465059 540829751 772468885 618776791 141381141 637633551 861820757 908540809 386194171 368250233 860479653 929367709 418676793 243088593 80253865 13465615 320396605 655477759 862240341 662622703 95259323 815983983 847179359 516162893 467882413 889407259 19115593 332807491 183731803 264263551 10744409 523566579 881865037 400709281 243170719 533216647 709661787 79017233 661715703 150313779 123929503 470298851 168722941 120377391 898302079 221383863 191140381 311724223 761181861 160480945 670122883 885397805 230509831 580602755 699194923 652250313 758760161 35406687 936204499 609456369 92136117 535819527 587194885 161451013 913311059 154672317 277618449 285413999 783169741 525503827 673167629 369430947 753373569 481646367 91349979 970504473 26647313 741881085 400513315 150140757 984572777 449043285 913377109 262079713 329648063 3979029 298161835 694517071 545125263 702288051 517001763 181052985 269220767 26107181 846898311 801825857 861165815 346212105 930384229 511018001 353809389 223973719 375444503 506442077 585006367 449814187 173105853 946884061 161236079 885393445 77703999 693660245 520852491 983459433 53296717 129005967 213126501 171914921 956752991 405444957 49439805 148644247 261981367 775943577 380763539 412020341 589576283 565918501 713939125 961739783 233946909 8667371 556215865 257667483 108766357 210797279 500638457 809244167 155504419 281891065 139004697 1795757 334885615 47514173 179389703 545507951 466705641 93324725 40254583 307991229 775396809 773139315 900452709 605554317 157396239 119738257 918510355 564692317 413936647 548158769 717348625 736746547 887291579 355906941 913761841 687877279 605697289 966043817 235367823 260341173 967173517 510863085 159692177 919365397 31929523 622672781 67394785 95777765 651570601 902589395 46343029 236452305 94722407 536934417 781188489 42653201 72944557 108776609 686169249 454831717 874666501 591077605 654904457 895781393 923070141 493740105 905138773 592322275 39818737 854933819 720676195 10379315 803340413 447002171 28081237 408420317 553190667 24954567 270025753 969519433 943869709 418907243 874569953 923418725 924791225 777150905 161639723 86957223 897339151 254728011 465273531 103247375 220672727 947851971 398741405 682784287 938821029 620056011 9406247 5882601 14501325 33196311 936119539 253642241 247844465 357234017 517981669 940543367 809351289 656700009 285234987 92697377 171547029 398155771 362214201 139842299 110106431 668772073 823238857 262264015 537958837 444091917 419835363 898374871 273677055 68366665 320983759 518041821 82929647 274625671 394315557 639287599 452797213 846583483 659477183 981175711 50123753 257684191 193242819 159132817 528825723 977669875 785215643 377911271 553375683 674126595 371190525 253115921 909474937 64288801 544236259 683806981 976851999 975745383 571176597 595003201 505106683 250596087 934068381 548721357 505768479 654644987 480765647 490237493 207159907 404058791 542613319 542268303 936578407 630382901 921480043 503946619 556965009 648451813 3046631 583722527 512580629 779848195 6323885 451611687 28462057 406156769 584120827 668556749 727767759 61008345 394501973 422693325 354880845 166343757 240619399 288194669 845213875 825373097 351841445 660620411 225959965 554137949 29444877 534657103 680130919 246298339 415801953 986277061 296317501 96870081 601705615 67301447 955641099 348988285 724282569 191615423 759062029 837198507 708535439 31860645 65116225 667496933 332006561 404191991 208885361 942890445 375896589 942401085 108939821 979323151 5733161 330385027 587095243 659034459 941284495 72547423 360818797 783512683 189615651 365153009 769612027 816273155 441540627 605477087 4572967 647685613 452436435 926559063 955800421 927166205 71712543 146973453 248678137 503331337 940219641 493976387 927754475 419373557 157740209 963930813 719743241 897297835 795787993 281296585 232465645 129921825 396933709 611428415 253360375 12119115 615985971 514574461 15716687 400135727 50380789 756632679 647519973 117544921 788168265 492465005 112139891 771093335 764159531 289011335 524494199 138499781 152714975 37373231 43378489 97655109 307790833 95739503 726562763 804427267 343892021 43766227 671971077 402036527 225069255 323659377 141087111 350020355 663407629 717206505 196036535 956950725 968892083 311741281 791610569 705623995 788119723 465389703 717409205 514900025 274753075 108447887 669261879 889650329 908048081 436660539 708914139 659023421 561242701 954470351 941069553 193068177 909106621 819509275 808364433 210505221 946713727 252010355 311075993 16812309 396243253 683925943 48599221 110805313 952215245 686387275 191059795 369152021 35835259 720711967 344372139 115981861 136065977 13344681 758903229 262916615 383227727 543022057 985670483 695140703 669030469 965714785 767859453 520060889 82904563 496707107 800030481 192771621 217747955 347485637 548394673 482903295 559865129 434437219 844709575 782923815 754625733 613161381 540077311 924035945 230937909 625770425 712695509 27596183 500053307 280983637 176366727 484996493 218500313 261158839 790106655 93964585 717577819 517068197 582403179 736167513 306662229 206901869 957254149 347305485 868621219 413756391 331304013 791216449 829808747 729897073 624002155 742127093 112138519 770790897 454308945 629144629 950374493 712743635 831632307 698241301 790291769 254203151 197313301 410270123 554114543 722210597 303347391 322353691 450671373 444161303 970065855 696780433 436115555 5408119 644163311 214800957 460455439 841598043 726974447 486902363 658124153 1732191 258662439 186305323 216518727 368968107 311572935 867883771 833551219 671217389 649524423 217766169 989342773 749504091 429959145 149520097 714260243 566905523 879016883 11172023 688625371 111413307 423744375 360860929 859949981 720781251 615188557 647534903 72583609 925111711 574638099 979092685 653309649 283820207 282313845 613451851 916919507 456906071 581876705 679140407 135358195 777930889 617714319 538351653 869763245 163894967 660196737 257222065 762352323 680064737 741077373 936283001 851113029 89982863 893536275 728317483 213999493 615028173 988421279 379542391 137939231 27315251 641627453 219328281 945182457 324189149 941301209 695709651 606083389 77013363 320465183 30030445 230104929 473253411 140864907 826271931 702697249 175571619 639125597 80979609 887608705 502990897 390332057 435835109 405569997 97815957 584680469 523086989 581176985 92370457 118668389 595904897 643672769 354631831 408512493 954858941 235200107 223737453 574348497 525206595 290312707 166397057 937141763 88295451 655950651 207908415 829334589 884720473 519012881 507861665 853745405 457409049 197443017 336818977 315201421 121895801 641310191 998171337 347557883 799126183 833884505 361580325 863384097 113948629 133472545 142681933 803023519 257328441 191457195 149918429 302865885 560404507 284638629 845217533 558536459 311281089 409731841 611510107 610847011 148845697 815768575 520562989 278335457 723811505 355327007 717282353 437390035 354089399 636448559 649290159 763067973 252591355 873107525 750628723 367120977 92350703 708998331 811598547 125893591 576004111 759329079 654885807 942415229 865021917 806448803 404669803 278907575 352570337 338193205 138330105 131721917 532818095 930054503 64266443 968291211 102521059 324981505 536069091 30883565 664682523 661115405 352150725 245193587 397563397 982875615 131912575 443178869 362080595 733954067 190983081 293375505 784093885 706211727 239435103 534236211 949829125 137961341 260588107 211760521 269340921 915183187 814605463 79427467 959335527 374557389 803221499 601508473 42189101 425216751 137190069 839777885 740816169 718363397 670899339 507204103 990932041 329679013 368570317 771133965 415678847 902686119 276318287 116797395 543512515 971329331 300247665 811382397 272780567 839025845 73094681 428225535 697471369 312310495 407962549 33040397 945480743 259603633 406534457 941439789 912781839 974707307 417247015 736066465 930044257 534303899 301833603 481338495 215033415 125009687 626117339 138669723 816877043 546241017 143274823 721936279 63762849 162272421 704995171 364483803 672869779 212096201 711367513 413603991 301145105 676583257 821011923 838250693 290120305 691101583 652888329 638800931 796981257 699658227 711805369 627474235 732047167 788364621 831455787 805209435 173949563 865342901 438822185 976868765 852113711 250847109 742400783 857812449 232605913 644483171 770597047 368205263 148659701 503868473 89753225 532415959 696672019 469538365 932047217 892875313 433465793 292000747 302053865 424379871 16476573 745230855 506685165 17603495 504240455 174841245 626544387 754424091 917365097 915906817 484747065 614094227 579177909 493584591 577206823 550159151 696403943 854911725 124873449 35332053 810656961 459744647 416957993 463858233 872853773 766856207 188710161 46407377 551525531 329986627 348465241 582018271 690156361 34119975 732273983 739036521 984501751 13094407 663622795 537068609 942891919 669323641 700325769 661538557 207590403 779386453 615460111 65541633 591888207 984448707 407292029 123307889 303116405 185933103 498578105 80817217 263661183 977429325 409525553 494778151 217277309 47907607 34323675 608725411 282375565 179450837 536308019 337512191 205000143 501020943 715504453 905754443 504349037 529168797 223222937 264092253 399419033 698824345 928992841 38157015 126058385 782987367 210186739 958054177 95065489 385112501 58593467 881427053 770584553 789263991 606524497 747070897 304087785 402492649 500300779 800364205 402506985 960848013 719777609 484454121 147477839 520183091 654091693 242994873 752223619 780289005 980242153 369288241 706899449 76272663 454365779 772603443 476656425 606732375 49752007 841979239 419740823 326098839 260931245 50964285 892550605 404055567 686476019 223809263 436889947 926585909 451841549 440209529 289943519 289784787 686564861 998396329 543487737 233067763 966533191 603517707 421890131 371404011 69489403 367147769 926590113 983392595 133120429 220049555 682715291 147946771 107191421 816587969 140484101 210289495 640207631 581869363 110136487 180591249 764916115 620798817 267391319 134001535 798704577 45096845 695877357 324675623 480446931 671476669 642379595 849051857 36047251 87964867 354010715 184326931 225651533 467578677 585194769 189795019 522699479 763371639 36438629 360518429 578763921 202158511 765493851 983436659 705519201 144608971 617471739 976892033 275319477 220866951 442883419 434210631 750644099 165003363 388503187 354885125 645242697 398429093 931971781 297864011 509223437 597769309 102301211 298046699 975863391 752412007 392246217 828836609 574835283 439469663 371764487 468104945 88207497 666750641 914819097 100106347 39003429 850971785 550683977 197655645 925515479 83860451 22155241 867695625 27571159 217005949 543391569 738963953 702007519 613212641 64431079 739478241 717551161 366748255 295150613 348326637 962506417 412094989 618362185 624111729 958147231 239023821 937725699 514011411 605631711 348904519 458628033 194746559 560092633 882684139 594158605 125235367 385631355 29660403 935708541 538269257 804605243 465969501 570153897 325252713 748857623 987737331 487453491 294815251 253829269 916937539 572999365 309418909 659771589 625658279 356896787 96981407 217356859 385162815 915971797 274706433 761412631 998064371 399405007 747617519 295349501 993496179 930586571 244593629 873606687 761015095 730396315 521385605 182557743 820228225 780326425 581150189 676955247 820291417 501811495 476070243 313241505 680563085 970159791 386358135 957667609 71019701 202920613 463452937 734021543 714560821 424909569 61871677 93810351 71938355 912577735 66509181 861754131 330604447 921651969 937031807 494561347 572056881 478867393 183754557 394193205 288616809 917561633 136346879 612439399 413692819 290549827 679418191 221564383 994151865 370713681 315195137 694814765 443087801 804082559 351190321 665829221 96811055 665436167 466324549 102541607 902261127 239877417 410938599 155199127 205210863 61979697 765979917 156809575 413895519 494966127 512881395 22541001 548968087 523900737 448688157 991705727 50638369 997620999 364057175 704827341 442105419 381738541 925678261 697707649 713668401 568828707 767809171 58849779 273789871 818400355 739726487 48055295 558944879 966187377 304367021 186602509 54650595 320285655 425910791 248990731 52364353 535750695 938012197 578945391 664579209 278045435 247991751 742127671 365830019 616375797 63432955 387394539 60806083 228509377 932005653 789851799 720096157 399258637 345444275 866395601 59997235 528098457 97426873 794222521 337303661 165962275 148028497 418464243 561526267 100236919 3141615 217433265 744636503 112852583 166493011 630998951 802452415 534587085 803895933 258807569 540357179 739473803 995435965 962208953 181746845 119130763 562671267 621918443 763791229 47405761 910142223 168839551 613074491 668068135 480110629 596448979 402284031 91380157 24552783 671507147 207008441 114296975 553846595 163719639 144799265 374807727 327064317 608663533 809943225 770732343 417878721 394265483 2547911 766173769 375237401 968159417 794418525 118650385 265976797 931278339 792725331 490480575 448031017 196375423 853177929 869773453 519766623 897050573 794208677 334711999 461537067 81294099 651179419 733563039 491388035 621233149 352259105 992400255 596224931 874964165 561212409 386741945 660979983 695512613 463570345 291267761 433426323 382440551 281873025 971958221 457369413 771058777 46405533 883998083 621373053 946850895 721446105 653274957 877444837 150755111 674992097 417945003 693436003 574602569 232994081 362054953 258957873 123484069 667572949 226888025 831157703 690890925 588101115 10176469 466918379 635099489 897569117 195767103 279616427 855299657 352456843 741678659 572641623 252045423 567952603 939146385 327681935 196477551 71816303 686554595 291452471 241025891 261581615 486959871 446221689 196056051 172879821 585595051 364082891 959568203 509185725 716817595 964659175 666919461 722169155 428889865 709350869 496250813 196440167 552581239 129691101 93288665 574416887 318645745 149131927 869380807 512209293 547189095 4892895 742862431 720383881 610674387 875059925 86530303 844989459 240691515 99857643 735128971 163075611 986288549 441130705 54029683 659780187 97020453 289490051 465815981 37994065 354429653 785508169 454170553 162017605 508982999 840685229 304006297 799039817 749145943 697817475 994068959 515338805 872410757 949120233 910136481 94972073 83968157 692254017 225282171 421234955 262555359 973402423 671951509 780227215 243201687 877874883 120334491 674420269 363312151 574906909 525292487 934513569 484923321 932244683 822153173 651367031 690956513 988287129 710130187 895327999 997565173 173491869 842948153 264142673 140438125 212774961 205951411 484561483 148933053 298577913 723609175 312361625 601920109 604088035 894692751 353236905 825099779 96146721 792017733 285681843 254379795 937934643 3058417 818002359 608015927 439659737 652295315 584922751 826227473 850062371 674471853 350882715 891917645 97255009 847565905 314888545 489826203 499319091 974576661 470714099 757902007 926132605 89020181 835655995 306491489 676585065 545949433 807899621 880242791 89796717 166021615 961539181 913842071 400089669 205127595 145137937 334144205 559207411 62060143 914924507 989830123 692950983 920547841 939415449 147702493 537059667 183960235 922950373 591673491 433172085 744134215 924831007 966978569 363954253 347878707 724594545 641921343 459974733 318013267 196102599 531995715 453174565 945005849 612107227 343552035 591720915 64452215 862843439 160310267 995715739 983844845 764334859 495610351 949298185 881805699 421047165 762661925 549888497 632053189 532023903 848895955 852480113 361176267 991234385 935039539 651609835 541292337 690495931 533813127 57588493 782514975 707392973 106386967 451785673 987598147 334309759 966241079 816439903 788262867 454366099 251557441 504847183 813006733 573019791 652161433 421236583 731162807 847955909 370250151 542239933 606763041 532351565 225837533 732221867 795299871 644233733 215311287 381690325 671118735 951034521 149194677 533330729 482959579 519639159 688041061 159225051 153343725 582026711 735920981 213728869 434343999 358031803 627373601 925963407 366538699 326157033 674528109 317786209 768508955 86932209 235489247 263963187 917094459 342885167 500883759 865067681 586148547 709484479 614554385 133084043 833991375 683438733 97164365 541457697 185691911 771434565 438115241 736941783 242820249 479608675 214259963 58354281 783432251 412225831 530088985 860926171 381352235 224073879 889371623 120586617 531585583 3284355 587349841 45227223 513714839 345480069 862863433 243639763 447069495 373739775 145989829 982577807 220665199 670496277 440630221 275156343 872128549 741483961 350302311 103867969 240602309 911571109 558355113 438832363 120349255 985824343 383208617 345098421 622695979 907642905 948285325 898507565 862913909 243716089 346134141 922910503 352598451 30322641 55208363 283104193 861858301 374027841 47264595 789274461 939393007 406951857 97913525 983618729 28887217 911385425 778762527 324637081 848323569 966888987 38187231 537528935 38348005 882329547 139609169 316149913 822630219 808432623 851852505 785291261 861893227 183123155 84067807 888733093 540617743 899998353 670743509 421576941 298551699 228118537 643886903 334405241 62585553 944695265 423334279 840167735 371545903 175142797 283617357 197872475 553797279 566173253 975304223 209708897 352800403 720698373 99166099 315184397 109019917 334939289 72583759 332439657 51145105 312468625 943715323 201540813 469434925 980682821 487766345 995915221 666354297 574331093 507009781 677162593 572817553 176902951 808884929 332801955 914851869 922148591 650287221 306642955 798314827 599566755 87319271 344089175 110400977 459538307 858048237 547605131 682799599 261014169 700717165 59159283 126766951 608582581 458753871 459468067 741172875 812688237 24272005 197961977 609884463 431239461 877562123 145656727 389286835 515407361 424484067 239887977 874224637 405477365 372234261 635990055 283762297 343925429 668840887 302070217 546268961 766772935 464995039 881602965 37858417 906070125 343871923 544038937 616969327 753331389 631169627 710377253 650881961 386782859 913196553 483032281 945012791 447989113 401916409 989222039 163189941 784974063 411710061 829672973 447641931 206582559 562733487 72612911 348139689 35767805 136928527 145734201 524305665 904814157 621895659 49727149 28169491 79066775 206571169 724597339 422334245 629059625 993391007 683689813 105298439 966918685 547020375 386339831 333934607 802138707 549107265 72012773 583466521 299573363 381808097 249054991 158221451 853099757 758190015 813287589 865624663 393010169 849271665 430789667 911274481 669961369 529416845 958022737 457689173 140338067 88424377 538844217 393112077 11976825 75349405 622427695 812737575 65714851 413847531 30012113 570378039 963708977 413663841 426780673 252628059 726531337 980325307 310017515 623169085 793024991 356580041 355070469 311442439 38172969 952144217 251687947 397097585 589110313 877586761 687531267 246902457 615965157 32496505 425785397 549792679 926006831 284617939 732302903 581791367 297311389 11369289 19970023 635503151 840058259 74701529 263907175 354365951 354721077 74468479 111608613 858084061 232438391 423780683 12171475 460972087 717617167 246785357 525973617 572462337 897428861 190979229 953171263 403548861 69458955 285213793 997109963 441369199 485917641 307194817 557266411 513346983 133819533 981986033 922816953 722787705 380263161 258936361 158530203 997572483 355841397 89668269 532914491 587640047 299827507 110922693 45975439 424490343 334886185 417293255 128891857 45591587 723015447 490572555 134477705 678799073 137361541 223130865 935710337 995007721 571745223 684255977 766360525 656897543 515928817 168363359 244058825 613613459 450633957 226446545 158992411 963514729 365032011 124634305 526313645 76560113 904899219 730967737 134600885 307114007 961721591 489953097 737547439 300816981 469502325 138490127 55944287 458415015 987850709 784392107 679419857 323540371 480003753 423820999 28824153 974489641 501790793 948624151 944157077 562333949 59155925 349333843 603066471 550299181 601446965 277643583 313089531 411059043 831487769 606327461 11515593 693660361 661409785 657090645 756404105 597203479 817832215 428443949 355525697 47137677 368391801 795288333 399985981 568222445 131691761 58986463 53116947 206142091 206351125 800498839 335408285 701099575 21009481 22473261 698846207 290806867 897211827 855337125 692635047 442522821 925978945 773651977 163166281 687641595 306990767 508329321 361513695 354679787 488800893 322021347 309281713 802093843 444281585 920237463 454486343 722175865 471330589 717858991 619918201 232695725 241125335 906764895 849281633 936975811 171848385 663402975 457576293 637489753 291327301 654706547 899415087 426563993 363174799 153797989 308813237 247269421 67729307 235270407 593834291 593508431 214707751 908348339 515316013 687431353 296416701 569588683 895222381 476158901 953368493 23007673 591912203 354310159 521863437 90298609 14638947 875287583 744996799 755628779 416135959 318442177 185155947 74249259 914296339 935687773 900995203 156313915 271116685 203361249 906749243 132110251 415509763 359580099 763107991 92174617 89321781 694274305 129851743 79448613 372139313 421061665 774287649 559412091 566847819 410179635 369675575 278809289 222059553 566107083 614853569 946155471 940770197 522640903 228899495 425193803 679122901 690267025 867944601 546909191 480959571 606507923 345015311 539110873 243379407 416055495 587888715 450664601 991794761 219389031 819769429 819555625 671958543 12054845 448499195 546731123 658365623 737342613 468439765 400727147 243793179 98873159 911198023 958011147 397915487 839038639 566576503 293052243 258302961 372679605 899294293 64877135 550673029 973938119 681456793 853585935 753973015 107963867 582773699 832878769 298894057 583668079 662658847 573176149 530219403 174238091 549044407 234948391 617249743 823092665 175922793 589615191 848341713 738743573 845616337 289763615 69841143 866932537 609795163 897934531 653594859 933738827 751592501 660578445 851161763 655999741 537916247 825309903 838249051 691981185 362385281 57783779 62350231 338493593 370627645 274077483 21555747 835635081 732719065 247916049 531801875 551223839 381771889 889024777 170668997 250079667 425223393 857797259 773817051 868509217 916967379 246992925 877090115 410730705 101224121 590094147 690127151 336083377 435998921 966406293 575295773 222116919 275184131 270599851 362180305 677541985 23537711 817577767 170780249 940782007 373208033 358939573 693021445 405212227 157285741 186660101 964918901 935157153 967552501 854610385 406853515 768190443 365096545 855712733 694584181 853017799 48271457 83862771 721373863 624287335 404398959 125154789 387139547 70524541 227151305 764327821 61154585 583479115 512546679 956299725 492904105 815016597 796204875 633364113 551051299 343559849 413336029 622760137 165657441 604824927 637420685 361853295 448264585 244482323 7903363 957596295 137863685 358222255 773481391 903851035 655728011 457037725 424081353 557229373 614430997 382921941 41528659 74886919 202186987 425659349 401865363 883149723 274609047 80425123 181019291 524733733 19662061 945736655 482973763 659830485 102314249 28519279 267329835 519274981 72366929 861875743 209337017 358008475 679230833 839936005 455204129 259224893 795986011 243298771 107910745 51163423 240099661 876912573 893523747 380525979 801965771 519898751 854667269 705842963 905159073 16231523 14729807 517821425 16607203 104642615 205366557 663981993 407225327 364964429 68175947 185962933 409683815 279299977 300743557 801754261 64365113 743329357 574421815 513263317 179873687 602843017 953913757 986650119 692223745 950605237 281073077 499319749 586106679 696935371 552085577 828037811 546849607 477757011 356542185 194662263 516822919 32731741 580707563 253060551 771807377 393153663 548179057 531405661 12469833 43373013 744503139 539488505 645628637 372669701 30870131 142443879 56868289 121709889 404847125 660964985 83191473 990416701 488785805 708921353 555600047 319582263 819192803 907116281 615662347 254683893 731246309 26439221 961115735 16851653 394998317 677915565 525875567 450756735 492952603 735896413 744126073 407878017 511913175 632916037 594867167 876290223 639986513 579811185 637042519 590919545 583828035 958289139 548278493 397463765 547543851 272503013 361909 33182275 846496593 205192299 583381867 411243717 40748743 470529707 919497939 471682029 222645605 763476955 800870665 46814929 136605131 209806901 814458483 46560525 526110815 11719929 907990461 525906889 237868629 475673971 150908633 442244273 10114213 355557367 505897477 396696831 281467659 458578651 985227975 251840623 445017875 593319299 335620839 264541767 852531981 193545051 51533179 836166741 303416081 525357779 641871841 940853745 189124093 656741989 150573755 21460729 839885949 560615831 347525879 169779409 719068159 220399087 517809353 648272235 558017979 101262849 187207851 544772665 855325617 847911527 595826277 218641723 315101099 215809733 446379519 234226681 566371385 275056321 919414993 306377855 711964593 533934355 449221749 391939685 258762037 271725167 171815377 466471879 559197103 693912221 25082895 762425421 660068555 935748451 154477477 215418403 341392389 591319445 115398477 117072131 89972635 33649677 311866639 42652457 574308759 113616047 175094581 661146715 635629767 734019937 926336851 812400873 467997637 330878747 830217029 712010407 670312433 884806353 918412849 115481077 590718069 463653003 955816833 69065911 258550077 97089103 355103725 855030109 342932995 279393585 785927789 456792031 833790281 445865547 154484551 319834807 236226903 618402753 599606023 876052463 123838779 121480635 31929217 970231827 455404495 582356331 642718419 493843259 354800819 447570445 59626591 407156227 544265551 283920865 121486801 613204627 387133907 15248691 328854561 387794329 577061943 280837461 233522823 520743753 34991421 123994019 309927817 867550309 407860075 716492411 256480245 979976499 813288979 915329611 249550811 600395389 579735117 415992451 654921627 152335005 831679481 717590687 530991321 541531249 902461629 898274593 313242495 202442335 641101069 539178641 949954241 232848723 551410975 63100547 896188447 839467973 263690741 31890577 684840537 887205557 817525845 420962143 733131391 591474343 616118735 64805781 802804451 557212329 851250111 312860389 540765729 223885651 275375169 287557387 941363231 15059393 791493953 936233671 556545799 907069595 242393451 835170535 996160079 873679119 699065659 421451577 359950259 844000211 675755505 117705113 882775607 249527333 212319891 738461931 885141287 888213707 518985457 235510807 149498135 839477525 379367077 387208463 717447907 108635607 767731217 575242703 992017585 227969137 61287257 39496535 241393389 573830599 48168815 492672181 237494601 386394443 529399053 508040183 233139651 362580463 282704305 589776185 876970399 115475253 727229605 849391519 491645545 42678817 596139511 572943441 122210551 40675393 415659393 46126465 881677411 888368813 186811363 555268459 603523345 238350593 597109125 577206097 98896303 894006885 955245463 882275451 815426095 525684871 140769043 178520381 220749009 341533853 947458487 878863347 58274581 362222181 202146059 435695099 930920649 104978725 403324769 696230083 710892803 806458541 180483793 999025341 859240733 429726289 816067643 370018913 162771389 150478321 568447557 442555697 222161357 390511347 237382243 351023291 642250115 43988803 101104589 138603917 89095001 348892763 331891839 721234499 628640535 874454583 271692357 920052353 736353991 288808539 310539695 565325807 891897277 356278491 885778197 449998655 267785109 960749897 296408983 117760813 601647413 87930819 830107675 720740219 861763527 602576369 99466325 181495281 598275521 225793025 811747259 924032869 171327455 606814121 94426765 40445101 665888805 599451431 749400277 744584111 233754335 722590275 267726691 11339859 62891427 312653129 378807501 993710475 129274953 955062799 573131895 926961235 664261113 842235637 883653509 472624301 356249119 555215841 677030379 716586657 713060205 817822527 505529181 625904453 140173027 224954121 438681697 84652463 560613057 569024441 180943673 639282181 324505493 636905305 415931131 385590895 458808629 210746999 637404283 760442401 811173307 840080679 159525723 554262611 145287307 396759559 856388867 202623303 999023443 682703679 348193701 578028875 552742151 293980541 483197749 508779949 944597729 852946167 667793015 894429643 419595625 35050093 676657139 351718917 973133671 725770785 933443831 409619653 272212723 297512677 504092829 521089405 489155174 947469581 961173701 556442025 476882281 844713849 962355479 364860875 547625443 696938127 632876035 530846315 810102539 54898493 920461249 429610783 851910749 363004919 265757523 829944189 422259357 470321599 394241407 524725291 11549399 433488153 635796951 872445905 333471071 352807701 999335347 101567011 579694801 693800007 243084595 29091545 895609619 182404557 84186173 979018423 460629585 504895055 927741829 774179461 11583997 962236155 793764225 701994009 64739797 942595721 320086899 341270857 585946845 264776755 672893537 55198971 228599905 884765891 353714205 483593751 712599799 228213635 287977533 909922961 89187191 561130831 441943333 381449825 792247819 19017089 750847737 636936331 318316825 912186113 62513325 613821975 408965211 158292283 399010039 978503451 543214537 899668265 914686807 884547501 718332075 156616263 555176215 334533363 829635721 63114139 983223367 677915157 222580283 236112053 630631101 407983943 611481819 967014055 872920347 591827137 568066765 167134485 271152075 398635975 448553663 952702753 145844729 73618339 615851173 851589245 685276321 2240677 893076667 590519899 881236353 11974955 637954179 386798715 70891041 765319317 119010253 2177061 962135253 840404045 27229611 189834533 909927857 189237957 743281529 205027537 553972631 491918459 322398173 365459721 971821359 218374891 196832705 812982067 51994601 417370533 888324957 405843773 545466623 150516025 995056425 698359453 232118383 917958719 542719721 972265297 968055809 630872669 451052205 371180255 459974215 669941053 106240457 145564501 834074009 812344717 642372053 123747403 259453719 666390027 730000313 38040031 839593385 111803513 822399137 120912311 885873407 40408225 721386751 335546879 248554641 427758933 905033107 241623663 563223713 148282221 421468765 230448967 300163893 154556111 327768491 438192201 826105631 383906659 114336019 447625159 210932469 466827293 504511085 130545559 646913563 852909557 501444835 635275285 550178743 390988015 960210909 190673193 541131191 762537237 732477967 313594177 470800855 675336057 643079801 499715155 365139095 678943539 555031899 160953053 263840829 637779561 934613317 473577189 329549787 872817989 184072713 372739833 283244615 928324853 999915459 447558961 350759715 573259961 616319959 686603307 20875225 72039119 154314229 909175821 692762261 578904449 374524685 358785411 448711507 617801253 463638107 263565509 616983761 973016595 62476391 290634899 705650585 968551341 336719867 416783153 834292987 223741789 925700395 785455469 521231885 272486039 411500115 325482397 718305457 485167827 795667737 19765923 998446223 800372885 861536617 73857249 938214937 172866663 600428661 693711685 588139395 932008411 34427323 620667977 427209681 259558027 36399615 205027561 493334475 11650329 2618957 737174445 13318911 666710575 910277883 932146079 157887687 970926977 230146209 611074393 302333251 360217799 594481959 22602233 231795803 176999109 715502265 919031333 438057663 916365381 607124171 339307785 210190055 92403993 377006871 645832031 707891221 920967961 948469923 344334433 710193489 376612139 652782781 679591129 71234153 196664377 589080053 596879891 874012405 976913459 253776171 811206887 728810329 397404435 485168259 472450225 312018875 515963357 6667879 90932313 537682187 653930395 289186445 856134989 328141313 521480287 324970735 566155395 154175519 252490307 994715349 874388345 185995435 395710569 873721801 169483575 757342133 130002427 658334367 104530759 749595929 587222829 272112755 989096131 48746867 461368887 509850539 990746953 131624751 817809501 410630385 47536127 627002747 502097129 782818363 97714321 303858511 593848877 253627333 431577657 760678507 239437955 309144851 683603633 813099609 733162829 724281841 415197507 852047209 287220725 275988851 317864381 302565809 632380143 146440437 526740849 396803603 255245493 581976863 449427011 395862327 50678983 27083991 510834069 23368847 883807409 650098773 460403543 285176657 867147013 371262487 419670271 179100029 254315613 390377437 231072395 494341853 365236315 181034933 902599553 946719743 938440873 568041205 578272241 77418813 635880955 624257333 305576303 841819063 519734537 791825247 694882843 614638677 171087769 695937179 706985883 842427591 547747185 162646877 648780829 911404679 166564195 616638053 698109781 104726995 408029261 787706291 455800197 752620211 606431761 895206807 949160561 720104953 997210773 495844257 424459879 464935997 964376271 458200499 806675263 555785951 603963831 525227755 368328533 619869447 744563027 808198841 181344401 596613285 683200425 464782289 324424033 1992049 864837581 979493679 685166013 457191917 663986905 302669591 755582495 758345823 212219631 676344339 729594511 721200601 775888441 250617853 235819933 792145203 248104939 970300651 288389469 35279885 396088639 499716165 96177775 808681933 438862965 891455413 155213049 701133479 139456985 620080689 711626153 701337233 977941693 530600181 186673331 592244813 311050363 688939653 934516953 665417825 521827701 321545647 346686559 2391581 508167703 782104195 976108563 443549 381335505 343864161 692505677 9226173 905316381 604848107 630982123 82881321 982376319 92032013 361958737 479511373 768737411 20680447 456169839 917057125 834060983 140276281 465486523 624104303 365959095 343524995 701286453 622723893 153924645 677011685 228720735 742659399 525690539 263607733 489130571 414985467 640299773 714397585 16819341 930575987 291035349 437909085 164438597 209645463 98420979 379642947 125371417 929894169 367202851 796589241 740524343 545248621 140040759 238194553 384477269 529662935 186987273 44936075 328348335 208643935 759543165 547729463 290686223 962944467 230689401 559160341 374083267 974463181 344984563 551867905 273743007 725292205 323097061 561216539 183904769 550995867 424479567 496857813 363595731 452197511 379743549 5070303 683465599 818379819 278570945 383042357 792664573 218666501 588044535 685325855 401501899 362097501 485442045 549915687 291653873 947510853 431380481 248369697 577715195 320181909 330778419 505480491 133127423 972488941 104546253 30909351 139119517 376290741 365157653 558754371 28466939 381205019 616817745 738337521 25006791 791761181 507191765 872584687 983647799 607793269 749693947 489248961 614645001 667304367 328127013 49938739 514501763 40648987 95572927 395195995 563130995 364490449 583149881 340609939 288810033 93608879 230291727 795844479 507826075 390738529 460648641 769175821 449867285 57500757 611552219 693768303 376275345 200030915 855687919 992750629 922068865 30370731 764406425 724713967 683260389 665658583 857535095 397588957 85015109 185532119 416702007 73243967 69768877 921589249 874100361 906207671 394009779 193912695 27468329 1328163 570059385 387428387 500901591 460575155 453600159 7742897 417921631 951099099 652271705 444069789 991231379 897056343 963254875 713607717 507527501 952955945 477822435 109475667 772012913 784547489 321112247 294015989 444808679 721461585 482275623 785442469 67230113 912064535 834928391 371907 339306395 211155987 887734453 676427641 195697621 530987191 656657435 566366899 784967259 623978675 154814883 168201259 528853567 705948421 759105863 784270947 623610525 289372145 96064385 594441123 729567635 506008067 270977627 313939705 95333199 621230351 782403681 979759423 110916865 64924467 669157801 673919509 251761637 92170705 297079509 826303203 166188091 523924119 336471047 708171225 77605969 685365367 684726765 954532591 847499125 177118897 348638913 638350567 325968131 881365445 409463103 682577479 145091933 261111937 434076589 697454177 870472943 623852795 975125723 395715149 705245481 677928333 88632093 135432683 256436615 333803483 606370131 884111073 4835467 564903891 163709921 35784099 968480957 570878633 962540473 4708967 348045745 4918743 222656845 506545199 172122883 462741029 63203743 665472961 309938001 306115741 268274995 872363183 514262857 794574225 282778391 174486607 965574299 623845795 175153121 950286019 810279171 284430001 720917171 787305461 89207619 461546733 392993327 674626707 99335715 683621831 753622405 890606867 118727543 658491643 743904617 282194619 986875675 878864273 241697567 597757583 499791853 160991955 489625447 775841887 27394267 631476053 600415635 852680133 300347349 776700405 236812919 864329507 587994839 361430229 61515635 470136477 630755555 440920673 454982507 111524133 416139009 54773329 45746641 276139381 357961029 864069277 173461399 140104459 233716171 501239435 501615167 158860593 234952625 443796903 591537355 679491061 241842213 500389573 918910671 444143409 641732439 773969155 552356187 837297541 619629443 234064579 405896723 679599449 578098667 536186547 167295001 26403805 254699991 13215431 647547165 310336523 414569885 721503033 990593621 610625441 180137875 234148241 685372799 596995623 427370783 409452439 805025761 951126511 993577897 712196707 192500043 637845265 4633507 367829327 387028241 858072173 154004361 276948223 899236627 932089513 986376923 299842657 528441015 414442297 560076071 183888297 764107241 766128469 221774075 386629459 446704163 380472569 939436277 728271139 503768415 201940979 81118899 812465443 574466855 909072077 129236963 287356075 569965961 448533989 728491831 79791447 868604951 220338777 748097383 663436295 207145205 276011279 950662197 504919021 805220805 116152251 121931119 205620601 94967991 316821459 580548579 987731817 828833153 448144791 693263471 666611137 641387617 577749777 699752177 614415565 40616735 407092497 768322903 806020129 2745349 823444525 535854739 147905947 119845103 256508873 947596189 355693149 583414327 79727369 115128439 400842197 338711491 47983073 71453999 31982261 21627909 832774661 300151507 748097019 711108335 281469947 78101633 339978731 17777923 855207941 785821783 219350803 786614341 585019705 500907651 989679427 966630723 695222379 293583415 225697947 197785109 422343485 517871787 781099647 103459673 645312279 65617443 135344279 831734579 24981547 249271527 688279005 752865875 347226733 382066765 383957899 759091439 786242721 412955563 561126947 762074565 27809103 869183335 609767029 189332765 96072645 357261289 682947219 219622339 876953885 740922019 926221017 256317453 213757751 25115921 750907115 94820059 736178619 730355125 716866745 194893971 80883481 160634137 2671475 266094115 14322569 122255565 874224277 611214335 931074573 448577135 151632615 776673577 229602667 16786077 801923955 927386149 256385845 376454151 593984653 732737025 145216195 553204313 122089683 2230101 58637365 285460305 525621799 827979071 979948401 922260401 550948533 923534435 219359019 593726017 342968819 169145329 344299993 872983255 879513501 961523359 37493437 625283915 414952633 210526637 263088349 799491197 72202895 700019165 182838283 818233179 707439029 648817793 86905821 316069335 569986313 230461039 145039543 558024169 617054381 875449091 676251837 377797781 159495951 493663013 995313891 605864165 796977121 81817153 123239903 635589353 283810595 774978385 945639217 869498047 833300501 251772369 418797091 53145479 72885319 625772743 192979141 259181163 294229129 303720897 699920621 582255517 79913467 180721623 812565821 672571737 731074817 87016103 740444191 831981281 37745221 69407061 636148927 51430271 330521533 781195153 754932249 774999939 251635107 387034771 1864683 205278027 202052479 442250261 461452733 505862199 337795867 563358561 872328675 64915377 64161163 914878019 920301169 116063789 330733099 880831505 931333705 373190179 659152801 125680299 661147667 225045783 804686039 458744183 141580607 726850705 657145347 419278435 193563911 608597799 397912481 329077989 827303273 599059313 724639093 660276987 189230637 546894609 906675083 609740843 323673573 197923761 417960759 650685059 884262633 656690691 907751447 192692635 221934169 56082629 523611405 53036433 73066781 88100277 218805061 960778249 297333989 500513437 426258231 629138741 674561833 271365203 959619995 678402759 702597675 899911087 938730615 715332863 559737329 266107539 534348825 408073125 674559309 927759593 85269521 40666373 15144661 856292771 429794879 328580855 355118061 83120063 435958725 766685655 684404155 11008827 408962577 1782157 813239853 634604577 882840023 164661895 856388863 418345863 552580113 564847801 408770225 876196485 530956039 548983973 271244681 422921021 133106497 548138577 407925913 718443481 190782615 287110215 383972023 981829517 275258147 296022177 413346181 208984977 684901963 284004349 271791725 67207721 570448825 902020735 197109659 899074975 145079907 294142681 222661899 445626179 722158469 439434557 590863227 526730867 671028643 131180141 867581301 442367375 831240071 466346667 78708297 652109569 512305995 460099785 638510861 233067069 892062021 581015837 337276323 265624763 244935965 840018563 766487475 729928447 114520253 412377443 502968239 190837651 176504157 42011307 313438667 274137609 464723061 661455057 279122187 663074811 898767563 341489875 648091703 418411531 805286763 91432759 153953501 672245987 184143017 452422925 61330519 814435383 981081379 347651305 989298373 20549055 551279291 542961643 878405135 659765823 836898719 151564985 636082405 207542913 999463233 390508671 438872511 462184023 323087713 267554293 41753567 145377179 418172159 605076059 144316493 569162543 580814697 457906293 740584151 830484477 386305333 785626001 911050517 173466105 905518909 469019271 920595819 867308315 790316965 759584435 142259711 899298919 485172955 490439933 149395393 359349479 389748883 422884051 506458985 996156589 29713609 306646315 168345209 862683091 931991231 222272899 709377079 66349947 903829509 261372129 824417971 288481487 198529901 32228565 460201417 992196611 946635795 696702579 883022871 617513807 685699677 681221979 153507331 279832569 177694965 531833523 928494785 39546693 221748691 845644839 198095687 926718347 624128301 322448113 880750933 897361699 629398669 376350411 614716533 55481711 218416573 49862911 28057335 703638491 719756241 821847385 743524593 726332119 442877991 11374385 746796357 991246045 187688801 481032803 174299291 500301169 691696237 74432089 97381 497161757 399284605 358050557 878669273 437029747 24711951 676345287 65507063 430098957 367363303 253983413 668723081 133382029 752393491 491724621 271137309 133341597 430737635 266423711 530443021 346252529 443621879 652471103 263657337 175865923 366822193 167501389 766549577 847672147 761329087 880930927 436050221 699641837 742500373 289728977 677599135 818470627 824654573 588847149 727850973 168547599 519393871 560722879 284232175 706112083 633975939 246374475 756286119 989528217 644017953 374287397 641320093 984628437 289379331 181354783 672139057 958810113 617878607 233083287 881144203 740142109 487525231 3778421 900605851 903849781 939788313 727036199 842753817 481626203 105988935 595007139 431563911 245407401 927950657 271450729 127276075 920875073 915052689 110444155 650461463 973052751 48537355 513660779 857552931 899824385 567154891 626703181 722825455 787733143 491166007 477581505 188509921 7348815 273286139 622176237 755380781 557910133 303896585 479397757 110317769 859706459 464506015 625041835 764152695 557584219 373251137 618294067 973703357 681036247 269986235 420345435 152251371 6277691 985765153 760445425 540330013 472977399 978086609 210796621 252605743 831000199 165846125 207562317 870462669 241647723 965068771 868267093 747336035 224143407 213487205 868793173 36732205 518948197 433923443 908093379 37014825 482275751 223182797 529543325 30090785 418359703 699200641 467773547 330216869 221666273 836411877 659086905 82457355 380508213 143947411 763380893 650124405 947450957 131479663 757232823 68267979 629981935 278594471 384849709 802198975 18394337 318472623 14896941 82013381 414860279 830488131 654833515 278177315 517742091 393514597 127047977 837677275 86940159 396688229 523220779 452289729 380641471 229397461 830683841 413524333 490896443 425696913 588659391 999769407 367840365 23214527 410346115 515708511 514266715 89977801 29824245 383718847 705922827 192456293 433530757 528615443 751341201 737840527 880772901 456119007 268751623 719411851 655653205 383280489 349405071 233677029 819438877 904568259 513603413 163103089 625398793 52827589 778644105 736895309 379599663 617650191 316027239 121336537 820775471 298681097 893647151 840447175 795770927 717354977 239260973 950259975 822248157 446369685 994677683 411425753 67776879 170010591 657085211 654438077 960394657 955916363 217133257 237160321 886489279 97711913 189045283 286641977 659152017 935998609 421120927 586426179 953258097 55767905 859121079 275948609 932294205 263205957 434111979 677730593 22989657 317351083 363585481 546651159 131229621 951772107 196067295 233231773 648724681 903663013 508079817 50009979 7995023 646692867 796265513 942783929 565331601 988609397 252986795 193180591 915261659 925307473 981000703 289925367 826436355 976643513 857395681 999468663 932732201 51296407 693240593 702882649 49718515 522847383 824962395 245014547 595013775 321778485 934201747 595112287 579534259 437369519 329979023 788121925 950980765 73762063 271711283 833324559 81664275 127478563 759439979 289018705 933449571 348854661 363288615 650640103 630431591 620005783 766234211 379258359 220182903 735264381 125916959 389180907 934654847 343754793 816938599 757298555 404490217 52134483 96056655 275640735 701191853 319999869 409958125 438171293 89370187 612853743 208717157 422216961 560843973 166596791 596250851 587354271 840066223 191187631 608780439 404066709 357967897 933491063 335645629 268649797 208304037 603192951 781519511 559592795 538327417 36918239 306278253 912756943 32091715 384248743 462749075 832914649 203322937 362182801 365403747 800191999 878437913 13773603 580288065 31569679 130965033 698292911 580371349 316153881 336139065 568340557 580842449 527908221 876475293 143885277 851513969 852773599 5088821 386189061 631096821 485984809 274856293 732957753 601296617 555648655 48392223 942294447 59173601 98014097 67562197 976732777 270065011 863291375 775923849 799642925 185360195 475902649 987662269 315335565 250632445 843585089 320544643 793695967 439183443 494792483 255474289 994502981 266268411 408431941 334771107 371693737 860517309 296855761 702806465 700895161 459450719 184740669 320769529 196817643 967930805 884480581 579326209 554340741 681675931 585992429 261848087 493532299 859991279 709382785 538128899 956632013 352880543 67741077 875044367 509236453 475490459 713897221 678757141 937377333 69231071 737371895 606461043 390262753 481180781 56345047 348363023 425111771 611371341 783843159 90325589 547168221 630761621 45483893 261701951 442137189 411380827 276786549 237377863 47827389 523744709 590014691 374653815 519274483 644801017 587332245 498479451 932513505 336803631 394690981 133636107 741540647 497740189 220506743 59333923 810497837 671369861 381073849 584507853 42044451 929943861 288355677 467022771 501572355 512732667 715996067 476710413 709247371 162379571 934284299 980490393 340222787 678315585 428347493 739213981 575140477 590162573 573778881 163221993 650136401 34108553 395611007 463829969 493294751 856727217 829073475 879467573 564991245 477339783 240755447 354778745 765718543 856698771 326311377 800952463 900268765 612778603 100598091 160012267 247096691 715443621 657894189 318543497 845334431 249944807 449166721 177324531 699403243 562543065 603252635 7637045 180177589 683343149 270685975 645634279 447625499 930797471 737775323 753858599 365177347 405066993 332789777 132899225 772785953 139738859 304096559 224785773 457444843 167938657 53416689 312830297 702784673 390704687 735801691 322728859 137605965 872911925 702064825 552514553 709902015 679391835 636335777 21632195 569842061 272630681 327321835 921261005 614507803 503877349 126831295 698049399 447104653 290044995 406530953 198195623 871192023 187827131 449993723 865373899 990398125 764996705 818616597 793894615 840599957 281372497 598268183 339937357 274598097 232392875 982287503 269910833 435843959 778571929 692169043 31693329 826205275 567205453 610547069 139160837 263519519 810458883 236197489 151877291 748010795 712176381 823776221 660616999 483742385 341009027 939065013 177978153 664998821 82994411 118931507 644433639 666426571 907443083 755866847 68038943 150151851 751105737 111318401 89756185 904722067 890558733 447284273 656681633 23363997 394277835 5100361 62444813 558348201 675307643 76351087 934518333 299268703 742051743 125280141 389351575 415298607 452771269 634196441 274474759 914201937 395623035 585507023 789741063 376180935 667562335 689516851 838145171 986131799 698959633 948103697 764071217 393665683 903445563 598215613 708959983 164327891 177058447 46719187 200612453 721867575 685422025 222189369 991661233 884442277 805958315 911818011 459075191 309675217 873228287 624059371 430541543 712748593 145030549 567146343 259612855 602847751 393318219 381666451 927885095 508732761 251489281 999249083 727543033 596157433 208098977 352765557 793464191 317409149 291925789 284549785 720845709 642292809 899474801 495462225 680163461 264413825 955816095 937369859 965863239 174588697 429296049 293767017 42961223 114851527 902480567 700858491 197550969 685491467 422052303 826387841 255858523 856313647 859826201 920762883 303033331 611006275 232384191 302097625 209273039 637782301 940213237 403085085 44753671 324805471 519328755 828311859 664968249 509727347 200604157 915755977 673509257 876831109 267173211 500084947 756868775 261310865 211519587 889810061 696123081 212765781 189428587 958575225 484916655 347764059 65999321 167416935 395479707 410675953 433121045 249765225 485414751 814523185 816913299 924112091 173631825 320852219 30631883 192739171 634914381 81998071 46544193 278183405 71683515 122473621 655658367 824969387 332676489 646064911 261200149 54980635 715788075 405516899 733398689 945006591 364676771 781089881 517067715 515577959 317464437 261411715 934863397 427592359 866346417 523322425 242786939 159943767 144501483 707326875 222020989 868183647 238817091 392552081 61735663 102511083 950836317 506710731 604460187 780903789 102933609 171507649 119112529 51624357 563530015 229139381 616382959 503406227 785713849 299421357 837660757 811097221 769664257 309060475 280495725 571736337 905000003 811146933 171717931 792736783 693131861 868694975 978028935 349014185 120965017 873559999 122878341 952136775 319651313 786637475 550910255 172003741 621105611 248108071 110259605 483302827 938213153 874708171 270454741 385426097 982257263 222293717 125591567 213743935 789936059 61574999 337598061 918648103 798518677 509789479 292696099 550212741 22503441 344508391 387779177 942608573 956617167 110660865 480351107 152062847 521681651 952181921 717063611 781721531 566775855 307107523 634885219 836492461 642424757 593823781 137667283 912966877 298059333 799838033 393243505 984258837 901585447 73362839 892036263 353437545 863811111 171300877 168839139 643383349 434816669 719983765 808140453 176400671 610129509 749289687 606032235 990534163 260369895 914972997 15444673 772227651 604420113 792572435 216849463 333781293 316293465 337637957 934784875 501210517 36266173 224281763 84271869 809240711 73615555 646823611 472986519 992755801 299303547 391161319 678025965 984004515 540146809 996287047 789539511 255254607 757373917 528772547 758821817 443445891 839201099 702789899 888515773 453455801 138865141 63068823 738434965 602058665 77916813 732404137 266939931 326608729 135795285 714639177 323958065 687616023 549308433 810158917 376792001 455790197 364020495 442988341 642437055 611138383 799848997 290079613 773352227 411272393 225859253 311283779 401308403 56294225 173784993 108378743 192447539 71461531 314768473 440954577 971090171 231363745 849239507 919460563 649230179 570630315 732883341 617702851 465150093 994315843 324105869 425962417 711907749 67207229 117361251 372749945 418930905 536818613 781640227 183601849 6553193 778146065 596949357 62601431 264847763 989158651 942518117 582290439 905807267 308107113 502716861 228533055 889801451 506339991 796410791 329823295 321333187 274531337 596104421 463495313 443170707 130524043 336941755 779165317 631865279 594565169 928680183 73664049 798831805 286204249 65755377 93719671 645272325 162193829 824382085 541527041 727952923 628405249 859875611 270674491 606276489 860312229 534927521 605827681 534335969 533929993 104892045 794416753 409808829 285741555 118184159 326582837 466363071 54659183 558258457 827219003 271763603 685353171 657254733 198417117 37610473 441633463 880855823 933544763 945717115 597025029 718995583 653317181 330602253 71860453 95546179 911129491 267943017 636352715 245573511 635572407 422142561 843162487 569557253 107784167 730663375 32181481 71592439 38533419 382162069 970899313 178326567 946821463 961032863 763184799 822328291 595927293 886339293 101437013 66537725 387 562661449 854254001 274673625 536230927 351812327 789603363 458232921 909660817 206210753 758114399 385910509 910589121 70944489 686691169 680449931 699013921 655178361 516850541 989334705 803176951 29877139 633867535 127302247 913852501 958967907 622730779 481466681 603502355 729826841 306500269 883084605 305829329 792820207 787282475 814421779 415405045 74436137 880181311 416773345 94938547 108300563 529320927 649982803 671482625 331187193 277830729 303261859 157173409 269200445 965614589 600857485 207218457 995740731 116722633 693813335 842019769 578000991 338850241 191493071 53336477 417115677 317969475 122831437 377668769 913389295 694044913 268111021 171769457 23198549 180631481 990479193 706651513 914895323 51823053 897386811 672163829 108701203 840811179 932908747 649176293 669236631 247809817 583741191 934027021 944602889 412318239 194759799 920547331 179557653 780183061 478904359 953645339 803657067 321324437 157913261 437427831 183173575 399581315 974765865 422218751 429564649 143644429 841671745 888555621 863578525 187801255 33133857 986895389 377462709 551340299 897666179 886295149 544747275 286921537 268965795 188214359 46254721 624296595 573698887 322695599 276241155 479117203 46065341 625943053 887320193 928255779 643689181 700806097 694858999 887255393 621657861 530493731 869564773 36189375 118707225 919074549 219848919 487591661 601315209 178313723 120402271 925508073 609732685 144013753 300397335 801762549 961449951 995458421 985661217 529083809 920015177 236910913 78459049 373451969 416356373 417190645 662103519 220275053 476112735 898208561 571960063 924834829 759157953 449356893 997135689 487952717 563575139 582605737 437163529 627344159 727342323 221079053 764281233 98111937 209557157 685919561 119830077 322149559 67432507 768674537 521839467 933915085 567749369 781370679 677948041 227136025 358513327 875349585 376773639 366309109 415590065 984567571 104627807 623406853 806107357 396723753 364827415 130154807 937945757 438397697 62683573 349786045 299421147 612657875 321457869 445657367 528966159 344251807 331052281 956307717 813913913 619002159 255844829 500039575 525277403 226165267 231649567 794046493 210313479 132805281 223770485 430088761 893719891 478263291 294285209 511800521 857243611 691813131 785355595 412461309 631212103 817054589 286294617 41698121 921955525 865819341 351433617 161156713 502282507 254443321 904374223 823524961 156117335 859598539 919401717 112796027 114984815 229304913 567350511 576489807 855460769 761346149 960597165 898252217 95418821 851258473 250644779 739663835 557791289 520769409 841658987 862747937 535766753 224980895 662583413 414356033 905989167 770048123 943838301 298358327 200867861 585411735 51003709 500982087 246532885 157844539 565005625 982328317 760558897 207757429 536264823 909414957 495613691 184825887 190785071 355178997 579766921 160592601 396806549 30143671 239613047 590818315 380119281 873885729 284142317 850367461 474850953 240674597 713127577 853027423 452792753 736409859 795012017 963451963 792401349 527822395 252887795 889395199 732811555 634609051 236798629 483964157 99267641 328162617 178041239 26435661 880729719 452172143 599241757 855494607 743646041 270165473 978682135 266790697 49857375 864089725 854040809 711564495 934319383 866055799 206302339 432943863 425667087 14979401 97956957 213690531 626039267 780566459 837466481 490455705 61964599 221263063 219798089 635789419 290499763 375167727 7842289 328559471 363145225 432549029 879344897 420040137 817401589 646882263 908090005 886628189 536518199 692802743 398421333 271521503 383589531 294995637 424192623 819648195 759559157 319119757 446445721 583907919 746181147 689745991 84421905 151369351 386073075 291557933 594883229 313424187 780831843 384686547 253485709 972348933 924428131 761286167 392203189 449624391 544197865 987557147 687709557 826491685 199208439 261235531 907769011 473455761 389168539 772460127 630144731 806264389 10879459 311376975 395376871 773428671 279374571 902754401 829352529 898646089 194795991 653885473 565716515 611311089 424490959 332026467 392098281 826163345 326631173 417788485 22603451 905529545 446993333 923476521 276357173 846393089 197602079 368442045 480374143 518323817 361018001 11197429 877485639 362643451 529854041 949723147 531188675 730927989 824918229 36999 366693297 479582815 30927715 742824753 334022489 802820363 561315185 497418017 234318471 894897041 5849967 49191345 21906577 349291217 287857113 142116229 551199063 55887731 337986097 272695691 346464829 650092773 827076095 881567735 79530805 413520997 690543577 639352133 592529329 681196525 891311701 101589305 699726771 272222539 591009049 705681885 426838207 641646857 202403789 483063433 336235235 481357189 564070691 960631001 496338359 858615773 788573655 109975983 920245079 298870007 538128811 646093367 6818667 561422983 793370727 129373927 83491873 235497475 727985377 89776251 424346417 561083307 475886575 589172471 406755029 812361609 160688503 518268583 550082773 209190509 343534945 920423199 408664961 160859885 57047711 418289725 757236909 840518253 971308077 175002403 912516281 610671633 395814925 705665343 356311435 771886541 406631495 865621315 941441935 762752853 794368497 325916717 561962175 260506415 931522593 125002305 722404759 33121181 718345981 947925005 520805405 503389109 360811181 545391457 108142303 706386507 986594915 301016157 153131509 667954433 309477211 370763877 539254267 650171711 572373463 410225955 54850331 500954935 755481633 115642251 672686591 483583197 117637513 916101853 730795743 355756789 65685357 773754265 41935481 950735367 178534443 954608783 653450003 847681889 63754801 387063249 923427197 932399645 28654833 982141883 338649613 702954011 47326691 455608819 904289695 211121923 562170251 680087139 709049497 716605253 724082289 768010305 726648813 740090137 359279147 415198473 972171279 730448257 717932111 109856125 15482365 404566339 115664259 239952557 533322301 259034609 341350511 720280299 499190749 127706339 174445767 213423317 514535797 73957945 800918595 600236109 715882017 840151001 695309221 2736511 742719627 20358263 371208635 231231457 535244765 520163465 470427221 408841009 513941711 159078225 779383627 231926383 140968095 242448853 858589059 770982633 289262613 426636775 563716069 925673267 612013181 552473373 489544293 243967019 289505965 677863387 931048187 525382131 557550597 888935493 698016937 304862969 341434731 204478799 446131325 837025519 972756045 359155631 121951879 217772501 225909151 727907557 518945503 226792683 555846883 722055227 53734571 567172545 259546397 332098497 179943187 84594471 463943645 799675213 805803083 905129021 958542903 296011137 919173259 169190247 458041289 495842503 904451863 706890575 500765629 895654475 635137847 84826603 82049469 571168521 668131137 364189557 8967937 830711999 792925069 818166645 993654601 376552695 698194301 815334325 575206359 634313215 969137787 965689673 647335037 551544305 868523257 989762445 906483345 161177005 393530227 784846631 643638255 942724571 796887915 84354817 820216319 173686251 859268203 724490065 292202669 112451351 478211333 973584531 662715763 126256989 282649041 777322635 355832397 753731205 714908789 46536517 114256065 233302305 337536665 657429 99753695 792163209 939768561 348279961 653991995 697519837 415572533 49028531 78004467 229509637 759256617 253590161 282097329 476376753 541924503 431059365 635242399 151337561 321307215 22057389 142929269 264688959 162347567 181908141 614937203 961973609 765840919 889131763 985595997 523410345 220972529 401601039 379463553 663330965 334514865 445645281 41228213 901678481 913139535 659096459 373274457 452084163 304906703 332148859 297633875 975974169 151865915 268299621 574792977 80498511 294809509 8405315 699422601 787770597 168065829 847710813 997488185 762209313 14824161 229724475 513363239 226509845 61416195 457362357 199107299 345768343 625062073 58533349 286757761 351192649 388123457 839557425 573028769 133749141 912373981 125445955 422574439 24906151 216521175 924160273 809736579 159182971 511783809 171308503 393845293 142707921 364964149 668809241 240003103 870750509 813321045 563045539 760001443 716611813 758530635 100103049 500233093 868557069 807169419 562961703 688851485 565398919 191744653 62774051 939869767 625078779 581865941 387762023 235480171 272788699 262998509 280987947 446649719 384765531 169196135 310275559 838638561 313025407 955907291 636261985 640177319 852062991 682304495 993251749 983053391 772617369 256348749 480036359 409091561 937005431 12174243 569073189 884467209 864995785 340672433 722359265 408783823 455577463 649943349 395669865 32245215 390558001 717806331 64067119 911917419 404346225 993065171 794608627 763034917 51426163 120179867 530196917 480738893 423727685 917563187 153534147 514956715 522988979 566242695 894759347 820643979 982559573 616775045 372686175 410730437 171356559 521165613 575487469 166496437 243019911 339979645 312703943 144577605 779539245 62996353 272015009 693016029 715911225 899635017 114101371 141878905 512792365 879315187 688103063 152930199 55750479 10887071 39598719 821821497 177413809 632886905 922905867 972645361 783335721 892772785 596989781 634303955 127304027 5496705 916732867 765297023 664281515 942606125 631119617 785149977 215125325 314655743 522823425 432621907 471478583 659560521 995570687 754714207 825695529 459467877 736083843 351404799 877508781 38114229 497233751 873744503 863021075 156269987 162446481 352001685 560458609 966223523 424173705 213452465 106418601 128535343 708844007 169698983 446018917 497838791 705268631 445646303 193981969 157074679 836192203 317068359 257030377 187291215 836950273 389919573 225840619 394351469 360161533 325125895 7701217 878471667 275710925 141209317 865526873 289838983 736130241 528287993 790513325 480117471 738454393 435352287 423303933 541935283 537549015 771735729 604860465 585659079 177408009 550880277 59207161 631233765 969295235 44812093 206307791 618334687 222724607 586677723 947263473 907811983 503060869 203043377 39178343 941272279 637095005 327264259 384998405 40395427 228967455 98382239 691748189 941621475 566812837 629954269 783086549 910638225 551297813 467746843 928605331 218135985 226652377 278957885 258045319 931208781 698670247 271242419 340551787 886076279 875654523 140722803 984873403 429843529 508189591 565566715 841335235 637427431 167398283 624244819 977068947 645665143 542246697 261435653 876858371 382632751 763753615 127354157 290724019 818485577 727603997 984323429 85633801 250067461 477150853 14438355 556537657 282803119 235550647 667525929 551518009 179869081 395494897 862259611 57953227 654336797 107314103 381264869 572499317 57054877 757679061 614657617 559986567 577066629 893395039 405006253 537577245 700996165 329413043 401408077 92424211 282727767 952605043 703809807 835858965 189762111 166586253 46754395 446979471 747752327 368824627 907148577 473025213 892755137 499930597 964219347 470343327 328705415 422060131 565401457 84307961 337324669 435397051 8496257 973320801 476202057 58972227 695979539 578940715 829652129 645088917 144594621 834182777 552069439 96371861 909795739 921991219 202627811 553908337 537105237 941341963 361791577 780950941 703672087 452807031 408280435 690991573 619221403 916048055 821115915 342340123 588796957 553269715 102958341 752564671 874624867 756940445 76285255 644778323 790218939 894256813 296886983 282754483 525222141 171534947 9268607 601950469 283893127 498635751 398296175 808547763 762509629 432209451 881620643 348811635 527915919 642206179 788781101 599655489 798833011 268004499 488885543 119913825 996312681 633857409 684331701 219974751 596239731 910677695 469132285 238469647 862790691 888347173 586513205 629565327 932678543 990984275 60447383 322675521 272083283 344131505 486523235 467238353 486739095 373496687 783153383 20323637 403467015 482645637 881885553 608848299 481068509 172806323 256875357 804055219 755390677 973464965 34316813 476318747 574695733 319592773 286911725 888774391 236273869 551559185 386583149 667247269 379243761 258404549 15715593 690870727 759237503 89578509 265271361 284954443 901872097 300166999 654769569 726314341 616949249 101721563 209758139 909723791 965991767 622214041 84416809 206014609 583505379 302235739 760490383 8962931 294309159 387995825 99915413 280084109 561615669 465375473 732310765 36794745 151061411 689697853 460849489 62869277 876543117 271008639 323924359 69897891 729867163 91971683 608642389 396951169 161594619 418847845 703812495 616070001 88002657 466538435 214979855 236156795 368118799 319808135 551457209 234462953 593255881 521951103 638359923 540394319 697725919 206038341 532295989 737405577 148461093 928808763 937845235 70596029 276234491 67894405 801616821 864934999 23411781 853350165 473920129 272519433 749124213 765520037 316444523 466875601 517614461 844558257 373739405 455345139 874071517 883672711 777017611 931016955 193553821 382472243 647537165 26918845 101440329 107025295 492413381 322846807 224506105 510956091 542893935 775555627 448500553 35632543 562892107 402644197 279545953 814418411 656395685 590239613 1147631 347685655 623190993 4001067 336491305 249448933 175137061 764905589 92122573 147202267 885252101 556088873 789079329 371926347 2049245 822493783 695951859 597283405 682087709 578413919 768449693 559166401 482180161 118056165 17304055 25160013 995195595 306953939 749105261 881256805 122580291 445815901 142244073 486068799 685747005 613395203 498006501 927686877 462040147 347875205 719156827 958004229 143394089 571294963 264013013 993908553 120767591 482027935 861871711 960692223 127683007 407534629 682419089 77118027 846713581 605666923 815042439 93181457 241772209 989269147 539181289 728818181 929760729 809865771 502011109 320787101 275072563 72780503 441443889 993179929 904335771 516859811 912890379 94479491 124405493 429527515 562710329 609893545 820745513 790116371 565982987 344685861 119343145 630470439 744951381 375427161 128076273 389765949 591445111 272042089 512891777 127619777 855400021 331014727 530647527 539211621 536870753 398476973 541603121 94200615 94289037 239249689 173283709 386809675 24249691 727439573 247779305 538864991 919310543 460460015 352237987 383973939 101904503 250355777 585347803 89066215 319204715 925187691 15229901 62451677 665231175 593546965 547704763 293427139 881098547 671912111 61185517 252605067 832561885 859278579 601107127 218506357 345725307 42766687 996252277 452629761 253548235 891999611 516512389 970410495 896313365 272199065 640704085 745144959 59176227 510946769 626136663 315558881 294378321 795420419 957577475 487831241 834851447 403579351 862202843 263720993 372429313 716895165 536748141 524013087 806259163 285170669 654125895 291625791 437902201 252335207 437750535 112212291 959862493 82637559 687893835 341748795 352978315 516047399 505595841 920965497 333283217 462272597 320706329 569275033 155787399 615066783 34073103 954770561 349833353 388932587 306590821 823875163 216962367 683670509 930840037 686927007 609649367 182541851 200929631 647373317 280650503 435329205 403393455 223846033 688997389 164391365 279837881 264462485 205503409 827414043 240123493 614801823 553895487 130319949 511031717 93248909 145316237 878770623 195709301 747860357 201462267 563203477 429851607 391361267 76991343 683819971 897961173 947195531 49196117 883865087 231485311 852192583 873764007 976072393 44451059 957973869 231577825 997156969 512714063 930228105 434588423 723667955 219908801 758656881 27727277 901220411 486720635 651363647 660218085 81828579 233155509 344468055 783477069 229472083 546599601 369255015 190382349 853097917 86405565 908935779 570556627 430058517 291556903 11482501 548524759 242421023 967465293 887297109 303326163 438151011 143610767 215431579 738046991 422279727 332119895 144254319 984782427 431343773 250915863 275487787 587412237 226929293 980968779 181523317 733522177 739898791 643378549 399088439 771633309 613045339 719532829 66418343 688327891 621015777 371061721 41009985 232091159 884014139 591484737 135893961 821299557 944233263 350925813 706568523 124404551 81966415 66492579 104098843 30695115 65098227 474309885 712238293 478112901 435446587 485302459 624499039 494427027 847381263 295771809 624865253 54969501 633468445 256254839 789132761 391691987 379447523 459801875 925034233 239793895 38020251 618003787 651318345 513639449 876868177 897355013 38068501 707103025 737437653 633815849 753583091 814203771 185215165 731808171 671447995 13793741 534631789 657346179 643818647 503346055 674259465 562649781 735030509 504370575 749377413 386272585 654891639 921850195 979155607 98057813 787649325 278314439 938924223 846464497 853274711 317551213 801948487 113898813 316597629 659962441 971694143 163632489 401800567 390000875 421441405 254699169 250953055 722549607 261854115 419946275 473187737 124826971 974481691 924368433 487695571 286932465 918327057 317886741 805797633 419914963 521579137 980521503 539885663 877004601 693120297 125676461 502563953 497647841 936349331 433752351 327215361 939083027 172235533 466886111 593582375 524343195 919483569 959096929 325765693 321544143 830704735 23282973 938313449 261179281 482248895 668422551 151510039 111992897 414866241 513799511 338587129 684143059 871494943 287856883 382206221 273573307 559086679 687837955 965918999 65905143 357373617 535093031 268326435 739637773 310038207 42589455 490184069 308298765 741619929 697667431 952660697 395982219 892990495 220729583 121261317 342782117 75651961 44902755 452115253 85319941 297360023 349826707 612395483 45011157 555679473 99600719 11416503 653486541 991338697 351240303 629696201 7572013 640338469 776441817 559822687 946639799 829999575 809458039 531383055 964688061 173921397 718337591 351408051 180861717 706823011 743310617 273084015 848961819 883069383 434890265 351666353 978503863 315003279 478910791 660188971 705471063 727848057 745924019 811624157 126032369 702457599 524676727 536499719 901195779 595577709 419903925 985975097 212682899 557332691 613022103 16235589 431204911 858390535 674662225 375636807 509306097 349009579 27218971 415800741 651125617 937323049 673732665 665673481 131347419 72144045 581098483 203069033 356590297 405966899 232583327 432937727 215005347 395507067 587890581 579839827 216835065 927116553 353965879 343907375 88134431 796231219 125966319 94786471 145382115 207749133 455434545 317211161 896815003 641782905 717512821 795871525 189851177 12715807 819649087 983229117 775484655 665937009 678464793 415417361 924860125 99429539 779463829 242748575 712141927 215039161 367539789 9089835 914996881 101341563 808142051 796483265 298946011 991004791 38917889 720614839 999501141 650281735 266468443 125809829 615239065 915962699 766534313 396685685 889435583 599761707 858719919 794218061 301647475 230606167 873040183 327290023 198999263 195224649 717086227 62323259 419089341 731682621 368789277 304457233 543892039 223821121 327056183 611158385 847607623 361338913 737502539 740185331 745618441 683646839 868149069 892727665 319650661 257372577 824901941 569779983 696848567 541266123 443365895 616878139 595334887 946887139 333009613 698903721 78592867 256387489 175780249 930509395 3853601 422387591 59355781 803682945 279451039 758232283 293168307 233582269 619683301 173565871 52941133 705575899 690152829 747931609 147733639 672440055 944574851 249800701 42568345 701320823 263959951 935640703 764269255 608265477 205550797 924052627 829682267 945799831 298537703 234323759 661617063 648408425 757831447 915336211 311095557 215148799 871949081 33167049 392262103 124978981 266619441 807078305 762249097 685431023 367384627 752793265 736841353 783522747 996109935 523028187 730060119 799907883 96628425 476509897 531986801 329951531 599132835 538967015 154844259 190187251 390245357 700983665 65269951 102889979 464308765 929341797 815716639 103871497 776400177 552231821 124121381 645604137 279585455 166305399 45372027 507955889 785701031 108407421 443936213 283415611 810909359 723860671 907363821 422491307 628475105 813405733 228810371 207857967 958588649 971311201 937013603 147829817 45111027 612843751 338250079 693772937 766515379 949025787 684260177 767361055 598738539 28410787 989619483 833998667 284472799 574169779 587370151 758651295 182435677 822343103 772400873 537815287 799213245 334404135 977216219 316402295 128612955 922387735 37040253 831536013 337895969 289578109 359517147 148375789 864834169 626546707 991398407 185784211 834278747 433577045 585302043 50339779 187048773 117168529 363259449 449226761 385983037 485675217 654727307 426460729 26092755 72243955 203276357 753565807 190098205 593120149 271864993 291930641 95107511 385397277 775409119 709587657 1184455 446339263 845965387 113510799 54499583 667950961 801247543 814278043 584110225 154166005 452000765 789447027 588116031 958520273 746540799 550059491 639483469 93927767 228548777 881304319 544890251 340979869 291220075 840624933 438427723 104881029 368745919 353986551 584822129 541844409 304585515 770789731 235635039 66879397 647549237 587563163 954752261 38662533 749592433 379441437 904779993 800718937 581135225 59111855 355914715 521157349 431391727 917152089 379144845 708973247 529212287 337344115 818475009 619313979 28585945 675594647 538948301 870478971 155762871 426709673 604753421 729685609 364181725 430164439 820941927 192291249 280593685 602952341 225397005 520792271 878708017 641223837 266380467 809850625 881885453 715673847 110143637 295147855 695409031 371905261 457475455 707606411 691298699 293923089 13004985 602544463 312283919 491244613 771889949 805415669 716698631 163669159 632021511 314380971 648644985 299211433 845224545 997582177 233120881 893676027 24747413 435285963 790728445 773631643 976914587 831820653 981782841 133774283 917017329 503507341 983809607 790702363 294173599 960410173 986631507 817723231 167352881 61877589 756202125 510056879 148729791 312031605 928302639 513691763 27181029 420490501 872336255 103122519 471850441 126828853 901072835 29231437 154061597 658077949 883691343 509260691 143297813 767574045 187167869 121378477 32808303 217015329 545749167 71832167 385021809 820728659 510370641 653204951 706586345 522550225 548818131 176742999 906508079 16441465 333651377 630477963 841647137 220953585 959013227 669411681 254016291 450447789 255710605 479246603 359520807 458500835 589707435 743333897 764027551 777430419 439397211 833910811 237323915 176808839 704877377 528778065 620986739 364924751 84364809 704835325 336625507 793983809 96915043 358860475 563727345 191807615 479801099 297724783 592870207 49511923 463634881 455265351 144704751 609457993 391747153 546444215 773138735 802874877 863176589 330545787 172553145 485943373 955614289 41215639 290012873 786569283 465530491 100274773 398211109 218321581 861904889 137251661 670427677 106173991 170628539 499764059 606588037 575728653 622442173 329260449 700860349 729152905 113783039 437643659 730812329 33961099 891360397 119736271 825763001 813865677 996841595 345312105 330015461 993602253 513681375 210398365 628318375 75821267 104748253 620967927 575249929 156436465 141585313 98849101 9940375 753436415 748120411 831272631 302640999 960444317 881557319 544937885 472470043 54546739 230228901 150112171 700486101 286446577 744114883 361928659 580417861 495302095 950335983 351057237 67659423 968099727 72749189 562791089 425769637 874113975 329237225 272830133 534860701 30338457 932893569 510407543 273897553 269960269 181713861 342851409 237280027 663423411 487808809 749540839 191118041 399775089 928817205 302695719 38974961 870276603 491941743 358261829 982181199 631725447 368082539 271486651 701035371 727448855 769865925 168844113 352712517 661615473 384132379 854582545 309058401 80446503 809235483 229758029 40094925 710803087 952188789 408244135 79192607 396853965 36725477 549009149 627741817 982622405 442503981 816584833 276933245 714583851 676617493 995147683 932979547 671988341 185351793 307048479 250436041 164319203 349514525 993041149 111631109 155484799 642001399 884535687 473086933 798622231 682632685 689779281 411696009 489681479 703249647 733567033 994222837 587600747 115916537 820750689 852123513 621160365 560349453 838104629 784800761 491350525 466224691 791592045 800900071 787584789 146604159 637499905 366634549 714674803 830609421 78281783 388910693 688023393 101470715 609688731 600086395 32860141 309947255 282097153 540100869 731381233 308244659 741694343 243003417 36700173 160356325 347872143 73454681 208034473 600980565 61744327 642054375 9927925 183971145 152732963 635690867 409448427 902954263 78933725 890858803 841918793 205393941 313286013 940042725 915676823 456823209 217024203 903780047 920795687 313725755 989055967 503302593 286404625 813368125 882215955 113337871 979882805 616193067 69570571 190452633 846987835 242335623 331048119 900574661 615455891 571899609 885826629 187554431 793989493 481424053 585387319 30039361 110972641 316432311 134608719 360280581 406294179 585461117 725115543 704304725 393297735 509792693 132294247 605472319 514534181 843029777 926331995 409378645 537072993 20204617 36825941 644862907 426563807 455075615 47235713 184537363 811453267 460412257 152174165 561952141 350785075 697843677 977284493 537731807 217166271 277109105 715272749 761904455 226387457 357181435 432530561 110061709 657860041 719873897 256887837 616292091 140699055 17274541 905021663 902528621 751823121 861108415 452797417 419917629 938624281 150334369 26164905 873326929 540745657 293189985 842402257 370952475 548153511 140723981 371629151 928528527 131732579 686384067 466713241 644293161 820964663 64399267 503040263 325653491 981478961 327260887 831723903 82590331 906871339 241785489 476240415 20689363 471966917 398694925 316979275 232488095 501281639 885058957 756321709 72329473 197033027 107366233 539553081 795088297 610858829 871593159 240059439 499312845 912551753 180959021 276499727 650754861 989766335 228410609 780673193 919769355 587122941 40345211 950762255 164521785 449020701 198493501 851038365 491082251 128731391 606478003 436358393 543593569 204974155 129820511 540206093 185710753 604205937 764985291 653005583 515671993 916203689 959639943 610970491 284235805 376315637 818738737 772284435 726921935 226253083 359228009 386087399 136134739 193476269 376867545 344945993 940290489 448567043 466874163 591911127 906867091 467647037 241225523 909901939 959661829 427971651 722870171 118085705 36064945 569646019 176310069 264073681 797740999 911654203 784035281 106480323 704181503 31901669 171843405 667090981 949884307 4491469 114669193 962778435 832671819 121403843 748026479 942757553 529765495 428882015 200451825 868530509 321761517 486440703 894063627 838103353 812771593 703539149 338020031 120030947 347701683 593294779 30836759 265952767 641406039 600423807 464021539 13772423 584121327 142401689 680830721 3948993 517878263 540257363 450057169 842297659 88035189 615549117 945740221 493152197 250348023 508726701 671099639 584820351 146271893 518771653 159423421 331127245 573076205 161972079 190870859 292541017 657186851 751453655 709065969 263544857 954287593 778785273 915087615 383551815 971285361 227342227 905601997 32990571 705949307 563302447 4492481 210007119 674354767 970999835 411762499 925156615 392011961 365684593 615044039 518082799 951420687 238401809 29045957 745025197 758658353 809950627 664586689 527575851 56064645 734577815 94857797 760719519 723952377 303508775 138352865 39897477 242007555 273569105 730768435 203913121 636607905 12180189 31520219 530620159 52748633 972377693 907826051 701442291 389121337 831705641 466515423 622930715 45290201 754982241 529121191 489810521 506734679 952373997 235155615 768607707 150487383 281846909 636946063 440965651 219588619 86927241 565065293 270778303 931060261 111825491 577393329 203631331 837477349 196376801 577181597 15567821 525491475 322115589 345454331 37218829 879894011 347057751 134019007 80923011 929062005 468480309 733466337 388303697 333767389 911018955 681073765 453618405 815100699 437991943 292073555 25040115 605521309 854892961 537017793 466116725 588102233 344100633 47662535 129847219 409964491 367620281 609863815 466404661 22419455 519738769 93354027 104064211 736626557 732727415 915185639 316173991 460482655 964008719 412715251 531521559 248401731 297518269 724182931 657372365 473247823 870374323 593418769 599821247 11220015 43314155 833040829 627197481 516634907 638867493 665071093 157800591 386837459 46817509 836487961 513216957 752655001 390445441 339034517 339196359 712967233 937832205 481263319 33825545 869711643 468237675 45371487 78601513 969844745 411444803 882628779 965567505 899056497 833239047 468088901 8652537 215342145 705854699 106004163 808911705 780193519 762985459 751415229 351975415 382377081 892724199 195109845 137454047 910558567 812870229 897531317 498672997 826966723 371829911 831131921 43736871 557023527 400435917 49132449 893157639 762404785 952594143 270479401 628271411 697713415 864733053 283571059 98855709 88416853 227588897 761248081 745770117 432709205 44756743 556843421 266572907 689632321 228064829 889253689 411667485 698354915 388370063 630265103 278199857 559121799 178600855 919956243 412548481 723578629 121456563 320386877 372443699 112137401 699241231 149072017 142385841 119601547 514049689 142455321 100911279 641764585 295965961 313132007 514067501 673555913 43965409 645442581 95868013 568708009 921140327 611152837 479722233 181827983 320305325 324293153 364205225 301703435 571669641 849422173 206918807 521951025 557080735 375160755 612153641 590623649 32754003 10167395 355993867 238963073 344845785 83766969 118218287 104417405 413507367 662368005 919899859 348159951 616031485 405228453 202379897 346145585 199383781 126854137 349875441 412363245 359949103 893022573 365297487 209112527 148338673 47160433 821557483 236782639 602328077 130861439 177457773 995908331 922248749 653966363 669997761 898816871 835342781 545508303 365569561 490557843 437617657 846684461 979334387 602603237 645314783 54679759 450110227 93075291 200468537 376829015 52731527 413422715 509799061 654364017 524689567 677334101 852233805 597688011 77062395 673307261 595944577 164715301 477798525 112611603 890282521 714230333 524180051 228271549 369693383 84510175 56926449 586060967 866098175 103026397 797832465 884676491 4715013 163891729 592008379 592929445 628857567 234921821 53494327 512582587 146343265 491393707 239465757 53587739 461281823 461883119 875790663 391344285 487604345 788085539 867538907 761601693 861053851 805938503 637118019 959231747 818395507 11930471 655944501 76629053 613179323 579942549 600303021 259832385 480007919 478228459 642373613 800561551 695001437 66340747 343644805 256592937 384721935 188634017 245449031 17253025 856654819 126726493 390073937 30557963 539581047 251570169 630893826 24398855 620513585 440272825 162632463 262511035 301588037 580410599 203939685 734403797 187467689 111462613 189296963 229356937 612840991 41461469 173942061 600851609 802013741 646274403 270171119 224896073 821553957 526438093 244034463 686647655 752107037 845864593 578271381 616753739 284841719 651501097 80453241 991236563 967951709 700719637 130659639 114514531 886069179 760279265 600540163 225526507 838879821 507368479 627372631 888429025 470188563 528903529 762591481 476933187 575247313 79746401 126802679 615073945 928837405 5360307 228649121 82180591 35221835 29915919 572167831 276114651 968395901 557157935 235714749 442845309 606374557 560320217 522359613 674197371 702305367 848824787 449284491 396166403 802866727 459626225 692277607 174558153 420182859 750486541 272377809 77766415 706863307 929339913 114907673 644175769 647920249 870012881 652431057 723648695 152960495 115245397 384946389 50979133 466225543 51947151 30060619 841647753 581527407 348664453 861618589 559369093 518819991 594186813 940258433 262075291 971004851 409654219 580402419 672818115 821115975 764862281 671141431 829125499 929055129 944019929 435170777 196542923 352247227 683693223 530518189 251283519 874137733 615620579 886395857 805109741 696508055 13815241 28454311 452846709 544060505 614774169 10872027 263703293 649207035 13736607 485697893 223200563 994515317 835581741 775040381 277362765 777957255 329140637 594828969 838934537 67725501 548721491 176188085 134758317 452493665 662889909 12654773 224892679 46759313 380850489 1401863 419410287 296299563 167591001 355132239 734522563 559453141 228333207 451070325 881384039 939597827 110915963 181397171 792917579 592991211 900483993 354838913 736337383 909146509 648114059 533113767 437727029 851791539 82653427 828260653 535280575 997448685 342288253 53439339 312865681 168577937 157035993 396831227 626666561 146349761 593469635 801164739 829622767 989353063 760202747 878319085 877828673 571120687 552912207 734885615 823805797 319266709 589897613 35016067 702371601 195264215 340740497 535310257 376555395 292574207 977349949 801087939 411584129 531320795 717356669 434160461 873169499 295061255 497520705 857766955 876763877 395473119 449742725 712983939 806316157 69179021 135309385 494120641 110807821 110632449 965381275 624337047 516166399 948597493 49406345 626442243 846337099 6147047 998335535 914513737 995661681 909194015 57351855 87304437 399910005 364121519 331468085 624964315 283059685 99578991 192361201 644780313 593543639 484920063 400829215 258725649 479594731 432734407 632333825 752644721 22396743 752482295 622173151 665770027 613672345 462562951 640816141 893974909 390208535 115602233 574058469 382893803 761924479 378207891 946329035 561140035 640299543 537424871 646557223 914257045 927128751 691880013 37685355 402860865 508213147 466209189 420458515 876565739 220474299 419562389 994866079 938405757 990594931 358080145 548135323 265698859 22021557 229138639 641604507 718179445 190695155 724272465 140287285 547613469 799393327 42540765 508466959 271055149 764844011 825390853 192619471 291960573 949133115 248900383 756568365 695545127 4805807 100813647 360406749 672729489 199712107 376275833 24041383 35275877 781599761 760037969 682168401 466451225 745151951 955585101 571343025 952425833 670116703 710571693 386558621 204903513 875077629 46503035 805359865 118340405 767555185 62388613 336383153 890451601 860102149 911031655 508068791 473655113 97752469 359987837 562647553 908991875 935797881 187196145 779186327 746128299 879450525 618856371 447334527 577871219 233647211 138767741 109292495 245072089 151319517 203433421 57255581 385864993 609793901 856772589 755543055 60260825 781732389 363053035 530224461 966346193 618890131 394502561 169968265 31542825 184394441 716373423 729699839 679084867 758591851 726313597 99039471 297698253 969315483 868658491 242637991 602576313 539984905 89460963 851979125 105668935 828603627 666315059 571290037 492649975 964398335 418500531 523427019 929360793 672322443 87156917 314048543 260098365 271298655 189258833 324150307 916020291 421457103 931261799 773887315 458575183 778544315 94465183 891888433 633183051 99317129 414208361 297556805 650401901 558488357 550486781 371494949 809370929 532905225 536223579 668898407 161382233 871862575 783859791 97489329 615519989 630404897 763193957 561191851 760526167 400642795 748341749 551390471 340871195 641481765 76839971 49549953 171136039 218666221 962841043 599550939 96247973 929723111 146378425 470222045 51234317 178449475 212424779 140892763 40138007 441514167 899779787 200917297 599295433 780745857 800845885 699409727 633973871 606771047 622984567 210943087 332883101 686420409 315753743 607767475 714954287 136352077 173709923 223391751 897205837 593743999 891502749 255190381 2678365 727840053 557827503 523177965 979450649 176392673 360989519 14602397 577000825 994774133 42753021 564696723 868882371 317396851 379961859 103714293 189877891 927497439 392704111 765730027 923575695 275312455 998345243 836945063 362753 74169539 293587623 973997157 28863549 814239217 532184443 479104615 626884337 466574069 599687369 11052277 228101649 979333247 303249541 303568741 718229207 514534597 524140403 375884045 103290827 823400581 452379163 323533907 426640821 125539847 540052939 71842207 927912621 828596247 693096349 59147365 126935821 732009227 415855473 984808477 222508667 884022723 934760687 593781067 830792417 389058213 79094919 656619639 1170293 804075165 36093041 174327607 84201907 211229221 217107375 502071585 161374303 373618745 419504391 164344539 248242309 38674783 523551755 768416013 296293497 565308069 17411091 661978985 942478039 325873315 81031999 41657261 780920197 913896055 273704823 861932181 52475567 966507717 581268841 419579121 340954055 62856381 669434259 404456591 234381963 532967701 164033839 565874509 914503167 404014861 568520009 966965259 596804975 868277095 710986673 706293683 479842161 648306549 146908159 418872375 837266143 700826637 687515793 756381589 446268381 720796811 571534739 281863369 403237081 884075989 810689521 391136995 787768709 951875933 807243367 494215155 250266079 381722135 93797491 818910225 737696557 313603969 842525535 771434083 628625143 178732705 469036347 588040721 197058069 307001093 6924765 430164815 161573281 620104645 662687207 95511125 642355711 760866943 385220035 804420199 617076701 466902103 312218269 201434317 418353455 348345085 170823025 418095581 170365489 372927913 750150141 542096879 259838567 507481109 116260299 671916131 619956123 968266635 249535785 938462889 632508645 194176471 669228593 464315693 954729889 157888079 643047875 271703149 408333935 6168787 464237703 327539179 269516865 359568073 662534125 958431537 203963207 147729951 797843759 638821583 175140351 491861579 830229579 142916451 714992173 209653577 498052361 69183117 721810397 263428261 300051451 450275319 978422371 119744103 633899897 845643861 488290139 267696169 684486307 933777503 209791403 992232457 590622305 894768601 503785087 608358315 110799971 12061837 391674443 88500033 276643361 358455627 641153993 622601853 628372445 534625009 909873919 499156895 662780829 474750815 757289017 193819247 861962291 78136447 276655373 864946489 554768439 955213125 7143253 393307093 729853191 549558441 662474805 162076831 469343183 40870575 30607131 721543551 569141885 932279649 441248953 74307809 306238665 151570895 955105807 883833023 156620595 692670231 417274205 470574997 73371653 614502745 664847155 547414889 229610063 644639423 280858979 407514315 354364135 452432509 874664969 988949455 462501233 832131019 645875339 592295189 511115089 835460845 216253075 804092609 786010299 437132845 933996823 936359813 749517731 819230941 580035923 930622355 330266831 685326423 873144265 129450925 247482561 133411581 137729865 90551317 876965071 272108857 184854501 697594269 236789773 441191551 259601915 100983963 932641373 715630151 503293229 520845291 969809255 923986709 771681127 813775861 454151069 367798643 893830111 973741991 503900979 78513905 147756049 577659255 367646509 808883501 259507393 743839331 505668691 857943751 806028027 817735409 458649651 19605611 68710165 399650865 771658279 925556679 892245927 935409335 228888143 631753883 757408923 360570787 455016595 360484261 468794903 500944793 54354339 426510767 293860245 608224203 63127545 436693135 895955661 900075243 13959889 108800541 752316615 941561915 269080889 470654779 316305611 389123711 137561341 754027731 306541425 450248453 851500471 313669337 925162387 460632229 208282565 302670663 40100181 117650107 131836243 885665053 141123877 319960111 735354703 982002023 886045879 74328687 999826545 534848053 988703751 560209521 971189819 554058661 213473879 587542451 459056115 263999703 552819511 972392251 2874282 918782711 18613113 480265881 190905657 492615731 275399225 576958177 345581377 260666571 898391517 813945267 521761831 670182397 259375375 441273909 685137183 119855381 410429381 693307923 436037919 898527845 486250043 435986055 355132903 570364999 659635701 3691851 202755841 93326365 208552639 318351785 929470141 914369873 993759149 811982701 595466033 935197271 225780253 587694063 962836287 320478119 874014385 207949579 731708817 936506053 773334101 103049257 852056467 624803131 345218881 533974329 36152449 850208667 934886893 147749293 362425945 543230591 553274911 817891717 502116581 911652745 855803363 872177735 376766131 85198437 10704527 510392323 943285277 762749891 257632701 996850253 440546883 26636893 407885393 236450117 446820365 998662135 205933433 661518993 106147629 571923547 522190247 25328221 308726551 23735899 795017627 767981667 936685071 340011217 692714837 239344349 582762525 513552287 206569253 192813461 895320079 112220337 627930269 572207833 630779519 991732471 253178265 923890811 136590539 137852779 222165309 982509279 198658591 94103057 36000503 125487079 179278441 639439603 949071739 268812291 145055075 195440931 572751301 506032937 379179913 525549499 962345497 422175703 31148329 486021853 664617219 20785685 29325133 159416501 807494231 527058543 214648531 267821171 847667249 299450619 405455705 754671441 973452791 170466905 848528965 785311125 661547347 683917487 18379723 199472005 607827773 331252393 737146849 326140533 107265773 379561089 301521225 811025855 141317353 688333043 471309449 457948613 813938173 117948997 350771955 695808753 683807805 923856709 999269277 561727159 89149447 28801099 639801449 432068753 134399741 813347379 903873281 950449407 324248845 471869799 113687505 292187789 351471465 255500497 772509461 215397069 202846095 450032361 198058445 873360217 956256325 519399085 295839421 57890517 503512211 306062501 982004091 621745127 38600913 225455069 257438555 753547845 954527129 650972395 858537087 848841129 548376271 577081583 313130705 616118995 521075873 847690895 993565949 764755087 585744003 534482681 31550335 342560431 244972591 730383585 18627989 611256077 39700653 224819081 560785991 731502219 42302279 756650933 530464105 531990549 937143953 461945013 229069967 468402587 777004391 919197019 607676443 429681433 658773997 147741451 793293877 115828623 558759059 908553383 840185293 275617801 536828681 51314081 54804379 569229977 143895885 424422123 385825 464158553 790896291 589926917 46240677 983738733 646770325 48894967 411178809 32157179 325842429 898130509 450390453 470638905 842593265 121381917 620720057 574377825 356244697 576448263 521103277 874550195 805753697 418184753 857815233 274669435 359046011 983613257 448648685 683822861 561747813 24633219 870541553 382637247 475826339 242560673 172323161 723838453 706398979 891533287 742341487 238903835 238192533 735028005 621857105 229220769 299043769 860622255 647206877 378418433 16971281 137125733 394325945 196286913 558240139 652905387 425985113 396504935 566486619 483294833 373898995 760247943 152590075 687147309 48205191 271211963 757506865 215848415 208626655 648232103 86251787 776712715 475877515 510331633 849755611 686962111 340506593 92901713 989458749 14697105 963353347 804950651 858500629 889554081 351161051 829595703 409580433 838839189 178566933 700916811 598973477 132541851 430295853 105627019 860940429 623895657 596724065 953597649 604984013 141867069 870515131 94119937 238851887 395491549 964301577 974534913 88153931 755368087 135690727 776047303 82825981 177045827 811627953 855502413 239224167 139108159 131962257 965150613 127481845 616237681 837248375 327356583 754138461 601622853 654582557 436974231 284450971 915994547 317075713 963218047 707025395 623395899 29012331 23478403 853542897 221161695 171736429 847806155 814574699 982744113 941103583 161132169 568982905 517734983 410946657 917910775 606270595 347499453 47872603 79663195 574224181 250394299 869387261 192810747 832950401 204280303 876546879 29874731 578319271 705830799 260013283 648268615 626376487 10597465 267047791 618089645 487774159 262514835 510130229 77665995 505181109 740185869 442053709 626668817 66005299 383215643 136812439 410373371 381908461 415657629 293317561 475178761 641950161 383404279 664385319 727602633 172094995 797794331 407336983 924402889 511567919 981207163 236436363 324981157 797361383 281365271 150041673 420554497 38717771 290438775 679373795 527626117 333200301 626831271 56085423 931045091 847867049 864716607 919600593 799764695 420920355 402552923 675476013 101908513 635410507 103486371 327110007 294870415 199124625 317282885 613648933 804440815 59919027 96152823 732689271 978646557 488219571 986710775 60548727 181493757 601737441 357974797 934671603 180915063 189871823 681192579 600825479 886366333 271889499 842443827 146300303 344216331 650858919 966858619 864395829 777838625 214166815 151997249 907607913 203879629 835739771 766143729 86636005 763405085 870013875 686736261 990665511 719378221 898122765 262778487 677951097 689024545 904616213 919347409 536794601 715105569 505325985 20278815 766010193 955744351 102874825 542810489 89813329 271101463 66015991 149038203 475290705 621697931 897966289 718255181 464774017 809814019 152354897 839845533 26838491 453812691 555813807 129498273 661896477 622952791 942655091 907013145 166815439 38077421 733984357 209316423 708801859 717003523 991134365 647774973 67880593 736107275 924605045 460894095 797757849 710647421 678327953 109481437 495512323 353020123 517538785 556176203 753444927 889839027 210684051 715412427 303751813 532433299 491544873 289446095 388099543 346241815 526799205 807152729 45562875 798522851 781737811 50670061 166746499 697466783 209903687 25999769 974408901 635054333 462737373 517876981 234331365 364438713 703264507 493613597 489476807 714835605 161050315 943016635 599604767 389179481 99133379 747517689 119154275 179869403 737197215 528369807 904496085 48505585 343354211 268680123 860206715 613213313 779779675 406533699 816075045 653982066 499820827 983500919 198343791 435006137 485934465 64843819 157951413 137418063 628225711 808167871 355249185 912664375 234148371 793883929 968305061 578150009 386409567 587580583 935895031 687301163 32427153 571215453 383250839 224970595 483684591 446828733 849052367 199178311 735415809 255027659 722524845 566964479 183270301 17652757 441610251 27299007 988054497 480413619 402936457 66711743 639790129 996289857 918446991 648230721 925822007 369194729 837539663 571049107 494675175 337239893 724243901 393044483 152322945 705433789 474412445 120416495 948702341 500190175 194319223 412084149 510538435 922542851 778397337 762264261 418189389 710845683 272264221 320123275 940425599 983504907 368169443 435111301 12686335 765608229 248633235 308058933 49414071 990283433 66981789 720298275 243535325 969949571 938881081 852317925 608733165 667554349 407106153 522702353 368069801 232715171 854659315 191076685 741234465 960523883 173011817 838619969 32771495 833013651 543180067 389595553 743396057 260206515 697680961 458539557 663570585 800588265 214943403 188220305 418103059 588079321 900070159 214901933 515766719 874316723 214476267 512591183 119624277 882585389 5486201 873854797 70103003 890595461 990623173 961003917 180747677 845395587 269861279 487545079 811874863 239304307 142475679 638094207 809902703 408210219 130289187 359481117 575262335 693474827 301147479 412681429 66741965 6524409 305188903 556814255 559057677 894870627 824159055 941478849 519516985 199957567 907420237 126859041 53146263 211317513 33399915 266609397 279549621 96705485 327463353 852822117 153982051 131387411 322709005 317120421 415923393 64125173 229272073 375022829 527378483 425118737 500814359 635281281 76569443 32731275 227356515 889151659 820443207 785909779 953869545 845876923 166466329 923815903 499988583 93855759 555031905 551044015 762595175 48225287 243878633 956849349 945362487 960524813 687220933 36465395 268421361 733835411 922181713 344897935 902394997 560924183 499480627 984383093 443910507 11419157 305642837 600984845 967682371 109808669 471328749 51313477 633271607 587292351 795258487 716782225 568435013 715122835 773170359 165989107 525601589 351280959 491055801 530301935 654200729 426200173 195684305 286727573 668467913 845336779 558322077 447569785 561849317 847859479 875039487 212607931 371530197 869905683 36692773 649943551 566723145 272860297 880061569 709925493 766969529 231105611 263040977 273521365 252754279 36370737 344518937 456404313 362691161 485391649 106038951 533870539 423210081 127137283 676529675 19448951 501706775 803845835 162246437 791654195 94396633 345931889 292924183 410078817 541779411 212207865 115496271 389905889 342720243 560585325 466566785 884081191 165724657 603633119 671879593 392322343 395031373 286691943 256704265 689032543 648501585 2339883 454632241 401549013 161679629 169871701 175033329 856514585 399334231 50540307 455695209 736385855 219091 273498789 909493501 141327591 354249189 856742985 517390935 128998197 885979073 705956937 946847853 525827289 451142491 167545851 117401211 748080651 866930553 207794871 367154949 483340677 256292509 835850463 293239511 669007761 863696925 150263517 273731077 174765819 452549389 103875621 421720299 452850715 33451343 568084527 842145071 743072205 606156427 686839167 360005821 358446713 327746355 883325599 134282951 855705869 152279419 534186273 927955147 187163135 47814759 471490717 634798477 761157197 40650943 760165305 250406425 799162493 558844433 892043551 95291075 764436383 271503287 939966079 531177001 985023047 763146705 136667539 903849517 596822421 269129287 534706975 176314621 932478509 911586249 170960877 707782667 727110465 374108369 995198927 443382039 216854403 620426907 287325341 857339681 433862197 879117877 638272317 496382329 642866713 91177323 728866969 461154991 9120387 574817751 221984929 552237987 608163395 629899735 296999759 320846969 418673853 512139159 270619047 316343707 80403667 95326213 923215027 581932733 956616181 122196441 55048325 897449439 21823769 480162965 121677621 94877251 731964349 687588735 670484971 646778227 455512807 836711081 889146315 557535303 667725351 551033321 751960843 192975835 389411985 40394723 127309795 621174927 551227333 499374331 75858839 44256021 497912551 751531621 442172785 483232093 69162409 429437719 445017539 613598629 863193405 559992017 925452007 847373679 32996197 731300125 14459967 618023051 998757 982842955 970024757 132333069 640474891 762677361 98192957 402282829 581450671 282435697 279411153 922098419 653172525 903690485 212213105 277821931 799349485 358055273 449231017 522080359 915818717 586452745 463806475 78412517 374290547 51266003 542527537 396931371 401086381 577852817 12688573 814557505 814475795 26806481 274007385 79794813 951819185 552013805 137425593 55868029 447318557 949107205 145523605 797549603 122874743 213965825 416662963 553835677 577996643 501898131 726622425 369226335 121606675 242095151 261777881 816788003 952803131 217476633 77268369 956023793 222935319 803200857 431687651 605238289 787795825 743556285 929221301 60433435 7843477 94854367 94454013 222800361 204844635 414500125 872338867 287159969 876562209 389256867 677788893 360533421 529622731 895914847 2073217 756340163 761392585 707041035 911308211 196931039 422295569 575013923 682912141 329458755 468989473 719616245 591849521 165856639 522637313 355497613 8788425 22420325 87772733 642389443 271080841 521893395 426334955 927372859 478752939 409986793 530553515 674747737 531045743 81921433 851416995 843510609 776221217 324624147 358479999 893740057 122187283 283553429 966097273 617432179 790149791 452474019 769608525 403139813 943508519 768760841 475761217 640189121 910520599 252659933 152150819 790132509 686819551 911018359 57433163 578282971 669861625 108155263 421691541 678021797 907470313 139161825 856056427 728676841 278688825 853362897 631030455 719420893 291768187 963442377 381765617 994083207 145023819 653798287 175795991 953353641 919280199 555734065 931310257 79871449 455204123 500166911 774536649 357000043 409835899 751802521 308213499 501702273 593716513 689169635 399706465 131671301 117419725 876773895 682176419 827488675 86393163 627940729 899483373 708279511 907943021 290063097 910420473 38562783 607241741 473032073 676445187 449416643 668908815 86164595 236443089 418399319 707373657 945800271 407950513 744634159 784573409 558890999 145371515 332779693 836427681 507458449 135972749 664057593 788769945 582277511 495359947 676398339 648465365 91394959 263243173 510201731 312744295 707657125 161594899 594518011 407107435 961985293 655683727 239963057 222255871 610367315 315366433 222960823 503863121 673328459 328620633 26477797 705455249 103809043 487941197 320852699 457317625 87885837 356063641 208207617 231480783 983417317 731303269 978361479 906686041 540270995 148804447 677682789 84232427 836036431 696423099 643509853 415390175 555397791 883449659 689142773 854133399 888001359 791377443 328305021 23295103 411979893 692434243 386663185 901749255 176274281 53198831 516850063 595934123 588263637 500446725 973531549 575864555 47885727 626417391 259453615 707700051 916880897 576817303 1668091 77607797 134873205 310104181 773207425 560811501 850394301 943597193 856384267 685709401 951910119 204422229 580455721 745785447 548353609 236437483 940614193 333899463 256905341 992571617 924192583 57087539 354016361 305613651 917096783 826501745 529636151 448943337 932890107 154091847 973350749 278171601 608159941 760671113 768947095 772983743 222228459 488004113 555883495 459806965 852570487 352727235 734619293 761349433 29654583 932941703 945172299 826692309 51305159 337685839 137828813 905360291 367395971 454458645 335504201 153239041 970529941 370523871 199759659 571286483 908328173 967511219 707153445 393103243 596557125 813856677 901533493 337188635 61785115 645386449 215660703 707460867 840376247 32926805 963844335 233781579 814780203 473975903 356345849 571967103 723847503 897926175 17503707 555100855 304321475 310255313 738204151 884519055 505265647 173121717 251205627 731257903 994536963 229613079 263946457 685807173 604453879 683838539 470159823 365004039 978427533 564069543 754654051 380397875 438645835 156791183 939618909 28943119 607575683 391041903 395467475 507160939 577960525 196676023 289147171 425020059 912924553 997862883 267963633 317149053 870097885 223450741 371764775 664217211 477686205 425496053 969951739 904893567 286311263 855726071 619811815 556222979 84788165 905680407 341845171 389570561 314790325 254747891 297247591 5304067 333148865 231868217 428107355 120072213 743001663 105076377 126077481 13168591 104462931 618217167 519084727 319984461 521678561 151367837 67449391 804505399 357084829 982797515 869029895 147743931 967747069 495273773 560030203 615687311 134366273 849722781 879275791 760581105 149860979 226836735 147185295 86915495 307801185 75539003 514433295 234893057 233590183 310325059 130321771 66414803 339997857 994907155 204514761 51620477 256557433 523593645 544444053 785920229 21998367 337107737 144037249 859103607 634575949 323061867 235225739 792173867 651959425 613843391 263870711 905667969 647037189 491522611 405949011 887133565 49906151 516299509 18855791 476600493 971166977 49771061 629635947 409160233 573074163 922336815 518591657 92292493 910527013 559865381 376273879 514050561 604879303 389724511 462867687 207488307 887823571 14459443 824162841 45491801 127359751 659198199 573945581 896043313 79721963 23041809 257458995 291941635 423763409 136642025 982915067 747398041 837329 386741745 493931173 644638287 248216011 817039781 583637 933740287 348415847 279356037 331528309 29502735 1085205 824351775 189814459 984360561 562752525 633613569 630194979 394336407 236163665 540330953 394294639 137032579 570277287 622844437 992544687 815201465 204330657 145197971 815379253 858038343 183318421 44053237 2027421 422933957 581369767 788097267 227046861 592589135 917286843 527476559 841846513 235559565 843057029 425036247 171803515 678037421 192470651 446490457 439155753 744736357 224500447 863505587 672198911 680463093 497414327 815348163 251252809 861400863 860101331 357530743 474986395 837333301 441908175 821430209 608990931 795481867 538198791 98307737 14015251 98088705 903535525 820683521 462990279 584550141 106959259 679414535 970843559 574711659 407923871 52365753 541261739 926370885 878557489 203749429 570071065 269817863 403139995 389628057 893366653 802506935 206440171 352547091 880370093 132323043 142896123 747816149 74097347 890138787 66324587 604619031 599876643 886461075 846270371 933089821 238275451 145046235 157386197 971007535 329684927 911925291 860658933 697309347 377326633 302871221 229883335 973694671 393766209 710751033 352832723 675109657 47907281 647766525 499997543 465340393 363048939 366128081 714321053 708788401 437277169 757087499 993168469 907761389 818323841 28317319 654873655 486087967 402778763 17097387 256360627 521117649 742919747 719268457 154624001 33886867 742658597 496601141 674656035 411149571 235231477 406760203 982007009 463198143 64993215 842161525 191461063 74382199 338561751 80738433 456648243 339433431 555018969 944493251 987945283 174393501 292393899 772748633 353535455 398155403 75494265 370188525 467334837 329838697 583990709 951652009 868347459 198423053 932830749 669346117 998673347 529280335 760111541 783041535 923553857 613470991 757261257 196531615 280292237 891726395 805884143 192366961 398635839 911196869 489005569 282030155 678538165 118029477 862603555 555709837 86109979 57499871 874049219 898526237 331120733 829630077 406931091 110973289 64622647 19932559 945453201 858116709 167896103 290964019 239375363 847150227 428489591 635769737 988975217 135258871 986137655 912437947 142080691 446802721 820576317 245847035 132395491 938018341 694832683 66444165 475477093 634488737 443671659 434101915 585772265 979851455 602959401 934780551 651257693 340224809 75577953 153735577 637993987 414618647 802667729 150143023 289607261 306456905 439483139 574790569 648086581 707730945 406064453 143213937 701137571 502975505 250868145 641488891 697875203 763646159 45026599 996827071 221817333 683011607 628152399 848320065 504011371 538665809 8904345 315043081 255247509 51185257 719787839 63205037 419182321 131060953 698010175 879377349 951948099 117644957 584280929 623189491 307645847 293405499 524621623 283339489 816835393 667594435 925992473 945308481 72805853 370308297 779024679 813182929 171893843 299783019 837137225 495124047 368562121 585870931 270326831 737672325 842311353 731979691 440168785 764405065 797581275 830256427 277642481 537214835 223278389 223340307 628286229 735925477 844150035 316799781 218763407 852211081 133109003 382752693 149835767 362095185 817644279 941132947 105313451 608669243 476978683 2093601 462765527 534161733 450701189 443858501 692480361 517916025 999520329 825167725 448787737 496301549 180557633 271509391 374599015 665757625 377406133 302566185 977465501 803174143 460817709 899215425 662025675 180054505 457177217 785834855 133605831 995178411 353270987 961519279 142959669 784215933 482045297 122937015 542804089 499513251 26309661 623912361 827142343 302131303 338337221 523253295 314874643 204191001 245110693 609936003 706336291 201680151 741509183 118395743 441577081 935945921 567146083 235077901 318286187 266975361 308048419 758704729 403356173 375664587 947360733 128306075 59573313 23427095 208130867 296623535 340374959 443984873 637763089 740649213 483294409 870214603 682764717 37524595 881560003 522335055 186958723 443057287 214272417 150138383 602119767 955982903 367063339 267210925 380070199 555197961 633376751 112327123 781700723 148075277 71055687 503817525 50566315 111322583 913684307 896581259 357468609 393973637 275621883 208157849 800263651 982367937 607909871 164864553 306933379 173643445 661967785 526749453 669251935 880255003 887469157 337006879 788759933 710779949 300863281 788287809 174421541 90033077 21930969 123645021 429199855 365467135 262313975 886889575 705892277 13327843 10851305 718041431 911567259 540626621 964592603 561669681 620455951 413580149 87526075 396510719 236841669 689976185 837293377 686825171 963205049 168136127 164548847 384399559 679342125 449198021 461067531 710664445 964540337 496353939 907571623 6709919 400277271 546088371 247633049 712169441 933080443 349707329 638471813 462679291 509019459 470099415 241283535 106499379 505771801 374831515 589867947 512767949 596397811 784579391 170528527 948616993 277636877 890768885 367511995 879884679 957648619 73821567 132258105 160794209 623954009 947035425 448548825 844869915 273246315 919834793 207895473 763071013 149146751 750658927 990737315 517843961 174361399 381539663 907311705 774974491 530874239 737030577 182538559 913500693 519295375 363152515 307038097 66403961 237365727 796004667 51201869 723794401 614832181 505016791 27709501 553967087 287704221 270287327 641192175 968015949 357361261 189202781 899198397 363222959 780837695 118633453 292420551 114405583 402420215 775152553 392983029 284714349 347959747 279294519 348486649 447834453 953322261 523011017 889242439 817645401 704154797 394616337 669443619 419294803 97647243 246730065 852547221 466849829 630806271 8431949 83825515 532347065 424204699 639967315 576235327 742674179 355554875 341683771 154984303 666533373 310176771 359042913 366258983 536333735 344094307 555188143 312123477 431718925 45566473 805975951 742715059 681342017 755551223 926438137 493355197 547112285 71954543 76690539 815691969 12595075 301589501 956924395 128420811 939229407 869341301 641724425 175649459 182053535 646506483 891096795 81195293 642043395 980548061 272731901 395950191 278381385 488250845 949995157 253973207 194822845 386029291 679334485 754643537 5677489 954173503 510274673 317537693 887784831 209088607 753801125 205068609 924264073 270684695 344872507 896684687 215778619 191533435 456070401 353007261 7873797 770544361 94551115 269574991 495123809 174945795 886432503 438940745 724964053 593199287 355037549 460820479 635579367 408781367 888145563 569408677 614964267 577835009 508943097 158465857 506523963 929161435 327514497 357817495 798268345 603014605 781109947 742361655 283088465 38677807 767270327 174745979 987975859 464095643 63361291 918943363 354688153 494177013 944113107 703451961 359615689 48952171 757641909 435806793 752130569 141157489 638839523 95256623 817616941 928882625 520401169 931439657 162901775 428789347 695480957 555190591 428189585 127355809 396439533 964821829 905659551 494214159 631142575 452508111 715809833 552788617 585696155 95247167 926087209 272997173 401049615 977485757 505607077 285612157 793716463 290824761 134108067 11965463 598697899 322507627 624120887 994586623 712663353 957942485 519229819 413233529 413368089 355513789 608917137 229417489 280224845 292452405 451033765 992281755 556498023 428176405 404781543 224371763 304220285 273212413 201437843 62472511 519574571 231766101 837241321 868681323 58432153 107898957 54273333 160489385 552783219 698560733 393141961 573597495 613971443 943316935 307112191 264832153 240458197 665939601 30276411 338521501 311984223 728800141 560825059 436309331 331394913 719231185 616321645 210016539 358915119 744905537 390573651 571847575 924775079 106963329 430756885 668447669 380401715 508436741 280872769 35590569 759257277 644491011 1293413 410553325 828537277 174360955 487622685 495855687 62172465 975993399 60078091 604076741 737800353 681362375 856126939 733344953 628235289 378586753 60257341 328371135 226070321 310241673 71565293 162958011 90106373 717593027 716701867 428624603 318255165 206528737 120188995 794201747 88678917 324169309 246998921 600047263 796587287 834766453 748357459 94682883 323851183 852329267 419600773 780274187 151657363 350349669 841752075 182893387 707390227 985791911 445511125 584635551 588288515 657194325 981853151 19281709 395215043 329385369 450383913 923687007 847896887 667690595 697088191 442160875 441699791 798995821 373085365 451874765 489016963 265092917 470805281 460136777 604702669 877927939 354730023 581986795 632546231 648368873 771308019 40484745 181964493 63592127 918608821 975824955 425648423 730841893 206156969 583999337 677829985 572011395 752848143 668215999 299272611 503382537 506165557 68786481 272201371 453231791 219361385 335192569 469934207 847939639 590151175 828113821 499925515 919669031 923351155 702019305 335937419 626575057 170610197 296376307 4070343 388163149 764635231 619083541 426555161 143703419 313171149 306929651 645298783 948633601 572732895 154688123 552220671 117700691 197874209 612022753 870310629 815220903 793411879 591967649 169197963 578568703 592772743 784691325 235596011 286562081 444886245 615350149 679088015 836320671 972117741 660349707 946056323 790750415 78950991 518671275 855619679 796069589 207836871 402277195 694951487 786535317 287943447 380825621 944000203 782209475 384855047 391263103 264589105 639820245 776002411 323896645 214321703 187185931 474572575 644554857 621318379 317005935 508401665 345096763 575788611 305190863 820200703 440716109 590680959 31611079 492249097 862096509 727400307 284213171 330414875 737160173 784791423 557413565 624887607 90398217 383801991 746037973 747752805 380202121 332979197 588029109 310906811 165149541 116090067 191044571 16872527 421485539 823893131 318874001 521561157 159190927 439675945 116798437 815711433 865988927 780440891 655880369 647339533 447565323 883390169 52527765 760929353 217569373 316236447 538798073 553610431 158980827 673354677 915709965 435380413 904465279 297053129 680321483 9867921 937621633 657701905 499094257 798973079 288127849 520924747 563826439 629242419 955517439 466294205 460009055 767912141 18115931 444713015 255603473 913042647 302463191 624913165 901154301 902734029 928180505 351610399 412742091 204017201 123078411 687712979 797421547 567662731 980738273 170722069 297736597 182616687 214569243 250774623 940427467 282127993 627817339 183084205 59576659 674680905 417743885 382110597 836060095 172255113 571129893 84346613 5914725 728419051 387427679 321919125 818432617 922593579 608691361 928925313 378245295 491648009 799092501 117979745 368790763 896123219 804401457 618123363 245346963 342276567 576959409 336537661 161502185 980884595 53269657 530215469 984394995 612504837 60921909 373750779 967967873 672305531 864198681 757586419 179241263 269348551 107263523 735230443 627458649 131750881 901200757 129629763 460734249 746464973 901937021 543640289 207029649 287514003 101596909 919074353 331233095 63593799 566082755 439338029 963556043 807380741 866348357 511986511 387959911 345124077 178209019 704459681 19696937 205340457 694502845 681269169 557077995 352568555 543459747 142969235 29418573 174723951 68792343 62891493 202369465 225034999 500085953 490720975 865388123 523233227 474382997 917337855 399825453 261158209 689506003 708539051 649058289 314987695 79766523 843561619 235997231 933920379 695437533 167881465 663460917 636341005 764199819 399628463 127960349 242071001 326081121 136134153 579758279 943068247 333291781 392500199 412604635 110218505 379004769 197724847 257397705 735640701 562656427 887547215 983181769 966293057 445100127 771955771 430539229 970304499 656934209 196247669 21640397 294930995 138037339 812086913 970166823 73184683 468163591 125169007 718272323 730884621 775907035 784191443 562811461 333019925 111482559 632686795 40488211 616299397 535362013 354103039 44478557 633490983 811422637 272589215 833885339 414243531 775334887 579365213 286523661 366674767 730366865 985338233 950774973 491379347 506693111 72778939 575244667 248465793 388263341 927672429 718570719 770615307 176112529 228807019 375909191 847721517 885558213 303237391 221696223 465016553 16803511 273243201 82560659 110318409 849976347 941280877 214458655 132603229 951489003 304143501 160365059 817642819 64816493 18139677 352441475 597177371 540740655 339426339 350945973 67896591 461042433 764422191 787583085 762336339 925570307 161861461 595040335 607036959 906643097 186148659 941725887 481212341 930783341 163635953 65762543 261649507 760502901 204150335 971994585 698003065 270191341 516388431 486566715 239970895 374208855 311941345 424875679 393496395 519396227 237325117 380253779 621226197 645841027 827990319 695136369 4134241 789443507 57318413 739787737 559912807 667229625 373175225 375502131 961297515 511521663 640513427 905847791 930123255 169823035 542669199 506995527 864588955 335646057 437382433 968387385 896838389 594629581 146081863 744440205 588107941 530290803 472130183 871427797 248273749 946631855 629801967 917700969 625273273 571007007 480533529 96741993 652974217 164507557 367603997 368576701 496970633 459335279 316702887 594049557 724828803 933197551 503291105 767551465 9174087 565141475 239244675 824877179 260658099 723144017 263758541 82192849 533042855 882609537 244471425 880629949 732729101 483295753 455488753 853108183 132270041 346289863 829604339 357020797 82050051 171843805 714823651 165711835 423248783 129337785 626689193 252689375 34617991 7926287 208538291 768949825 313056251 173914331 130687991 239758209 656859401 637303391 207629555 55298025 585524689 437116203 764873133 975185033 817415293 235059471 907607731 652315703 580166721 552874541 614553117 37417111 412567125 523199971 885065865 23746829 74227965 97953761 464782877 796044237 580138115 799389979 32007045 557727435 615110201 498664141 327945977 245709517 645223799 757108091 192898361 940582485 24811683 35242993 954918537 729022649 137766951 348879939 533951415 377772813 393991025 793385677 109185817 299913011 631005185 493066037 901849489 620494547 938540117 323267431 979056513 19354719 714580215 81963669 465292761 120257547 981694845 593440317 418927885 885811931 426559359 474649379 329324063 336222615 52153759 583855699 574079381 603196365 996527751 963335201 708029561 481472727 827465195 28843307 848420709 931749077 824212355 672937810 254847863 526015407 26930707 851354823 101946197 674544661 286361189 596343035 745680939 249160321 803766859 863805865 285943987 206286897 801920415 711518679 86365735 946948653 727835459 411153619 863640913 873366599 738307617 307900717 238065533 486974999 541332013 388176837 163542915 744596987 561359711 150293183 838982335 572349983 477832381 116450437 802455065 966282097 662361419 549229261 145188095 779727529 54363937 309898641 656642151 129618249 379211863 675048985 545318863 574456983 692734991 161289709 268603967 429866661 563444083 76723685 728071489 456294729 158467255 621900573 87473135 735736103 293971477 853261813 708508647 954778787 443461837 858161951 697207887 707264753 66062379 931370123 133960403 385805063 945526913 43990647 9895597 205044389 142544423 250917991 605024663 863450453 434979461 843871783 454286043 144489831 33339647 917763787 414028359 9687793 557782539 813098927 337476909 825876181 606212129 782941049 903405937 801625021 346818245 400548629 512649845 794967317 664049025 729809077 390916649 818342937 36927207 811059927 226155523 42375879 339151761 79963969 861330433 931074281 999453473 274215419 688685993 880550669 94318403 666749531 419169035 915169677 698697895 852190207 266509755 170964361 585677831 226398153 435784665 586163689 697252135 368378599 965461259 608286303 643825105 800596941 278683519 200834143 733120727 717232437 620755689 294809133 649843475 414193959 175549835 943363025 575028839 894774251 497221417 649676825 110520511 556146457 208444433 318295967 148253451 614329483 741372443 251946433 785360453 488542567 925243299 694299051 77216369 498902295 535405713 352619851 98470809 244959825 423084885 736944219 689536207 522283025 277941217 868573015 184376109 329167001 952825525 485241485 17291477 885780601 638040535 583593737 572322291 737436547 481055703 729696163 124615095 96409557 524322505 22654975 241613147 725188817 324953933 78720387 47325987 226442275 446048137 206115421 947451737 611623105 577054251 545908361 782171983 834494951 832888679 209128647 552490079 52445209 970024447 655490973 752094957 326213155 882401847 488931421 366339423 493099035 859903709 796587037 182967083 325103705 813466697 11621057 38099403 936138373 808303449 395425773 274701759 884031115 927234161 708164117 159039379 551377311 212174465 981183853 594037465 364884283 504123391 230643451 18061611 735785509 615823851 369585539 599011627 854321003 163829959 189910677 532048773 147866973 130921893 380684683 817938921 951246491 151042329 541377669 643445779 706977033 602545731 909162349 228034755 548323537 234972105 50253551 50172101 211321703 430791897 164235655 862079979 622503051 946954793 259290227 822311439 943258943 997004533 641439931 346161171 97951437 97285639 651996211 695710435 269544909 790933165 275490927 33780847 580879641 718550459 348790737 874093235 2973911 168903823 747441793 183300271 141818225 525822483 167988591 232252271 166940829 218906033 835883859 837096709 957781079 316019809 605995439 367195531 802494435 729307553 17025993 792694819 697824973 287989881 585792435 635957241 641755625 572293237 481262917 943778109 578740821 370679467 13470495 893299755 760248435 444162237 337788329 981199875 256681711 725262283 693294099 359349265 889537985 508026761 587590485 257331367 340056865 678526763 368145713 996880929 35418261 962387055 279123757 864469469 684523497 59701915 411028379 825283401 172184115 287221117 476970129 899347669 87772875 600825965 189125363 452389627 243803 870138697 922963813 713188161 57787339 502377845 522778459 821824813 836205391 356648675 793260043 439913299 277402471 636607237 881481077 483635277 37195219 893156315 56907107 654406591 691910305 116369133 549804133 417749839 629102887 870074439 336483025 341624243 33570047 809114495 292295627 782189477 870123279 66430135 64493111 296032997 476553345 637785487 791024583 207987521 6748619 142888507 571166197 615430535 785186729 240116335 265729791 18410643 116963357 299334761 31138543 951244359 286803831 567765999 19674259 111047311 937705801 796551505 80983175 431000667 455423855 33822307 113646631 522740903 487883535 429618051 962069661 271434099 92893589 69739675 40051161 686181581 936015283 178000405 755803541 358906307 328762983 340511723 780985423 386083697 417994229 621640343 127664207 318173179 521935081 261531683 318066855 532216711 265208599 805392155 705660975 577252173 677700765 19328917 546753671 303199873 533521629 535767091 553927959 129298795 880713605 301217559 573430287 325736017 578657159 596514543 349445479 852069511 769169441 431351285 146158049 986165609 948432345 39069413 608129539 610424661 832693111 700355079 935801119 940931257 80074003 854174757 690906701 348361989 363377413 189787545 57802605 905645493 911266551 60204865 87533605 505375561 179352273 955508611 802605289 960534095 221893065 289439563 703991279 86260309 695681369 774101265 727532601 189149431 19974729 401346005 225197709 5705433 141740449 201055771 580156541 235277473 754744249 442114801 49209183 251930119 705619243 917144813 895855447 131527873 694459357 509632817 120539721 396963217 786765817 383369311 543768809 618416451 441686261 926955943 532332461 146676139 162403469 398302143 863245269 295729823 119829445 703103973 34867307 892687621 417995753 26902239 819170621 154593731 125309837 928612861 148770791 194769617 7985549 612303891 482985157 235724325 415995919 572172417 780827649 809773761 624570751 239701035 863736973 806866355 242690959 49512067 590643485 530994441 912368189 486811771 893060917 24817887 429848271 284809109 78360605 728485977 67797709 160728275 404124131 965564063 286161677 853040585 945413217 123610083 412333 74484615 63845431 634206305 181913103 488499633 746375117 173711705 520578529 470644073 613936211 579661849 548012055 531596383 600257219 496883439 290984683 346732489 614516955 981355065 636107747 430458213 436687907 109142869 95872717 800002169 165123309 44996017 598001849 264451797 500681041 532895677 346227465 344390605 605286959 128100341 433387099 532671297 166646831 729414619 940115871 408774807 620952769 304929015 976400649 591493051 17671965 139265503 662056725 252921383 770967877 943370537 800867717 137347541 592848639 947679867 715531881 661750863 252244701 304704893 120632083 72381859 903098165 467352289 439614239 590164323 816828715 940967267 971715955 404347827 253485475 743962309 513375035 610456629 387450961 591088847 292849897 266217241 399280299 807468631 111236411 540659733 127789811 453312051 501764661 871665511 114606895 131504713 709708835 304672471 652065327 86715521 614939289 484125359 354230415 341322189 252163957 102146763 549830571 622288681 417819097 647242117 489938093 968832663 883338545 543097027 893745543 862990879 746486325 521574135 80110575 974269143 200692189 489214483 192746597 682987477 871588975 880881305 687967539 284372287 643141753 455148685 987728743 977123645 544530379 426950781 470768603 537291009 570530949 189108353 268081199 875638215 616271881 342953783 762879949 663691217 595880453 300756163 388210913 992273769 919180653 875950037 448177509 581627871 914809211 743232675 548266011 823050897 227996855 637800939 520666507 531358173 810333163 819875829 466628867 329508913 83743017 425569677 921361821 287599871 392868563 982863625 536461625 551658943 629274759 689086281 21070207 734659829 696406581 440259763 168652511 518898473 826330385 61142069 313461649 288784881 573638295 327970371 983996567 320620259 236804491 883595743 253017273 230693541 579399417 639948173 669312901 31481823 385627957 824281179 108639827 64751685 966414043 13927649 853396807 975790991 17170897 422833725 617771079 898811519 847139395 820324627 854196739 303484387 822710179 856144531 142208755 950550411 646928815 708823411 730554967 349216591 947865451 631666931 83890489 990910485 771184165 146763221 38010729 186877637 775854189 565025131 785845375 688532307 513536803 86658699 136506585 553159095 511840873 60447889 800097443 252705523 548956845 904089189 924415689 778968597 235949473 316824947 917315079 903676205 490721093 357327029 169967069 453434451 528098521 300165031 120864655 620822701 119712235 873858383 226233651 432186723 281013585 167279931 178160797 370403497 460355621 245666435 516780657 954707639 711185613 268372677 339959059 937325777 145972723 499710245 122884533 83535423 509491595 732340051 410903377 125459287 209581013 481074311 868457893 781772401 891475 857447035 655948859 236161773 133671119 262559353 865701729 778416699 783362145 347334733 339018033 39657159 372782181 647941965 195131019 820616975 338555771 934005081 274694679 123593877 846418069 194560983 367207749 840720099 907486691 81995445 913928015 79921803 252487139 730421097 530026547 729178149 675742809 872368113 955924921 111029079 218214737 45232083 875891315 478293449 399381535 480555293 343727801 715645999 643405409 273194343 915992491 609562945 728126713 317796559 226477617 969881283 789598995 973198073 329433083 142595199 678839079 82039831 511763585 896615749 807760365 626792923 67512837 310584307 859314027 382228101 577234061 473882729 653049325 959385053 202610923 658128017 674571529 166429231 334252983 616679263 609529497 94228819 282142287 141577675 565808577 592206245 634355679 448741337 184269807 981171981 127931989 681812883 160115159 405415929 851199337 478012427 635172467 238376541 955074459 395513433 235982347 60554939 997538101 899835043 907044135 312915737 447235911 464302865 999400863 223526913 921945767 201753815 578708365 526073741 958940409 214987565 953392727 355666011 803409313 900381271 377716135 246660751 868649683 442217631 370744435 214822619 576583299 436060503 584392695 722905969 652079479 97564121 875366581 556606739 540741683 974972039 464799613 755452419 293747719 936498123 918578785 815242517 313661453 936549145 677423551 897970329 582096421 41707497 460111161 279100273 535693817 33238207 683478715 101379587 725962740 861901861 95726459 324339005 808493651 740421037 696456437 68744085 662122519 822234351 266079213 873150473 767194115 719664273 10477937 26482463 808356267 902893373 313797073 21751783 573790311 310170273 726875565 122419957 428327511 72399485 456143079 631941481 891961699 525652879 79535021 51070441 453803067 174356131 961425265 932556705 157767001 916235145 8760305 709971273 780060667 226141215 763443763 634548769 589743913 143545157 967822719 884587757 8131765 902482919 143267949 157672699 932365879 837364211 421274071 777309475 114017293 352201065 733907937 958776001 349274723 346132807 807064825 250638525 36249127 671828121 756272339 723601029 234295825 560691567 771009899 887527695 549931939 732149223 80626691 647420377 453945379 17397025 960612907 817296361 70248867 492468297 65544885 544980687 353495545 175566223 232868029 882525087 867858889 989158189 82931369 584271353 95421303 666562663 117720867 901311747 910326839 324870791 38368801 490034793 142537471 621247455 588864991 182074213 970258319 71612105 808657377 865340849 853015409 278386343 93247475 838650519 828315893 849999075 798233897 348301283 25463345 299185649 201258721 575024877 645604359 944119883 960227261 379313041 884917025 401500529 294510249 165968697 554223339 586546927 546566621 205528015 859531425 283984725 687201745 768455371 594351169 359309633 356789323 321291819 289006997 333757523 603118935 399128437 944229675 699626039 403164235 599109817 761341789 914013085 509704897 975830923 36944203 92118335 435177885 997458955 533492189 860178657 95678989 767255519 312072901 52028493 446207109 626673459 759647095 948444757 277928895 586696641 395282487 343115731 271562689 823001541 108340493 53877417 718194905 246477059 252987079 433561283 2712729 342560719 273961471 984332049 851432669 32033275 548075541 784192653 839715017 601024997 135956015 358102331 148269517 513049461 541091905 633702693 92140695 283428633 4651523 779109213 180863017 155388615 845102065 11630333 249468101 933595903 912206425 45803049 372656375 589930947 76132423 520612103 536530067 138029989 681076883 24696525 566636469 575701689 607997665 675560117 213643715 35162015 738428055 678018303 471571049 644178557 176929763 98141687 982779033 205335553 245313729 187941615 40914321 455248479 40131057 163534657 563575765 507270745 891653113 358890319 711653425 425337395 614770731 425483653 448626361 208957115 529051549 118448465 301362635 315632713 742626355 249163315 94641417 736823227 686982545 290761897 89710177 370161013 380360235 824230719 3708165 369342567 604419637 877273991 412366965 21789447 400239797 252331803 677297009 392432211 328367727 455862943 48302855 849118419 172636915 569370809 372682125 502308755 815655835 110079263 492198301 386779945 90570887 13855627 113324827 818462901 390258081 428135613 5217845 454920925 432244629 918909313 163594847 584805071 587484383 232857513 421043541 405879103 865556669 839097615 172344345 604618095 719768631 699388055 169261051 421672483 722952993 287537447 599213453 177958059 187596047 261883573 935664043 981024731 486870115 316271419 864589435 324691729 278237509 70547385 162671207 285222709 382348453 424528699 853750053 54899127 224548155 354698707 191486129 790953353 832854665 517674395 119359055 289960491 121005525 543065527 970259851 922415269 957653297 650090317 861186361 799815811 131130997 107670675 892076149 86751451 17933377 670678979 71522725 28539725 263246077 114518045 352619893 57484543 541151705 736204527 208346583 549057951 582873549 341656199 521171209 31458915 474002587 493064001 888379535 638672135 387543497 798083199 681226295 451971799 893405609 951366061 992214289 33430427 139475025 378778427 206597245 901472429 587644581 471434661 965337885 137340907 830398793 316017771 272869343 750696633 841229745 396096281 711670519 994511623 965980947 11627585 963902687 248091725 164644719 749755517 628810079 218523269 109223055 624136049 394251903 199267641 445380867 58262211 870066071 928384629 44119841 8415019 672533569 697932751 271345677 910645085 231141217 537338215 859574955 949379361 273626151 128227555 7601837 735818301 137110273 559232625 60582285 387103621 284993713 340456903 807789961 402047443 99202873 89285411 2587307 245310731 36540645 62240331 960084419 400067859 866642761 944620429 271728487 77873891 661867073 939374275 450787065 521915247 878384371 811992133 912572321 813012159 569411785 800233471 668714831 266679001 377691769 272714331 311585725 144220369 105355519 279808337 864476521 107634625 989333151 474858337 653909659 782223821 237915621 615000717 178990181 788350237 230789799 264961897 445704607 99273443 758800125 236018693 198237161 478837339 216757839 515824387 517599403 433060805 534091337 622592137 870579733 171461485 194035167 291798341 40677919 677972135 598038603 890181485 450177419 439905993 166959123 856625599 402039521 928742455 347181573 869249665 852712301 866827101 158334513 953107587 124567117 674336171 888956663 687515161 543100255 716623005 673303545 52021283 786041931 875074229 242399525 611343621 202818431 338824315 862895535 407861169 431464247 733258115 369430291 624388249 241948275 114749799 471452691 878790335 641238521 371044555 785899455 870537893 24326491 558577239 435220585 125448031 760245231 244433341 366892205 842435965 954554841 772325049 231713393 617552417 685791997 64268811 35216863 762852849 693626895 382639233 995647597 572963867 206972293 798820329 946687959 964323157 75276447 438166559 751451423 678839517 485880423 126576647 836678037 411480955 502836395 408346249 135756749 797521529 507868423 69938583 31320223 858729651 689511895 56212781 108736563 8471425 710466885 806305355 30082293 546134479 569171011 534799359 549577367 709537543 98047365 317061719 900295959 424141859 43148431 794283887 467456953 864295069 770788521 111969899 496504841 394810239 245911009 18593907 928875741 187499093 955990545 452715449 132953933 483417655 792885209 790522489 831614403 217346753 929454497 700499445 186912997 402440989 506162843 36345717 243213997 924996341 185218491 610679117 850905427 364532609 490913989 624777177 229043295 393948799 386323263 964365943 253874585 899413813 767073659 462327957 164472857 251990899 874889617 653093541 13240121 45228685 218366049 3322143 548724127 858623075 198865043 568538501 10436661 660590683 300878231 101690725 90391345 641997409 172161701 241337165 791074061 624105967 186768831 375151577 957263761 800760063 889742507 76637869 945132743 103195931 113511931 109903217 269155843 719283791 95647749 791781591 997338849 201973811 567483885 436248475 832515655 952833765 684019351 729555839 593935711 904001033 561924535 537815629 932184223 211068879 476281539 883848917 62867139 902512621 416034813 25820659 724358095 218933921 220228459 858907531 108600847 526861745 825811933 600776581 154045207 826105197 689604591 778894035 6579909 713260457 438451965 825807473 60683323 317049029 265332785 595779169 20955367 317170343 100860285 97471149 992945531 462985661 199675543 968385637 18247415 464135675 890433023 495768231 263847323 622769123 178580479 766854033 332325877 889612153 166165413 289479505 819632091 730799947 158973899 66120985 380027237 278245745 518941201 114497569 162750461 484655753 534133729 969580203 461500235 41547959 22977895 570817797 184171587 231906475 812662941 54213757 469119013 38840475 384984133 476125809 69675891 472909637 454665959 588219201 408135415 179971825 996763601 9152343 143517897 118426731 622322205 982807589 235650883 509307913 332053419 923142439 418219019 647463595 518234659 411052255 621944075 472926903 609329141 367584725 905798521 485633817 744809817 119966111 976815825 238231115 754848081 163446741 218730455 289942857 6809765 174642455 298560405 35141273 99269859 607007763 575650405 584696137 528842595 269978235 995417821 568842225 700884041 426376711 983233765 517357999 376139131 370253691 461287079 819158823 256877481 278210463 874612123 500175753 525837643 298355273 639908217 34284427 883761057 200850255 748379975 966788205 266101685 29777815 311978577 799774449 211107159 737103881 946264363 243192425 583511071 787317401 93264563 813320105 602949227 160616255 609166091 703459859 535690855 669264639 952602273 513263751 59799295 957472993 263307049 878188665 457988847 436692219 986563741 256059613 200431543 704756581 918298691 20833585 938789019 125481791 928831913 612757115 688718769 707344311 560019873 396747337 518599885 555788031 470949191 879314355 885145747 366848847 899030783 79360087 485922151 82772459 137055607 133896025 110612603 383131677 978125987 7074921 118799049 981342773 431854271 389793981 195823631 484428945 840177997 891260949 701102551 364288145 587792925 970678707 739675247 449995167 135610433 4843881 371659761 385046575 716290325 998833293 489966909 888095417 387933503 747201275 794847995 458264769 86309801 959159323 632248987 402822095 271249033 944870875 680636759 498195065 868505179 523954607 662042413 347106647 538591971 249309593 349337061 955404297 669875757 512999199 908191249 310558271 809523087 186284107 305234953 585561765 419201185 414070967 817636589 686044665 977231435 84337793 73383845 141309 968594873 755405133 387636193 599750779 434523485 927433547 554180889 67484741 85038581 58955827 127389583 261194803 509293959 632477247 625457481 574687275 7091803 163405113 987545369 578096663 902689799 725756781 537157527 18145509 750120041 132932785 714329121 342624659 275303077 590813031 502621155 787921955 357912611 70725489 371578571 210491551 953586077 86509885 659758737 64584729 838003213 264121029 425748405 708711851 31366581 48244357 328902785 383914359 144958757 447671427 903611909 852879271 848932397 846752591 627567383 693367149 835357935 765901565 644158299 940275719 282106057 531979309 187609653 809074099 860802923 145493763 872651737 661955259 452877257 755966001 468838459 643434101 508113695 316125161 792989217 348035641 206999025 187933931 259683855 377540713 461291787 494312319 99723605 118439279 958601345 857949809 29267213 781033151 966402223 757905945 784963863 685264337 940829499 88473939 644581661 590812457 727159825 545394823 521808779 638041937 676806755 261271715 665231517 847827419 63139247 526344221 774117201 149092449 870484153 998535155 220846191 814160773 749287053 930327211 649161609 147495409 727847295 366320981 308465143 162286937 423606317 638264453 654667737 443280757 450663033 88330075 724467991 880100617 225713297 871008379 886969953 886857951 667976681 122063127 428831793 645614281 504934971 949031393 401018309 453230751 819028109 139697179 582515749 722046793 186569773 875826313 198939427 364902315 502843819 13896825 820771927 127551931 217300967 761148097 683403295 615811953 709995269 895743171 890127015 304689617 644709743 241096033 671371997 975831525 196689115 125163019 725029241 829993407 479504707 398671287 710629885 189750649 365021679 561577955 903535023 292333621 436797033 726184853 863259809 394277149 606177155 259719261 594180777 848178277 610759775 654940495 220698219 686015045 268206427 585147915 990117451 406832641 79584553 22385589 825789821 442717923 877679033 506942463 577285879 802427709 67820361 668291611 620187769 956865897 1903453 444206027 687428493 653030089 399672769 287373907 727994499 19478729 346631561 777067905 624237937 914717655 1128465 295395501 289598265 221619827 379002367 969802675 216240261 771628571 790368319 113675259 109636801 267179099 883157763 312889715 589758249 15671237 914404041 817064849 157073851 925809395 318294871 846744661 300512321 840975239 453255861 431585089 193370441 231677739 329698873 326678631 77596973 369265811 173030273 211863387 300389133 936308857 23622513 283573309 717643217 329209501 309933873 585239731 832284971 452055243 945954107 35226345 327440015 155586517 945844809 828811417 964048961 602995349 906110045 943327229 970106441 219123949 473335237 146970335 687557493 681354439 770749975 842433421 267502175 582387479 928210733 501013465 167471207 338019543 671600173 540904487 316116147 247750151 624545921 641472601 622385975 797443251 665504991 278874847 749293483 433541101 133617219 237364143 968404619 864904911 751033583 445137735 262452773 547031931 405350259 537054639 661666693 995616283 365352865 375106931 185180547 826304483 581389719 704989353 403020739 231403021 195516599 630794225 432619435 881942233 988647085 121361777 532829545 69777555 959338607 667547605 839676667 379247757 99893561 779046231 97191195 109225505 443129231 575036595 290922581 396016049 613378109 549901359 361464825 138930089 350272345 57201305 488262941 942712697 237080379 684426313 102197157 668625051 242784141 502921243 702275893 45943189 707392565 822108281 566930497 427333357 59303021 605230669 738975999 813473847 868311981 315396623 197654127 739853069 237705403 589057213 274387803 503175185 573796517 426754271 81807697 702088173 326473659 808696705 140629931 733975637 176987293 304686905 416743563 37859587 88022831 984108839 718904789 255311543 989712795 287924721 924092475 526929981 853708117 78606019 627205175 661082471 375510557 754120791 911243015 167400977 562397429 882699241 553508787 234752281 982911783 101590591 941367311 600703339 888968523 640536231 291491759 642104571 738810427 860536313 82814197 667289027 836137501 393831315 242960905 485336259 761861467 845331033 427466203 321222921 1045931 747260347 533176099 211177635 948284681 256239281 513594723 186635693 542325433 961654453 1137121 389384521 69794887 638599889 83725489 546169507 890010247 930110097 263809445 810339819 308640919 953410315 941889379 371864923 125838553 530271199 643569745 227077689 472276473 320537651 458076575 347401675 667134959 98933173 120456261 173279333 263463155 873502617 559584261 324673633 734360203 867787169 108244069 263450401 826539139 565459729 403899319 604338705 517281777 85716921 154089489 281537441 143412781 32695021 190205015 18144333 679519713 895961227 418003245 652749717 242003445 293774333 642803207 769741061 354417309 469197613 193153563 565679921 58274393 356637587 3480425 897842351 263303913 69407023 613356475 672465699 479877213 315952515 668981665 713796153 270542341 281202337 492079985 139316385 604658049 276894751 118700623 280158487 249912757 515135513 723205919 702774107 599915979 690143799 118119827 791815993 549612089 515508391 964241701 83155843 530414011 633981215 53104659 593086229 867692627 678141405 688788583 797397453 60088913 935917223 674932977 8315801 746354503 850172875 519990855 667281257 936656657 642618657 92201419 645327929 199204053 397367559 754565285 372017673 745843711 82152289 768845509 788543717 25455425 207643809 831592421 682825183 465388953 96069817 420766851 471488019 511432523 558123 631568103 596811679 483641059 537029369 876703267 332122801 916342325 41722805 70335759 9576057 982559583 256117365 661155147 370401331 493891011 545953749 469357631 854973471 213489935 567998973 162271771 936544395 315397173 982066587 163045593 83526853 528131187 248116965 337092405 911538217 364212303 511903897 328065981 340763419 782557841 119357181 45467581 703054337 643445585 565278433 867127885 870952531 802870505 302601369 298567505 175833989 356201213 271808261 372571247 904300575 822910331 538398857 946582037 239504039 607400855 991800853 297499777 202822321 281887947 374541857 370804397 882016729 862368735 788553639 104590693 145574077 756794331 576799537 679714873 489171979 546212631 453004235 773736063 865787251 251750957 216820237 813350491 522301105 638000899 590823699 473561009 585253511 876125635 63466373 173068597 85345213 78822371 290919057 336007517 583184935 197186847 487920877 504928105 565575073 395838075 143986135 552994403 76567817 943284547 521767445 718835737 330189645 578319371 898108151 91955239 60256349 993516977 544029521 887187689 616612917 392648279 729685635 770260105 581769687 558829673 725815667 407116281 422220363 358168989 893386637 463440365 362583973 432730095 756407243 345550313 831688193 233454245 829706151 301701429 201368189 468385095 417151531 718877151 685874759 922988203 405570787 923454401 240012177 510097903 390004967 356215163 257074321 347430773 580472787 654176629 414303887 72737259 914053327 629190881 788125393 51897669 600823177 452148403 818165677 593075133 382154551 145571503 548700025 797709529 650131863 640356955 165964699 226918503 181970417 903893001 804790651 739438457 351165457 585451473 611138955 179910507 140416845 580067987 688769607 896646881 798531461 268963063 605210417 911649993 21642269 606145133 424515537 425207127 767886087 970687533 637561531 590869255 758489013 748355641 129077899 260440475 655810089 541252695 755716319 695452963 445967847 80489241 985261925 950626033 281930493 103828693 600524495 61146785 233193219 531641519 540187605 724673817 586688021 571624843 303630393 401744261 309240795 512921885 54634441 838457943 860671621 417978587 571910483 212610637 69047749 327946503 221397429 497014123 326262747 273699751 151730893 449995773 631603853 881981323 574242953 668232087 694222379 248868175 955718107 641923095 966497929 187226191 16269243 547764895 883501575 891159989 864839211 416941211 618185867 352061811 510862137 209818819 934662785 773767487 299227123 702485007 743199203 302591385 423415671 772392133 343655213 214571723 61602275 289922419 511150693 910122979 344887653 609501161 55790105 7279035 164475695 676020295 770650209 57347571 59203705 688028143 5883865 112397301 333541255 861955215 8661163 16485357 451553953 310094107 968959361 471060951 765887261 588448975 886475411 436821105 414247505 185835565 498132127 996259907 986065571 435982853 576119789 332089503 19962491 64850023 83384647 459152029 225005387 401225141 688264969 494673437 957566607 693481357 799075341 343089863 702642889 463866337 904334011 788566283 616599683 445290465 337313279 926899491 928253773 733371657 346127955 453362187 490582213 976142369 997193395 622727825 961644427 923590707 767314341 779959873 935964745 121898899 153810487 289150579 27236017 243402975 153879297 835876683 777363583 94912503 787859231 657561775 496850549 478452493 801938747 65150799 316191581 62093713 292989055 366591395 709435655 343999809 181611427 898108139 986295633 177234721 723855845 209526321 303649049 360638079 123541517 977826117 348389711 834925035 133193063 34366911 539153375 617861189 375563977 869210621 683732679 824090031 347625875 732788267 922102537 281239 984759979 153104693 735472559 869739695 966468991 61024727 954809033 973010423 819630341 237412241 548344437 713401263 515903161 660543913 110827475 42386789 20259237 662363695 844564493 417880559 715727703 634676989 292622677 741875815 863265507 996572853 571170791 779590963 885712871 895428539 377751813 408719613 801949581 715934529 254598137 117653433 502625663 752886337 442115861 502636967 93468917 665819257 107148977 793674825 63071151 916616051 689563699 627942761 968031471 520590205 19816707 144485919 845894279 949956785 857160597 636125127 421440461 661916655 323745889 668014337 101960349 524697055 268234987 458992831 102724703 530170867 621717181 944503601 157843201 435706719 917438055 711668437 631246839 634511911 883127431 756677487 547274051 174008337 806357181 824880907 153673833 48058287 791779507 290850557 344641913 202870617 885566237 437659875 587019271 83048495 834300595 847319967 269467187 649279769 562569529 57806429 264400289 440583623 304047223 205725077 577007745 777066417 923301699 938501119 662040203 596665113 216373365 987768225 938692089 780199941 72857071 675855047 918134421 277506375 321819547 585449735 762757291 304167799 608781421 269669435 762745873 658063859 249601373 838429575 275225895 814497767 728652399 923251289 528058323 318410049 560551851 646604133 972856451 978981305 556253223 355563941 305608493 206280143 132998395 162790241 126516303 574996429 887692361 144694049 893599215 49242307 14792763 882385085 78464669 744700295 510620165 787660879 173660781 368419773 815698143 19709757 462461951 242931913 221341965 372476209 337229687 413697759 243132633 155816737 809133445 520796149 333240211 505840713 919361121 365150411 845197465 393289515 236124357 995421163 934210635 971858071 337655035 216136867 447384853 171169951 395913167 522704397 13661285 267370913 80893849 787355657 101985211 698381631 401021237 446402113 464958357 250953061 800092939 616031521 368862845 248275785 751867913 750209765 251686409 532993639 574866085 650653835 117521361 11107715 577830877 336375003 129220727 829381035 456289335 756113767 507685029 759471407 669002947 235888519 13272591 799006383 459749397 341373275 670591597 82514445 896640845 604737739 496246403 699061111 432196367 205778567 421623067 151737951 862898829 545715465 543168007 172252803 509370489 110546831 736815905 785903337 795357205 167064353 680539979 538190553 168319523 98885521 36090735 22573291 56084471 716141175 243816321 778309113 252662881 205953073 647242617 65886759 124974789 397677291 782069851 392888803 606606341 365212563 705301809 278487777 631606161 476472545 675361805 678928157 838530653 315955287 438302985 997180377 444567533 469031227 397600583 792784037 749854529 894655391 612055537 408374355 724237803 824257881 371594555 710931967 675497215 910822157 231869279 829078543 379655197 684363039 354667421 658506029 386120297 670323907 642418497 630744399 497160597 637703407 845399195 746996401 840113875 881670499 746421257 912131799 170290149 935089577 360019691 108301197 927449103 481558545 216082093 834025447 635125535 773999793 622264255 909248323 851326061 205544557 709661339 71787075 484715989 84843497 289809605 525984211 284951743 410024087 660906439 432013867 449101081 218505137 81230387 850691011 885761625 300107061 180192419 298746977 58757245 736453869 275520185 293915665 64298253 707703655 327119391 721941033 268818965 25349373 604422537 971366467 358976811 832607951 770644401 346333507 605918831 288666567 249994839 201281623 319976325 670015889 880825671 125443059 852970655 786475943 815431507 552953553 293537647 422434891 123300693 503865591 931030583 680970117 368421167 481247923 661331643 285909539 222692043 167478167 447927625 260881087 205494557 217616767 785473465 4036793 2213663 830824335 120556649 988320567 863190225 730399031 373514557 710124589 930617919 872617255 909301413 806437715 136311931 825048155 723096215 682401575 870678175 973197595 784932241 890753521 260328653 608920049 674188187 875181763 549627697 493467313 143653183 747209331 574987003 315058551 742771865 144352933 726343013 821438889 989475395 467112639 158461107 303446259 772135011 349779695 516327727 522675271 117386667 135945011 272230443 915708643 915525711 657917509 419018497 323351883 381931275 101124785 855613461 388591179 994109481 807238087 560921549 139493367 660008055 672335517 442491807 858923181 602197065 328024855 845831941 152764943 6816893 709466329 992913535 754878987 481618299 896116823 3761305 850784723 796643379 744077767 50923237 982289639 638400279 932127273 771909885 550319623 677024039 478065735 645105027 40796737 905619689 967027631 827169059 144123883 96968557 606512059 549281677 865453471 10734921 241461389 218109563 835929409 662559129 775792137 885338803 491876607 185316613 356502753 641794299 667075149 50827961 84320655 877000487 587237607 207477615 539277649 650782993 559770063 325167715 915030319 638883739 189568597 698199131 379438333 674387889 526483211 469303461 570229327 646626627 222566605 605268505 709951879 632261707 974239681 851413525 885671629 975850959 121995857 919309181 258183441 703451861 546519091 637086657 226433803 809560433 61656419 69886935 642907197 940749245 779574053 11744575 673543663 400614619 70717189 191128827 759316527 505586166 677215191 985958045 764439765 187711809 202894519 669574971 962158725 844184821 933122059 96341617 625796517 180105811 230918271 19981671 70804325 406717607 217150469 590633929 267608765 117570115 551661787 46541521 180897135 20722049 115228295 999046715 248859393 411493317 986260177 826644813 409711045 517869685 299865807 498494935 898867153 5379591 405852639 697931565 624362505 312253685 875823779 827185965 334764305 496626367 132733449 599513409 166763613 418364659 378549317 816292179 684259619 600613407 489513425 476022491 147420515 419250399 975456885 997585881 169339623 784005333 708524089 205945807 180720191 242155949 944325749 244770511 482039233 85387799 429461187 630883951 714707089 423507663 502197767 942836939 967229331 120970645 226457969 44227467 734251131 813928501 470886767 650792669 754342077 344341891 72010435 486230133 114476189 285345365 18527599 230210197 532500003 844905103 729715647 351940865 796227615 295545373 823808839 363653129 249013031 402045423 841652707 721351041 760961693 157903105 776324281 31736777 2355625 116695379 945501491 958270149 983748155 122383603 676291591 773115111 169466893 278331631 101637681 57814561 414421917 714701411 943757301 205772531 516953907 510325105 363524575 512842597 646705121 195182661 830662597 479031299 34429567 952680463 514330559 919249125 681174189 846307339 524590391 683649191 304955347 534661755 453723091 304348017 875171873 984504743 282967693 590819313 694327697 694425315 214563997 26466909 84511455 88855433 112185993 163186547 574669465 728049661 735259935 197731193 891777547 93790375 6546031 5423933 676581965 844560121 762495193 837012761 912596291 533139567 791522815 739402213 986627219 386497929 127592399 935216653 533483179 997473491 878480253 807484027 661322697 553304545 581083269 867952041 884621543 372169289 976218537 302474897 775094993 292815537 972943865 319685053 66243863 453712319 51771335 352049209 460203791 26859819 159783343 684989597 493294301 534294697 638824855 402587653 14723173 964862209 74153 635001625 623892571 254860537 256493403 579193095 600743733 101360743 494589033 585920645 995642419 401899809 798827479 831697617 308065375 719739403 208611055 209369265 820778375 420583441 780418635 369140085 584596295 108223269 76496577 506321393 820172795 92357949 905249401 100326789 743874509 624985953 93933535 133055253 400817071 890507927 477501605 702922259 262067797 591232757 462767305 722000241 675341123 3186833 615889807 166986929 175615425 775195281 467790979 290861271 627367901 499498523 37617787 599327601 563002225 570212199 566555791 423875479 349758749 221964459 338260777 195180261 837382473 946155817 83766513 741237379 379559719 929160751 53965275 111675423 177868715 365095435 963502631 361098991 116420249 171556633 764357461 788443313 366161271 146271933 880802611 843954861 213614231 976883807 174864087 316903597 771186193 334469233 943806363 572626957 847631045 814243183 449423909 153199781 145545051 681075419 171038047 549766625 886597443 48495165 254176127 765510573 392534965 826481707 359214335 169848189 615226035 166821691 984412071 623052115 507149827 679076627 205585793 959271091 463103543 507174747 569285089 887657899 208672165 14444229 769276003 777743827 819844465 896141837 284202477 18729287 827117697 791705333 126939049 136803759 732498563 340259141 427210765 33971513 926765299 323501009 871795669 876123547 566261777 724822901 936472325 417324309 77516771 676403729 54946281 791080809 563160377 606102927 524084759 607183593 574880943 563010273 420567399 499019625 929290657 150074115 306586881 602657609 60708665 294070775 223776849 599496815 982131049 914406853 185053705 726931783 646991847 450273667 236627753 594923467 172628787 541193799 905333745 280768631 371872663 318032951 739961583 44223311 455100449 465444731 303316985 233670887 392231339 66810181 153543977 505945937 29994455 167219409 941708771 74711339 154189321 415843937 861741525 977015965 564315251 988964413 868256243 779525205 239357199 761443259 578102647 636615307 990423195 615657521 687190249 871750649 992246175 597421573 490313489 584541927 80513389 526761375 309840391 994918437 720413981 381822067 846453797 722728969 903161999 15371769 817194769 873309551 875262827 463127219 129394869 181295293 385820193 702384943 697046087 972340453 979721451 62447869 171203907 15695451 208910533 413441973 642349165 6354971 961126013 624510973 953905873 135797935 632332703 86152317 39638723 458890021 700721027 265468647 989312735 704179217 390005837 600693495 607392523 797413009 342728675 394126191 648582515 938586957 160049397 885501721 300251017 954114421 456354811 683840965 561050891 127368123 925562421 139048785 901939965 857182047 976982701 969471645 378920619 661147945 880684339 239784083 649640105 723607653 292295519 766923557 208995285 431639017 688488847 929165393 664588881 407784725 175056879 559403283 455497355 211608783 278790507 124280443 983900215 213211269 430322879 672146583 472447823 585917739 455469931 969971077 202483481 122018883 72055989 175504997 354794787 560501457 633951917 716714593 204611135 266620005 61720365 366133165 588230025 887400979 267116247 935645313 653240677 226405753 314487823 683490849 157128321 419496385 394754567 570048981 187845329 1787029 679921593 43979251 807685777 373730605 525927139 538683089 772026179 431743815 751272207 353872853 761067703 142376491 436414091 383343207 421832703 634451877 143438705 374398715 700171895 849397517 730525857 56855049 920870597 39206975 232846019 976046357 422459347 802711203 650051401 853393833 259943383 645918757 559450983 417090645 370197325 745944639 487315745 17502135 493434361 378291949 380671549 837404527 161557479 287674805 656633679 259116839 948120173 613534375 257413801 804925331 118429987 748267863 293088625 347874667 42807025 705620451 376587917 503329907 256409859 810811381 390396333 983880821 868376011 259773879 412496457 395269697 508645383 262866657 887627939 459872949 992373181 174731699 143443649 53924273 561288501 515372015 456229749 539499295 388922373 307744231 579171159 300961267 490803723 381594481 435390917 938524965 162066539 970792681 733592043 259308217 442832015 207037495 782562743 473946809 907499819 325099465 533855457 316880949 281656639 32384917 141618153 504403019 138363659 592851993 30339865 380715803 770541855 255541083 709560705 742457551 889965901 741374955 359443447 178416283 70398897 699554781 278418975 948904375 325873071 665000399 266156381 636548199 87811319 536536555 849163237 378438389 520301175 896797403 530366381 532198067 2494321 943343833 936619893 267804923 305718375 670553247 774620615 517506093 473319461 733047927 849866737 558474425 727937215 214186797 132862733 582959117 417575057 369414423 407859963 832179619 444713793 706008855 799250277 698278399 153042107 713315727 807704247 560096171 702635057 451773807 482905389 591246391 74179361 48661805 481356229 129384769 992090191 722624455 264583495 909776233 579344071 23316419 870293317 580944217 663168735 336418863 606965527 843285189 12401967 573229477 329626845 266021735 966621087 320463165 464674943 558904319 941001307 195005347 581709997 7491415 567926487 303622145 669079009 99907909 462747853 77103889 752088409 210906529 59206979 385896973 765946397 714692429 245208967 904123327 361065983 655741747 790643241 173843827 831721111 948788551 626994697 29719553 665060931 681291139 729549131 701571269 586302767 805812967 833181273 710517927 72612425 240328317 529293545 994092821 773422665 20468315 792694517 316843269 651048113 984223897 804900293 392912885 535333063 42422361 913954019 172572909 959743133 207577799 360872225 620542839 929755657 309882385 157003169 53179567 653771183 404758135 185539265 284722221 615643635 790397239 170265907 437823773 250533897 547814813 446757095 114829099 460350183 525596667 12149787 368593291 762954829 319990955 270117459 333542911 413557701 771435791 246724443 125990345 727040927 864953489 222960199 87467709 442737137 238683557 613120627 664843819 652222879 217914051 670074501 794146295 558817101 199603567 139219305 267317635 924846189 763979059 286593873 299934399 485823545 808373921 425058493 787809569 593013935 23878739 162094445 739304103 16994713 511422955 193360239 498069721 848370565 442727701 223367191 442287553 534929613 398683777 434941187 202568443 624526481 598220521 98687767 608024223 319171515 777222673 660374395 982606937 616807415 417436611 929896105 428534869 787934399 628986577 359369563 636864583 943494741 717467157 250858899 369522289 863558337 637628273 353434017 961742999 731265233 348038353 269033749 438515975 967789343 475579173 580997071 283339673 900461323 41699175 685545715 665329321 726241211 663115675 789140971 742911521 438574885 74665931 552639341 836379755 849858299 901471497 357995637 180589439 712424385 864980079 764845895 498732507 262460861 164277791 446629997 25276805 472821249 864481349 540249023 726773005 923579747 685068305 872742233 758869641 517408647 258991805 960631453 799923349 327594963 39189647 890530103 652829015 685669493 750097869 372751901 367773569 351132011 902646731 595718283 915678533 299404655 591799779 204378885 667133797 289561869 849440887 223665239 813539365 850445717 155766257 458259607 631600213 189962781 515097029 414201885 870911559 598435977 81859437 228006035 199056607 908311677 874789225 10736095 786467455 448403053 460273733 621355323 898713111 39201935 998674323 731497503 645283357 313927651 450879725 628831569 588050321 48915251 16005365 786925535 875493621 929115661 611385431 789683737 875286875 54141899 245706947 126988447 859167577 414944911 587827189 91585365 186693131 501861949 733227693 962169957 317019159 481853319 722538423 219305797 769646255 391864551 832902885 636913583 152578695 192075163 123767313 200748715 535635165 516450987 658664477 241951617 413806199 100327403 948798453 147702473 204054691 997822191 217950089 978918749 771928633 112443417 736435925 26993507 632921749 870419857 749500121 545298247 699674273 487679047 292080289 718308539 775026631 648483059 953901631 245463995 751699199 215483671 756750285 889985935 606044617 462872059 285980271 277510081 873307431 480247725 880563019 282368293 179048619 219564549 563732631 299996889 736219499 84730279 165162125 273103167 265725699 135805177 733288045 432719107 301638297 895491371 367163267 57912349 438178783 861404981 761056289 822738117 221627913 346189529 290090659 941628033 391690453 37013917 964993127 437140253 542389129 309639635 296972507 131679663 206561779 452375441 887807599 340643729 848891755 969027515 334263709 826004839 100594639 169416949 389806571 172855327 366012547 882571955 407507167 596114923 302464377 837687851 734588173 615643979 709958691 986158941 755007247 108573183 444258945 86756371 893037705 28837399 198704155 51289309 980501281 816303331 537246973 423683601 625829773 976656899 315101375 160870099 643274375 872280155 413644157 202974727 520450513 52942101 91040991 237472097 410935091 726539431 23265553 483090517 101864833 41242573 724024269 293613865 283222421 327671945 969164111 686030815 284458835 366473515 201082717 117769549 741127841 765076805 54982215 103196167 604606069 639229109 522283489 880653679 734630345 908613275 160064651 349232301 744972447 620352105 572902441 947689905 190020863 288979151 570547499 289431605 944789501 168155851 663757193 870259383 83370163 904997025 627216829 203560319 672180037 41344221 976451025 254177183 400140249 763957587 647871057 244215791 273620903 758698529 175617365 934670863 723756515 468525225 557376377 81938791 303226581 130379929 16624869 845123623 918096579 317354211 930977351 151023689 307190529 133471941 336475091 859463817 821444331 581846725 890427979 48899957 202359519 571529643 441359861 700062809 913408843 659409807 768149915 431426637 433105311 605076171 563033495 383643957 328849239 451980547 294770375 435977911 483885811 174246437 359190417 62081345 348660481 29914981 510556897 532344593 193756943 525624381 297821999 322836769 226305209 347338613 232654715 753227325 297822371 163959829 758263369 814414837 819484021 137106037 749848743 771067295 426398433 950829359 182084395 425503583 781275299 79305257 205854455 1061145 489450363 977140109 629305517 687897473 359259191 494971089 636671357 263383309 314676901 410545585 824820765 708423421 320384673 996706097 516416971 154687067 512525071 274284701 86659917 761246455 718707415 147803273 210804723 378908263 455825899 683338195 233022609 181413133 828825159 454002333 456905863 525556497 783624427 818000723 490052793 505114981 200134373 324621227 308410009 838091453 516614211 533438883 849761561 27212445 815197473 964093051 32913339 647887437 243189411 868495809 581617539 167718363 451949553 503162953 791551487 340672289 998345021 976273201 565358661 899121855 122454723 215058139 309995511 925595421 106067909 425202165 919235639 93556589 211948939 799636595 751954613 199453347 17865321 57496207 92035239 839849603 492676795 39631311 338066891 21556883 816975839 312408577 72612199 633756453 412789571 262463031 494068043 810147409 520325465 881850829 293568715 450666231 540113047 829510503 673104327 126897599 380468869 537041395 233510821 210668569 679431339 320056741 140773969 827054909 417219993 444208377 671447365 767008557 159606763 62417329 484460669 917148591 781001541 944820701 742366077 101851477 713315151 759571663 793344089 41022581 112227515 642916389 971723425 303401523 106179141 925067967 961776249 172406645 339430831 369723855 816934787 892579305 602441409 873861061 498700271 944269579 959244369 471368031 270177651 723138331 649018677 528248481 246360653 364885535 969812819 304757207 177474629 552571111 346559123 738374805 714919335 381334031 803593191 314438329 888621129 378679539 492146251 244027749 329547403 997837501 461784001 944643589 474708561 514755935 649030737 66336081 31146509 74019471 375322897 894346817 928088499 926390477 556477719 622137115 330563007 424359523 164917385 546735213 794185787 266793055 743051151 520455175 847032757 178771355 588476251 507632137 844401727 2679225 315997995 373909973 98445437 75907101 706813755 917345049 823073937 904226041 315485659 387789513 228252971 505396295 598170713 674093601 681914497 793716421 579242003 795920803 563140435 640123131 713914727 467051551 132160995 500128827 473212611 290262951 577830147 53521821 239989657 588451479 184470279 555976449 816736609 911370899 581839 502531087 854724767 397096331 493315265 729846583 840223707 604781231 636296139 151921331 821021355 548920699 910454369 501565311 863572133 931556535 719462789 242097257 579005551 418603885 329343419 996441341 364604081 762351089 17135123 134076051 895544095 793500897 744816927 503940431 279401329 545663007 399543299 73095447 246894699 311558615 389988193 653689499 154728661 435777407 170830441 946751059 703544965 171236563 967735251 519117695 322802001 438137559 971265753 571036971 884706847 128070361 632977475 692394785 31363543 377055081 374361953 870030591 422166125 688849255 648831753 625074977 611067865 768180981 469606551 175846323 18771743 390278273 796392691 630932385 494948167 432900029 678101897 80876455 221928039 608804009 484790099 968913221 356437141 974108805 516601293 318102977 28738807 769511647 688582653 698277163 795634357 878237325 150534001 206403421 681162243 384471209 761218881 702764793 127730457 119840665 128806667 599688803 399936827 117165575 841909747 534574285 243774899 669631465 278315947 797230897 442750673 493523321 491565925 913050445 188426483 317100095 595752673 782508715 618717049 23797253 219679079 834731417 864177613 828654045 305313987 399449137 163684449 15036201 234414155 493294419 67923891 59405961 598978527 268795815 765006655 914056937 928048869 111538335 863905941 610513535 905962827 800958831 205247557 363022279 372787847 790017051 882734311 903259781 704206999 979424361 742707745 29577925 133879553 514161901 639664539 415770587 899139027 49381881 473540105 581673829 692251813 738169011 289227299 849004101 686513045 636441601 857493421 155571111 115331655 918036883 607769201 838016003 674173677 692547297 534208833 336996369 346593081 472818733 215194357 718176215 795351915 978077053 926120819 454762401 836851531 736619939 710507171 80720133 349741861 905027383 596993913 95000029 626639057 280989079 964767981 434502989 762739883 893828079 847620355 719322307 449923227 107855405 300639685 934286067 154723599 818286089 599751749 488924887 242651133 666645507 359469467 627103415 693518307 750219877 81690605 366149403 856928455 410514495 777073509 850788827 717560119 147830375 521145137 567512849 413403979 649504897 37478545 470844451 726771105 332904945 885793731 652201147 500258911 425844459 721840913 527704015 642971697 313534821 225737681 695367835 319447887 84492319 995127131 54999971 939951225 785742755 718540817 571151793 26516979 378623807 916016221 340163293 987245707 157342733 865593267 83428739 6331031 534354925 6091659 362089797 894618361 492818569 563571305 331610639 492643347 895900237 238118103 453917975 246831827 402412405 694662759 954342363 21317555 677006591 886032561 716544283 143475119 345181619 290180187 678460901 880411983 401043235 563727375 633186445 936096157 672601255 162165117 273446321 213331251 230414943 792475231 547075379 641462063 184969267 63981433 966977 320320055 536945875 813050773 592404301 472287095 291321017 216910979 606408471 748412329 187160867 120091681 145543071 275694087 492307225 382479183 898037811 285545819 877810797 862007545 332419433 436652273 330432183 894520591 184512539 229922209 44121175 713521547 397865581 981006535 829605235 813523825 429604557 146375499 577581823 182158795 287824623 562757787 549975985 669367467 244218063 72001453 590982923 394183209 838024623 452810751 247218259 525957997 883631903 629308055 973447579 472814491 993555441 151285509 676198585 268398313 434011969 998513245 745982545 231878031 707253109 208099903 419389639 54604497 529617207 203700689 603220815 141600249 387543677 843256511 702430943 259603801 18840963 805165123 700430135 35755851 617728461 361606679 819887585 209031985 330927399 19028357 701446957 59499637 14700709 958312537 298951985 400964491 279603109 678620651 948665041 436430573 727029961 169214489 517344433 444196891 97103615 929702983 893367875 112254625 70039161 601488997 310746817 566990097 635792309 917369321 305871401 487830531 900940919 799901905 631587909 652910367 201775821 780945571 985550243 206110729 58350599 684859247 827116701 693043575 872823749 887773897 547453523 951815201 164969193 473025745 249656239 526860749 176836769 593311021 45098077 909901375 594983777 700482057 264405463 467202639 496552419 685612831 649068639 360723669 263829551 362857643 430946301 914332597 761646733 938975859 475763071 955867861 432963733 83745989 861796735 74819371 161108513 221707129 980844381 831979439 603035223 260449003 163802177 525322855 432607905 501989123 151555611 690129753 92491189 80632367 433712291 32630679 6130829 279389799 903421531 84868159 343640433 3636773 782674825 399257459 843024107 904714097 989570367 962787673 484811983 255702235 809428563 501582631 368577849 302458487 558302825 236485143 63211919 59379941 891743463 663752809 625487741 358494795 206398461 245187177 79989237 42722135 241858467 426757993 504590901 70617661 8812697 896259267 248138945 699505599 984442217 28864217 604459109 156272161 578349923 678220823 538475829 56518193 389072285 297960941 39648143 753816135 902850043 156251093 69874453 99476801 336776225 964368979 972119989 54815107 561582723 21191665 143899297 788244477 163442519 715078721 254926681 589501221 771913117 307281119 367316125 793461243 257356319 49715305 12112251 995444993 8638571 472350091 157914185 900086089 563593179 33605625 650600865 845377383 949208209 68767597 990559079 469399675 469279857 794885287 440988105 143403307 241429037 7040115 186262075 664142501 51273279 319287459 455040633 985090973 251797989 139467025 760853893 588918101 591420457 750528161 200791215 980402321 646551257 642983993 140299401 153501345 616686479 187996111 710432239 428830809 683748523 274861917 810899207 503895319 801003605 354467811 684693051 779971013 70794621 877262957 214870849 972494797 613803227 687489805 862869525 429489191 106398705 210346463 982769147 541592145 574152199 164771329 63946879 20617555 751378219 433388191 534840437 182350521 574577461 604010991 154276601 142711193 25144521 882637861 266287217 65791379 320632909 747851401 504038793 491198413 259387121 562132577 21050931 775063029 448470445 119293953 582065837 479879489 192364611 251726275 525231229 395032943 640079929 664806665 335425899 780320709 750755809 436081471 684819597 84462609 252920145 865296597 164970817 428247467 842718061 774227015 143480361 106925169 570948313 45280533 230426675 821940167 619427593 323353291 570890643 492982173 324199731 936464891 75213507 862672235 850024793 456719681 175901067 71783723 726404927 103789627 329209843 153366631 770485115 565478039 820399955 995519275 8109665 10160389 665893701 414430477 918433045 711470655 115788973 759992877 861902459 55901707 679572155 850763825 119838279 81035823 561278431 571490119 742301677 286927743 398738645 3352869 592740787 50339541 501799845 529628169 652390811 242880021 581863577 945973177 852463227 644565287 808088389 83128453 634437863 547075837 711376773 443342401 575376961 930882193 442697343 167063883 608988593 305476585 743894429 977861005 765255463 461035787 651465623 570136433 556736605 875230475 767783269 353247471 752844753 174290181 13841227 571410055 737636299 51923223 151195611 422117437 464300895 868064623 524509923 301663903 855083359 87235389 120248961 684977091 457760113 520463805 656196125 224629323 525229307 650993455 888853341 590328919 199306285 621484511 699416379 446685339 400333569 17831713 401251567 699450699 469240371 668443211 944161023 732293413 58835025 935703489 297870393 126979183 737454759 797049327 244007085 758127609 180103245 533899333 176896699 683657751 710167847 873076287 519838215 239159721 970708187 110411871 331373691 8862483 552608215 208861997 134075723 277310279 970304089 482017341 374119415 378886839 395718491 26157355 878841663 870549093 18959273 714050709 718678579 311482067 845177555 483455273 65753893 163603221 256717871 984308887 194280625 113562555 750647265 65381019 873852093 683316713 963451341 343832055 318036339 216300609 596816551 387259763 828968521 671277043 406259429 313117411 175044859 10353587 376134087 446001697 965508237 692063939 464201815 911358481 892511819 185116137 432569957 673806747 478211785 962897007 457942407 275760817 55327459 280840497 134172191 420550991 676425407 873486215 129169493 905355383 674404041 980287581 93954843 772478257 938759859 820750621 476308261 62399889 948542075 369045697 575725047 714772915 216440677 113943749 513481945 494444213 855365885 642977837 554339289 665254341 277649433 664248973 441979601 138805011 874475475 504335605 710807137 215937755 287235215 362351881 554245873 234622559 11797243 474252779 568748467 670397671 359776009 774773067 473593243 612162249 21578489 126398559 743211117 570755163 354306123 777859301 73402287 849643267 558365901 994935331 92800947 597904423 204013973 407390697 960771729 386593343 801163261 536362379 127308585 966497217 189044395 578151657 682138659 305801775 357073033 540777321 227688687 553695511 306242509 219710199 654560453 797740295 194837745 247381773 63714727 958526109 298152893 262131621 251664219 755652471 801550395 944840265 887556723 650394435 455410623 656894725 480883525 364550835 820305893 609567089 263686901 813656703 103413139 358843819 108242025 622139497 90040819 540644695 494257487 860025919 4013947 774317733 352754467 278223 91572967 197647691 330481701 678765301 278502971 617940871 177536091 48200341 511443395 382070561 63117973 685048215 608397077 587350627 851348847 589841135 765778953 62911273 788147269 606896021 78058951 919201229 976732227 425644427 321956795 226342965 404334421 585341663 461744279 928081619 19072823 28172447 958351195 182044057 417862759 715362793 960595015 29753609 537898287 452185307 823694313 784983335 880186013 729999779 419898903 727625345 982680459 903676787 151908075 616603951 131133851 903637379 844814793 475355599 243620913 217420821 683196511 842399877 812696447 794637687 900394401 477876737 265033087 311826679 53070537 262271609 363543279 744522227 512162399 721545899 128351319 746789579 193718571 786161375 788777225 15100393 238022469 506594785 327935005 347006143 464463623 866417671 41508723 21587657 268852759 11821617 894970035 911000201 293809247 987721925 910167117 646426761 240866581 334639791 383620731 82456665 535195573 454691433 280828985 431743383 37325571 427972847 505865301 738322657 116586507 937729735 383170139 147643621 724404513 695559423 549672355 616209749 344976097 390801967 198732369 906073577 824133937 285980533 839930955 341511525 88672829 787344757 17038400 771815569 683255159 552087903 620627115 619297603 985441949 269211113 720160969 551948115 761861811 909839955 234376615 805274529 959266053 172048223 766567183 52756251 234011689 855447135 750623391 557960627 59474679 694428713 371914931 545134945 302067095 357995545 629402999 318709545 277679221 332656405 283988951 867826707 25774917 873069199 7033999 887563317 335175681 54125947 943265055 864347047 497223665 575015767 193649357 140519305 360824477 868639529 770263977 553163531 259092189 270634623 23157645 792739417 155245515 575627889 309507355 465071025 189317067 550993565 967358647 457606741 263836555 984815143 61615507 498590607 223810815 695903935 411318441 285210031 245392483 528092573 724858295 414560019 749606201 665178235 246987847 686232859 51733329 387184291 63126695 67333425 557690813 83726305 206620913 41875913 567706585 109096843 739571717 226874203 465954379 592003457 460515467 638554475 391777789 246126377 803195893 538924417 89672999 153430129 489329015 840704051 688429119 334078159 222758165 569151001 739523343 376283711 570299029 157063381 197717921 662006349 400887435 500778513 217661259 568913153 209619273 661573247 776722341 683723765 280560629 550874845 30578071 164197703 569852789 360644839 14718541 668458139 45243257 433791085 59867193 118508579 738716025 41125951 564051483 620423057 704273847 47501111 51720691 323711269 86596153 534857525 677329423 935137959 451198417 314214441 36465667 739194467 115044631 179057407 635080621 605357617 687734121 192226999 32047665 676929133 569391603 71898959 785585913 290451711 108424355 611752145 814396601 132438101 557261617 178794067 181749873 495373923 925796893 824676077 657764449 735034283 909540273 960163521 856060697 122734131 626836733 21634041 683715691 658900613 675315415 293906377 674550387 325663931 628371683 779004777 204227733 456108915 739957893 99665693 240721025 413382353 749388785 585645871 117222183 971156359 848080669 919933679 128998851 979047879 565731529 885788603 572866781 423758931 226285951 828942323 32624447 75694957 581146253 164187649 940266749 730340327 824454925 758874969 683074163 853862423 156260063 873582451 443866439 806816985 265585069 803953363 574263141 857262741 790271971 327763459 284046847 843902521 448852413 620287125 192856723 746288699 76528185 199393827 718806501 3184025 618393119 773561679 155829505 437485785 269313281 233385667 43640893 275683595 273635383 299883571 912297009 324232899 294985697 752603991 959445701 183479073 47337959 306871027 389670949 969025225 722322681 605861329 550332869 977844461 375157649 445440963 764820319 209411135 858178797 717998243 901328889 368733697 819030549 320203091 18687201 44577527 772533467 265926845 625509543 315014767 126035671 313961173 33810987 520557377 497359465 269180307 938550673 308829385 551513527 233769467 373803331 516761583 373682613 431527191 81706231 559080993 390415641 845217017 166464679 752462933 139489125 354467771 694154651 711747081 920295903 557431935 605273437 293748291 602421401 469539951 25215681 228668563 778784105 212237247 857052899 201379341 603510515 371649191 634342441 278697553 542124443 837684843 822144317 718993541 244541077 817420885 832492565 636068949 730702039 232920759 733723373 350564091 232027171 593559531 575160649 655010353 672152061 814692691 397539573 494321985 443837115 105247835 960261 412653559 780950129 207375729 305749717 125776811 952623107 345711893 685239563 599630905 139095061 335552197 438526099 159113483 384022553 411534861 474781087 159154187 82625865 44529023 190729903 788218545 888625571 524682165 319870339 202394363 171227889 454395985 507041321 472578671 719617985 553400573 741712887 303739165 772876397 976254061 815241861 909542041 592314903 73758043 300806845 922779907 281384867 764176263 411124679 343099393 575598275 146868413 766442007 436543935 397638383 621021135 805513325 275640823 951445097 465478039 438358729 485409507 65125689 924327927 437004155 756174413 493073453 396896985 615787539 363604099 255566815 616103217 49493617 588436825 738061743 227913209 80105913 931777325 344992965 737673521 274560341 94548967 363716881 537038053 980634107 603216885 803632715 783073319 52162727 817698125 699313909 66886161 258980765 315715693 575972181 303590597 731684199 327407453 10741373 56064109 826914781 193414313 670723907 669050429 788047643 195086951 943412043 356407151 459680899 55535415 884479483 522476099 153712065 594762559 978893699 374153477 805629899 365218603 435203035 170769671 109423581 721783093 243619267 891535267 335150203 328804889 682750405 505641787 597728371 188464669 69175089 62911035 91402197 420329999 857712925 568777747 273021185 52877383 949276013 789185597 151082393 658623905 14748613 115348287 956317577 604820615 496008857 113918879 952067081 10304483 877051935 138871025 700606097 544640045 306800471 42463951 489016807 285226595 323481867 880587739 745454873 384935181 25004745 486900417 212866167 688566583 565640171 12752689 697158305 314570103 394985619 214797029 557839739 433492717 439118501 836022433 858147119 996185151 277028563 894083377 543292211 122109083 734814615 297483363 322821441 91643573 640216111 122340371 857268833 328749519 91290533 301618467 707714523 429464237 901402055 86572671 20601927 848400543 470125615 199778839 248327297 132682359 177065277 592916965 954437289 818920857 400837913 518807279 13235505 463295719 201605811 60247611 93513673 280139731 116742851 113865693 107091053 332611407 720409291 508469231 535907941 684714715 143123987 216529811 444062523 216812927 68529321 336415221 973554115 737235143 655255141 102810437 730127643 99575753 199455723 724322237 222086565 164168229 815710113 623743139 9817103 324418305 268582583 914954045 186468427 24343051 976458277 839063007 685719191 782796921 36194733 725089507 827009143 197482503 105812693 62883757 717746615 376984063 891737071 839696291 170102125 246863919 88620305 326563643 865822451 259053547 393634591 202579183 989425901 306205459 657775805 526739007 242795081 674432779 855829343 761125561 635569465 774131651 422566971 995235051 576059453 46913201 718646611 306190705 101641493 911293909 628065387 290291693 659827665 989324467 699448857 744311307 241241025 876465497 746544817 769308283 36437125 894137693 687873367 331705849 646690561 165019359 915080431 283039813 356738655 214920581 292508461 142561579 731418901 763711869 473603461 890985853 284996063 450522749 714593853 920776727 256623295 254891715 583889239 616793815 167256069 177897493 512699305 775677355 439045443 658274497 966494663 321698179 799824983 592005791 338007315 11582811 456286305 369044493 55810229 325303603 878674643 616947441 780263581 857250583 731567709 783366583 525538949 843583003 764125693 744617047 967378667 763239253 948344311 584105297 294085655 158708969 36725975 984366247 273341213 501949187 381881969 272159467 662682831 38044371 413632739 277914675 816239315 113882517 67403151 793229083 692373135 298484105 494153251 21538763 124263987 287357181 59827089 950864113 958756793 922358079 673019673 936189123 551187933 137776043 780160827 547578879 921590061 228746917 451355333 181511915 201794805 918571667 872625613 649832023 810146893 514570989 486033581 171683479 591139097 346391849 108069641 942219915 278969087 957978057 916261071 202392215 403109487 784323417 24099123 353324973 984612769 757847917 394214319 894284351 711993749 883141019 464802571 627231053 202449173 846684807 965684303 449503071 968902577 342594269 801765843 750774657 168060607 321010765 980173363 13536843 899842659 239964307 47454543 577919193 593676417 933979761 72195927 856357843 112065485 457122991 224796095 471830119 591060669 459039009 69289539 648765259 970871441 741929379 621903335 723016125 820072531 64149267 303891959 527176837 68741587 85827167 287972103 515025133 445011623 989883767 194515957 308023759 652806449 383744087 449271011 986065033 748446105 598615041 555301949 616407553 951346897 107245949 557094329 401171875 700749197 41682145 361687381 817731177 955832145 627434051 141365329 857302477 797559653 58314951 41408571 169275097 573500375 961065881 181410279 368856857 512831617 776817899 695874163 861397413 680224259 750768373 44073537 609813529 460305605 22215417 48753151 851596701 30843385 937387077 805247905 783056351 717745299 623934759 130926945 126203413 134239319 704607739 840184517 166686719 560414923 155962405 954790299 397141727 647883843 35700493 561033973 521351303 900598993 99944229 868601391 133100619 845889371 73896681 671125485 909266443 280386183 469550555 89125149 819851563 877436357 146893187 486061555 98156957 863374925 936903285 668753131 411429075 74907681 115186509 615819721 696750287 410215175 887125419 715381911 716281109 899949969 535955255 821810349 495066547 739996181 610866857 122120615 66606657 991112631 850838711 413073509 282489051 766597981 435668259 588607513 208495915 149205685 320764347 942760755 158238043 324044091 787871053 753290865 494392099 561346351 97815735 893909975 705410241 539122839 209219031 175926705 876536827 127836227 220558491 270540179 784473377 887523535 894380533 626897755 838919687 521914775 570340573 535689771 627676941 401120711 883579221 448832369 68005401 54937419 953685867 330057183 609090969 736822751 302367789 522442867 274608001 372377089 853878969 829845361 214541907 477327355 158421295 905448295 630495763 650395355 227742649 731602981 868104527 540244347 127249801 952237003 491345439 271604093 37787099 104027069 262935839 73728069 197869297 34885027 920493177 365691397 909557523 806547575 631765719 136308407 297906583 669636467 69827185 37764377 499805139 407909145 25893893 893663155 457991213 685855801 293596635 853851607 916219149 385023717 95948991 720749725 890631143 311735673 450920711 768281573 760169011 362352537 226351507 620226391 204238451 777969461 273123017 845472099 156408117 138952573 184297365 393782851 785488391 278057453 841609841 855942387 929884807 973348173 833406553 441953345 56946005 76951719 140670419 722506681 32752923 429135 191232493 788349619 338333579 623195363 286826303 315564371 923997281 108056133 780566247 985204607 92986975 328844449 420196233 652660711 24967247 128611693 886706773 749223171 332175873 584355941 657658881 901816851 789665619 618950799 926703051 89184803 708252965 214648627 19388539 175400701 753207393 736837863 116723549 27704383 416293625 843567753 116099399 682206789 556099305 544027195 658621849 549590331 486756147 890241643 413944633 731522061 733584609 819832523 549275541 23274871 703303171 74977115 703148963 82768633 709670071 180522331 974682847 723855833 459304989 142768219 384939605 816051239 641011039 825846059 838610829 38273469 905193647 864946923 849677729 93332797 435255883 162044415 520334383 274086155 546896239 152155921 694548059 192548441 898086251 990537751 147924949 419510305 236212879 209815883 735259603 217870881 396282675 680702517 648559637 3557859 407856317 171953823 361819613 930464181 777693333 110207901 143720189 532942257 226858799 516002955 6052043 257819831 43889411 62457359 648253731 337375087 548914069 203034899 335425389 964288843 234437743 790880717 594737559 184743807 941620257 344703673 14938389 654588431 619321161 285277083 655852009 642748611 184698247 434753151 500998039 686989353 479104645 458548409 930061871 618129561 729122039 893027815 807567173 330292535 195277717 52709611 731876089 968020201 278051363 425018097 190884079 324323167 960146537 889217137 701285719 373013521 376906557 330308131 740345833 644468545 779266423 409232397 214565599 911758581 767721721 831452797 811581955 992738815 829992365 263892739 875191713 862661879 959526023 82971007 715676559 599856443 987367551 23372563 98073135 283627511 519491993 264421165 1593185 529115929 637630431 566862465 159148441 424556121 717357153 2578953 579716299 353955383 26501181 438970893 143535989 793784061 875102099 293474581 547220893 294540219 798235789 478439673 498687443 447100743 611538015 805134803 206668843 960685893 571580993 275626761 611021637 493647129 358424183 199277637 571471685 57554679 443952459 380808317 984720605 240437973 530926095 300166893 803191359 597693811 908993051 30285337 41024555 233496411 550403541 634044619 927121641 655275483 877876135 170217755 707880261 132313613 690685183 943177573 525068183 281070547 974961501 171793739 573020347 266093265 102288703 788221113 544436505 699958137 975025455 427185895 368062367 50740229 297816259 176985421 177544387 279610227 480370067 491924145 242506627 944572555 895301185 750099487 293354597 815156447 16569719 619348971 991998585 900207049 65767145 737579699 302354515 544391011 889181263 528207449 458375443 283171227 172900973 566611723 781360989 480152865 24828429 527639611 88469603 81249897 575995649 458420137 256794839 27687607 258253091 602084949 448496635 527524113 924045653 68915085 332312209 817946953 796100225 416437735 468343277 210620663 158648475 296558653 98594015 607142523 762934683 108739763 459616971 826143227 204668549 19215799 534837907 235887211 589681251 199329533 144290215 629865601 61623111 802979457 656872189 982734271 551364427 72433029 335535635 469147499 735489425 554193305 150674927 180692375 250490691 335550863 474446369 464316443 345728149 690006147 761724349 121764757 380950465 156602587 763117155 900689009 419968519 73179457 719458615 681613275 318736051 433364907 506257387 562106575 92327445 842039893 137122225 674518285 121386635 334468803 521779275 367919641 910171509 372611265 158219517 481665097 906697791 324152675 565157269 796467633 704971609 379062791 958021995 922876725 225745213 757093199 656002651 183635321 167556463 280703529 594282957 447167983 727359865 884726983 589412271 71194577 559664621 608801703 504069495 320904989 404629861 342196365 507597603 424853917 89396611 48763783 483322427 891070431 42915315 977182693 675422411 592987711 378216291 981330247 823073897 40484825 967144595 620680847 891263797 726200727 634819393 663955691 961703123 990811945 746154809 569362127 685862773 649905671 722158925 726235893 763451599 323164787 306445399 660989797 311550749 38910069 494949433 461324903 304110121 705652443 569600223 363959187 727507007 682921535 961477943 798974659 20689207 526409217 784873025 715112221 953447791 433420105 288543227 356899851 973430475 8812039 947278449 885398595 715104187 753010675 636279477 589893311 174612021 936012175 536484833 539621831 672198327 867583777 26693143 566836709 317302089 242150843 286538115 665288429 892303479 893050933 2823509 134709499 815099479 8337453 726407367 429324661 486145417 543218447 736908829 830147591 417963059 369568521 431226785 779319203 668828417 28561939 341270181 65333127 860801581 990984429 666448515 37406775 533444723 992050209 861849503 680294015 247105049 520762623 774145119 279653491 337258477 234260637 814793273 951566449 150958663 326105823 341103271 884089883 186782723 570127721 789432873 622278495 455157131 589474991 782907211 588546927 151249353 668797159 738468255 27657675 644538165 518278929 348740287 7625523 174933197 107646455 293162317 495406773 813612313 599677735 552004597 918590631 868507939 541384189 812605543 255155619 271176071 363263637 307408989 417388941 291347295 172450521 271649437 544490643 574969683 820385145 331097581 495940649 812748943 594111727 557988385 701327883 978482637 29940345 556210451 65000251 709441609 429580065 238686629 934031113 783430857 407396533 318744259 595386375 297977499 471900879 725481053 286131473 661349015 395918799 985651309 633846349 633986075 444552157 970571769 423084069 52744715 544505833 741768199 872824399 739572183 381846699 37083819 931225287 989906551 941627813 217788415 18348753 782122853 383855135 39900965 91116537 506927017 227008551 480587081 68141843 636288211 586860439 25225883 872326971 596180473 904101133 767738711 620744919 989251767 947943157 701545661 95003283 836540469 250327165 169087001 514450017 729579553 291480221 806377405 289258625 391367087 825676055 428099587 637988979 28736673 892032881 480977999 100087301 528662075 559523325 412316679 430454859 448693837 807847121 917635491 430187171 293019691 880556753 18924439 387324335 909304243 779400353 666789227 847821917 972289615 241107381 247643813 593161953 771432937 522140483 8414169 816981429 767421433 161587533 744447905 639164065 224119423 631891353 617022879 798504365 266230525 208359607 743581567 242947633 487290757 458740483 802090993 208449479 839106477 630948249 516113329 511062357 400907153 24165219 117318783 274579973 793625305 837472787 683647017 362052173 239007667 319137565 84476285 241539815 11971541 251330759 887838551 68620251 779579771 283022099 832507801 24600435 658972273 721447639 323386927 674719555 290089215 342740135 541361161 577013031 485817087 822326757 532104739 496520261 851232975 913555897 443015805 827360263 823384147 37046803 548759333 308195109 880947197 450509485 393579305 960536727 516449727 187978245 447013285 617644195 962783769 757363811 671635645 742096341 277077267 685713627 213825175 655963137 561051449 522916929 761530475 112725317 913671331 866354229 312175981 742198531 960931309 889188387 196416485 411803367 375622975 157241401 689299993 918680041 896696135 34268785 466592093 245041985 978064955 502531975 369477901 371391861 6173401 535177225 244462471 457591123 471628647 871821123 323180857 606338795 748961973 250381901 341721491 788835485 718498071 204884235 358395409 698424845 714235755 919369507 760662835 306447653 377555995 813686021 520524167 353252633 34508817 814878441 148890267 724900201 687404487 802061775 618223115 648595669 384091191 643406977 138601595 814457965 480694763 825129103 994382993 120285827 328049647 55486801 716148229 287964595 517661403 714272485 107163277 145746403 281906123 242743605 264838379 280014141 810343 465377523 267119083 957288247 766898397 199606421 953004897 374482317 716619491 225498459 932112163 121794883 222810295 584603727 786182167 380248485 853870367 451512129 814079267 674308935 116535659 793484743 651274303 623599877 272307311 310644803 552174945 631215877 89864075 696735965 181391243 643301299 282405797 681432199 985554377 468015809 980705321 616342005 668580911 205326893 715620879 102860461 233683 207813435 368551127 824767473 593699035 500910967 795477381 319995349 982055279 283050423 868792231 498622003 57347777 114414869 925397589 334006695 164208397 896526837 70710571 90298011 809428883 142298885 376958289 516642367 465928097 976720439 20878965 8217483 289897349 352195019 181605325 850351169 713695133 817976129 683919639 949453287 697948487 8628841 987121051 107869393 741256689 415684691 770747171 879027985 648067595 591798367 316903691 45057421 441784849 17826097 656159021 390758123 695284613 260479923 658253039 937896603 344695279 311823899 631830595 833811413 743317477 625006307 677366939 660598939 591260157 178852819 450674169 684309683 749964765 455090933 95696865 90107055 245877549 142508957 974803041 817981159 501721247 857429863 317146385 767052921 930372335 729295161 85792269 528607825 45284319 235431485 131116285 819797019 3501367 446416617 759855631 449953107 142646733 408112121 926979321 426993209 309539959 150433649 493207035 671245011 59045659 200156573 533569239 259116529 722909601 381837331 525508063 963427887 638623483 689851051 614572775 353381097 417207845 634377869 489873999 374357323 123450145 67685669 272666109 100832065 25698807 648129317 864500829 11622535 631061949 749713805 465260905 754498971 388952969 898904733 191446941 417550535 903358849 374878435 935565055 333564697 968441805 734167605 980602909 356665197 775060895 441859245 999726351 280335711 595900467 601664431 799203441 932298841 138484683 617803497 242339435 330651787 253961393 806211919 433550765 875843055 53447221 221084699 44993641 923156803 703715253 654127573 805298015 13939983 139147151 10218821 820623573 653959333 521260081 82788483 601264539 990846237 948045069 377578473 440459783 734752343 453173147 83685661 175614709 767478779 408265823 756798473 667677899 334834809 166347745 841727459 780662907 832080907 48720311 155731495 495496313 518070701 59346295 163381657 47350721 150837293 849097671 328797509 237496029 115269911 326965583 374606719 71681755 211592133 691372995 188512483 137834063 995105365 434796763 892736343 215292503 569475251 976583513 653365511 149941149 31523725 322892811 567326053 502227275 4807003 803508929 949695023 819193881 285341533 690608979 446718569 36419397 898793631 750589607 475593055 667754903 571991275 342728101 392823719 167416411 794904031 759796289 932600857 991195751 530307031 759142003 661262047 486838043 310010111 361543997 111086175 942326109 937411139 393983405 923594835 236724891 473760863 892305363 542070963 490382281 672563923 459076039 912054471 881416297 754013925 634955439 79050775 291554175 980759717 342109619 108383611 647048347 547845103 803750663 768417805 854146257 470295391 646378211 646921265 994907071 736198495 238583947 748091029 305837199 964174111 75141959 450742061 297556715 8693657 53118317 781588021 793157131 400336523 892802901 951743279 844884399 818563455 335537247 891405803 630316313 493880003 728925691 928105339 120606747 226784369 56135829 86147899 278017035 376108393 969788075 171883985 227757253 898175059 449196991 866072617 73913777 244147361 955733851 936250485 564956859 866488711 587436049 449748787 938184029 825902345 183823993 985366565 154942355 197832943 699642937 209973083 800442083 443160519 911802617 482422313 820360029 187167723 635256173 170369575 319496853 168738937 815466061 439944253 692301481 962917981 635746141 175580567 993237315 786052421 95101031 732567719 720806541 887768233 643585083 296908333 362350655 705691339 385719223 677254697 691587225 605873585 640955579 897409769 228300127 394276397 557343025 359782403 87533279 161056471 731157005 590465871 65073903 39914253 504534599 24907767 641968111 310721531 998905827 368560995 36187077 193104271 829779179 628930631 315629279 905036673 579304049 455279523 473748275 386004049 211040141 238711735 36635455 228041801 565856869 833131283 444782345 478292601 27947809 624140169 128035105 609537465 819074293 534682933 315146139 622310311 822342937 245738363 128498965 960042925 612787153 2432523 740409273 426307069 779897703 548107733 956977713 887489165 265303341 624754709 423766711 637856797 153561213 948035411 357381 594807095 935317945 442167897 147981413 278208297 401772875 860893499 764284579 129360141 267886759 230666837 591718679 197692101 850538309 667883341 323644061 873970165 672011177 461602831 462258589 723518223 386149469 545640397 355340549 438645837 264957169 746233349 149436747 996521133 840376579 49589115 742833517 843299063 269106995 260172603 918180337 549457087 750882861 793791899 12306919 273538905 260104607 309648179 801425891 119299813 294793545 158732781 909609733 473672527 777595369 563146735 37829105 341655879 67708491 679541939 242281943 12575553 680483391 857831409 986744175 437588097 584417699 574546095 529547251 611316237 641402711 109451835 761123373 196829623 12352071 691849509 556049769 848648983 772110433 205003341 682532991 228209805 890862501 776147415 949749451 966843967 343695121 548448813 974018357 247692065 856841137 928198405 848389419 442543593 832191893 867625049 834714531 714382361 551543003 441806193 591531547 918933751 350251683 232819671 544607643 84464789 176927257 873548895 390756271 867096267 633965933 597779493 480008557 827378743 688005849 164342671 790268021 950644549 22420897 787410247 231300587 840659233 98556687 39866691 697896321 853849287 963959157 789799359 844929641 455255031 148249389 566175807 482059365 24235573 56456089 873668751 197966009 42898391 77900835 715739075 290368819 193875697 300544831 896596281 998411051 888009319 176648549 34476435 908936829 129120989 833069083 320862141 933310097 40658373 235848935 222504429 808231765 665803865 371705947 187779745 468120639 352141975 89345813 191606169 557738317 393525833 533484213 415849699 681353735 809834493 20852455 809264085 688010871 287071247 369606747 910354439 422804537 891926939 583856075 299323491 870137703 15564171 874374907 14888977 221029799 971701647 316539829 349993861 686487851 202956575 411370699 329927551 394968997 176516221 397574935 937883135 834757463 615187889 403205243 565727061 865544197 26918281 534245603 564708113 685123581 626468511 553000255 270897941 916390679 658893395 177848457 354680447 461901233 182624717 355214533 182807743 471856047 421622013 561262589 364535945 87003521 596769179 426429763 892993753 618649885 57437225 730721713 923870195 679089921 362983149 948177259 982577251 778726197 568597241 156175511 499691517 833418819 562508581 27805291 214176477 804175431 429455631 924452895 832326249 749479387 583843875 446675961 530383435 423147301 564967055 318647359 622692217 167499991 308238411 633241157 968071471 718533925 528516631 669558117 415295985 52604107 340036221 98666497 38528653 489312275 191206093 96362115 515003667 191330251 397212701 703122527 511501795 140474951 441862225 412565775 741609119 224434277 31840013 421214995 296327475 933021837 742595781 524850423 236288727 337042861 418547631 812343373 213278979 552716349 65402571 47077039 817217151 463588663 659111651 541408961 881000531 170741539 662645125 564630825 640166103 786279185 101468685 233452957 4563619 760914838 814842007 20086743 405288865 666291153 130862349 807224983 549451769 100893797 632914463 367053481 839686433 3350149 831114823 582776287 110996691 331723493 863385283 165021715 530913815 344531139 728472221 257400361 221881909 73778917 928209827 549509895 371942853 922410137 494484335 597023907 954551203 562500279 973890145 448628983 117868527 884574365 655561377 147366147 737994523 31283503 593056543 702941651 80428247 470730717 693911699 380815737 459200289 349318557 345642623 734142479 248851259 630854127 201889323 454688441 189975221 184265173 22123429 799023261 647974497 492226273 15300807 686165489 425651549 253116457 145069615 330532079 882253835 867896137 873407049 962102999 255247129 173386601 310711875 957411575 776373881 374081077 751254805 856924061 889020009 87221479 757963905 709899557 389459565 777717563 166112781 60973809 920105041 123113591 973044235 878573165 86759723 334301291 88140433 266463241 425950293 353200747 742133379 23894593 489313395 966184021 413977733 588486805 802985587 3543955 244722699 87682193 716996231 281237519 122850379 875572935 915882287 17329985 628793671 733163473 182100011 852486951 867597509 248462163 915043211 613027657 77461845 831158515 110145183 75835315 126241619 348988777 311130889 804537853 567752155 207536489 3253671 231689283 869776343 234071227 33299881 17122861 426655993 962370853 688848771 534913001 280784053 89050491 998801905 343688491 324791633 816174743 653502711 327364661 12677839 897226333 64883935 381510347 161930245 347962035 812405569 308372285 716099463 417925265 895249401 232254303 41855671 167437547 871305257 768145809 755897533 66091977 212749629 989758391 529610633 286552881 768267755 644166721 295870677 308185655 520108335 757394727 729909535 881773045 460561229 363777763 473205935 449670799 721533137 605606271 107748505 744892461 325867407 580986247 231436209 82083329 313588133 242964243 173902231 402862919 139737717 605360831 891810743 134602303 586682797 948146355 493820479 20001589 966900287 378512797 802593577 97243517 652818283 226770355 720497969 461407341 949072817 266359219 216711909 513711721 853650911 154448355 244861329 244988893 557434379 559161105 729118797 83493433 623061647 107992471 959926013 269527289 464129807 275557453 801218887 910881951 109668729 142961567 412579739 513130419 484355329 737273975 529877553 294392777 514205985 113243983 556060169 633267323 324295841 653743905 492635629 185433709 3649163 575732855 744872301 225210439 104981809 642824797 579966945 89627067 276980533 920814955 214988647 819816581 792689269 648801469 962173929 802632549 862269219 819580667 8102937 55125801 932503215 824657235 203650669 465895839 901508309 310097019 411598373 970690723 441217181 436207025 50809931 585105177 882825553 478084027 934491311 658508777 153550213 177681385 716609255 621536005 524499991 140463887 860885333 322435177 808564009 659974285 748668449 441102101 471709479 170799431 239052349 828782103 839411145 80317103 926986845 866767741 483771655 310144951 840670215 639075683 414413863 504979425 791097469 629951725 837842613 695273009 699710931 89483075 822006149 85295669 695444963 414919831 265322933 197310213 268077897 824229669 444455847 293055549 79653487 696724015 506673673 495645445 123198597 170311421 253582031 791680267 292662915 855802339 370625587 424936325 327936043 16450365 189287357 38610993 407889667 977224297 765548853 670707797 709762911 209007317 969744819 500441025 873084753 257886963 17994897 629415881 573526975 400475963 851601523 799501901 611027279 465797935 329129543 334977203 49361777 622707293 56857665 976820967 135090013 715525971 411696349 738842211 980286229 237840045 970818015 965102371 572438623 98584079 789453137 412544173 357889485 288152353 702131851 693757711 516514231 345996949 855947561 437031905 172368187 465418535 636875787 661441343 945348933 716254873 630716515 29199057 126741889 705923251 50138273 756967621 962557803 106387531 196534147 801585361 330672963 118335543 54234381 375834931 16660239 844118621 785568651 824836019 430629281 961921189 718938769 499992733 382687631 786158593 986816509 317479367 185487419 642618221 861898481 591018897 640945359 424081131 391249627 883099105 176285495 741278341 15001197 176113443 577498415 608314187 733965989 142138193 178980661 566680153 85948871 197697765 934499219 956030931 737425505 424650217 464679255 34959841 517285955 66814187 287845725 910733751 896705421 801501695 723126081 915823245 907461539 141652419 996496493 579919525 86382639 974848607 663925521 490855501 940125733 396666497 410201895 384009427 251952837 700042335 186749805 25970069 122297999 849264313 916876395 372333299 353180243 114295761 686428019 704596823 333025315 875998329 195703709 656680499 388658267 397767429 819761353 880143619 845312159 588999253 476232863 455105609 538545375 318714575 578356111 241342093 232654923 69831009 707926483 810887013 196629601 199488639 405623399 521477735 211052515 541130539 492871705 719448121 850894817 827023337 21129845 107118979 511501997 743528393 968763605 954972153 319870693 169413983 548855639 291824467 212201579 803421641 284525543 697759829 111669099 907268015 205491507 773927879 974746459 67852353 949067187 934373759 191830521 430893617 944373417 688274259 880424005 373170367 145124635 688204329 453016461 678306483 309948633 159984361 188614757 137255257 634246015 420389767 558821803 157835655 789030761 440275451 841601 428314269 924525763 560547145 892623445 211859329 377142395 348729465 745070041 506710433 703541063 258624417 689553933 414984177 297277101 208917209 41149489 972636659 258957297 795798337 64090069 863712939 530014499 308168199 535048137 727766953 26948639 573122397 300369709 808596993 856449409 295578491 944322149 702593361 99705267 582803877 376460315 434821825 773031909 953086245 974774341 38173185 495297809 571613259 807745309 474378819 589027573 792871285 173886507 783336263 730722075 380963843 75887417 909601877 681855441 996361567 323741019 838604089 76266289 637013501 316344301 347019081 652703259 933856853 176568213 421765735 791902521 752907243 668051773 219942387 411718647 58801223 799110427 150887905 43531663 695797759 702364075 198489509 716328451 634397099 482582193 365080893 24491291 755797227 702218809 479729711 740093797 845583727 693525399 556050571 625905979 740072931 438461545 304396261 257143227 653769477 127780241 578423387 465361873 588417175 857571901 976080279 102355755 37368419 244692703 875512771 44738881 371337019 185246261 313258135 9782357 569715703 870985795 98952787 381502573 161763453 597280599 67026105 928967771 146469047 870588673 586401819 492836023 885680019 949621537 290710095 12390113 529296911 694372569 513457585 994149375 38123565 720803735 488221737 435170309 828610039 549314575 793234469 313626281 427983999 113008955 257081243 166377579 205285087 486769507 849506569 737030549 481329975 887968015 360008309 704041271 613763511 920061975 79207021 368341545 441418635 797462677 182195979 170004489 929388531 573717999 56997095 25860161 882762541 295578575 625825325 332638467 896749443 429662507 581231495 886630469 698430027 347813695 371120941 853249735 68052189 257849487 630871007 208230163 394930075 942853093 84300257 348299895 200186095 825095515 454411265 284026381 858108493 853104967 846742677 605095863 930043181 985744209 368972927 66927897 195984915 501629795 629402145 480156325 476932489 762995381 571962475 861214869 460444449 877798079 744589777 647080935 390828661 806520903 376517461 584992611 849462823 185464409 620331389 402202781 392658145 402365769 383491411 764153065 982670935 607959477 107287923 860894823 532344897 516272511 510322933 379914499 886665059 488961237 899314309 768761197 672893063 31715113 698419021 500626969 429784959 474453051 85374471 350425675 411398691 854998795 515870701 432711433 338773337 482438375 652936137 152212005 304562699 548969573 877807847 672471351 815436841 761196639 349726239 233376415 306865069 518039801 373934797 687992963 498519451 323978403 137399257 774004183 133740797 556704011 593372337 172611409 371043301 493367347 413803083 29638771 451355757 570706781 175231013 175198339 700877751 936598035 59300167 818597779 360951021 648449837 60632379 94310779 862176323 425149893 755664669 316275929 489955825 787105857 806621317 839028249 455054651 280617291 298799775 519245927 670145899 953058523 113397525 152555711 33316051 253206823 665683233 1588961 673477581 52271033 433810559 619565139 386393019 946379355 450105971 295252325 933422087 27684899 113020113 231610929 331598117 435273321 779550441 106800537 298539919 139844565 758209183 564287041 574762693 957629267 934545749 104272283 712093779 291123989 501384955 845739233 979196107 626463641 185111815 952927249 540502215 321983139 794015607 566696693 79792617 847392321 387091409 16920603 414306267 52264899 717999653 357316575 729625937 422990537 674000391 598846813 807371013 272233013 912995735 830094719 808362167 234959669 380492923 540005365 655709747 763110973 607178465 228615223 209794123 517851655 706565245 633339527 432685015 865133723 449533329 126137581 195019967 832029249 92014049 678813239 889821415 54936721 446636475 509450495 653744965 608020325 972953847 849548453 81829075 306716643 722233329 217493073 515997585 965016949 743178897 715769331 139019147 436189905 320334151 238878531 346555859 834107633 648526341 378855107 776075139 140994589 283171147 467270329 167131837 322553055 726587167 225579575 577007531 899172619 650565137 244551189 328264065 619941053 10976821 362498545 177810297 888607067 13610539 483005239 552168403 789233297 196328473 102333973 510514395 745263441 203836589 191759491 953784803 53652185 115775515 732796737 980646981 160428973 565209893 394524377 268486243 748225689 781756943 397963931 844570793 628329905 878178727 104562077 310945927 490586451 293710405 175385539 373051255 315969313 381349575 719260337 2082815 457544969 467153297 353416923 84714149 437980733 273658259 435201143 819875581 396461117 923657539 838308997 548375713 641035209 143162785 898484175 759680563 401651695 875270447 434342883 892064861 760746757 659594495 26481181 965004499 95670693 788216741 360707225 334837583 555566515 651082305 485492033 208459921 674191709 854459257 946349765 470025061 139812375 833433211 588409247 342214045 243095965 247546877 403096333 492849429 881230577 598395707 350271513 206183083 512380259 32498943 536041105 928628555 756020101 850540695 861702671 47356137 66731059 503422679 304439027 336265087 873190803 165393693 817532773 477757453 969742351 992456787 541333589 964118943 824847197 454973923 867417211 667705417 823981945 930650309 337210713 333752865 876231079 696208503 852583479 939920459 344608115 404440065 778863907 473115123 542422961 996093679 236670455 350210377 534364543 350199383 458032465 600804999 726091071 278823899 919008157 865614579 105815453 250582171 366920713 433452499 702328975 141669963 82276749 936969083 529984595 131346975 969961451 450202181 102644329 563543509 275293865 534690195 583205535 766686899 889949721 322834641 101561353 658614407 708581457 70287983 669268997 382268585 536630325 497476841 37465397 167068919 141205099 364560319 746147463 526546645 695874657 927677565 630213679 39644725 383851347 275123637 862010023 420995721 509958977 533495811 654650295 537081809 926178289 588322565 257575271 469751701 87000051 643688041 896375567 548276705 449182627 69585119 54578249 404997707 249976861 528687907 417613819 908904693 874336331 659330293 113485135 366872449 90833887 357316129 357544635 930766365 471002189 605715321 217924345 272494211 817582555 929286105 598327825 472619247 694969483 818153759 369925197 817179943 986799411 918708537 988492097 932344187 329946215 103886103 316394185 348860863 420179849 293084597 487519755 26027601 626824641 63290643 657641073 799993115 831970047 411556669 660499123 383996039 435910397 241713477 946707913 906801807 737607225 604062279 505850361 273475501 616515835 522613345 678421967 293384683 723730519 998144449 490325791 324619733 874339617 54288791 139396103 225034625 5194489 23275295 111165929 124787089 586955083 534077081 484315249 504991271 610993733 753561171 245226135 29365745 471706593 850069403 602679699 203614505 542946523 553599437 444048875 297511563 454140865 268757325 825907309 276510815 399139807 378500225 957817129 45352815 543958093 526618849 715378303 441619477 564273391 210031585 236747795 867179823 662995307 921555465 224107983 816768291 169695281 728266207 951057639 467079901 309853049 962258679 430805211 434296021 812912195 39688941 275398763 617065995 389331289 250188895 922094247 453051139 128437323 632558587 600287713 502748875 291892337 771418481 217126581 568203257 952725481 650379901 303720713 951232431 743236253 261858785 748777223 644384911 852357951 579665509 945920037 553543625 565909573 959040989 530542623 115313171 561520367 811805733 796325881 796873899 930808903 737482779 333633279 850397783 170775069 367847085 232986053 8061031 197436423 723552203 719398695 280293807 696987751 408678257 319347531 41944463 337210213 755987617 752815773 994750187 417255411 717532259 779802319 870272821 267293893 329717963 150118367 1489247 44335969 811143669 640178449 542980331 550878985 466232063 536556017 263508699 918020051 156216599 37713749 631083715 159273363 114115181 702926935 367016371 488426731 578159421 706824539 833898831 865857603 434748617 47592719 823797433 67182283 803034201 697659237 168703393 417193339 677981251 42292893 356417341 284793877 851437277 505024055 349879115 273927713 665356685 843076611 745726225 321793517 43965883 194796817 354781791 551271313 437736409 783478977 713822857 169433073 810853987 144720311 619453807 290694579 374463707 633449181 907861111 280265287 456534729 404556393 689358221 686244069 822389441 206978261 109632555 304046479 426663775 625467881 911430219 665596427 636182593 897309615 816410487 654373099 529621781 314986875 609322429 355860615 34360973 947387625 691015855 197984253 407858529 301509855 542385777 808020025 364033875 844983943 803306661 152030439 156426289 579530841 88137083 93934467 970034889 669119755 184264873 574094925 218020857 21537959 236190829 718639947 452025247 663281015 632070799 94512975 536581545 528812305 857857881 98227951 378014985 309850445 944538279 142333325 801944247 175457107 256459475 604612691 142623925 452387983 933040579 215051053 731798289 578358709 453872105 500214231 487408345 638291391 384851257 80705231 513538859 419732723 138785839 272367199 465853477 345774557 412144853 689303445 288113653 880202835 949450169 129436493 50133965 140464239 146361069 165772579 875008741 61470613 508683029 691756161 422564737 606659955 422623315 141991319 743638505 309279485 264743767 836781151 795667827 759020397 445703255 106151831 145324917 582359371 906009619 389905351 269307989 482009439 802049741 619416641 990789755 597835201 55905111 734464029 33465689 2351307 825324037 731317563 231576683 530009635 707499959 194518339 608518707 320880051 715223763 794212517 468019515 34292401 937644103 790609819 540405523 659359897 377873543 638934307 247825241 19473455 126846613 807766533 221453485 381893247 88965877 950970835 970695097 555035101 535065781 421348325 49036847 287175397 206127213 117484121 997732299 22151037 518094651 951680283 132805967 504916433 562613187 996231897 26015621 846865747 492018997 664336907 395651133 831199169 8042057 39916531 736802133 306166815 900305977 830743959 788623787 428807609 253351373 171023559 525566511 161183525 735979093 749939999 750639821 724282171 702408871 142286075 433270147 951125029 17506335 107514503 341501267 707908681 115575205 553315505 789005127 42079585 350515877 586459695 324904303 240326501 245029401 951599751 825349609 96118685 704606077 904108285 231954901 1341841 335356375 378740129 11026525 976499737 463286965 771678287 178403763 425196623 812976431 728101283 110566931 764686999 311022819 811129863 560400063 652530591 936875253 545343661 975892225 522919771 323400471 647106697 857580843 563465223 929332347 441491807 745117077 368355621 53351137 616957623 395572133 121766533 976855953 21844191 194052291 568183609 163219543 109628401 495901539 142366365 446178441 517215437 617110525 698965335 579727879 726909469 2203669 717151315 531862071 415819085 19245365 822732739 798181639 575541143 115949037 211414565 908604909 185878269 412068059 281134397 787718887 414231879 457387935 740518167 98513787 67585283 908056035 196613895 615169975 915889291 284052571 706886825 27018035 885917437 242965951 701015267 103060493 967064389 572163027 840999649 150554601 175354129 695214175 71328021 164219641 665936345 191879225 375053375 138478319 319730655 315522617 457865823 950782987 681403177 876069953 422949315 619558933 629848201 905910331 863410177 710634841 452074647 916366105 483064049 89997743 359973043 916513241 109476797 918272371 78414339 745137785 943947725 639705229 779001979 975048451 5382613 82804075 263846865 746877069 369055445 27402241 240538245 845265967 101319949 990209745 555906273 471451147 903173389 377096161 437481461 886817355 165449895 815176635 878901913 123091491 177928695 467573369 58986603 367307 590066273 914402489 586851541 589385863 843725717 293088417 912765961 867579297 826976899 301626589 224678909 737408361 56057959 457011621 931546481 732248893 130694089 12519865 501460207 220867453 313434995 474093915 243260869 207741587 824411001 503062367 653791501 128465395 357289017 92106773 91673769 343720213 726743379 78656607 224593469 656560253 686868665 774091939 59394107 872723125 971752347 374088143 438438109 53208911 821249911 497869401 360661281 833076197 674870033 784827711 389746127 130459929 84755317 280035079 294343291 189564309 298542329 323266241 802823801 563437325 492353589 274697985 380162539 694421817 814722835 422563047 753931959 915120349 94002105 706570521 583136659 299418307 849955745 305065667 37802737 314911933 888973955 58931869 918166549 112439973 718963559 891461607 994275845 882656605 949118869 329675621 337190035 241594319 614705061 263860837 835970391 521576431 257638513 66946495 306550449 767272373 382000669 137973967 72743623 978091557 818859799 328076925 17937037 791431753 902919955 729373751 224483003 901335091 43368459 913940723 513129677 646641149 277894471 533858351 972653583 505629897 928722513 739785969 169361041 625102273 539951613 815380681 920522283 644753689 196763495 979087563 4510587 804958987 214687477 641600151 81653485 588134615 347936593 648674643 62698413 187028425 313094769 107414699 115430583 246664241 507439761 740752857 740871627 636148845 233081141 906216599 620766831 230773725 807241769 982267439 646563571 138527213 641638017 907656301 287726961 306465549 392147867 843084457 317385419 571920311 686615065 73913025 778382245 875431279 68100327 185509401 107470707 503045055 73465405 815036577 700865385 180164409 333204627 58241487 582244747 489575031 716893103 58656161 834847137 72669979 231784349 349095325 702638649 970501839 110427571 952976851 803344303 468557895 238373257 661544919 161208095 819766845 764468745 92394953 711831923 231730801 343474779 511486287 658096219 192574639 805149939 685983893 908630865 48632265 370253457 234612565 866689169 985976985 919219509 619672011 194385961 57467137 871732527 95449533 865203941 816212715 381099025 231266169 165175647 295703371 192332727 237604567 411380983 342635803 768547653 999539763 120734933 759267931 326325801 539724661 55203561 832566551 248046359 85805323 514906347 461034593 387419915 233273579 984448349 918640467 638853193 261278613 945283717 482272271 340476765 774764811 149110645 990747841 12789787 304146911 324763909 779803801 157616287 676155429 73777363 884577489 107649615 985332349 546520651 64356269 482286293 802875149 287830427 489964919 658088745 401852035 435745979 698396545 618340995 974863123 581946987 577956645 734220649 510954879 993274677 902170311 687233703 51361803 99643497 483079373 662629969 482344325 653909277 886275245 25552069 223724613 935198517 942738401 319116709 308588841 550735957 445983977 722704095 555580053 741656305 549126737 17721765 206676345 658879295 708837291 835812213 720368715 547266623 544948369 193285397 915176969 96183995 151620005 95496077 106912571 135206977 371022739 645411125 235850477 686943789 456848395 516971687 698287541 842042011 224630983 474107847 698217139 697926005 890364557 788274371 586485389 402489707 108086307 2890511 741117553 666917623 207696221 797931621 403030291 980908887 92806677 271854029 785085877 878440853 140440877 976835729 981516059 294051711 675149201 655935811 502547093 326410927 668277553 924208837 31785719 251342725 823992839 656948533 181731231 944329769 989285145 181317381 829295477 224561547 306417005 453837285 683585513 836459621 812386583 859049939 152163309 210509875 283803185 608668689 356120321 310771267 504307677 638340143 110943789 873434273 384767815 230157569 990803197 196363047 802586271 153822111 987375751 319296115 725370913 222434929 19206763 130242289 692410637 561461283 803883471 755240911 810986671 593375911 695523937 61367813 812909401 879319611 784730455 999599445 597122917 208832099 804819053 377910597 463114807 236597483 286888687 427628071 350114613 155993833 946365093 406962193 957060821 728028599 921867497 583079399 539789201 884431865 202183065 29172815 408513769 425748125 419265561 363510455 182983275 845376469 852043865 215138907 885478565 72753697 561486289 434898747 876920883 339866945 940261499 596572957 100569271 286352197 875410913 307667089 407750621 176712575 673099791 348856307 734042709 867477899 76070043 848417375 311831771 210285645 316203429 658212543 838232367 885143283 273118931 82827973 887327517 603810289 844486227 130906087 95356281 629339139 753864155 552057445 801373977 98162989 969585577 653037639 911018465 961290681 557266307 178763361 864810941 159498559 81739193 197457735 331748765 222438299 943114783 560754267 943773821 473200623 949338899 279878341 611894365 84319143 826544767 458775157 384313163 302519161 361078989 305168677 977129045 583296609 873450997 756533587 620742295 491818147 638657655 472776519 749430835 57951435 355319895 760120853 304715605 649096877 333253155 316567697 783947053 985696871 980917233 695832155 751380215 825190235 806900321 391018719 824914165 869710647 461339545 635940427 902798191 453620461 482306631 447528089 231144377 690378173 319327393 376140935 923781933 497604135 428744037 974644893 740974639 970798329 285383385 831984173 358854439 458495049 222787533 333275725 628661127 22647921 572560021 597280481 900086987 779439381 808425489 414008207 475547507 146921507 546304165 123339975 561083915 415664847 759955779 744225985 971605543 32792211 185426525 163269245 538837853 865409591 795709685 894362309 48116817 299404997 762680717 16390953 583713199 90899087 254190905 442168065 451232041 207476791 284387465 418852459 511570549 233512347 51760799 517834577 638424155 979933421 474314275 989754469 419391393 562821533 272059965 668202525 333517341 362918759 458644905 347875257 299018661 753089875 148543907 766774339 929944861 604495019 164081907 232562571 672749937 18878979 437030627 338634535 899823251 740030009 949018191 682729337 216533625 150898031 710865551 826925225 964680235 729479185 937737359 580948393 672155823 706235351 452435385 511994671 690654747 927267513 447149319 409063099 502210693 773156861 938815987 599590293 692147475 90441519 614507911 659651025 953581803 579674915 307779919 904790851 640673349 391620855 654079587 120659085 93455703 974969613 711570529 84340759 483702115 89874451 97170541 274815249 287424951 388854269 695509047 209844851 941934241 223271173 638062837 28659199 918499453 376344243 916711525 304874301 613781679 286879439 818524621 761863291 159669919 352871537 498763005 462472657 653773503 46070515 692665673 382003747 662457739 810086137 96687249 719008791 373506181 529889649 554358843 160320285 312745269 97678479 455214643 47455853 272002609 529782479 893450227 910994441 418889743 6751221 491622773 153749943 928266869 718267403 46817859 178905609 307445515 325064297 328188521 326603095 285761667 260950187 163981695 305144511 990984089 906967475 441444259 428464429 544336911 187989165 764066937 977652813 553724333 90395662 101992497 726346141 314091335 547263125 611390081 159482199 592862649 828308547 49675175 998783367 78876899 94981477 657138025 754120445 687027887 947846543 698706967 883104847 967715855 810747551 123872135 117822175 570175487 772380599 161356819 778779095 387071105 344216645 875329959 851395875 158314909 716083963 949382831 932899455 42272873 676109015 171470111 714686569 176138235 159207455 952454009 836254507 61597817 354665819 802377153 182684115 630896651 32228449 510587525 557471037 137268195 868169551 283994077 54455557 401237309 513809289 667340903 965044885 506559067 943645369 761611335 541327901 675316613 613636051 141151789 432846231 84945425 277787159 803285583 548905921 330469717 306819589 944909163 450656035 601054135 182051437 160621513 470897425 954726303 699057505 575338549 314793117 326412417 825706813 405479173 48775085 577464277 320041895 431336217 421579239 731238429 190893193 585430231 71925691 1411047 899907353 920131371 790056291 885562049 392465107 514302607 698075613 529673289 3363961 506020351 255362545 660298015 831273755 613102593 5611825 404596717 109518603 792662947 410185973 183921253 770397415 473562493 542173531 824975939 117377681 341490349 972273743 996218441 702671413 396478423 455608959 837678401 979162953 802781227 831921763 448156411 209255819 227716703 5347645 269688661 50681851 512773555 898852883 798730031 44593639 244497129 508825781 778140531 297175523 793831251 424523455 693046803 541612749 573612485 633719437 954848523 278285511 430018977 942129739 312842589 449100351 256056263 121285863 615544339 632697063 228855211 997248281 886161725 318316735 389741633 630223457 695173881 545908487 883399943 664300553 652649575 375158607 700303619 612692511 332589745 861081703 765811139 427941503 823923723 287161711 257679455 330473925 339698349 7362763 608329333 796351067 161254363 191568677 727622953 488741747 665860829 755977331 46612523 600680449 267352585 844569839 529583795 564949961 748870069 556374049 483598971 525025363 521246535 766186451 78688459 681561581 46628391 743594777 337774451 54737585 961264841 832613199 817653193 417331585 599022501 951465243 622064041 172313857 80907839 881428839 417323131 306806435 893568545 870380137 782544941 372512671 346432987 984223901 163204661 103601143 298639883 314261959 623934095 566059379 259342417 323843059 285737159 786776225 555996247 45229685 964147941 397513691 866526417 924976363 982311043 156566591 996216439 864064055 98648511 728654521 442185485 435619207 836325949 275944695 806072413 448144205 584855085 343175283 745966391 758555207 484962631 876993385 547154553 273223801 411385285 308071397 141779971 285403185 648015217 419373751 186383295 64570111 960863383 230931575 924496545 162718915 860863245 386631813 922069921 997229727 351704373 206478343 527427267 960277505 344504561 559380209 549767697 485596061 974664367 951004409 780229275 497090157 44191849 932789921 257461119 230735033 594432667 150021167 104739549 632460041 519991115 923150003 160168159 39931701 697376009 936869129 209127097 961049431 831033321 555567821 442415011 565031637 168274571 939797353 932534241 402846041 447828755 283943695 876038077 679247833 230570035 418133941 837098633 994538897 202747933 159393307 13813661 258180357 603072401 261930187 294692191 339258625 893584599 451381011 888747577 980165529 174647483 347349007 36520857 580464425 881505685 365434779 152523519 413920087 634325057 606089569 147554025 625054733 924038951 850239441 309449187 295496323 126915381 709409573 51275133 904486961 372282593 617334363 568982869 949738973 319472425 7334971 246451211 227264659 376491155 335735385 38569545 496699559 878514223 289755657 401664963 61904567 418665617 928351085 53479987 779586725 29536473 476414573 448802905 418664607 620482475 546197945 424396031 519677463 920331833 715473865 716296699 912279245 593531701 873673695 641682213 903240641 850753505 658313985 310382943 680802881 642949377 823962881 623392659 405383907 723433955 561431415 833029557 755745409 201994077 610995395 36564927 945296193 956191953 535986955 40147121 96082829 439082273 634846019 960844181 724667673 417621437 293020707 526608001 1294821 283071387 39929639 695031181 861484339 353871929 635946395 345077723 223228045 50201757 171296143 851286167 676911307 977269335 522207963 426148335 287079687 369840763 197557789 180856355 747462055 561806505 825557441 282887793 424765783 16681479 678649075 572532773 370709001 462742593 289099439 250783633 818637819 441704591 100454581 44630799 240408751 779161777 955978891 321417217 373268469 110350315 554995841 426884561 759377121 79392267 210594995 341491443 634591435 122647145 368478205 866711519 656094299 537234657 309814537 328448025 580585085 735000283 118687049 323542315 192670051 554575941 920019441 63088551 716353931 601287317 629788421 17853479 420154041 912476107 917626445 906791501 918698235 716952937 536653911 26598853 318704545 469951361 426830207 185733951 75637323 940639143 970964193 624139125 840183771 761415675 161526119 940317739 701404031 924637731 536619201 544951595 361080747 91663435 175593577 449022791 309040921 45165613 887826075 580437849 345534929 739677187 262690661 937498947 66141723 527388055 688415635 673173745 729910671 778877751 127465919 340922707 885181447 288138421 588107593 225192803 987827369 328719989 226788185 262308133 718701279 595743321 134443999 581802659 168949599 403939537 988047507 622122223 655770405 51475411 479931383 284896035 736649331 799427037 561861713 923397473 661406169 237652727 403858099 70193621 580422953 367716781 69114869 556627375 1591425 459466261 599407029 332273193 290272065 353362639 251039583 823378313 964486939 358482945 958187297 740135957 171710207 864915543 667276531 603347233 197637675 296461323 952548245 730177031 607123747 868252121 223206289 162691369 230832307 865311239 913189431 886261489 448781041 28115299 854461599 625907923 363709493 92222533 309693095 482067529 924277287 316436873 375324153 435782611 169857715 336592281 296321799 483184637 637817101 782705503 919124487 7897689 89426607 187267411 501516281 567313537 967015007 361535603 181855655 842542359 452911403 635316039 395738783 368790215 668275555 331733723 804079165 979590977 238885799 196071365 510094493 72501825 134687705 190902053 529236905 729228935 111964201 577473953 352684561 330207967 413306885 404643943 909739087 780813595 347154735 313457707 568919969 89865493 259715239 448848431 324584209 447317423 256875453 832689975 154823789 528765397 887504131 768037521 392304975 52475255 939101525 224941333 97481751 257189521 447435481 339387937 520133357 410002467 435709433 964512921 375536321 750186809 75920491 326831085 595387469 217886181 98397739 662315285 250680077 390197313 735241341 75889547 421744207 557588337 256037613 998109273 400628255 877166235 830997583 448809739 249837655 128005109 137839041 264592055 554980245 542519225 901856165 157701885 834015813 312756007 527899815 278598403 572725653 552062859 709286077 219465335 405984893 140562743 921754149 529517197 283267263 269608583 319180895 210597127 530756065 158963417 396265785 649805609 44242997 574464411 32732615 662033091 971401683 863256893 888703847 495566121 149298073 721267257 652668093 232068155 666615859 852440597 898752177 859154781 896960269 89970775 225747325 514786431 784905571 25311635 537361305 772710167 793306933 664858723 802212557 93159717 879841353 650195051 189252897 279078955 400090415 690702161 705211885 946416699 525397059 181814219 980571339 911676139 994261153 380194451 855487649 815703639 3565875 215913835 948478105 226359335 142965675 59642907 962802473 974514313 73468799 669045623 774571275 24684339 590691567 946387545 560196167 452001379 629126147 712707237 40416039 244269023 241174927 426406465 802588991 257188341 501755431 193756707 166204011 122494077 297230125 24691013 555357137 743810517 169113545 819895721 816095965 632831969 523648491 426130775 243041345 6003475 568381773 758678371 643293435 635412317 110992493 477394663 677415759 765843265 286181781 869473799 32937417 576123073 572035539 157533929 891873853 249729135 644219393 35195589 436945097 879918689 922191807 694827215 902759631 349456179 849941107 428149071 798327291 873521933 874821713 540784267 812690757 660835485 408351057 336477655 561992677 915349017 378072625 352251535 571153505 868665919 266170745 102374161 534948743 637671253 912067195 539780555 282335079 885557291 385634383 167314477 373078113 532976917 356890835 409685427 274468377 340289267 92221875 16488157 66741369 820559913 653483869 37959737 941509813 911809447 321763337 261167957 578775117 859324901 446054583 832063949 877824003 661000157 527307825 782860357 934483169 923569177 338720775 804811109 250418495 934995877 401316241 938394335 398319543 594442521 394300141 556227183 897501743 223013777 876210183 698039509 596133073 521467829 541446539 632312031 689265939 358960819 72218101 670271067 679839409 86459713 512563843 566339365 338757807 915846813 962299967 89242657 55627353 570230157 183015161 91752503 608453699 4385121 404665415 332083545 878893897 804885741 681887371 800930179 470416273 892669329 941228525 214336437 284820359 482726451 633758559 63704317 657942237 697584191 475568535 283315049 349212561 166928047 229029397 808629013 512491751 899589373 671943713 196791589 274300013 32538163 240555983 243866817 396877555 728100829 748736243 259175451 757078425 448894739 461212207 88790895 567341249 884148593 62009323 533980159 9551641 470624287 663281495 366942995 48218259 795153611 336860011 354693375 8868719 530859691 226117609 46135327 414405933 567778173 78167129 905018833 13969821 486413449 257939721 861646723 465878479 636985755 403845651 184136103 792758051 218167817 658925653 645339827 999836733 810847155 83677307 936681519 467405319 553465853 168025587 256879009 119103671 10489561 907562485 853356959 87946441 194007481 831972995 945993919 807785471 906757791 636931427 37774503 251298409 442260751 583076647 668334847 546671961 807747863 529903655 221062265 506732139 530747471 185288577 517376977 729522309 370921683 238142497 992748745 610636497 222107725 104702389 396017449 117889479 266779367 450720181 830525895 911209503 29398617 789571681 355782521 771154909 109250273 880744899 381177381 102236499 551575109 511776939 652510131 273336335 52853461 750495663 177187093 341816303 262445157 484325425 973002055 550509593 741637973 857620827 145798219 518702585 162806667 599970073 370791465 326703683 683168117 360421159 526191607 890893809 291157767 934910979 980442827 222548809 834642115 561830903 712810699 167998679 619292333 650637841 155209247 242925169 992041299 257020717 807619065 664276017 155566285 245420775 371962261 834212219 716409271 232759977 723255605 742731773 467246651 809245347 879606051 303999147 949390595 834513615 467468463 814070463 114229319 211723755 260159799 876710593 405655749 526823039 949647641 921089401 356167877 909029343 941097667 758017791 108773649 865515295 502121895 815587245 230647813 599759903 167667517 217803561 830671483 895893643 156315657 157347677 666596571 30699729 47762067 12449663 903135249 655425323 135791729 483721995 452165783 532549783 888502585 185453765 859528553 636649437 769307025 818068921 998250253 354274447 485661217 839517243 853651089 895733253 698634397 868610791 505832589 373658205 336459453 932936099 836684317 167630723 164287301 925198491 929486827 524907557 676990205 346986305 558762785 294920891 393994171 136885587 895649911 411736199 531522901 150255573 173923115 471634575 824256177 61618707 563603461 686002851 657399991 403367075 909971537 452140639 899662683 542547549 738219237 956276767 18650261 430934379 891783969 442234895 142372201 59571251 517295595 984680733 139146463 334996079 892890801 160451585 404788493 56490519 377961577 327839803 504676873 449399923 246690959 94377237 956013817 379444491 413653549 556861597 915528965 838295735 257093841 300870319 585356385 722004113 242652559 250452967 659468613 972723965 201890309 612471471 716911349 79158953 362952029 238999609 877030585 334745993 571500865 603158393 337129191 977450969 356250857 686239795 513011671 579296029 82618901 622297583 899871467 225645855 881699847 649741051 338972557 761304823 698093713 110665587 140409903 673559553 404115209 611831347 979710799 436018909 589698891 187168229 181365353 627914365 524097215 42534905 986544909 44549393 660207955 183535527 415475147 539722519 485104251 30022385 435653947 35848275 776205369 960389023 565373699 691286737 900538897 567331903 246181067 634577381 901151763 941744939 916881735 102313259 725476307 239885697 455336751 492172681 158389105 2610733 524003911 592334891 514853521 126379229 679236185 200746371 956365155 838214411 554736183 715483217 889083295 854625011 138299065 682958485 884301183 524395681 214369733 796143261 34128589 510448869 886362435 771363327 265859541 534060119 223473191 960511637 530915437 515952215 819928937 785154435 318970613 652527115 23554317 683039799 525776723 299992935 783114013 248220003 950617589 398686241 610493099 599952903 396099281 797632699 277900495 604283491 378759781 223961467 590863279 599344391 213665975 507125105 645333365 342752197 488264791 628342137 404298063 260961977 693096793 405414703 534012541 667321161 336499805 151281661 333243197 37435679 445863303 172323349 405262809 967848753 692589447 854840173 324593575 570101433 309508245 694781637 693043199 520826431 132669803 216820903 488928579 78041741 560143443 350370913 698474461 114198455 484417049 772878607 359969089 69428251 436009237 5733005 495735015 409407321 115179555 609118853 180998995 223409507 987337131 702092647 112973071 686980969 707248795 913737069 503956909 215285993 141929321 657051029 299898565 63922855 921207059 708179111 750892797 941576623 29160991 977011255 246707455 841271383 566435741 826554265 998156409 176452407 474331169 936577775 292040491 845918777 74187979 598883361 663488979 973661571 400907327 889678303 276666173 246424719 92916143 385777313 816426809 714992405 75803085 898595753 723069861 743602717 767161819 717840381 137750881 789435119 504617115 786271087 189651289 497586211 915939169 703250839 221979003 317821075 3052285 130105557 819858375 485706339 934903507 460362575 11711803 347292161 63960005 827844601 842198243 720403745 649399107 722386315 580598993 610691519 50035779 604730241 411467549 141123357 501599299 361068839 527418093 894401739 864749641 500093581 801790827 589213595 219267045 664892299 512230599 840361641 318319147 302433983 584592187 514972763 175505083 116235925 179382795 195661659 737548985 173702713 279669889 316382623 953138135 801084583 590912751 743389027 739076935 507689375 128449455 394963499 933067 912190631 910787107 800705987 141216679 137937423 113059253 352484671 92707753 198399475 364113113 969723389 569948201 698727727 103162377 781316767 727819011 857898093 466933957 782244369 460986271 667634463 529574041 622579851 336485355 883514489 527539223 184262789 208409949 835952767 856813527 5266373 497188339 175832825 866253185 497040471 700503861 700238455 629308601 500441489 755997487 867656527 651316789 465010445 296680311 788844707 933135021 665072559 112231981 200572251 489838565 798372005 50192117 667629863 911554471 846443105 942649345 971131265 51720389 893814691 264531203 219617959 490782745 911006315 213090365 543613089 911609733 846888713 970077043 651801153 469758197 938274063 898626291 648732703 992225625 939902553 52164245 573117851 703975851 871434251 965831863 289193949 483811313 226221459 663560509 407888597 957849137 696398757 116277399 23552059 594709373 802251069 191781051 719290513 291768563 283268767 264387623 602487325 819792565 518409303 249775331 925834737 667123945 110868537 262958969 273254629 64021189 86134369 311112709 214736535 748163971 305695285 704877857 663146099 549756259 701358943 518455029 590397095 154229937 916800727 46209581 693298987 824898239 207424981 601879299 302078143 696960231 761197791 486859825 622593005 530583947 265907905 389762049 207274501 578677527 218687887 360798017 644081183 897472763 222687143 692132933 186747417 121282737 433331883 834795499 401820573 834212029 226871945 837900955 226552093 93133225 71151219 597139781 464582351 655791367 5847015 287360603 941008819 307783281 796046763 303377117 15853715 385903755 221585095 759811411 145925885 372270075 83839379 694640839 748409421 462175863 950421673 216708565 565785759 740840377 733126637 872081815 441011165 140063361 566039437 647534261 618602167 903950235 747437309 142514779 707730855 211802329 120753655 955392835 19609579 857269781 599690115 23350953 221837453 173180979 113743595 138142035 181518683 409039897 437370563 827068559 572118511 372645821 933591527 40624437 877464745 221353753 121404027 813968547 448227761 997645101 505459951 461971389 239547895 76545285 338339059 606190579 958680117 217941171 564412037 280395323 222216679 629670481 724895465 643515925 690018395 279304451 220773289 110969987 385949597 140739567 994444703 991867671 983636871 821244237 331192289 691860199 761008311 600090961 963187927 431228815 476852121 587877697 99753261 290866231 925465947 41289321 890727637 86223499 482884341 456129815 923427853 516114885 419147817 466988967 574531161 480892833 892164733 363092859 98839943 982430565 557696579 80252927 532528807 150481121 660336531 716313507 248862489 55074153 84000587 321898211 784760191 647462107 813100567 870610751 803020999 595527329 655105891 243862595 214598437 763971749 584043627 73548929 373735699 919145567 564812079 748402325 394029143 957620175 445305717 111230493 25501439 420277879 444000717 300019911 296181341 145750121 669901459 183062339 112993293 278110011 38172387 446423115 758148339 291055369 171025319 348090277 673497149 647800699 114003089 483041559 80257119 29217471 719673623 257986421 913735189 920813193 585007481 357631385 880008547 264043291 536310207 290676583 928353939 580052539 207069373 792417991 754665789 917146163 136399623 372087979 188906813 814607581 352679423 741395469 521250741 375051927 518388941 145987827 65704465 142011717 480988003 297038179 39816967 160310105 719454581 369327729 990304147 981848773 765549447 821142329 160688121 781682185 162345441 151775193 827410117 629038893 514590609 887733887 616873933 665675965 123262833 332937819 17343273 581794001 840005409 141135017 152842817 630079493 790184967 953724329 625109697 627037825 864882263 731553191 423427483 599031539 760095753 552526839 932892175 573240721 535901659 116735983 775411357 937352985 346347605 644583411 234413587 379914193 136716489 966483567 850148999 938333321 519279183 929310931 792821331 775023509 431496389 459005595 843846427 482607571 127590359 706596937 70658253 367760301 559200243 484756069 951663773 749118477 212782929 598849155 917296647 880277869 661985009 150399551 616782285 435103431 558587805 998837815 275529983 824981669 196245733 773717273 33859055 771915795 300624929 263390357 769111865 313891753 900120431 347253863 620164289 19029123 160332475 966294351 117126839 485450569 439681201 566884379 420218507 141786409 279392717 811014297 591675899 505003737 788449101 277460133 128336393 352581015 469624891 902006051 909554181 390767657 265163367 65062139 928103553 779601887 797683559 253281823 667724379 105117581 157211549 927235723 735551413 652381331 984431921 53140289 490866939 752944597 940592917 202977097 162548197 426171589 502177279 382070967 659498603 698703957 669757807 707133863 327129555 61431815 263417517 99454263 291073449 92315359 336425421 199425173 318692545 684632171 166185635 883502065 952600633 441342915 516074961 830595463 365210741 88552579 365003711 156361369 251059741 560297939 748737437 374982255 575784235 301646177 635312739 691693407 425991127 705860195 484389843 62843327 161077161 302580375 521944437 510121205 950398057 655227205 567672727 234265191 685269295 464126007 214723667 366326925 130147157 412870345 848913031 740001245 276175231 33054419 24649439 375952345 682829981 963019201 362776777 64027663 442673885 160572287 766494077 535313165 170204353 815530369 346096893 679200113 952771595 649248713 895042319 940277465 334468293 143288795 656168517 239897843 84566087 64757189 75962103 29528689 334578221 756579615 248445507 229366793 363009881 154215941 917673749 854919555 12615927 488056863 725748507 531318951 487617405 700929947 320150989 459579461 72287655 974662703 466586475 71943993 975854457 509933595 406254591 246514023 176930111 188077857 161283673 562586295 641670285 319387027 353839375 98672157 165430593 168249157 306577795 394965137 467049597 382015639 824875231 356853781 889092527 829206895 104078607 820732599 967969161 316899385 627384783 303027589 795550985 721984239 347092893 343379357 339025525 851747853 34065603 568908061 239999573 587349401 97580111 302765107 431154815 856784929 194567453 295641617 933369105 19805117 304465609 775216111 182348655 243064585 570523325 212279311 768929091 826056237 722222377 429578431 251163009 142642649 498917895 329694541 783753065 849516607 842531349 83468055 352419707 676727839 876156891 127360637 74402951 306573759 431140013 833315305 117200031 851330031 803848095 748353741 99686431 683693317 853046929 713327269 516137645 395659741 526770991 156549107 487203379 857778909 469607911 112804161 675373543 832750327 216259315 469063199 371607877 965563039 742046033 325149227 750266127 699985617 350702025 682833411 961311317 723608599 268609005 460670037 888951145 235230591 128895253 744165587 211459305 118460829 513373023 214703925 733049527 276303759 648637111 351509055 212892927 262270975 555477963 72277177 626197817 198083095 264322323 503017593 14908189 988405391 282393553 485483351 470343089 17936037 791776523 782915635 411958337 233109281 355650707 783421435 106665313 743811919 414815231 603436193 909007343 153964037 854118323 431332381 695889421 587443875 92010963 208330099 131993641 211427343 107379539 140928427 77629431 753009591 70418153 44577499 108458353 328464527 799906325 640659227 44455901 199526937 99882017 132682635 498552009 349608281 767320859 351300955 267195141 729720799 446437599 846899895 703155633 577393855 203578889 378484701 380248369 289905047 65752835 516739087 939606063 57974161 893170431 242281623 219510945 381374039 21296881 722728389 647351489 960768801 52843677 96236535 937700375 250939821 836912523 853200525 545812077 273648963 513201161 685136113 54175959 888526255 484634675 969811863 652193969 37657161 539363557 329610999 355978401 292473581 69759177 127145621 364273041 421628163 92465487 235059705 788512695 706877559 337708463 471805369 756579215 558912707 244256747 674203245 719907549 505862627 726935499 309764535 21690285 853272413 300075997 196153153 488516435 692097345 478913659 905795005 359059821 461014307 417248963 443553257 640456413 114717985 349048225 373333889 911350481 26447589 108134083 992774741 94487483 866612377 323765155 729260853 967231577 306315765 84017277 893353723 504323247 943903545 252489055 981426567 36988171 950081063 586295571 595798217 820692221 655936785 913357879 384894893 138816101 917183949 171520041 156425011 781156965 725428407 340933135 230932311 264715371 345912759 45172701 417040425 261071147 91438395 622329161 182428345 11567007 171773753 970463445 143641633 370337295 469840943 303331527 899369091 258052869 242831907 544522799 74475017 283221587 839723429 108709865 173255655 473213977 833135817 575352209 801912661 517883835 706768429 117057169 631651479 802952931 283270651 464962843 468072951 733517959 30288093 821100837 645715653 88049123 708667149 824357743 637599839 559916411 399855941 854079107 514307365 245839387 870123471 437558191 990651265 979059159 106846071 39073807 5159143 951874315 719377557 20063615 794047183 595982685 711887877 73700777 490973629 859472055 282145839 303447805 79474747 209539153 70220801 580021 649475035 892638115 240134129 908669135 376472631 911496563 752832765 601792275 9221105 547237581 897113515 28541461 890815411 996822533 134427401 493293353 691920689 515967929 446124977 135446129 673521187 38708171 538696379 702541781 503871309 628556905 28860627 255376389 255012729 415611141 680928547 720980857 765538425 398446943 191861349 25281907 900678183 506532471 835120083 645738745 872408421 446325149 347183159 766631389 979549981 509181281 901816029 893779383 400728899 466561699 26828445 197975783 112716751 59852679 959264979 560247701 492184005 36505207 805292647 261325999 507059247 118267175 415103175 857628915 166848799 824655255 34122985 911774683 533451439 174805257 654461003 882733235 351810049 546213127 467697141 951060875 837876799 165594217 462614385 653707323 996750237 401900107 214917595 334165857 564007507 287911693 560390859 990146921 788146085 266853217 247547245 183632767 231768285 810914615 771461485 727693983 443513933 676487885 294884351 689413769 605524047 897837989 451414757 417540291 620123205 605539215 372690787 144000413 272382363 793570719 292465479 279380787 711833279 974466861 307528679 866399841 741129265 274672353 806207781 781171665 593813871 961126311 241435235 523260149 477128709 294860209 846537105 280187649 141349509 145282429 402424869 770300923 207361417 635665103 364571165 329115557 4954803 915455925 868438785 153505941 935921581 760394623 588637915 176658207 585142059 945758157 703972679 425906277 108701159 943549825 668755551 320682831 325429665 995348425 79160265 133118349 910200357 496907545 407700919 297123993 377862725 546482731 429081563 454222513 230960859 801663239 913770615 189462493 106620873 5343733 595698511 497947375 745589497 953670797 911273649 972349567 161986399 448038569 346711669 900576749 735385077 907143535 175971063 52455521 360938683 420470345 896529441 989159883 481500605 798210541 63472221 175577059 452210701 621177687 33288099 137408811 304970437 726569673 423071857 421933545 560107527 955647187 895329997 189773615 403121661 924015943 982529351 912702933 886253531 696213571 480784373 476525433 590599899 714616103 848212851 28406151 844394813 338295205 688935399 850359341 915897677 883771565 749617155 381013347 279189597 473651069 532043259 847892969 746996167 666895513 525060235 458223177 408054765 449150669 252150781 479226323 254831931 904769071 34363167 610816927 958019361 448768279 816384579 785977227 700179737 438609709 523762765 659151681 974323113 451155037 668113823 741485875 704834903 851374555 596073769 115757463 821449143 143167777 265065825 55368045 886810723 984520949 32157511 117757311 566243837 191381093 79215453 486587227 688495921 676284353 251837621 70325853 824508847 211933097 875208677 969915553 322233137 884348417 134000649 194321425 888578683 20063987 478195655 72237405 997900889 920377843 43036241 724122879 102253209 870248641 835081819 365326901 939094807 319027293 343288611 392897545 465941173 889581079 519283567 437297737 645600863 632956033 518921357 28771983 580327429 200178807 855673173 403854651 660835233 316372511 259545893 853055605 651097655 983241187 453935841 609644333 776160979 759680377 862760953 621199901 206540675 90572509 535244131 50521281 987995747 465680723 114234015 661399143 797783701 77151847 323728047 95023387 809121093 79552237 122114341 52705975 847398563 398789635 249509655 652920793 865030377 706804747 88313889 694181613 388040541 2867633 995546475 790010657 380976453 28695789 180134561 248757101 705876725 30863351 936220413 253695891 718276295 586040917 333796923 928995097 327966751 970884051 472008609 16087121 993138275 498310023 526375677 732203347 913985545 675876041 833511847 116284157 381547915 842911299 207879037 356848123 894603881 186481371 215902691 697342905 120264239 384744139 994923723 891324787 418154353 400293515 343738791 79743273 849989829 260676067 974841975 533259937 177837007 554835675 328978115 330221675 102545979 353863371 348108951 712700131 807435961 804009293 30058891 671590693 872464389 383448391 754563515 242237979 260794847 360917987 447043279 317164407 475854355 901396375 177354995 592045231 83830131 998421277 328436193 708059651 719886043 944143485 919832021 236450685 71234089 587305985 446350485 178771947 552795979 382313789 152178289 583997927 659499825 783116813 716867901 441136337 118690007 28600727 698093401 721507281 767453245 575560007 806923433 144930009 568157039 10475983 545035165 363758493 463388545 17616941 471727149 745022113 77949833 311165605 932441299 635909677 925620139 476492739 879675289 233350479 808374291 24369499 813870859 258900193 202077169 601794443 917129537 595967107 18083969 376257973 867170519 868268955 412610051 516095367 137069045 801704031 487924421 916503539 990198601 309710017 504983573 218959415 53545735 426722693 776373583 452175577 322769905 232804657 249164503 426396833 788848205 994221847 812823315 504420773 346039013 381623887 752596859 819636803 202207763 630647479 998422403 780416543 66309813 618330107 109120947 886024483 925167921 579310217 526821521 919524995 47146099 435734169 94215091 905937343 612319987 829852971 776091311 95976345 999410097 917846793 420336681 702343963 56697137 339084227 977334477 934954141 102281857 810102449 406378059 119441593 267296313 957365233 686788703 246619989 610892661 831787887 508385739 103954587 407530205 35808727 400734039 21475841 580188063 312694693 366375639 499247939 930074737 857179671 446773799 448560485 63245457 820997687 935247909 457202099 357684933 362299349 221793215 485118657 643251293 431450247 495339237 809086827 927065645 612740783 940827539 933635031 635036565 39688823 568883403 931253361 231357305 174882507 400773525 337613035 389359947 466552423 919631877 60381507 562279933 555108553 473946679 404606141 221380881 108724025 998780745 735693543 847910795 161670091 292096617 404686993 508679929 633102419 289841097 933543643 551501427 291236211 387355041 797607463 573308821 509137299 101493555 899983139 101947783 157918691 944422859 632351169 227977719 352342363 608752061 689563713 534630427 521275837 378018655 946105379 530684849 513130129 861421591 13176631 913238527 799412773 11193677 802757261 274719445 572646547 136821107 36188549 219445127 681063097 456625413 552005315 753019381 660342595 95784837 634155825 951435141 983838623 20889723 820185349 521945123 193470725 235517563 894459067 571282761 432994679 400311329 314696213 219659507 348245691 749040395 547645731 488396453 759322467 368332007 872671543 227439731 655875015 841061991 643492333 216809967 946820869 249666115 682676267 803631927 718649353 285537341 464448797 462476787 231305345 928146467 374997813 393334353 395883493 713351875 281574193 693106183 492235893 674399483 918885141 15005011 608004667 580549801 349666605 157931517 154779143 126823867 590264589 767855185 116378735 644545315 253515921 948762149 247399125 331185113 18813665 698286041 724531811 837781983 78184803 737435475 288436997 148549955 427827921 580650751 877881975 266326291 544134691 133495511 625349431 921108589 67074975 481121621 137414031 788343665 33932753 601838723 220289679 985595465 986096783 876315887 354668813 126239271 490099699 817876139 677770411 658396231 478653793 355127899 275115217 804731115 197312647 732577313 236606895 218436187 85800537 824277165 753651519 887249901 12783121 470204469 548105791 179663607 835623479 497304441 755520823 785559007 938943893 588061371 705388411 847415565 718060605 707678925 648550431 432736757 224801425 36899843 507607299 883407887 696794159 786399037 52689363 414802909 18391815 896239841 777658109 462147565 371115085 475202013 892035259 824111053 15244669 778267301 746384395 822373659 241175387 327885371 318127029 5547639 59902707 79470371 208285515 167226507 562646681 864667245 70128677 369075465 8596201 836522155 802500705 322099629 303473097 403293441 347196907 134687545 606149989 205902353 770015601 131874935 141958959 389945099 592263019 137583415 543629541 721780903 298968347 966093655 157810059 59376671 451779463 660824503 686025325 404108347 170865281 375253825 393715745 355791947 516756895 576036327 753622913 778581797 430255429 26665381 240351409 42416677 315386775 478003581 438908959 632510003 973906313 231175801 97773949 260887739 832075729 839779497 77503689 9325239 870283247 678828587 680405833 590159779 5461805 900918303 225871493 852687493 979125657 701680047 267599189 95894763 100485391 983714573 775907027 352812013 896354347 984335479 120245091 600255273 431887191 131516201 379138997 539407811 488055237 505073267 190688183 839923565 872039017 310164133 820924843 133806937 972496135 797360663 472941331 6138695 865924903 532155951 53763001 800631935 670740759 280067157 833024693 783617229 135595251 957804797 456018787 660950919 938063255 859420319 752902243 480864397 169587629 930725055 249010855 586856261 396376741 353952487 555467359 949101469 985148343 124545959 52183049 197893899 486698725 386025373 829361001 783787405 816431607 186676329 784343179 302562985 945122171 452623797 540971715 335665773 290051019 783298101 524929965 914957425 679582215 263447713 713843761 970902227 250641685 435311805 882290549 861605177 12751017 594701393 544907251 424991183 271137851 20874291 884493923 263994445 28673031 686006075 632899275 694247667 815492123 689388875 209373559 867540867 389500737 674444877 759010813 410567759 312712215 321135925 849426999 127146797 76407291 316099323 302181193 896425593 144854547 958067619 978289313 949228059 609055827 921127223 251844851 7583873 295707249 979515079 535286073 930182049 185651439 690714481 147585977 994326009 793231379 718393173 62811905 161116559 270842093 659110557 960070883 804659953 173622873 331351677 601363323 381222967 811046899 524596269 96519727 37088255 543969573 728150001 164921513 674718831 528275489 128502291 86283743 637483571 943994589 306539493 493947149 631085443 825730073 397584063 186678453 143809823 310951007 653418247 978697127 750447435 901746429 930100007 286007797 66222805 682769167 690420365 774599677 833063443 397846129 6872761 95657825 964931047 447865037 419566633 841491469 946755251 444340371 363985255 405859127 682570597 560246781 956246537 195151451 731445367 433157641 551269287 805638205 934974181 949556607 104574691 372831721 99810103 420313587 277927015 337469365 809241207 950943417 343498727 949328955 969701183 956073459 479415579 92495711 276585645 309228425 616043719 304128845 435030887 994642475 597313461 412650365 993833625 282773073 464708535 73014183 858018045 696146749 727620263 228316371 829071309 333996021 500471655 703165513 381993427 238270539 203099873 666048673 340476507 295937495 841462025 733701301 51188285 327682809 440386519 116346537 444115157 439440345 158402639 235749611 556111115 829879653 275264379 975565615 116082765 872078939 798963565 246469489 63659921 946716725 276952127 611345651 687822421 816034879 518440211 672052549 374395295 430084745 362093843 705741625 610476287 245139691 245829747 115958251 168620425 589190659 77008749 794794433 914663133 364131389 569377089 262645093 872367137 916071621 352156475 994459341 571852545 196449943 754853291 764457013 899796151 363427699 585763567 700965665 258763005 348951775 300861543 995229021 1055517 391086891 928970623 293451773 912948965 541144179 902023847 635810399 568508839 19694995 401374809 228046629 573204295 778949429 191881753 694840123 544249639 44445899 162456433 883866841 350512951 379772809 223193331 597698679 278006509 882778997 501486905 55682011 955823687 747310673 17057765 233168657 250728139 496831667 173018275 322937199 335329929 804810479 466924065 817911951 947913493 642878503 624250655 140796245 152842895 953318211 412872027 602088687 322170013 724626419 919472289 368275407 844484461 385648049 358652867 527159477 895319731 474245819 384211355 963413921 116604593 232931097 649353739 153007843 995537707 29693341 30365951 971854349 625974895 341690079 532383077 621636347 979772501 3107903 593382461 752674513 694550841 979665637 412635525 864881405 627872515 922590401 493682505 843229235 796616225 108858763 157461659 395259247 545028747 169169349 921297557 266138357 761867963 776000949 883692889 427346257 9354937 311556717 771114771 298465367 67729173 373044933 898928371 356031523 209133027 540505691 906978355 95807003 541375427 764104347 727301911 759922665 225741019 915580339 217827817 293230213 18255321 656984475 1978363 2133287 488645361 637404947 268591783 195697237 772359397 148753573 787245137 376998619 609596409 97717665 729733471 38415565 603668731 393044767 405372743 879198345 36747843 285709053 49516419 822888369 274520239 356113125 419362963 150956083 444876451 640196425 533572867 221689153 845219087 420781663 803343973 59483225 903520873 674479399 586642515 315933249 129781169 757986411 637532527 280818177 773241705 167841209 684753509 409661425 640141475 610668141 747261669 302363307 106712051 743535779 679070377 852576275 539734137 660819525 99336823 865133655 119763675 945323523 960516885 907476715 125224519 939706967 712981591 116076425 339153779 868617343 349733399 283181881 22198171 790003589 320751927 465249093 588488073 464677687 568076451 580523073 553334923 86092079 318534219 270597385 208719221 830877133 981263401 130251715 432621477 698153273 107451203 402360537 4268549 961311843 569898655 158018049 737125375 217556997 526459473 210872631 374805643 619706267 142422131 366291391 165464359 430337139 583016487 429142821 390968539 143287961 482805401 215177277 161817907 163204583 410797049 365277219 157103941 347285755 175626883 552698173 455811249 633041472 472930167 442444343 709292189 614113511 255218721 673410307 463862455 10994661 895434451 339368927 640755253 914776829 971586023 665381967 178876117 569385397 674824897 49027617 425401821 356933727 526144199 961023589 74327323 864541971 383710321 395967099 662971879 103900847 940969523 449576709 124187679 177041887 218306965 396546289 598248743 382553103 955547165 949260403 234190063 96099963 848119391 205255173 440650479 617215267 59948277 694243181 106668833 94436813 313979777 555069113 44187919 899249929 144991663 922762043 31529669 815207219 124583983 763716239 782088665 184928103 131731389 615671705 739177579 238598799 698650137 380748167 925677089 133925981 946346769 832722125 357489961 922659911 86817651 938930727 724560697 671622797 26456091 878378393 583675023 232557369 890752747 338324845 605279473 779252505 657229263 633014589 591570607 378372295 677918135 690563295 346818461 576121251 891816351 155116923 268479001 301813461 972153735 558395515 71368717 149741647 50730365 113797269 420822499 405263813 413761679 298389189 903248275 894358971 664743897 747537743 405022621 282805881 460041599 922804927 351977477 673365773 250589607 93474539 756259673 496968785 987647879 594884075 426063279 465425893 613192793 852291367 417709481 800076591 644944991 425201227 349367145 42662501 882969569 401947211 407136157 34973049 400436275 536590945 638339199 37695791 710433455 772412691 344992459 12461069 498193337 887205677 782358215 161780069 833556409 477055173 833476419 252193359 833969697 709873205 386300051 551773865 748114541 36246305 111232407 823563807 967176477 291406711 101390515 102821663 780466879 977716331 272631513 811121633 695038177 93753721 18458235 540309861 239657759 739163491 944862363 645308533 661065245 833957689 687849917 278120609 22182529 498651469 733742831 61036865 296301059 489017915 389796551 706703475 428184153 101344231 372772967 591396899 559454789 256236161 338012273 971627773 772766355 108647801 821836821 673560445 7235863 863627405 38750215 161170145 148038055 865398975 601124747 849040435 825271081 220581215 83355489 316426051 481508483 856079103 144166105 588502951 120373165 894967421 117885645 92121537 846307485 702185467 135856789 231441851 10263637 447811045 930612509 231216769 147762145 111789555 108115409 302790351 229734741 196433949 5086117 760156195 85802695 435026345 955315739 933537733 184892253 981933603 173526581 322690505 173590079 603848801 582764423 205459459 452325279 664301435 59185953 493198613 786266041 754840539 656233639 341961063 539127757 571588647 421264699 987878441 519237929 178204249 818222733 444639827 572780059 245595305 688222675 883744167 700542721 662059167 150051531 509544877 400290617 948486659 986412731 710809779 968277041 310569453 53890419 445602515 183821913 87805367 880050247 713641707 75199533 689016325 541349143 939230119 117693231 249692615 516298569 680541301 603070695 515928363 600511177 167777933 323858411 369575603 564976913 833060849 430738129 868087329 819955227 476956775 278729023 129923969 917619569 262717569 620993245 425809959 551786273 610038423 425824861 963702191 705873597 690443719 581370491 863253759 433015913 722716413 720700665 275890497 156509127 113428455 434513311 366401771 761911047 790376957 942149443 799183545 840718303 159191423 327284923 786276527 138585229 809135735 210619885 582647577 223252697 465933749 704977089 15386507 558113549 991038927 86919209 577997795 831079173 910244391 807352097 214221635 365610267 310131687 876444587 888646937 110135605 377246971 105234383 254993431 905897413 297293599 549754531 239484731 614340797 384432849 19978045 25386699 388133535 807545947 691364803 64276815 986191727 203051213 525796957 997444255 172832187 814385917 234380861 209370835 509020571 341197965 189404319 822544725 630737837 823185125 170805701 963723725 772823061 949008437 549447161 37557039 147990403 355335287 756788363 917043387 967919661 785924713 937053401 377671409 726181585 943309971 335487297 581467809 947684279 49232969 46679089 562308061 61846955 987671199 222385947 327663873 202813187 561898359 568919415 462681523 714201759 502575223 734445513 718386653 800652517 684633621 891972249 453455541 15818947 452043395 729604477 862147511 963864749 145254085 30311435 151228837 435711397 878634401 281868009 852492687 664652335 803805353 322429631 414589383 899423065 970338613 484232001 709796075 894643131 91261795 271877671 498364637 10925171 434448159 408188467 505103305 160499749 229422359 204240435 869617959 871954433 540945347 207806453 294700719 772853949 784258149 226980695 257980775 962108825 864274947 24995641 106343579 278908759 23976559 463039109 481360095 345071433 450568511 640346413 317679889 398976069 548465367 680596271 402352467 842372519 75898715 670408071 932727827 562995287 658719679 601070917 803437829 766660033 499137721 423617657 497620003 710150367 524624329 416051003 945813171 293954861 126725689 440262833 45755459 797093297 577518103 309851139 489009571 567304697 448528703 610194789 674456051 267825949 634254413 33899791 502126487 330252987 217650091 721955909 312510777 671664119 129745035 768603215 199525071 140009601 522141153 516020099 773348501 7697297 172034931 145396281 496690701 458296033 936959171 360032721 376062727 949380027 589561383 327751611 590078101 378416107 211404723 860994659 661957139 97051335 66710089 148612167 179955751 255160879 784940177 365346025 749157819 888711561 903085051 989660115 558489349 311886019 634823103 761660823 235912833 325890899 736976863 422213325 518605811 512458551 649040419 770653467 47507303 278381045 692780313 942687273 306764849 507838363 775805211 218012331 28610031 1357761 907232073 567415129 477001603 969442949 37310089 855587831 866124827 741019531 922220175 163085391 787676201 698719493 562595539 950714161 188664427 427146405 819470225 30205307 254716133 889575595 75265751 414750989 44417509 787858655 603286383 11739089 773034747 499813773 864917495 824953531 584914439 558730381 534582733 563876035 775750187 276927035 108280855 732943341 976242389 677982847 925395657 807131203 949123769 360725447 83556761 964588757 154332883 170038791 288145161 336045761 494466917 549182401 638368607 838500391 417520895 462782715 741712811 892167985 933310833 34954815 89049289 523106579 160574685 578010023 88361557 929329925 562898081 665476561 388023739 633708875 68220525 146856161 138740007 869687855 16557365 667872137 390207637 403074307 784575029 478455291 865927875 70854433 452462065 43458297 545700923 377757931 283118389 358234309 830197835 571063499 677014549 27984433 803620367 22615605 674335981 450378643 257154915 845352609 381144931 594659271 701173233 640604307 367137635 889259317 342946857 582815381 519142943 499430603 781130821 423258167 980406549 459252991 599122243 764872471 460553481 459601103 690154477 342137813 807195399 996833473 663211985 305010461 647393635 808591333 630278729 112030365 857020091 869620943 949194101 83720725 732784369 380613791 529829181 295399491 810576435 489854459 39723601 481193971 23983605 949106191 683169577 404948725 609831409 350323091 993866503 268615975 64857901 952486855 375112945 469336425 30751991 870720879 863322297 609032359 245282271 831080409 994317815 777127119 711226053 333352925 682490123 217534945 61622733 914872023 172056093 208738523 597949793 200408495 497384987 38509769 691269429 392921043 451560899 810680251 239296329 487618105 183603343 618704847 329756383 279104095 186134475 36019237 866851713 407831883 31958919 616085481 978774535 174027917 744321435 943153483 57509261 270336313 483562661 671436933 326957683 435633903 394264337 273723611 88752491 647251157 767558667 204424599 758012005 427554455 454491791 360617739 282473887 105247599 786251357 897666449 304925341 832544535 274824955 385334923 425508137 33686745 936332985 987323747 404607069 529217153 352705459 332439693 641256335 304598375 178158789 253307009 434726247 907939687 509256345 93744837 31312593 238359531 581035681 840004317 312227327 294951133 391751697 741931361 949862767 938867125 272632559 290796777 138303719 933303409 551095037 357489431 509402735 296445591 280263889 378272151 532059485 312316471 802948287 656760089 620737359 173638373 840752617 242757719 841609511 687378113 9294135 967105813 808731155 799400817 353312857 897962781 995703431 601628449 648648905 625807681 377369917 499104139 401528005 45380187 52605501 105516777 587094101 616302669 491316687 51328261 340326475 863710979 410623883 552398893 590062399 315276141 662817611 58824757 184680081 533854341 314905653 196732283 704748393 755932239 301870003 720494567 842447287 275068117 918888571 216614887 377554227 484390697 287587721 414624625 69586015 87359077 870477599 116977413 258696577 230412971 157536717 505216165 756879275 102237735 204292965 981531875 210697141 156631561 410808837 745848275 562409277 284304267 250086159 721355285 525872047 739130099 902082607 843539919 332342585 653736583 485401179 365558701 388412371 149525915 208754383 992994793 657774141 521399177 928634895 737740095 130916609 439137971 825758951 628255733 269627759 587307395 851532141 83965145 988879007 796068717 51736569 966282307 983886447 308574699 178497075 636586769 461379209 32064893 113879559 306479015 541887839 315274927 964017321 991184117 900673319 369379091 713915283 627012465 398032097 638310979 743723403 707834905 156633943 913991907 518994335 841734517 58391 787693465 768666143 667201169 850537597 979508763 602196907 735779843 727829157 194386979 363313191 832227051 481961081 759207025 560746941 442674671 478631595 559358417 675044321 657254973 436816303 645578261 429888083 863275657 91512521 171981079 228954133 544074261 825787137 475457465 952692337 906914725 146950693 925198055 257679359 60038793 787382223 829252753 556964249 366021525 31347295 67623091 619663205 978230311 527066621 504824397 364528077 6000423 677533081 358492267 351425671 279932421 631520749 682265887 938661263 908817331 804846199 959105667 596187689 663534513 312441471 754292667 590267361 195931399 326050839 915042797 751335307 493498689 380143383 587113807 784983621 805037941 440026653 199338523 981111921 482761027 919824277 933969809 213619387 176897489 563230381 236644093 485670171 121229517 956484189 211190451 414570441 710837101 9611367 106630921 653908555 905052525 210904145 955617123 139703917 559537689 98652269 865180973 182700357 199450937 315789011 762476759 566955563 76060711 775947873 809832669 756894153 446350529 922668995 854196415 771590919 500916331 950001253 865578505 1606169 987673877 407850883 272052557 607037311 23144503 447304989 519819045 139576057 264617419 737906425 94203189 666322581 425046363 871077799 764516643 997054377 282058995 617304963 554855847 821828047 89400361 150007209 406301557 321026541 547650845 771437315 627437141 923126061 103881589 175960387 922401293 58690565 337354079 833014751 198152049 986340145 594344593 768368407 791290715 449639603 659113801 676939509 756436911 382846171 648124749 691733063 524836947 292456251 155057387 832186279 220100159 284199343 811937275 300836981 26212455 627808605 240725211 294259161 748464851 816878513 97738609 19110853 324917641 617083741 508708393 988062189 464693149 225909087 655509755 118760661 537171497 97531899 445693031 688003269 194903889 201469885 479956079 180714699 707307837 623433849 144722855 333632961 804487967 101711437 887967263 894562119 624045619 731574427 200610425 352705733 551120057 808913169 559496923 244619371 920470269 870169761 243661811 42318897 514763345 421286537 968547319 116746969 657923089 436771663 512116133 693908201 802914459 692633531 236152643 238260147 663822429 299443173 485185953 77887567 831506631 181158949 649911571 483781275 957943125 253991973 567921785 251573315 553562249 74409421 214587447 629321653 281106155 899122259 500324159 407721769 750118415 448905521 753175555 452409759 233410959 39391023 194140037 891775971 555890191 708506965 837901383 242828671 685612599 398553595 242863963 834015697 733448121 976914875 796402007 989317877 673064529 380157563 757166423 550932695 175660735 733983845 847846915 188423203 561120721 947530991 835421833 153874773 515054933 495699413 526183327 552900523 224814375 705586715 210979459 966384687 668770859 80552717 308807677 10835633 583901513 77957439 872468311 533303495 61846131 867165581 745891691 168682707 348791205 618468893 150577559 933292799 934502879 333726043 205020865 893605943 225059887 422768377 333600341 705753399 116434083 910173429 427308365 860489085 49119575 605926035 710460707 652440145 965985647 753380193 524261601 794663367 725810707 335483439 639219219 598454195 156180341 169520157 64342993 547054263 805365713 426705293 415022007 798391611 150621801 471077677 553491183 574903919 732307589 874142447 384858401 569409867 889781881 770290963 8520585 59398545 89110177 569395993 210508773 558943945 568098907 382892241 61994871 529831233 548735253 880802123 625857041 382476563 853869889 981537769 337357575 94849309 285776215 710691145 678202425 441009163 325499097 996470363 5894923 521318219 175596885 42465107 492108143 599411221 717982041 303391405 190773463 235475563 151255937 546183723 642175813 770628627 343121777 89312733 469966397 766729119 805358801 567326997 755954637 279735655 263531603 133959535 368906125 940557449 996491955 480502225 354159001 660821489 15611315 217976167 180267931 274238797 839067931 526668451 95036349 625128469 667109825 346509891 654385079 289806985 954614907 113871435 335430087 341826227 143928623 427121927 795457459 136820579 485968837 753938443 950671819 221193519 628616495 991184693 803061219 718699385 498455657 780282791 239018587 916112747 931534709 472959693 211239705 423878897 151328349 66581855 543358091 329197511 226726961 155272277 843103909 169805419 406727693 542201845 160713193 449561383 846490645 785258187 464867419 281363723 535914609 144825005 738989705 848724717 965100629 615385013 633376395 740928623 475889913 544522055 67136255 110485753 380838047 833172241 712675849 106223291 786131349 907936775 687469145 50664879 804122921 202864995 564485157 953213587 914775737 739464621 742799915 756639727 469800613 188347311 132496051 711729431 296441687 522108795 929084553 869651743 784416321 236481395 863782915 133994473 659984607 996063541 908455937 785738011 798341043 895436977 299241705 588580139 27626821 55017755 990630311 196143691 534343467 170924527 476324533 178605951 940760827 75015153 614405903 183027085 424989019 428431405 958354235 745922055 122733811 408830199 336053831 379916357 488896375 405095147 108347083 691156581 516362911 743740911 731564517 371977299 287535919 479830575 466817081 165431485 527251439 775485213 313314039 902254107 555398837 498110071 836777685 419911599 872471895 208169281 339669265 271950463 921797307 733643463 589501043 747949661 795508681 586440095 131828295 489749727 157970037 594192035 443199331 662460009 738502327 989354999 282533159 507027231 112569235 197084681 716044921 364933109 860899345 233853067 192320199 126204833 489567303 920876413 79397639 647041955 308417099 839306783 407435959 668703557 160454467 152108031 467093213 767871125 476822615 31219 637050119 956605807 391949243 473775893 823409741 833333359 655915431 526780873 678097485 279630335 858836831 235371199 951265323 735423825 306013229 215344613 55389079 919256409 705665633 480313725 492726215 78811613 139673177 329658121 615950971 798284383 496790901 729209939 607652085 668461877 253333791 886853235 257019655 610761331 257005513 367576773 707733511 363952891 297304561 379211241 485456337 974869365 83746581 382958289 914713549 501154641 617788095 10654637 292096489 146401223 172141445 15606011 636550553 154588889 744439293 951076991 482888415 304149583 935726541 160855109 529286463 494126263 353316511 480586657 806268617 567020651 560997153 990262321 565864721 372534923 178681873 215241431 883410999 721410557 959681329 172608703 265766879 747700341 536902219 288661089 147004985 840279915 339404337 139857525 913040637 859659547 329321403 785999617 933428837 415202707 574782671 213873233 173664827 560173981 676986711 699666427 912699083 923926487 698142785 266876889 729478123 499314591 155641483 809256207 943121405 275201563 373103671 881372939 275464931 739038527 774828879 730790017 470871819 950100161 911577829 261995627 569927791 712827683 35282451 730183441 500294027 714160811 537761529 75892475 572803173 21802601 334977991 822317057 2619277 650639673 563872169 205620285 202869015 853476535 303632351 547005717 358978979 65616975 598532263 978373683 414350677 543152685 884318283 675656333 344440031 957649997 31329313 794918751 362020467 42690413 806483841 818682155 128428753 695575063 688505549 516307137 150089281 301136793 138615919 93535795 905840015 519358735 779439067 659160031 663738131 776316501 678964873 754324839 851105193 631468309 906240765 514463415 837882809 199368127 541182913 732340485 987540017 253540493 518926951 327142349 497143175 407279741 308566665 599485907 28234937 384454233 925553353 109622821 297579597 977672623 339351505 771029267 469808979 311886809 268121941 517984573 371472991 126822135 177995533 993601157 183660177 185668849 777079741 897846553 644664461 631390839 656138799 644062315 925500805 544111105 427971125 409718329 175022635 840211153 837544359 761995145 159678913 712290797 884735851 951094691 896056585 585330983 517937771 283854623 613936471 920757271 979393175 221318359 831057275 6557981 849791465 943265007 427523289 301640801 191375717 416291797 50318931 457917651 287463957 682424637 697294169 599461163 895474187 217512227 14707425 727705321 834931041 38217929 175016553 497548119 383575353 393804735 493423351 662570117 652588221 224129239 56434203 267477579 284012577 850171693 329563369 313719111 194619293 193813799 911437057 527069157 471964277 950376815 718020999 193998161 11387379 651792379 941492781 347931271 27204201 197191943 582290981 735936839 70244913 141005847 61681457 312205079 724979373 112875255 786484373 708219975 531810631 918749883 435805727 271987443 349621363 797924033 748917543 729225719 388006059 46848939 371983241 851275773 593290095 317956709 210770605 381332087 616601675 862307623 655185025 184830617 196106705 610125929 788205179 270190697 956066459 337413617 918078619 110304681 19897419 42616267 924982371 275009263 598394507 262321485 767437797 921533071 224299023 893499921 585647797 890837419 95972751 630787323 275628275 800453931 834294993 976245561 111928901 101167807 233292699 794731325 728275159 318202849 299437247 537097671 186872419 828226767 917323547 365846743 284048675 584129937 954419857 102088893 106083553 762368249 545126663 55667467 960093163 550774687 593871219 13825437 990832659 868879075 821724877 491677591 827994045 681758701 259587355 764299881 798066379 152801453 466069091 103584449 814308269 236334299 87309241 92478881 131752537 453411065 758801975 457763147 725629261 625821005 639104511 899931211 688269457 180343529 718587195 679977589 965752497 110730917 713948959 504365029 750685123 98995743 111637733 977384449 436608615 150097091 370204877 119719541 418793667 996741823 767013155 621527091 535158147 911927307 458103097 329527929 746269921 486095207 64556649 327123403 620773785 72528221 355874581 272252661 755696113 953563965 462693289 576023563 149727415 36695583 488698261 812666219 467206723 289032161 128243283 917895863 620760945 654063149 85227623 67277789 861529259 835567989 666251869 902457871 629362907 103564271 449251267 664558283 509126777 346359963 153231413 341835479 467840131 763989059 940040277 704811323 63379841 904188535 774666957 897218639 490478719 520194701 381791057 869732525 287486995 533782183 960769435 31482937 813789021 538435757 232872555 737233697 197747971 304922449 953975437 548242137 487312433 657522439 41241555 631606557 794076577 775913235 120744471 902182127 803864207 443449469 206622269 523220383 967320001 556315923 627490603 830052287 338706565 55441519 54983383 351779371 96407987 159490801 675356987 532704521 371463337 704359617 391401303 923695811 881844811 652897487 222544951 97724687 413175817 788149717 666921453 936586729 85223131 10698065 654015637 223288469 704968251 862555275 500192077 925260959 184677681 968301973 167607619 637014235 738911053 700130375 760546983 32368229 883192741 347197761 193557939 891392931 906082773 180922601 821293485 751790401 424567045 734414451 539029467 126274353 225478883 811720405 949224081 402990513 688863395 85168081 361974825 581881925 861640711 261044973 492097029 989094075 951082067 588827259 923786129 134922787 485843287 164511891 858105149 765764573 15450215 810308115 968638341 198411915 975170913 892016039 395645417 778645275 502387119 459082939 505832949 173960641 880895291 156563595 248749115 894374135 775829885 430023959 891788119 939978883 230662261 464728613 802603239 366923379 390944677 376650309 888215193 920730649 397864223 810089939 577965853 697479441 626812025 147688427 699270447 212965439 122998223 452083063 372675215 878703825 172667593 115192361 483114761 985803579 756024213 435569015 229419375 511343161 465122281 710071201 588591261 673125327 20007425 12354737 564911729 742436425 37516713 68865909 515373273 77924155 642755881 829075079 968223941 425371265 39833179 919252295 786802481 284264257 161338269 691619549 84762141 494451941 509703891 497883963 22092693 8796707 889467503 657272853 219280043 954230775 697543779 622026735 702093947 611061413 61485361 505761041 878595363 955621049 167939291 110513289 919728849 533109257 561850867 154477873 707183285 535899821 133427855 329556137 858805771 473262605 512601419 11843673 851656979 141792725 763536975 483539569 673498139 472488697 243406409 548760809 883721841 58732723 565479279 770653315 827280241 197115785 554282111 594261445 925272959 430080583 888247231 900858881 477481217 323106563 86221823 847782991 241491311 890870295 735644051 425127053 697900093 86234919 746662747 221733479 901842931 552319521 403048891 667435083 944536343 627458617 77346211 935459953 198190397 529487083 950310283 746738649 168252417 120930041 817540717 296445263 829099009 935986547 866434259 34541149 975172075 529421483 617163209 269364833 47790447 143486269 12187623 116708727 684847689 167414031 446765641 411215755 361948475 457975883 397405079 738059081 934384909 633090663 648997119 486157613 970779027 386218271 769965367 184337015 511626409 544130421 796794749 645914155 93012269 379257529 176097431 98624031 858600461 667081599 487569877 787623399 980847929 428246687 68304907 116266981 964487341 960265281 384486041 749039683 539971947 771605201 596912741 125929453 653017723 379071489 706397915 489920927 982756849 915462607 306573045 569388247 529539561 206382463 583339565 170974941 452312961 304189597 783355789 492513221 291943399 479288831 360050849 868059491 605735243 704042173 777498241 159305817 762298857 53324097 167490249 315914511 695661315 33847857 54514337 725599925 216511969 380964743 52342199 333530179 155323097 419211131 995745089 534955387 132985409 159656853 780847869 299017189 797179263 532892061 446847027 604061647 118347771 494075563 335482029 761322323 475429927 404888089 4356551 673400143 68856447 478719117 554317147 943321711 141744259 392733425 588640463 266078753 495484353 502292347 52452373 357076893 386749127 95219877 962450079 90184933 813985331 742616631 897324143 939872703 807211427 655867451 594510601 521919165 378205381 512558085 446636155 535045175 193634891 274426673 991304797 978536267 498126061 128257189 100010699 844807909 786237037 70778763 963998061 804764339 759627417 621150809 801590897 542279725 109884479 174629835 260413325 476240275 720525373 668596197 9081089 58899183 286138993 144777459 807493775 850661649 350197961 762439817 353657481 640150671 771946039 935319685 202382531 386798285 669419955 734454793 463989661 415633135 590400319 924238979 793073405 523879655 807626473 120858277 223994191 48395375 71172031 274720109 908434061 425388037 387705055 576985377 344613683 888550899 223267943 130458697 933156167 211370825 227465861 56652477 696986455 843270365 552853611 403176085 551212411 442759761 924988753 984124219 353040975 23731981 625667451 280219735 147186685 775178561 231756593 396902621 425578287 706840295 765524425 525364749 89734173 217001661 962417305 322165865 286338437 683456843 959481863 715758779 9167277 609308645 61011579 599171355 573801317 112737183 16139111 97023459 992606979 992156763 766202951 589783225 610156387 350207425 879288221 37661063 890035947 99663937 605039091 128555395 575926925 783047187 596165849 200183849 569102013 36063801 955585517 555908669 975555703 160949625 560225741 526368457 669972039 494305637 935424809 320513063 152152373 959832405 892908973 672922861 182578139 853433191 328011031 373115139 478100309 630408583 238954537 630979219 875673677 929393251 380074925 184722197 332012525 237877875 671372147 605891649 410760429 938791673 215559001 873830685 436818571 796989179 208690749 910065909 777427343 226076747 702290703 396115037 725287749 847548031 62369723 995276339 698155139 165699067 324602431 938363545 597868201 613597923 643119517 13558781 155521181 927771179 492291807 216131091 477937613 168018057 961299989 351583957 765524781 112610685 862344541 239898505 258210367 75659345 369690071 738833341 207206919 926389011 144751789 630035011 636437013 339914143 303110673 198512695 418996093 790028433 407261247 803106813 191801309 253258323 711910009 882604099 943136351 521761815 741145609 889907965 539688109 199944913 525880639 788856935 20711935 829729351 318241401 813197827 598221845 856506875 545594647 449320353 791861809 84195395 141182595 805511763 644673573 370943283 483340081 978969461 495921479 268440493 875933081 682675629 152423283 618558553 568720703 198339045 13147665 600681639 713941931 714973779 224804621 319299023 444465523 90062195 814481889 9611731 613861679 880144137 16659081 902435963 965991553 303227681 495315083 838956117 491988755 235596047 778282999 244214715 181387671 649666161 812978785 785006029 929512139 992716329 775438311 803693425 12859501 282328933 45961267 571181659 923903559 762887831 708410735 755370499 818661679 169019005 377666387 921267877 268134909 113293085 510759455 517294671 5856915 448858815 787075991 763516365 850072795 195939065 679537161 922019767 23909319 977819049 866485067 454440817 356319829 300539891 639459773 809223199 46793347 316479295 895027525 163606965 925911643 794856519 290142801 30391273 64728307 21366277 808432855 604133693 385220451 182976699 444628309 195511799 965592525 492153081 685954513 47124263 369889371 845437583 470112987 714296745 517272129 670768031 385872519 672189209 455666871 319091079 216378739 352884963 702880257 660390903 353663945 218506035 646492777 643926499 590687283 282438149 987827519 821244039 922707179 112981527 94320609 396053095 197265067 778202611 278316207 864635983 163514301 102339303 327261715 767476307 595422957 947715599 807874945 105037519 275108499 534684999 928402033 798488937 454619019 88694841 189788519 900241933 700719677 112163669 495660269 468522989 922162071 46252245 181987477 554219143 98571279 457319351 104860153 406958751 522266275 552035013 399239611 139267905 600865241 814327693 98049157 312688833 139263169 16476521 970913291 492576189 889753071 929112697 25657861 10514455 667903619 558464677 416729911 16399869 778935073 932087453 69577323 649262307 361136889 477613273 144404339 283560067 718745795 907791515 807649321 466593763 584828857 177264361 664383343 746082385 728711333 587074965 858416687 888028253 279166675 229138487 861078109 786674407 502036251 402897711 571954161 509370899 926590169 82179237 834367471 62289483 109452535 375870857 42477921 107880261 559206109 240838291 977016921 793438459 293385607 163648835 21982961 25807541 481121393 886015715 680398411 557394939 505371811 416712067 763572625 390793637 768870313 990198011 53632759 149815503 446248089 914817513 194396853 585158105 419767571 688424633 854494737 163298677 302139 403022489 806952527 926534035 357742019 944038527 700878791 774750833 702492381 579583537 222445777 50561427 175871307 149109043 821417679 794473669 737141841 464397781 697127213 627593499 327390653 677043763 461902939 862605809 434072807 872310569 94496979 746234861 955045291 684191073 2480153 483082235 210795889 205244493 28106167 558276685 116986919 839836449 674197055 277287777 40312131 154568163 519220299 217474301 581544643 144588885 168760701 481967913 695991343 970863885 580610431 378358075 417964433 151147615 709507333 636744913 149208197 74507117 597056713 973510349 220346661 237613343 989258379 713873501 570382103 50181413 653858327 521674229 172025485 806255353 601193023 658446927 614613817 867144409 684821981 328401267 816507741 376347853 560330451 596825513 990322877 98657703 553984267 144915081 8913319 296369151 169963385 56650733 993853427 479290677 311852823 420065019 33300991 184882289 921014245 464903965 313427375 607537059 698059247 955068169 960919411 469552259 339118151 682576315 964930881 875144595 643001351 466815349 783763351 752791833 788865873 989139143 172394621 517962279 113091153 695595395 602981501 278862229 386232375 622182343 173846963 425614081 805152317 617240309 914573497 343625175 751113383 587908793 307319221 556601925 390607807 571514889 450553689 385177667 23719127 960205857 89910745 989911185 995922761 972194693 169677297 110834619 829082487 202338561 628391915 757433099 410133965 153346219 5112981 534608799 569479611 170064091 42001475 370434899 638766269 813283131 767523795 672643027 501836627 89203633 437224365 430889355 211852297 989764471 705850047 849959095 101312113 469506565 503832961 948320853 713136677 243578401 739053 739892527 500217287 867367129 147573643 810219221 132576771 690079869 336726123 690675357 293117577 185968557 577356835 822708393 131056403 181560909 398196175 111960801 45922919 24923783 135802903 485097975 211414347 502418383 464469031 803775583 810086291 2434533 227737273 774299485 859715865 569348555 244273417 654594553 560614591 938077387 801180637 636317697 4582257 155632509 339198595 693452047 877974303 896328379 76202963 318318979 399001539 266772651 18121515 543381893 675104355 271508407 524832623 141732869 763304453 95371669 376411151 801409469 224228541 328577089 723312129 702271019 84270245 356801791 156093125 55512215 230452959 927513947 830381917 626114835 831956631 521715753 100706139 248428407 15808509 422525575 21197269 664722531 176443725 933728983 974302823 692028477 705679815 442027973 487543353 754401337 385189559 85190473 960432887 934421837 465866863 989872027 374541275 568798523 266629961 350908481 237048993 826928009 426149033 514210567 727027855 585108617 486842357 600366339 338619253 558568019 197005219 209578893 723298471 816461765 697373741 935305551 880228355 964266379 555644179 756084529 370049779 678745361 761981411 910483303 300140385 81402259 986303787 185168497 221522117 314804497 146565511 489082895 745488669 764356433 903145113 835712593 791984113 315828963 263312397 208612487 935309645 614341155 263562899 220384337 769655497 468383789 133350631 927500435 247328385 601417195 80014537 207423607 152214557 333098255 246304261 858769523 372194251 851819791 821374319 825268547 292369215 789402667 932306909 255509737 761373371 921682029 32933171 88848821 364740611 183807651 518274909 286713145 803568999 271636839 424598347 376452945 317853371 154439193 28445177 731876131 594900063 418267105 338197351 693269531 170169399 699683505 492218787 367332075 524257461 906800701 631319995 586194065 417485771 599806217 516185803 325919057 498666489 21562205 361045749 929933239 131348295 407812167 389818469 792576919 129841729 114892449 40768075 472866063 412134655 156336139 604991971 817921921 812204061 484336109 787722095 359681179 26855875 236415607 915638583 908866895 509739167 720984993 184217743 385456859 720248039 756378669 777643217 224411589 749389657 620570785 857410145 465788629 904798779 347417679 319737767 540716067 140227675 209293391 12449301 155608071 145977875 664716927 858995495 535369771 187936315 173036171 883789661 503703671 164803391 716749025 96619843 705413665 368895497 343495609 977988717 474489507 512617235 262219797 155597425 296958661 737744215 10119355 94399987 614784399 192396127 403376443 267184543 735689049 604037175 908437745 809420583 968189117 271779959 349161977 146054721 257906593 894067003 104150079 233842101 468607535 447057707 142717039 130436681 71385053 521700213 881396997 925671889 936003687 404997327 907959617 561587241 698727121 142051447 70064167 194690607 57808999 767915827 412756365 225168081 601059261 169527379 325476103 520392705 580262321 461963435 217754871 527166389 894775395 542869403 512676743 674341109 294755909 179188231 412711331 622817991 918389511 447988065 649641479 452888385 165398183 231973019 162955825 614377081 705342059 329700663 523340649 12323221 938845147 696356409 912061379 172996539 754056653 67527471 609855763 766084899 642326879 478467377 925876731 34075139 824492275 351071707 820408547 445538717 234904375 549511253 66702075 706272575 658956319 543216717 333953339 725735223 578112485 311910649 798018405 660666849 163616783 390252567 426819329 528902305 144667243 157382895 451916893 410782943 43644427 937693515 669745043 344715533 225227851 832756871 597494657 114492839 615555535 339272827 316313299 569867311 426156421 142503059 154087671 457441837 99448225 667829947 821088037 418637367 752384671 693270631 847135071 150402275 971521601 256795545 354525035 664645591 8429207 21736405 488401371 676692667 494914291 401353513 836867335 576232001 685135089 957439277 205371405 499433765 562147703 673838077 655808985 597331241 323922865 869541697 786995225 215036437 646285329 50333991 424093765 911228093 133592405 24343909 310648989 28386301 756097409 143976505 352785195 464586165 646601441 970263915 640492223 786073551 808503049 378280775 491283951 609151293 202459095 25941923 47678495 875617531 684129901 6132959 852682355 431351563 984900151 179821281 620040413 55315829 376601581 78907413 598978839 746438991 170985607 488915061 286577567 209005487 457978443 246354043 239166143 450468027 144039367 834106417 528057735 632098971 703002827 338964517 884121805 812991617 157198711 102152811 593385523 225247145 821665069 75628449 458676513 335367253 531155867 952817135 441904583 959394509 835641269 756135427 130809375 737002087 70229175 756451861 444831975 767771257 467573027 625658591 450942121 386606953 460654025 914686121 811157171 984566175 145017529 421313091 604462623 165566095 737497685 681700353 535870157 248014769 255273019 19008707 105292901 310337927 761832029 10811631 906379095 129940639 437915113 717803379 33258459 24637575 97954401 196166341 547513075 485687005 787470471 101065185 792373605 830968897 55784807 859602257 440223427 768050013 942857557 44788259 140861029 496558563 184212207 881645291 189078123 499922319 692887061 583411911 961776827 267389219 828113145 667571295 453554697 419691881 953060107 606290659 630149835 756289585 27902985 770852101 902929987 151017817 291251447 687224325 972526967 871792065 516472099 865126571 874553 393396307 136264477 75310147 806500895 834766081 352153029 112540579 811380621 15357383 826644285 374047787 658633383 109729191 436102131 423754433 70991969 815085483 158280089 374674643 208860529 762487267 33287727 767690069 445704535 755082349 35638005 771970505 953650525 948025449 700349305 182084915 797164947 306123009 908905617 358051107 244361167 949035625 402995031 444979885 219880115 126226649 631478833 718863215 165954215 851954069 229214665 263416467 414980829 587263461 3631123 605897667 730963017 452613663 273641807 792389175 843101873 791009945 558467839 994544557 809568663 477497017 162958061 398805869 55691601 305863143 257383985 296305987 570518003 57370263 354468903 224417925 47990367 864998721 643514223 536220437 604228925 114155369 72395515 762495571 90230269 454240921 363878139 196810291 952932823 77176161 987249645 92052009 751991501 582087263 579821461 366062643 403670183 435992883 123783679 505923543 387897331 405415303 437315199 731086629 28166411 139794959 606339251 297900977 596850959 532553091 615382397 238726553 125684453 160772519 274844681 682678919 893757505 522803269 856092367 441116837 360961691 918661677 817673863 66947499 236714543 839950397 832691511 504464345 184037643 895047253 941772075 338994417 725704187 420434015 38502905 899931461 393019287 723665231 869535611 367677611 943164227 610704413 506292949 331551615 634718243 862004941 84228981 579444649 533881899 130987369 109139983 848098711 408269585 796941057 936312221 264651583 807011671 862151347 402246247 398255903 137708355 381988511 599884533 245285181 53176805 729064175 443066143 859120167 375157273 599685847 960603391 777737719 400745339 262886799 38823419 705235269 136542583 897470811 759665085 559846973 121147961 169030789 441461563 330113929 411641277 308325983 509629873 861693793 63961281 802027073 825858977 169015429 760885711 918172817 813963739 974731577 312029749 371112889 811123825 361142859 17515279 185103655 430110657 847222289 359886393 843525211 225583469 5933933 460630365 123784659 533236065 325611713 110602987 131848219 261340883 539839741 279256861 240595139 339348287 507954837 878612721 573692265 905701737 753795723 933634353 607101101 634780255 966786917 872968555 247875385 706740849 444733485 934700793 670879937 59738175 359601535 787183099 608715007 278831019 806485107 229420121 210257075 685987043 224382389 763481283 710228135 954679641 105086575 335813041 515577521 692428491 667607899 348573797 893837481 924491839 952052659 3683301 384329585 246249213 561955393 111584771 660611059 625345437 905286225 722643543 484299299 598252793 13576379 615669569 379587067 166375221 997742811 57217257 755187835 999960255 741157785 154871871 84668589 375644491 430333027 669527035 568914599 30750933 142941743 76060061 46016641 240827039 935091323 966632559 926161245 261078073 907813967 790206081 900233831 718204021 624566581 687932331 636212173 810255471 10785353 173229707 808545231 741112973 868376355 324854157 471449003 531691897 639916271 500722655 933551789 182783785 979741527 780401273 157076263 589814233 17287061 44029211 653085041 824619277 73074021 432264527 756282099 576222865 602586635 903151459 387773201 912785785 318638427 6180211 195694145 642421027 901708453 285296219 463859963 736236081 347349965 776606405 324753603 813849999 415889461 411654691 669740323 682500469 587287501 755157931 674745517 69251163 98386443 896355677 771099131 540893191 655348973 424811265 968558255 767064709 238415353 148072235 371631221 173832491 401157439 772823087 472482301 569607059 419520597 682173743 578273793 864641697 174099797 342167315 637898309 382584707 665257451 821064075 948308115 831305901 982021699 934817297 872343485 361270489 199083537 700373219 451759261 527326221 217014679 577336841 560855829 886513815 226928793 852547669 839972625 754503177 258855269 420919903 955926913 233536575 585430483 738986887 490320735 407973981 188327999 36950261 498392239 436546003 839034003 131369625 431581051 81418065 676970809 811234347 903166677 451168211 2808873 889286701 285538775 746519969 938674145 703933669 128599203 658228549 801667687 714786149 146566501 349877395 135033931 451376773 707423053 758780839 854957987 578379235 53394325 919257575 613771529 292657387 602377347 652557055 223784617 387374027 298105949 616224225 805049135 914597499 942383223 926736331 24581839 156382141 165084203 34815297 353825867 24230935 560454619 563155215 813527527 469011161 304003057 405339465 665372275 600349983 636237793 909961293 73529921 346169029 90004773 157501885 216328757 776241527 955718205 77840775 342685873 246542241 277938613 879204573 286357157 388503423 43137823 567237439 454520967 504117775 138993685 163157869 699529047 304437275 558044473 805563509 564477847 528521011 48839479 701235373 432695385 502305453 333907903 949465263 429950513 505080491 797834381 68732511 917440577 23861013 493751393 464212459 836827433 541339805 380645895 213435079 326330397 317647287 24020817 643705519 260438481 639665063 932970521 566226085 810576257 342171509 104447297 129338873 260104183 749603567 985073589 340682557 241571457 564848047 600464229 64008013 23907315 841926677 754765389 459385935 42595243 938379849 83986797 171469485 408891539 637601083 61373905 871991837 911762965 366162341 867793291 717915803 351925033 993873669 55773365 884777323 464133453 847183011 543720561 311575065 297694601 624479377 550760939 124231545 790572905 81010343 548189523 620363431 79763971 808655237 815453925 768232969 534919929 549852049 756879841 609150539 101582699 429795839 158845331 793021279 989269261 170700231 776674893 441354627 310268179 887854245 939543147 92790843 141357883 836691493 908695371 641103701 374106315 375715991 689045595 789847521 632323985 696141843 107641867 65256255 732211941 62226295 916287701 880478737 842709157 908024175 457248319 231190853 972834357 737674089 990012367 253418767 101125511 931456157 93838873 178220009 454895629 191854347 126206391 830706075 61388743 527270525 260821581 12297261 966659133 759306625 346584961 974493943 902114171 200510579 151613449 220256659 893262615 93981295 831254687 169046245 264683827 411666015 485039877 919554589 353150321 261481461 940366083 23838121 543530495 903777959 195668333 888744523 902906007 418651317 815742237 382822405 347005301 787426857 586808821 563266851 801978463 369079761 602847713 354698041 138127781 624403527 801083857 989752867 864055067 429983467 536709313 167971079 96954657 928256741 206697651 565812047 121909147 78907431 596865967 549927345 433600761 171185765 244545225 105021737 604498739 606599203 405411611 860794363 653690051 581141929 501222601 177605299 283549107 828754949 840700921 500567847 730772111 420592657 800463331 727261039 383842669 530634093 89870779 634773235 916791023 255870337 448613321 646691679 234953015 750043773 249645651 460164007 786290931 476518489 931363501 236444933 774293597 761596887 68150323 919821823 237645361 371362173 10570563 695681891 742412471 536543901 544321099 13345089 243350713 741429839 521047227 222683129 973328017 910559857 400642063 313342765 731709725 323314863 463677127 135269579 228075715 396467575 952639857 85741063 551262831 51305729 618182555 252072541 154831513 888990799 306861281 461551759 135627329 671994407 896211431 64446893 585435115 279322137 569197397 101024265 840303269 241373569 357347549 729966655 980636933 698691707 619589691 197269045 892342317 330556147 437435439 285629461 38072511 873364373 727929223 237762389 601202155 772626653 810492945 836323761 578674279 576248331 209220521 744383533 731631473 711718435 610108723 167899667 765039055 255628027 132849559 695704573 577752785 240492071 622980807 854946497 465498955 336923657 142971583 59517575 40566429 187740363 946046591 504888251 655971243 537961817 334680853 858796047 728636391 119011439 749986447 963777409 552479811 115238795 169788169 511499093 327478337 135725557 875885479 740671767 436951779 968232385 131258257 219354013 673851837 469750467 422455033 308506623 796879327 143204253 569563163 930005159 624358125 168462519 570005047 689514045 64686601 404815169 253572763 488533173 511621859 587622453 727153557 393517645 807938737 275939151 791101315 713078411 747775793 280554013 85021635 725164855 671295913 420981483 800858051 510129001 957223401 836498899 909808629 369293435 465744197 66547637 522803407 383917331 894124957 157756727 502727641 213956123 245964375 663843789 647654041 936429513 963760991 680281775 832834469 683237015 777395759 15636953 481030035 336081485 853265089 725197079 849707017 215259893 389624479 377130233 457083567 909600227 107181015 405981143 361354807 435032755 523024379 91344079 251782493 777036875 198525231 465032909 414674915 457995221 746246933 422538623 293429649 256845767 908483549 622263901 592278333 55370973 772997437 615387047 802212285 382535451 613975411 905475943 575895287 654674125 455949895 18702957 964442835 28516745 953313795 27004751 642541123 824780583 372179587 894729585 612168771 56831183 900347937 861184503 562381013 867676141 243425987 457207507 124742657 741376307 659189979 55749567 505811677 818253729 254092893 897808697 997107327 803870583 402649541 437076875 967955213 169647427 353456925 586540485 242741935 592672475 206225139 126667965 99586711 282038361 236400985 767641109 903417857 396683041 342719731 882930997 110842159 880672993 724618211 53711437 742630507 334181005 12706009 419968343 404499717 654368607 984406027 914312977 120172123 175821279 29621817 367173125 862934219 498826453 596106149 404537217 112310467 981486681 445581089 384231583 609363893 4187333 23478017 473143615 235664153 456207295 905690149 789472521 364288883 735937329 90307315 37995117 628707659 645402193 11653721 785357731 57979447 532909723 311486667 132773805 232415181 373327059 512586571 767709521 431823539 225647619 946192477 43345441 526615441 291128965 761358095 703589749 629816347 397775599 901454841 658891117 894487049 856700713 730191929 827668463 958681629 282458975 183263859 379714479 805652261 875977987 975295447 931206947 471994097 865477587 542915869 464292749 752606041 316848851 225067903 920746995 367534915 74872143 63944645 836018215 608519063 305140699 481569087 41135551 178425417 247770453 952614595 582898975 54603089 931977183 316359085 886193259 10255283 946807783 294158565 168540311 900845687 518635297 403497431 353659993 996669875 398439815 434865021 401781041 271889789 806050911 575809875 507706985 314236667 119980855 855863903 636786193 493028181 315313377 594478127 555975679 4370623 51616889 530990043 239456469 599886705 21823075 397230337 473279227 439682223 1048909 647861957 221685667 416994753 406220075 498092249 229767619 611999997 610873401 649641583 264870171 506094267 176626169 223523655 755552051 614251613 197200955 735346345 700338783 651875149 205014545 155752033 578501299 436215805 490101463 614736325 21634321 193788137 593733939 917006517 990933025 852144019 822858255 340211351 209065299 23842181 161405857 833633625 906971105 568816465 885323365 974000753 70908359 320339855 93926943 981336029 527501523 399630309 801364187 719737123 331259793 550372859 28706799 451240017 909458523 985223301 689995507 395963135 508547153 820068923 147392719 875515211 358965339 438491361 331256495 786033881 497931815 951418433 803945221 993237979 247980851 381700397 226319503 927321603 107708857 849165437 659906899 300009361 738572231 968147479 373404057 881985101 360155689 987058659 64260343 23298691 699915639 60485333 314979659 50085387 979005205 524494821 614804409 54296385 214779431 466338583 328064939 482069517 83102881 440533109 42484693 96859357 748471353 591696145 50308407 27233189 346279281 472936451 425784849 888854247 835271311 415720817 733696243 846599337 514693283 34085253 653681583 862810485 419833993 345054573 950029409 927640421 485325277 952558697 45741165 463052055 893239307 82694837 451271553 208847537 847687999 525003937 108999825 776668383 382403445 678768509 165379801 400803289 62658923 479703715 569514717 952802911 301515179 309768309 251176809 211177651 837601157 725439837 576000145 47418793 436423695 389333199 771111089 173008273 720695595 264130115 688189807 284765005 536967297 971990077 680405687 911101251 464076929 895226183 122912699 435967073 372031333 333998323 121007097 388814621 680914475 287758041 929537589 723830901 218775453 34191263 625257851 104740593 194161993 505929199 737367071 313485723 967651465 117096311 608992959 896027917 832664445 190584823 182391101 42863205 729411597 572671533 527900103 150928969 186474217 926548197 416045521 595469285 800016009 622436847 156760341 827341297 314524207 59287337 582041241 224700333 203151585 312101235 613866923 256434141 931573361 373766073 951881947 612986831 384323703 611687913 879263497 32964187 47371091 687357443 542758489 756333789 890805037 502020869 121462581 68661821 159827701 494639099 603277139 131127273 220651363 594838775 233246893 801768151 459630583 703898129 202549899 462618757 944428541 719509103 869589623 275465721 988425087 345504571 556375875 15081155 946335835 697359525 86333969 123121655 205523757 234204903 441408319 35472181 943133281 893605701 961271679 492236707 413320485 15027465 851144385 60603629 293065841 922959493 19100995 607792717 437008389 301240339 894468233 393052541 20519787 141774613 614369375 989167047 782130929 978565877 36357593 574542583 867646643 888497703 414806611 265327717 287214477 186147621 58411123 709438959 717256745 153483631 8373541 704019193 949379065 717623441 37989531 401158515 610594355 576678171 394367317 766654163 364602583 963823531 462067475 511400727 260555693 532554723 905916387 992290245 347644745 9130345 873117977 143838957 417403903 292424435 641417299 301599267 294697713 452784953 949231221 29575559 15893767 925864959 172517543 236865215 76702705 614842127 729100643 806378487 55581993 343577915 716775779 596270825 859818733 211439965 448137385 949363153 528313157 442555735 873103237 637382773 946494211 932790037 721334151 109008675 407034559 804771207 926473871 172528051 951936473 511473575 772348353 327974529 802596729 99713915 891958919 699070837 247987087 7559943 621282199 214068477 446761427 843831651 671925741 624484111 811103431 103340967 206014925 386301483 354664113 978551799 361425857 651248211 356127395 192324217 142582177 623855641 432962933 423582819 737849225 34669969 823602373 964013295 734581467 61127003 892946431 54583901 198291267 44651421 256499025 853027577 566197175 461892357 127265459 10618389 174684531 891723207 972668135 250796299 796530939 732529317 539897971 311936061 951140635 767708131 876074151 78926359 264421865 275297871 572808863 706788361 630369213 543627841 214691895 612202893 542881345 88553623 943458075 908578087 829831515 605624757 961982903 780307809 933597253 17492619 548739655 24555981 626424439 725225359 433570761 362348549 884069559 574255551 728043271 128257709 659077651 502843811 809212305 429461099 304801499 516745287 316569277 193871605 900445615 780408385 832146605 413428229 598369907 584784561 965919049 461685851 685429585 342089277 235063619 220192451 296902079 861716499 401087759 353925903 25529207 278809319 122948593 893621529 929101185 526374907 568998641 114684869 387931429 246912531 668886493 9171961 131726587 124340351 472811599 275532715 805655517 846041619 542876839 456802005 397362161 141133869 502189325 465718903 396120481 956734903 915474545 247683485 475855011 249749019 706953101 701156441 57699571 209454161 170645983 844746437 276161493 25099223 921952943 140181509 340638421 460817845 758703119 385794879 24773319 421227895 503008215 322784937 9379017 278456371 784984743 658429565 404831037 205236617 610982117 955737595 449321679 592375967 387333573 553129073 730696567 795296547 348591679 468175917 433643373 696778827 940004367 679530379 837790263 882592725 338090689 662517229 115954593 199179527 238943909 24830143 845780161 11306415 895922131 996807793 430364399 865245477 576185129 495302015 596134613 442258247 192407379 882738025 661956443 488194937 625974719 75596731 296225973 850005931 796589989 429635847 401496931 289214293 110092037 391355367 718218021 499944561 652989353 578831871 75518475 944940169 367710751 475192567 733196645 255669673 789377219 721831809 997127891 561872231 904827569 625246807 812848953 76790243 733393109 562570047 675552705 376551107 871752923 183117311 135783137 88978997 934099007 882476907 252333909 952721903 189974847 923677789 941606687 575535 711571429 114126009 427378319 521412283 128035071 829359719 519808823 575204323 209076519 61269081 237196533 615084923 759405501 866967433 430137577 522532321 864550377 969086973 905709189 808724735 629561245 266894267 865174649 279168831 815678093 841922007 664767939 227614873 667223357 196763499 175152295 473336717 778507253 158093467 323695025 229383711 617878467 193445263 156840629 896905437 927481217 160471929 183025617 289203677 779013327 301474709 484513383 404500927 503609621 75496995 49244709 93458601 621033603 158656367 696800765 706113353 101664529 331747533 788345645 428794325 653851009 87108499 634182203 296948491 753685593 146699301 476964335 729038641 375630571 316053231 673412193 899234583 672502863 544979297 519275499 600557841 751047779 273214711 593379889 158585343 102523603 983594035 345200929 30642245 95598605 649551773 831773679 160477397 708563529 886675145 129882133 540473889 867002505 613842259 38466651 823290667 842938771 548755417 323109833 754947189 763197175 958048009 170374839 73358099 288881169 602439315 99751871 783450517 315004669 87459891 199397575 364405533 612272551 507355817 889184761 40885843 751668923 964740291 398019275 966771295 370834613 646823503 787484409 506793981 341169365 998601513 127451527 229398633 52798495 615831093 470773697 250158187 280334953 91142235 158821435 191788877 524760391 350729613 954864595 165301227 927485211 696887751 561440427 753695645 198159375 142506505 276085039 519265103 875625743 680302433 428430101 240140395 2958551 678105565 563183195 386868715 941573349 821807515 573155393 862103369 812131971 641644985 14152789 169792399 37230527 818437477 824168811 561544265 273520243 369109199 247872161 713063567 646445887 815062579 789854297 14717439 696020619 639838931 713457473 925731261 366674823 772703223 820942669 440866169 641163053 515909621 960734903 855395433 925751609 933684003 538816773 562470475 917014329 17487079 900948997 4999781 448774521 423269031 446008521 568103047 750216723 867950299 414007981 735411205 698189799 274289145 525876821 438780095 407087515 772932483 504573103 256347675 624546467 12044039 286564335 27045381 434588215 787108115 287090321 438154743 926019667 708175941 290179671 136969707 250893507 876687931 36097361 248789867 447705623 457565347 400092369 641127555 232969383 848848431 414085749 362878155 28407697 159295381 357722397 395928673 243547585 624039581 953582587 485638377 502936293 432754959 978951039 305564819 258287221 383724475 200079975 42746133 572546737 206139261 844519095 523133101 390812579 156953145 259851963 736219937 369029659 963649495 199131143 288939201 481648815 374424393 594340473 297359203 991798979 913801611 870016307 522309473 604746107 631088799 895879073 898006695 259582665 766897807 772933755 395429793 263312999 943349355 618850489 301654595 693964501 168937297 873612961 230598415 366738519 44762463 131826881 524190729 442448899 911173827 815354601 52190143 477138605 458186927 182280505 314225737 402669047 237981787 278912787 322388037 201285961 792230921 683715621 638537687 387077843 4349447 703063907 708724655 860620431 684157347 112769033 576316419 322156347 459141179 18904729 57537937 929134433 270025775 7610851 629649569 177224783 797973481 160614393 542238719 459196191 715161307 24786231 990737921 682817457 739778177 793953089 170420103 312055725 74705757 678291463 336103159 584033667 846305785 464536249 403572541 99083627 164608485 473209555 578583763 981469799 7699135 147301149 271379637 776480573 907207973 954475681 998877033 284873599 979434437 89256883 408996861 898923653 281878097 403649265 66567945 583410287 194226305 290572861 71450539 998193955 727842073 163066819 293187719 768774485 305516257 278637305 297136845 642485627 788852655 109369755 293450035 765808343 334202713 106526381 184530681 704467567 433763525 166641021 225489121 513258517 976773339 18044059 73794109 73223519 454951311 803797223 876625891 634479793 138417369 301945987 429575471 960327727 12498877 318217181 659764487 175257805 179988803 705204903 725633757 246064449 587519361 681547489 894862757 95148811 90015887 148738507 475803869 592158069 647865741 482080499 102745995 249598095 706989483 969077551 87089469 40282159 553827605 570051993 837225227 334101751 555951625 984065687 74401427 92074319 755424713 522925267 541780729 269125737 743602591 869052993 409132013 772666683 69922779 66691361 673586855 983665541 343207131 919092469 514856673 221567695 97742847 187650953 108345317 595917677 263587505 799855087 858322815 252302195 787435365 483434889 10576133 448152003 723185299 975920887 565902423 777471237 965994431 608233253 205159643 316068521 479247985 210053705 641177727 980830185 478181695 183596767 153974969 6243009 560095425 406026411 225350533 155372799 551065241 104744889 166726255 39222575 443890289 335685469 596648831 989253035 487835387 739386677 491534927 391403411 315799797 463993379 38884605 54613455 572562971 231637331 76719405 175246351 998397501 252182333 413916431 298691019 208270891 355584153 85095515 117370691 468953791 71417197 780291403 33721475 43454937 175386629 707847081 179261527 490597737 639796215 559307713 265951575 356809307 885049117 131765611 985549543 132418991 652569755 764265731 233657899 138618209 449627103 936124529 735985431 785408897 682324381 646881825 195088225 693239583 466194639 65209869 776436619 53605717 282347453 351597233 633935835 925756997 937749231 112814611 367686497 77366809 857425469 732036803 12753657 688347141 453696961 195849429 201278015 332845889 900541153 547323113 638344863 799204881 491182407 186165027 944408645 188511423 927400937 683019317 61924653 776061083 204376579 360831057 497262101 225209091 147800087 758124089 367393159 735692375 12834549 449074735 757277907 743971585 883944623 209108741 13648143 207295605 375349667 54433041 726149149 200843819 718385011 481780015 646118309 597138087 940448267 775347655 620958231 111656563 647141025 847087047 683800493 640165665 687486129 285054373 164427621 777576011 842858753 723827807 97868809 943517843 319667865 203477627 998343975 59627171 188749263 672785673 135150105 810364975 290628929 434172573 915777279 872891631 506949841 888899159 750221761 979235751 1637549 129524955 723247887 486097697 948456007 920591195 243003745 135863087 547692895 875023497 828954105 848074155 5210869 887653799 949066717 913169783 200114263 304904057 819753695 797827453 255310875 531110733 17361047 665099697 640795931 517934585 732610917 310960139 515273083 87519455 596806001 802919823 259590057 994033377 64169387 522936647 719431001 412751215 358877387 158330181 243443847 798705535 599500369 681914275 799025781 690797199 673733001 239984003 696450739 662398373 806676605 751093775 453269523 672747601 531820299 150955387 822827953 883203495 497043919 489534463 285904883 828805959 229019445 991229663 477370243 533141079 758513771 204904293 712031831 903767683 839750761 663384035 808106155 854613251 595938031 585344691 811014147 614663575 270154119 9200439 706308651 494193539 38855295 903687387 319704631 209769621 879618035 638582285 166751109 296771109 555948223 951412557 675990711 432050191 155129229 321277465 234196667 534049723 578326991 117678589 837819843 944886039 85945019 878538123 541370445 148827545 9254993 948486493 844945949 770768193 841789017 196060437 428064575 116241297 879508327 429239901 401101577 193335451 785024463 409813993 152207125 650131443 893967027 163433587 452338247 610171833 870122235 238042555 273810381 886281619 617676887 201987469 381439003 113341357 760364097 125968571 865460203 462164929 228087031 768261663 207574341 698505225 662996609 451868571 467581041 873222223 473784753 81611545 112506631 999752417 88021279 868104589 458088673 563137937 71407659 930683889 940711205 708298435 115745789 192710213 343361853 526246489 1721989 886538389 781711327 302286531 700094331 234527731 618520069 98474999 485543265 43017081 2710007 193043059 469821565 616794441 433340479 565212223 147802593 991564173 172440753 122354663 300681829 658587513 425252713 782803329 317015465 354210375 231919053 715161517 441272595 598058551 460438921 245353617 710259415 777743765 171723663 814900953 189867755 153602483 590250781 93027007 486181393 812197355 308691127 224835839 855334095 84705951 262219049 237987295 356332661 899725883 971536007 679308845 629968927 687480367 468019503 535672385 154330025 635090933 271302339 113586423 723863743 214111763 533807921 954265785 85836237 44822287 695630763 494650481 270789391 103918205 205161905 979466903 336369027 674485751 539622403 317402153 530289651 115013663 415718319 672067503 453625839 862885793 275922187 705048629 573278925 673297453 428432049 624122961 235024047 181003645 505013893 492986147 588628349 415950933 318905013 111959377 507554281 907679615 318102197 568998921 615785575 171196111 368856129 88582143 67592251 456575515 334521947 935916149 337642093 748274759 825799763 802120239 927645387 116057149 215923899 928327803 810459375 264783347 114284655 380723761 45712697 201189213 948415893 198893743 120018897 958419329 897872023 241262809 58849703 522453355 24521003 851083294 527681909 947475753 591473485 234805625 116700345 898242263 230096961 995766369 125113531 208415639 319187347 774850529 524607373 629029013 651684375 384229253 860843271 843409921 374984425 127286371 419830729 492445717 973066351 53910043 31493689 753414679 176780629 105744851 433619339 431117133 268566925 562337081 253955767 76570635 122298709 555826049 391834489 425669291 487513139 690451053 618114909 838536847 966354927 209623361 1732275 988630307 89559967 401326029 65644947 202005719 291891873 484174181 326669531 824983079 225373079 129865705 586020151 245617299 805859695 374996157 62267413 784788391 141401693 812563409 296350893 611854839 143733467 828190363 40108287 493619225 425632945 442103067 442058965 12617137 913768935 175900883 630837439 695846507 418645461 192602069 892168467 924249847 30011413 560881591 592362227 48104977 33640843 507045525 648245577 518507385 785173351 533044759 655968193 53654779 780975639 296916075 543635415 803965289 637430877 687740743 515661769 839352735 348088379 476326121 837387169 750743931 412301309 114327319 673578029 616930027 387864375 735046687 789673991 836117727 971092421 849252313 976356495 874078291 535833293 897494691 381716717 93096263 344797113 273390179 925659923 262332359 161273663 671418757 283855541 897892583 77824091 264904193 336178775 25757629 486654801 854060119 959393345 951391853 601270447 812928137 121260929 360082723 860126277 210832169 140760305 235631887 765389873 967841869 996953649 937387885 886549979 383154833 303175849 859212413 512219369 368255005 686115977 526835341 489571413 372575647 394333129 771827435 806854999 205059405 420301099 274039027 119356021 887636453 785170229 266975497 705560189 740385709 62519097 680139155 351794559 72802677 239860815 460912137 2247643 419568529 175600213 786826719 857231155 358857441 839075063 887170461 621615989 480596937 433346211 112190409 477161941 492447035 734746001 303097847 537357775 922999721 95430339 307572675 41395237 981611027 632466175 186384843 770571751 60515073 485502933 330704573 257604967 119888255 121996449 533891657 955460417 85678629 210114943 633213995 399860571 813080079 240054363 319893285 850238431 625420261 829494753 539140095 287382595 296648405 519120013 335740557 70688323 875471765 645137311 302974123 764600547 658955107 386318875 69318967 428189039 74880775 430421463 540253471 626354811 662009803 382490727 125494867 591619811 100001929 382899247 243843791 148641485 917226655 618049363 522343829 159729317 63128307 320292549 979519917 265496093 272382705 705896767 169955115 377991987 973532051 936137279 17487915 529201451 500417107 158617359 489143755 133061521 649463355 623914941 287270713 98385723 172489943 146427939 801338535 125331267 326966591 432552673 129507403 413965837 70162191 29475423 525305197 520973895 167887727 168951245 16161107 215442403 404192781 262359077 277503571 725773089 655015455 235059491 737044163 141410689 953454947 494534741 468183049 418200785 345739553 164291079 362384781 582744103 585512741 567793747 266194881 517191389 764298949 401387545 478105889 544272281 903583713 473171455 153724207 645420357 452648413 915722105 846348147 892611095 602820267 833096639 480515201 271782025 950091197 438294733 913129205 177120355 360201493 992926319 910067309 239717295 527661623 180885813 904718487 481212353 900332849 829059447 348483109 751494197 681501083 597422675 883405263 68871153 260277649 713261749 20374871 590757919 697830077 110178379 421660811 287505717 709823305 735071373 507217977 408730607 609196269 294930363 754116415 918012497 335243239 790272991 694319483 64598183 273704445 143610825 254026971 387444871 424508287 577945103 486979153 662933449 370238529 532276245 856533205 440629141 906917027 237935871 625850473 991793495 716019851 960919233 732772123 139604417 838719079 185891599 602784249 846447059 181529131 519993455 500273185 585381325 45757529 313634083 719726515 784290365 651663605 741347393 729295065 170294009 528739981 390408861 593564869 262510619 765185849 773818329 46140083 208920327 532519829 291418461 510120677 876125035 289626571 808417113 398519715 572962875 297373829 259713479 902180419 561826993 182147067 835391333 762919963 167789909 448585963 854969021 489443729 353249007 753332125 27575069 316956429 274043799 514415835 938049951 970204161 346091431 795512065 582452259 249452011 381484229 353679593 291903569 423938887 675985115 766872315 343568025 578914981 78267167 249719843 454165299 283259283 827648781 660978395 923486497 922954159 302953833 599610399 559424297 981409689 451236159 316986485 214412509 442578427 181675235 264783595 867188629 782715015 771224817 722190361 384715121 72623353 618465103 879814939 746032727 750646803 450967081 748162203 852467963 267740831 897152241 9934275 206057427 188839021 40782181 819149131 549377569 269051739 876439689 109859441 506124011 766145609 23340457 72712701 566074371 127273505 662647643 151658811 757161215 247105749 542929527 261412609 949517379 501598305 513816869 820011695 304965619 605279175 903768529 114116907 294257923 203435537 125997103 161535971 51253801 638576463 904997433 77551565 990816997 75616671 823095607 628728421 702482049 187819553 390617777 796933303 652066573 710295039 819186047 508853835 112991839 972566891 341797563 283762747 440514841 242776227 998450377 998902821 178414499 259380963 470362711 570349869 73457455 711573883 61966681 112773891 777630899 182713531 206721547 125211869 965559791 250463995 286445551 646886523 195118699 959275937 751834325 705047839 440713339 275696149 183432143 748881051 380039731 568148683 201840697 953581637 475743861 143242811 642726585 362039289 202765289 988827625 75419705 235308319 171149311 296063839 193215217 355541925 743730161 833497389 829141335 735686911 648203195 673091569 449358645 309109039 195840299 54776651 93149845 586412985 52796109 353837285 481083085 474518189 967684347 597663091 865637237 250396575 355962581 151496109 970112885 911970991 294275907 837292375 465611769 155811713 546411509 921819193 325895027 351266885 445682275 739641641 636413601 896772275 687026383 323843839 363831177 339814149 291084607 916053405 139090035 288248581 686374533 829525741 422143733 718141183 744566071 303853027 132566253 900065481 796448441 809980279 38074239 735593155 685016113 405939629 891844629 684897491 836348301 736736397 406541155 869389159 293239433 884537645 867707497 766717045 822815141 140702885 111268199 904096891 528736551 881643799 855176941 49800575 257720863 120753325 742963405 810155537 230977385 974597787 585743139 712437317 695297697 281201689 472444243 466897083 138957107 246878059 243379981 377298839 588816203 762307291 416758591 853049737 86321381 55063995 33465131 553534665 244351679 478064483 902512979 383522833 976148835 86544953 515505795 725924779 158322209 181464743 676413647 160949347 756340751 485975067 268978835 754742929 84256015 834237461 79329653 547525393 227075273 41831187 520071521 356127307 251665325 286870943 906396553 958528301 343592949 38466895 767711083 270260269 578140831 735458235 488525771 856335433 550886005 230199685 926977461 852776967 505950469 695358295 725452159 869002359 448867753 739881701 203720129 89045037 348021889 619567079 687561827 557855305 642857845 425856801 37015441 500924271 545283381 437847389 928286911 689403089 816399417 657447021 676111271 26452257 283063747 214338603 820221775 424907681 723350235 335444857 56683781 969038099 19156303 681526593 231829337 190415051 305320631 997100407 695994667 135774105 364334967 75127827 71250591 926783201 898635189 796003353 297463327 281648517 762486369 831061139 781413729 206236405 437404723 892611987 595335263 372146215 609978027 136669491 89135713 186467993 820855573 16941205 226013937 942814033 740781947 998906595 639283427 279572447 808882619 662608465 574066003 390977367 694040689 241991961 694594215 35624281 689288201 745164923 755506569 438133513 642393521 725996995 16179695 52794393 557016161 135708993 43100181 890080699 247655897 734924115 475863423 857025457 219884963 910509401 598221817 724014399 601805837 537955007 905240727 398350899 530727219 972357621 295308469 819093477 230660081 39641973 920981753 684763185 798575857 720994499 539246159 493500543 956866469 875193705 585515753 254055613 870047043 968289273 918611783 758684257 390838219 986246413 562515241 95808873 58991877 542657607 922415773 820108125 284673413 669633363 281642743 266917449 686398367 484234463 461372885 550000579 770393717 132418475 728564251 218641899 225733871 780333429 466536179 104003685 936042173 507430409 212898513 431407971 981753689 970849337 819166325 213521049 807401217 405977311 991666655 757403203 903500221 476381661 862345055 627273771 177006175 175873821 4157061 920110749 887122815 708488083 39540529 274803569 991303805 833006649 520454791 303947013 259620993 646139663 524132337 883979581 206710651 529058849 811932709 193230985 355586339 328538753 983725599 923496159 766592507 240083273 266901539 426183869 924823625 363574427 807554235 37822507 265058591 456317603 119080895 872346037 629025621 47919761 234614603 229430641 734995083 212018079 151836353 983182335 184089127 483005457 904523725 121456005 45778525 726222897 303597925 727322799 609866019 868372305 298869445 39223223 504212795 938108107 271944817 859485527 168037675 571419395 853594421 381483993 688524867 940261471 49035047 141814795 820271519 56521813 80288415 851630145 274119963 519109215 515990855 712291161 335292003 205370109 387439877 416319931 347885539 106896059 519086355 663925335 683681239 289249067 861544169 171214751 332846397 357651943 844022093 810359443 981596383 772282257 215162701 841797051 810852429 845054165 878134585 565132833 933404893 111194467 512881585 725403233 734764721 373016309 933270681 795055509 763640753 891173969 4006427 307322469 590545039 201629757 72514477 57128445 223943103 266329229 245337353 666320663 445693061 995076379 708195639 472867567 890789353 171202249 913739647 58745419 418210233 105674883 989985401 252693625 261356431 330847289 521629441 585688657 863510987 342342117 570196279 40779057 114256021 760458893 969910157 266085373 552250589 76865847 916960179 117114917 343341917 521384951 212969381 546754719 227755923 252360935 925081771 472658667 71760071 457647401 321508943 293863947 16985867 42751465 534849381 702358929 869712951 66121559 911769867 906069651 189499627 216043951 953182627 698242733 617648525 439279153 517373401 676931847 605454161 6586409 657365925 543503181 604249391 77807593 483011903 797696185 551079139 596392907 293379117 334237959 314454009 459021619 888158779 601720701 592562369 595524999 73666175 455769579 643616083 540093759 936313427 121604517 452842125 595383503 690135643 245055113 198242075 848810943 591210373 520243713 635630187 302744469 582918659 554953207 769762741 600318693 702701653 585601507 141400825 214800969 706320443 320025541 674380801 445245795 347038661 809128735 909827933 636154847 135596611 490434051 798953315 708899437 388742485 855557127 446997301 632607177 416219615 858202951 587683773 908567475 729003275 432745323 705155239 989926393 544899407 995325601 365491055 310439785 4663655 344848541 397935187 896847071 497848661 58181537 497052509 503866941 710433641 342840179 518099291 34864495 676150069 537389149 789438695 618900837 282983063 93138489 504422241 233031451 272319663 16619877 53427699 986204305 206387951 259193285 251657353 334171093 406041095 981573579 180202205 546123765 728440565 915595113 458413937 129451533 934636029 452192543 999217805 449636929 464557995 818893557 583439167 653672119 290052563 33984375 317360225 71491237 358294675 600156861 921083795 105259844 931262285 320312163 481031741 759515353 210690991 534776209 431321231 546871209 68121259 939374069 170509953 877294857 187211137 744015045 347593429 537893459 896123057 347860671 953762833 243923435 148738825 634086441 265368455 699859513 861293727 779305427 142131791 926922927 389227981 813223441 892226119 711983817 217870391 412614593 741764891 566822151 461670859 596612941 208783673 546801143 393762749 382687135 378498777 815223079 32593799 666443569 574991101 269271603 253833201 832754429 11510379 713256383 675164675 921086349 966161587 584135281 207148565 488056301 171493681 71610369 968025283 831499445 934756865 238859299 643778029 690862337 675488015 999609759 38354371 533457273 338575111 90033979 761583545 148569931 198274661 77807309 967138187 190953773 50183785 546796587 631864893 974613085 304780313 427006009 271707419 971197345 487638341 109297635 255781561 177509961 276089735 410421531 758225909 945925417 156877633 78889943 578256113 416315809 580890775 462911263 739455513 890143383 835841659 893833209 487553827 517160823 632240039 20551803 250721293 251375929 974005145 742602427 618387479 399195485 439576475 127606239 111432911 459718375 933658555 239793935 871375625 778629989 24829395 163593341 94184931 738534895 217065091 249645669 282583487 228125729 25415731 677565447 427843915 936977699 618249235 607788721 553989755 765293219 177705245 718967473 364837257 228551639 750831373 499997795 763241979 399585917 360356721 58349355 493418911 829545949 104022677 932770417 472814983 174446017 768824979 502297255 785449231 905144709 324341323 695651401 231503067 909469955 304481891 588289241 804041689 12320673 76121679 806041055 147514941 196988753 495354183 821664241 865794179 246086021 541128519 946982821 561366127 374224959 200627227 713296545 184829963 76340995 117681235 665385101 557202607 252254175 14002759 339973147 387551223 34094187 969184023 307590663 15925443 633045699 784991145 219648531 679276613 393963663 155423665 578478087 888497901 239691261 703795877 893961913 702203257 299168451 374695621 20345087 728793069 854874913 426997787 904750271 869320853 779305689 726182263 725011937 729846533 49559101 978370415 183028055 292933403 117398817 939747175 295222301 76575737 429845477 813781123 834527797 368152331 731201647 785418935 543160231 449466633 9580331 898287031 857017225 475228395 811534355 700199433 297462513 788061431 375804323 512919535 252842501 171198907 460334561 428286591 19202285 936090887 517951323 243026061 150240987 517248763 359615529 147400123 25476875 346374905 30609127 758632817 635219903 222911151 734215613 684142561 237446977 634802961 882022747 124709119 214830305 7359835 784486899 312523151 120329213 973312527 291758149 231596057 103263987 132178941 22731415 632784875 313436721 903492919 958259641 459168799 742121257 505862169 532993 41850517 65761107 281447495 475305035 287624949 445552947 926688177 529942781 235288495 562463057 29283207 25872649 739510011 942601027 803621189 982957283 378643931 508698783 853977011 207838087 926568213 268136971 735989211 490299775 462463547 873267759 831921169 726301657 679420581 633129661 890024691 872752425 323091571 221237107 856328803 837977741 311612811 322489101 6685837 299006639 973107361 980530779 56684263 902507705 704255531 462450987 479637805 515680099 197162859 502255963 12688485 24656363 918217063 812077003 406214615 406895897 467692529 500226917 455793177 254958137 15747743 737510427 766705161 945092641 400826837 729644523 734790601 82375729 413325751 165948881 305171911 669863759 300513081 221733085 239347125 342749417 113389841 603195167 902269331 110744563 493542591 854726831 647881889 310976495 564353421 293509299 919879789 273907681 938985355 744588371 515140557 891591001 719498383 874982851 92013531 680100715 744553787 746921787 904071933 497588661 358692343 932395007 578245085 460287841 261416437 962826583 936208497 682261017 30519851 196124569 297103603 85634325 398670425 637260061 422635 558862355 903829511 861379907 525352995 951933019 582310281 473083771 207711151 181327289 690468083 996241457 42372843 386424709 662675751 554078691 336223357 516285851 376194765 993372179 152727375 308625251 22610261 539829835 443583383 252433097 405152761 304138011 281522641 532400455 336155831 630038305 608517057 724137689 120281431 305439741 535354739 898188549 502038123 216345945 860104251 341726171 475596875 384355305 617050551 236786927 153916439 150384229 20352713 327210079 398833847 668778129 624345757 333938645 454183387 690201143 490950059 273534843 520003323 616567335 729949867 608275721 399795801 107653951 962412451 552950463 363484667 703726431 465949919 795371615 393885363 183727729 367822325 838636605 268553495 505466729 499774143 992145449 15156875 412037439 387747937 113757317 663170613 496799735 448347209 591293239 898841603 934927259 473400107 374838445 946895281 409836347 828004353 391235293 39914943 570257909 240788243 852872261 54315635 202600937 820588777 980988651 249464031 426976577 929671003 159112543 349511129 438261553 221070979 547224501 943247107 315341041 681885639 398885003 700894151 727132869 344219345 958196747 327193169 909397751 617811095 620325087 493624989 73066201 197183061 799709505 581536105 737156037 304106127 568178155 845925183 644915741 715366927 498332967 109920623 612806731 475760365 867864001 712942863 703579587 100337029 375390737 263791105 483462141 372390777 501837555 898699245 569830269 727524533 262047951 574374725 857310925 553946735 6833811 581978685 416422269 919776293 187822261 803153881 691923243 580744343 601716787 797919969 438655095 476284627 941903763 937417443 890987533 781844269 820363749 459195705 645683099 618171971 95271869 970580995 592487649 578384887 552555065 159354665 617993373 845260407 135563267 64183131 139292057 450503477 289697349 722153233 448004011 532769777 557677497 409716109 591576747 883491243 740447129 819016663 154977147 944819633 50116783 592942525 525323013 217896089 79480391 940805335 780386621 456976701 724600633 806320521 95041565 368853953 449729761 160856569 508810917 127240851 354220583 628723479 619232737 778130279 562231417 552123291 302252513 532466233 631827661 246521093 284133059 891639371 465258145 769808033 529408935 541604141 161746173 885534841 150717369 63405489 448272235 414392427 317030697 65208051 156455175 682885907 629353009 967850841 854126443 659883741 915097109 60246925 242456509 401246967 31316511 544003973 101571503 512132185 475107489 879643517 914929779 409448131 348280821 799660281 119639499 566767039 987585917 806093765 566388475 818567067 315550883 994744565 66045905 908579443 227326427 787467239 373939109 639419683 550953885 415839549 567867475 407162965 655559535 561383397 340722499 324262267 756222677 443826193 535084131 462830539 745502311 643994175 999422761 498018629 919158461 538976307 637273491 512196529 676573049 448194043 963029801 172553123 187087431 918983911 31528437 282939759 995400151 458880663 256921491 504838199 482452195 362706925 396973085 104123619 407939375 641347095 901173049 643471139 849501829 159663497 629851417 841247857 989292471 367691005 506328431 300498187 408339871 106060923 400943741 402133241 241888799 148251723 260626439 448932109 395461923 814084613 430079579 457778143 238295963 403520899 124554577 844762319 244131969 819485163 730716485 748529413 756901849 766620327 524595745 497220209 446878125 918997101 497358927 77973707 199279375 451278903 368065991 259965589 811980057 745933901 861673223 74443285 607541741 647845177 503089685 533328989 908681143 892326607 576037249 204607045 945651623 681099563 444372321 823207789 235020535 64068019 853393489 357924155 720394733 885490195 148392567 928955875 1732815 592492861 302527109 493694299 550423281 416937071 772265647 484239973 487153069 28089901 435909553 16282503 543059301 911639363 544224213 79530001 305990275 138889157 678066153 851382559 370448507 783776785 173850687 162453645 95015623 398958537 15083451 507183111 975282663 708014299 600394943 137138681 582839911 66269305 591028795 616957599 339413977 734562339 143858855 261926135 61982679 700381337 694396669 601542603 294668549 146760937 311363013 972673195 153317385 485555049 794067471 467983085 897786009 133251251 789193329 762485939 261921903 489026219 473171463 242991077 883262027 772091263 388549495 236413749 450499833 646066339 303832051 17445143 240916043 765344211 108205615 708703439 53199387 906539537 681475945 350623589 121311563 694405805 228133991 793676967 427270343 961201209 47298167 928171055 895580287 209610641 837774449 339404381 55693935 429904091 372076979 370109273 839124887 974710913 43850529 359556627 692037891 620545593 38240299 857833285 235976389 584835583 973628359 268308077 63706871 839100183 202486645 966922451 597101245 251058957 11677239 551790729 688736573 443387061 467688863 55907687 314865837 54446891 825331907 339214349 915785543 64657621 506378047 636100833 54427211 556684383 631627835 8929047 621968645 156864955 42234211 56677287 187956681 781922599 964786673 734510669 11161837 166032425 172305825 585442453 965342165 627547273 382847417 59532495 348986349 598849885 630078983 708402963 639023013 931514371 190525923 692837951 86490487 843073821 8620331 866967295 225439977 485038489 83316035 585327809 96032641 842890667 403209245 126821053 312673747 887780301 255094571 684046579 995928185 424229319 164845677 240435501 741710615 383337377 473566571 284412923 342828883 407909555 46305329 20959155 735364069 313100439 240333911 220424567 91400577 245896755 73277433 932841009 587952111 287115441 386280639 921435021 80066805 552645767 53480661 410583815 512972647 784978031 759903733 428952797 670362143 986982513 140645467 313194265 270120193 122183383 498749901 284568713 852982771 161316149 81835163 161295815 681731053 495494503 265314457 237506099 789647843 297315987 205255719 693476599 816655837 412766243 919487273 771503103 703718881 617620687 110538767 819641093 689198851 669130127 328589009 58746507 634323549 957916329 155149801 491987673 912823827 838101673 381804385 461070589 294768717 65995107 488560069 31773137 791925821 947222261 505128237 117201141 92609311 368254145 143924789 984144337 557179699 909669491 999166213 624090261 992349381 344533763 99812427 587843385 744159015 336258985 447353403 183654015 36782517 315319019 176678807 986644205 779236045 882293655 926998181 771954645 120933085 963496893 522386479 898074703 430257493 346630589 164385935 198869051 68350897 857561403 390020259 369201983 355599987 173614625 406401233 631049679 398863395 815740323 417553925 280457249 771850837 293301569 724774583 554673463 130998947 629220283 728429031 29332951 673788337 186490913 106309145 245739921 25373735 273504965 754427483 517446593 135501239 706838083 536950085 509982339 467299869 315877505 560827891 260542915 483047449 784376233 524854029 920708653 384982137 915587377 251990977 900697149 714735883 706822357 429803717 109302579 573630379 885148057 900488535 460935701 675008317 292255433 150453821 96043699 427389097 503177465 217832135 529384103 857561569 695968517 181451209 232814675 427786465 247681299 366315683 160799195 392775849 497356687 183789625 26414129 853658695 613190699 554805757 306019343 462091209 14850789 339175649 639803123 383951691 958959361 945410663 30870567 266256881 323040267 765207955 52217273 627202275 741425881 522363379 623922051 471295571 280620677 457780383 886354981 133383805 815698803 446686003 609720327 206118563 929717329 678309079 751369817 880979981 686290705 127093049 753957909 25801487 153104883 67187087 900418809 461108741 314954871 660243351 792431757 339935821 753167467 524046999 717095203 448991061 506906853 159120991 800654035 213246351 496218431 690554947 16279165 916464499 509510687 515439139 309884615 858907779 498681455 103780709 455589157 357690445 615052389 716481525 691094735 779415903 837216379 720299853 675429313 361343573 725969017 21266793 124215239 971499219 750790249 523770829 867505009 256594049 972053407 773900429 649727255 3546641 340877751 676372283 134617561 84246591 433869719 218013685 180644509 777576141 699725417 184153187 720662295 931089283 17598115 893096627 747237565 774645559 41126145 238969499 933682639 527812287 863917959 545821785 103482967 915066881 575969409 895523253 928620837 266041061 883369349 14535931 327325903 554814557 746714219 756897281 347349177 84727653 205379163 416442663 666719751 544982527 647753921 695877715 247731885 598352435 550720079 569684977 134525535 360359703 497455109 750637051 780044707 797562817 800856611 946361067 959629499 982433367 226134327 154017995 558896317 812543745 133148439 851573801 950257789 173763315 51594205 937138969 559529373 753959269 30814957 154673209 370026885 537349785 189597685 677935025 781695079 585165021 998612457 796236847 32358967 948312447 694418947 33299945 869366713 970890205 537149131 916168095 777158517 813179479 300577033 585928595 771592377 542170967 751184085 958310551 320153247 578410575 940316297 108281087 478572807 848631995 95209931 776291243 807501721 711832861 29098117 114305281 758782149 422298621 261300205 88190959 75108547 671302897 420500863 737723625 356696725 927562639 104510975 558350065 567435521 311808125 736291449 818147467 539911065 808732259 635269441 729854663 766393781 831355637 209823475 153908281 889909109 903485419 858321781 979332095 386716863 738762249 469590771 525708993 71977543 562146839 433095391 653097901 228450947 571017707 877970679 889289083 741513397 766797659 842007615 63102821 3565027 27991373 956890627 489711669 700377567 15196329 323874009 93431093 541585983 517965155 887241113 705531713 142633831 176971123 832581741 742085555 179654523 482813405 166313915 510484339 277519727 15998377 162814781 439539693 426821113 935616749 207356651 633861659 187951769 874399167 101081613 199968633 981774489 84224837 973322283 826974477 905661961 502867623 706442781 917307495 565961407 106553369 375028477 297016985 371824477 257378259 762070831 109433671 378917453 234666265 162352993 956388755 930055867 121202997 862129031 301415727 248790435 346870391 723594205 806803277 949583043 332093757 611929573 840220077 215586211 605163751 15154031 216115095 68806807 589418719 544788365 201038039 681257907 188058007 701571483 431646403 327979481 535166349 388418111 249435963 545719217 222300733 417765475 893012901 630360747 206796087 644551743 888081391 525280257 278067467 778260555 348341647 750243249 973504593 936357451 792018563 537766275 656440495 490583631 80809041 526931465 659024335 816739243 915543303 794021787 387878495 994171895 646168637 75677017 144728349 780407323 997420561 209813035 692025803 787398467 221214249 339403201 151556659 162887137 529348785 224048019 950120231 247007925 755978081 377519075 694071679 454218175 413176441 44379831 832781601 467981133 410436027 625277665 733088757 424313589 421425017 81287415 242800879 78215311 515483529 65260637 904028423 419562309 924619847 401017913 519191105 161036415 698085787 267284089 720906919 371362545 534452723 180530393 52101963 740373403 557096261 162105305 169262917 109727933 153741839 615773119 38044347 177631975 921286231 868863389 266918871 687110635 840853675 164005449 894690247 54714341 240348963 981241189 132848075 508665401 921425501 800805467 609790497 268262039 814358143 346083671 453695251 221483503 617897013 330017365 45693943 102375293 620664759 675844627 151556645 44190665 871399877 63641371 1918463 499304349 103287459 118438589 272109551 633506573 764206367 582082575 646841193 186025077 409819023 382828787 799406565 411055995 765580501 399468305 462971879 940346379 230372179 798225115 157876729 653124439 587397623 237537925 703728557 701776093 102288699 977876243 638769309 903010145 472586267 408876877 482078571 646874095 60636959 513180865 962586305 81855197 873238865 946721481 627544147 693310659 268376395 813544325 294305241 785304969 615943211 770336477 851038743 176319323 784261271 741876609 279664087 190967725 39976379 521953769 878928619 928553529 555842129 61391191 933929259 350922757 88070547 478753491 528714109 625765983 390709835 903759915 308144331 601184215 258746309 427511031 26748677 934831437 481383129 931382683 366265381 54639333 661132515 807398973 549778735 811912457 814332107 147404749 898764589 647271279 702216191 996867843 209381937 957606417 115628405 922924385 280909397 265417783 854774955 76320813 486611643 537639275 313013929 856373623 669328013 785202817 800601337 943930139 198934015 970199701 159966389 179120053 199458633 885404685 832324987 407460273 62767023 537427859 852697713 832641085 35153531 845724445 422828355 431593553 447976447 993941223 600212779 328797101 65006229 33824373 350792675 837911003 861669791 596750227 37729461 917106475 431423111 269350229 566755183 451480499 510795201 920664343 74811235 41006677 875914695 542898049 532353141 749494713 538476569 177703801 363748871 560040785 526819395 266088759 293874697 613384787 188075735 125868857 555652081 361639103 127998063 287577407 827323325 981304415 232603309 774175063 574976755 494223297 19275579 357629143 444560291 325110079 483277517 683995991 565329249 259057657 455864347 640077761 848946253 997003991 856445163 877802301 597455373 411888521 307298563 987086911 955758799 160857481 112501045 522876807 996576327 308573461 399877727 137814293 323116727 661905461 635977315 56419129 65079267 792915387 690064679 28491139 509645337 633295423 959837089 222469077 510317361 55368993 78283465 974877005 783384967 746077577 803820709 163941723 481831171 97452391 519641915 361169587 585893395 301796467 501061023 184271953 511795887 49845039 714354411 938879609 976861521 794098145 677981505 58626485 856304129 127860635 961199819 180843487 945560911 892366645 457583293 939096845 557700943 318282319 1184849 418731687 323036833 218268751 800551879 458796631 912176491 717166953 787924331 259015955 164527707 819131795 996278415 770401815 882753445 712909199 428535949 867709927 162717195 376408547 701318599 102081873 173775313 898020831 990902953 482040933 672089541 831995551 697403043 645926275 885197375 817788415 792540463 692403789 861930525 567949739 156386513 573584047 414584771 372285967 388450837 460764641 42186273 19777895 303726729 202441563 961947565 133362865 659659209 2775013 611670375 540931255 465824887 248648839 679582161 988692745 795222845 873327511 839762941 907273981 243426255 439829427 331530367 168408245 820689895 915859135 680344183 206855193 337795141 552975589 816011403 976379867 532429237 244302235 857808361 557980271 416024073 509565595 920483143 290000153 55402779 375905517 875791841 899580129 994784207 938080217 42276481 707141525 406283 765516279 611815029 84402895 601996485 410476067 795229841 857814767 396173559 395253885 68906035 970732061 503367329 504946551 347972165 785422665 568189647 833733825 896191537 466532141 314407827 241065559 744781039 762730823 318053129 81360257 281774077 655892191 216384591 301741513 973323875 514264071 329272467 326285315 592421805 664307351 845186053 656830285 574954225 45795119 130473695 898314249 386066895 192598583 699319911 209466597 705589101 441610973 421750755 649021395 12156281 157864991 293031847 584656657 27636009 599676855 788922893 126696483 794090555 77807921 319513719 921663701 749286389 930096349 144476241 37721149 859051557 227993811 606099979 84614069 753227299 305436657 398422049 955942369 930916301 701575395 38167571 945336239 241667207 270242071 230193005 485094225 392917059 646297541 837397697 116358471 50961011 716964077 798673067 742794577 459051799 859872345 305724617 552206719 199184823 825285273 563093705 870022945 527159391 258320387 483358043 632799193 270412965 313635257 547197755 287339141 754508459 644860069 702311465 119965781 695240721 686283891 762023921 39885245 889299723 21569183 633215333 528936825 998960973 21003111 443650911 812612491 717194005 429083861 885876675 959565379 344173097 66273719 960721529 90330419 227866841 148618919 936982643 400683065 72230649 137914117 48085677 517700725 719460071 576049147 462247207 167627097 6597773 709398901 771266029 943698325 438575189 576460077 681943057 694208551 421703737 572059557 786469039 294802259 508684979 73886501 260172261 775100325 705475021 118309051 416562145 167067889 267728915 190228801 322866643 466440533 444052379 741037655 237282039 417446963 201935111 827883365 92344205 955061561 126279801 220770971 466023907 847940441 298035359 692515313 468429127 88984531 16252851 735773737 730872085 128807207 284101233 671247305 53961647 92597283 605408543 780119075 707154305 779729629 78062221 924907087 518413819 771953071 275022607 674883117 216368281 258054205 182256005 810564963 406685661 254603381 928634963 499217509 464557135 405399947 662759019 749519209 701650307 868537593 351448127 514549617 893590805 651565959 429521105 906026819 91754403 453265471 325579429 835122289 21705691 650921331 26136777 111274065 235404653 151355845 616526291 187039493 590991381 910578451 695603941 995525751 304833685 317606287 170560673 636797269 182506933 646414505 574713399 358907413 447089481 451326493 98267739 863880701 217999149 150671091 160697425 156837393 551170111 11843189 45154521 327836705 524669805 756215607 613219653 715359687 999349927 816964631 124052585 483525477 885069801 794435383 352896421 961572639 929411637 376805635 956714973 736272359 640113299 580097331 487180419 422097015 708693271 384243135 466285705 628736589 328336349 310311917 424493425 376763571 204254723 252236105 200900157 304581047 322363063 999187111 376145025 589613363 518708777 478201125 54967117 976093639 148693653 322724133 633593925 519360987 331929917 121216341 597955723 674403999 998297449 273144233 733666767 418125581 33692527 946650203 252039495 401621731 320220581 527324403 94666929 317870505 44761457 353692985 146170195 530962353 875798587 467695173 114596605 741848339 736544885 756104561 952622339 514822319 360280219 701264225 513256773 728301355 669532205 606435075 895444777 122557947 806070457 747533451 266174107 109155415 151799501 115044469 176958741 120311867 827435271 304681605 42012305 183853429 558705925 296308421 19538585 501049999 835635829 830520973 62925115 495732199 358525449 312532857 112322057 494714523 635571833 146735721 728000295 811037585 438780295 192943247 79540279 597436029 678208257 149710939 78920041 46258389 80471989 967024267 794140275 444432089 551233153 928519971 922204563 672551571 621894467 496558703 324221585 774923987 356485609 34728963 428080055 347540527 224264549 176070589 986146529 759564811 420683439 24366271 951935081 550292875 635011017 573013623 463915061 811293859 829208769 701629847 9873079 89025799 596291749 186798365 788000225 23580989 426538643 481690445 584591413 298985351 578559657 993257653 747621303 368675579 491668245 330515237 112197877 547875949 788007689 749487805 738407943 576003455 159367613 643068129 842589067 431418777 107863413 541194553 715835813 177039597 924810873 115195071 373581573 909227887 318253087 910232237 620726753 544296419 523040701 620200837 410808055 509285585 90686905 864946711 199015055 231773575 356888187 348508277 18212213 449827615 385421173 777147643 91554303 471973241 437860387 926707533 566923021 871422525 375960327 189922651 547670789 713122267 894349483 137137237 502386389 470372491 937781919 766064567 59115761 867399503 299998849 487350857 292415579 992567533 717093615 242006805 369663895 667191031 915743897 555770991 423866803 798116549 398840107 940274421 680667463 456032887 981758563 649433225 696122225 502221299 114990339 760460119 469536981 380811757 411373011 411799253 400338083 921229019 305036969 465769151 326605201 154526207 16817501 110235163 179511007 465247839 690453199 846678065 822954319 387542989 591744493 663601047 96293427 308689375 530970281 546850603 398923361 277949689 719525115 564325647 684297525 617815359 523160039 379353009 529009559 590184869 76899959 4922051 853255923 506540769 89195195 543159877 765678147 68736115 820920529 942089591 350939395 201064357 859125209 445363177 210718777 757469319 346393341 231501419 18850675 478157551 281672815 736133149 644523465 28829567 980323947 121093475 391488217 976061601 326907955 907243239 84857287 5597569 520097041 210078879 223350339 89647387 230516565 231688389 669322629 336097581 154425693 612507361 319629639 998274879 452128905 787549373 34652371 128170405 289966659 105994093 332745205 901294195 61997823 567452749 322366979 739472523 878099765 232859139 490947805 710139029 559434857 807881593 156887529 652768769 661988899 898617061 948259093 502501385 663894265 428220099 987736535 229832363 973686659 476697815 64529965 748840879 92388707 18060589 754179485 308748199 138649155 165295897 333230645 33158891 498012373 716135993 33742733 812683931 547689431 74308463 455551939 518412191 163264775 25291239 418714747 754378663 684468783 876863001 237140967 199958059 372017189 558281405 286316985 802288493 887494593 205147097 904930353 905182579 19974885 936553915 706651415 892942095 956980091 667753971 95792311 16075991 718678133 10646625 568519913 960280111 670494417 740909607 373024265 933509693 650396301 652710579 449076735 755812079 555217843 187862201 129520441 68946433 875711321 288551219 413201323 914717683 773747863 866459241 284056023 148778763 776624015 970467555 484573123 881100379 723442795 814527097 917324793 940428473 398469727 610875717 331948691 785142727 721755299 402901165 672022063 505275119 556007803 481031771 531796209 11901021 648140593 927738693 769265547 692894733 598638869 874476199 537709615 214951101 109573253 174116101 972114847 757505783 440142817 353176873 227589661 663128075 914129811 151360813 344582267 71425807 563771663 183419239 429798159 320209381 92184013 147392895 588786869 109009461 225138257 876851551 570221525 602672753 394813733 336552511 646314333 139813069 138606555 372318615 857049539 692959309 97477133 289145901 769437701 304363449 485785181 297012493 397727913 573293727 507636597 879984267 945855679 342219353 485753609 109107013 723368155 529187591 168306897 342349085 840777757 937389713 890703761 370073665 206875435 519648679 96841235 355224099 19508529 768451777 150784041 914468995 126164711 99606817 665854381 258802785 191893901 824743887 323154817 911981323 492611559 604704409 539487887 77890839 207755587 338423575 789266123 242189663 543725689 4326317 414045741 106900487 86409445 630967425 586707897 124019581 545976175 282409603 49746041 616975733 266773893 525865579 409016959 114300907 172519965 95159227 513799141 508586017 870645429 585685433 187708365 698471847 151202387 739054197 616512865 233018703 428631687 462506443 503609557 133817909 31139941 188731993 329318497 396929727 637849485 447831173 67477323 331998615 543333669 572349315 79939799 692719285 200387289 972605001 530264413 71236175 87299555 322475159 893467957 79962095 610238461 892165111 84710849 546428255 744385649 535456953 380005997 101667763 245341451 237997811 860780457 681888329 983998755 874069895 294511599 215060931 858378901 533923101 972156611 196900111 620416715 202952999 662589359 924603999 446395823 231705307 495066437 353483825 60766905 380431417 574437407 732519497 636839911 886478603 204395999 849003701 814574271 500245983 512395311 1820869 633348945 102978319 307963843 556367385 440490289 853146555 936133461 325343635 877314687 45386955 91631781 946936929 614057697 152453103 618254719 991091447 748720771 762593441 271678133 134772751 391468319 234877727 963830049 512190385 107332849 715509105 614637221 959114277 913328061 831925865 888866603 13961475 198159319 366599839 435672487 767796773 539569937 226578803 61665043 884470961 77748681 116385805 74757999 458511889 498973671 650712157 669172423 507294459 60253657 520959515 836980781 986058345 862438293 750983113 954067643 924820643 727567259 959205805 724309651 793610803 241028077 284152537 115839457 963745517 862993693 478917157 228235219 233322733 639236927 25250097 267460009 145300377 80830195 61903203 973681057 799518365 298307167 776825071 576972295 703643883 245862447 282547147 241694765 74632641 712126621 758277305 731460461 781902243 69535845 77137983 918721577 12322141 427256269 641324973 339690701 481226499 19518371 170290207 524631241 683851507 958468159 828516209 861544857 569552591 383247999 426901327 602377149 591884421 706731207 142849061 149077441 175970631 553426951 721684527 899763511 3145365 178422453 127742571 82227641 585025839 793384399 959603107 540608489 430307363 416616413 669281639 147094131 304989127 228457451 322313485 957441799 121624757 296592527 784676535 321775967 639786193 500293865 407267917 489914433 686540873 160658335 161793665 385809523 22439569 158064095 808264647 222412745 288886629 789268573 51101029 374930461 862131655 10127451 890925661 248053841 986903815 233163421 521251459 684393297 90089911 665908339 943299439 212727053 826791091 14762161 881491841 829662591 753063457 75787445 459670241 80211885 93924459 481546599 93214337 716634269 494215495 271299639 813086485 970799203 374877361 389053463 586098721 102714137 120808429 756717703 523568363 914142689 658422919 642940559 699713413 316581863 593811795 288246715 811136967 451345755 84341615 254883105 434847825 416987257 473116475 415004257 254309771 424091265 390473065 224506529 658890403 338299071 983541225 637091727 744886423 48850821 157353723 767875681 454312225 348109101 897108511 498579667 779053517 322645275 286492963 998861873 722669803 6111413 181993243 966905411 760311443 368761969 382601061 641801315 618707875 921744585 411962531 882036335 641501895 230180157 670217155 873265099 40216941 180831067 252287737 209848935 118570701 253930417 87235775 666847675 30874855 764576987 525965021 422684609 312592773 772084347 442553179 845122563 312689463 634108989 336244625 967309 612198995 312978641 776525081 321126133 427106811 832262899 125344473 495097691 95836441 286716515 237823483 388842853 201309017 524959981 652353781 201224513 790261815 311922533 897682049 769223845 466757617 30148769 870319783 62713807 66320529 238723717 424015281 170908805 76118757 717835005 239843123 955470613 474136967 886964473 440791817 612327257 680446425 734548853 121762905 123814825 754172671 201802353 222423693 554260977 289546475 937990137 52604509 267615899 235012437 786678049 676319425 154933663 552853183 712366335 273534975 229382525 39435121 470266807 729780387 514364471 781615737 110952821 272898689 92661345 828499121 428451177 500404151 556039691 58904505 297114319 288837031 12229591 309029113 196109801 821428733 912195563 407907489 31928575 559714737 56515317 342687913 666759013 852232699 792153387 60402643 897889909 737750369 178223435 725715109 650176147 956984497 997267867 958020721 93662759 422279675 539910891 741387855 978123939 322571679 707865999 728791071 56083843 642901825 748906087 504845703 873260871 73138379 490511319 432491259 189361787 405943665 944779985 845423281 543356083 316396211 799919559 694570411 668462469 924496721 988252603 202460335 981890453 94520923 58096943 254230863 470099343 713514019 640515381 383750369 351478565 400652613 595303011 286466439 112585741 213636007 658266069 102788907 760361743 669401971 520882739 829153403 121513713 237937183 974847147 783893485 646262663 601470311 472395763 986528967 562698413 284851279 299486537 155817485 221476673 72097827 977224565 955730319 910637105 591476087 663346113 227133159 487838573 114228007 970698503 763749495 266434801 676167513 200962213 997074531 91320255 380540025 212529537 979622813 863482591 316926521 784036615 905531615 154347111 311995031 170584625 234983335 271081069 380625623 984181881 972733759 830693399 502989957 470165737 956374965 387050635 422815863 72308493 337614563 561376257 891441607 569789437 82204521 23285423 993454809 567058261 90281903 445908951 437738587 431673919 5049573 874031815 94966335 598005349 527926789 619616717 421678277 924478719 810446541 495766341 712022381 651143627 214624453 24262291 272260103 302263823 483143231 766992159 736827811 455025563 850844499 359368539 252609953 634018755 369198817 178430915 779032229 252371559 848980879 562321369 525929881 445149931 136423633 88066341 818286259 282679617 539914719 727806525 706602093 728812765 145853109 306930103 571518095 808370619 749377825 348947257 880608547 602652517 678943661 739670123 656464765 495823335 303366327 995203071 670950713 7723737 510718301 485306545 610666301 294927449 577948293 938845763 887788723 280173579 577286627 27586685 691338257 965920799 773569773 212961843 620395027 492015179 848914915 784426049 509656253 447816909 466382031 741988999 721945179 537068907 666903169 356099821 901210755 610953333 402004879 454452843 843376397 442307007 908503901 457434615 490742561 361670569 38172431 563306389 757691947 548405273 871137945 457037645 339442909 940601725 76710831 518610995 107377719 602207689 746074327 11382115 739700857 597014399 235573331 259927293 807178289 384706723 212740409 309382443 36987701 122535363 241596509 628456735 126094239 423177463 53068129 58903061 232224467 731860189 718944173 366768719 632646271 203734937 527037811 559652373 855345047 127491547 912964263 420661437 79720277 777628121 623958541 515788189 683882561 224408657 215410221 637479195 772426531 609044363 920721493 93241759 337435667 324046419 436240799 521744029 563153259 752319231 439612395 844073357 557176529 806784623 397734625 291630833 777663023 968329481 717512945 774795607 199482555 34684345 284526675 860641869 159172593 601616633 40123913 967618929 776954517 761742789 242187993 627384163 401850291 554758819 483842645 381719245 27794335 514445473 426521557 854461281 420572917 277591127 42514809 249156827 844586907 551423715 230291751 806818813 629240765 710478569 780642707 176152465 378209485 112917401 694091571 436930919 814684297 103678377 169064265 86839133 383340021 277866073 674607835 956409939 127269469 249193579 711967163 679116595 572198999 964246321 300109183 599409135 807837371 384030079 140869259 472487555 908316083 314812599 511475459 595938801 7279013 28535737 142135771 305171779 113424971 335060473 646383561 287088265 743158685 44072555 130587213 500194785 989665507 551888525 616159921 507304043 709775781 589791077 280677125 37453649 320714939 587778689 811545887 365436103 29142335 241669881 901427105 745010437 161897365 371120235 366451957 189964111 128696427 590487547 824328775 902968045 111174581 751504217 809267859 973198389 497591215 634693051 165434775 522688893 732931035 586526945 488557789 125056555 238906889 484210701 287854771 598844327 853872971 160545553 618051379 144470629 396808957 10296131 916700477 281969373 141301189 101876863 39085945 197120147 251385487 858599981 619547479 371975953 709303693 759000123 836746257 430479079 819621693 563335197 275196325 62574259 913617761 803001813 233920475 897380373 6178313 777438951 927219013 992380087 10530441 722124131 584618555 844657997 732273785 193944285 355863005 901083279 538068161 184226677 226409235 937696833 647779469 237067983 20333965 906754605 389192783 385801499 569230531 112947491 94716103 625085457 196971767 681227265 161107445 192519659 739351087 751866023 782655527 284340851 580614461 334772991 464728307 961341941 316292791 135921149 268993585 677835847 243418113 847704729 488864523 664701387 543869505 579304663 246681833 887040099 408758117 69233857 471612543 770498685 756235049 433434471 516012749 757751315 552765965 920256487 830185491 19764129 238301783 628008033 833191137 395308333 231225625 8065791 111165193 441433927 654299945 884568821 474009767 182292483 801132073 309329275 114196767 998617089 940252035 235092181 747538465 5048165 801637731 796001613 477828765 878313697 748943301 408806965 399686095 662087847 75436391 170344165 574400575 609502071 14437587 850188739 44253879 97648537 831251289 413241145 491424075 163849689 109796879 950654645 528737367 638322319 774904023 21721015 703413121 581227671 415100249 949258941 803999925 899241561 837117959 603535955 137881381 949809347 938477333 249725449 489498191 115625547 77774727 359331197 642264311 594820079 533641253 3231055 806498345 953020981 628640381 893424169 610599995 684069421 426276841 29638079 255083461 814490731 617918089 136247753 94637233 269489679 532166213 861550347 466918693 965318077 919680973 349345871 918620827 145768615 373149081 925413223 301401291 65339775 257225963 460082221 53483195 6229383 449488587 395760515 393878457 617494915 998171399 429364819 975436887 175854785 767173431 839607953 81616753 279428631 607518143 952536117 812455211 901165287 636387525 527520837 827065843 622052883 937365305 83490245 624934269 716618507 193717203 653997773 836029379 511212229 706702869 788706165 790604301 840476863 742165829 341923551 637109221 140448255 738949491 284242487 867447839 235528213 676280955 205190059 810905047 639726101 717710587 857222011 572604275 178450847 928033625 500006629 939608989 810886615 537555657 609648437 754825291 917556847 382305857 728489661 847985593 567887001 808796033 653126613 78913899 256329239 495874067 678976485 802336557 984181293 901585991 185416273 403027475 156219049 415988787 274009487 58127739 523528931 696875193 496797207 473886727 355785911 580266627 549972845 675936931 569590669 722459901 229072667 623410055 618167635 416694627 464503731 154293547 208414079 294790067 989952463 627172181 968302097 298068919 166495505 252548625 711792779 30230525 3606309 665866933 325090047 8154847 539108027 315774169 377353473 448862077 105336973 703816039 434131121 330919615 738504799 158506375 31411637 537089621 801214971 236516269 776469049 468466617 697513011 44390041 176162295 791185705 84463585 586050123 148095785 125318829 245325031 587455251 576527257 377840409 351621937 897846401 415355797 790485759 697793455 772195447 549986543 602108357 578817883 574762515 109099531 83312785 627379257 273129157 28862667 192294227 65563731 154357057 710765983 460451267 221088443 130309251 859342973 208328291 477728907 912381135 240440291 343642489 605493733 307024561 441972697 237703703 523865333 970987517 270664427 948816149 902127851 558297295 229118255 151057427 902261505 744218765 713950021 185607799 370369403 963113697 192283987 183895157 133424293 446470337 580610565 810505219 143447499 565643115 252011925 496925155 784233551 522530143 425226943 205389979 905998989 418667371 60758473 797732219 816661745 898033059 514444673 804128671 699117295 734797925 315246655 603159779 842338305 451902803 479255263 642646771 885539495 140454491 675376587 657966651 600647533 54061743 830724077 842668279 886389733 395281869 747252669 784502311 31037865 50760315 240546361 787202703 772989275 310769089 641927145 644941253 626544039 735553015 707547609 143875869 669290045 858608055 799389343 931828921 267832025 95861989 984489307 605301889 335526971 623247791 643627187 24388391 888780079 6153609 762335699 859669279 911859591 384509997 511256437 844486063 145792285 521121443 808598741 327226329 918450899 12186165 122719929 299168113 569625493 32146805 329382511 77846543 978796371 170158917 274237135 684278291 300510729 721747907 158260535 201487781 527908023 753420129 747670155 467969463 747657321 120577999 684530747 772227837 9205041 759498507 554903359 323037947 873780521 135942743 834420497 534859511 100113779 524045122 185177787 603960067 771803963 434188451 868393927 732238583 619084465 951561615 375130449 512361331 23681041 969821807 210492659 337047775 799519899 705932783 334201813 158848107 405521307 120709633 289769893 184497935 572511075 885770467 446492567 25254539 627798095 208043545 814956909 907765867 517648829 758664559 857539179 314519801 128839963 883631611 648316513 503540307 563997913 111950103 89368227 891431253 56062321 3533671 842652943 284519595 694337129 946842073 436974351 553620419 534131527 7733919 581066381 412346837 360301215 208763449 916018433 84762849 274415371 117044839 828680811 189591217 134437423 703535417 150901837 817318357 312137649 210817023 783972025 303373987 764192327 265467995 477356869 312531005 589953195 45224235 648125453 316202893 76752029 420761503 649060025 548500543 396757483 335273515 988070263 68355023 480297315 502028683 555850237 178504827 114636257 756199363 760615561 77727309 874585927 597351709 450625249 646625299 133376897 36691249 714063187 901868135 623919999 587746267 112699319 527922859 823513149 366194237 383929451 852733443 922155453 780851139 305764691 146212961 74499079 842865955 268370145 409707389 948163631 709264729 506348807 436010457 828942159 323897001 734340679 33854909 282457995 216620447 413314723 396041271 409589001 712414735 366078637 972430881 513965825 924016151 901872763 226533659 909438119 202345753 862498473 964483213 948736579 854677699 832347487 141847719 292817435 110529543 118883147 653833057 25092483 170541093 305402019 836176765 797488087 22666653 188159013 467163009 380151669 141183293 568219159 503500991 864383691 652734235 632734537 46145103 997147465 545283473 965396495 838405649 358003307 673723459 400255305 780456875 147741361 656058143 991086427 110327185 899139753 171152729 269076277 287132665 235702753 75354731 134737231 694425061 857477621 281835293 405631139 967895067 367970185 28776057 13257659 543632429 267522885 305716945 524829091 414949233 523245787 895465159 117972211 649445899 885435399 549525561 131506887 172573663 725921673 299261785 617087943 319444897 499245101 886662039 171922209 318240709 93715399 267625135 58433931 509596561 613083181 144105897 750523459 169993737 962492485 353880527 388206095 513203453 564218613 875100085 27623487 748269575 675593269 418978873 559506855 536236425 806679547 999826301 496183207 50972071 255854409 50905069 24133413 720344915 125014317 240724289 547237261 349644103 252406709 811455345 980913113 743683329 769817853 638846915 610420611 373624267 145245737 158626755 908486549 33102771 883039329 952262213 2411931 693702291 693047767 885763687 572511405 911190283 724103367 948396171 864381543 358941059 127872113 84485471 744388593 969014571 850614819 402490583 554117881 929473277 209195563 434263341 165622453 15524535 226309863 710403049 209557731 240000481 190126517 374666963 290152139 912184525 607968259 995438851 45915193 805182355 119733825 853106131 677416067 137674515 890137835 365269991 653203849 560144373 780835203 253878317 40929455 736450983 918517649 630321369 571387367 151565159 715531691 601137255 880601763 501485359 531304039 689913499 932372197 531399885 506702187 272466303 713148465 471878859 15408223 964706411 550631573 113539463 573162997 716162811 217264553 874068511 765201129 709945361 622576009 622388601 944067325 255810777 797194717 271886665 878452217 887188425 911765203 161248005 752617651 551801245 288069667 910120173 450891777 323038809 517162503 517666571 111723465 863629897 706247239 928042031 154320371 558951169 252693811 913961711 166791537 840174175 113239711 499162799 741315903 682217861 730875627 644665491 147412831 603428833 341935613 890699919 762512345 192741925 613476929 591485527 90152899 661519183 461777841 792473201 97674803 543390627 229896905 414614815 115700047 900964271 140433807 556786039 76176191 461876035 773700753 887322189 929565493 175933567 241137127 966586179 620467309 428270791 691073581 229897153 744139049 929476549 137710989 898616825 972826547 858773101 981466801 970132959 342508891 438896639 615247825 796026935 328401791 129357051 206728107 323227017 916015229 918940721 973135493 216146723 454773955 359936435 969391407 37385759 953980355 725513181 353822207 550778973 547328245 159842901 506674641 945046917 210998493 109606149 874309899 870513671 799564803 101603619 340731039 347113499 788682749 507732523 328233217 465521347 512155745 807144671 898049327 5820101 757929429 305172047 742052783 791198643 223243521 365203661 569118095 91420901 887928729 31203575 580333415 490537595 97752917 989416623 698246739 861683291 929771767 406776353 879736061 674035001 914493773 947935939 118376079 869493131 356169767 744639059 726754753 937093779 119910237 988057041 432097233 805042519 982809045 440291979 389840775 446363049 906426999 266509589 955674159 908962079 204502327 321552461 37690015 424338461 790273549 630726229 48469559 284563655 438240763 122119579 902093789 897251857 481930767 596845521 525536511 480959665 333350489 170515191 398913169 248579623 68826353 721793613 678181397 72352701 148051197 370529635 428328079 279630723 47888293 452753673 356425103 281323855 852620573 508898399 59747881 815736771 407802781 484343241 997369851 825780553 293071977 31913969 789932591 773751053 902696137 175000781 429438063 825622539 931247379 197507735 373966835 275011585 846278559 694937815 170095739 964386425 484420559 815921495 991269193 296472001 121065229 769045291 380002351 320162291 763941323 415862703 617974915 127480815 317210757 916068745 661868065 891098717 78543037 915820963 696248945 529840301 521914365 170070579 416142175 977617945 606047447 950751157 469298277 635767455 731522019 710038509 329016191 892523527 825829063 514160871 950361651 42971363 266928427 995919351 929036433 977703819 907529667 752682171 92039725 876009247 728650055 475073557 536525093 64750727 640327547 15832883 696453411 928810867 837258793 534519431 102800465 444324699 813665825 107388623 948917351 453212801 879667265 798577167 799102885 699194603 445724777 908235413 486517711 439919467 345838723 822970353 578069811 344928407 886259587 825181699 950909351 218643411 820200545 441650669 184363915 866021445 773647137 455169309 464815301 40258523 723497421 130178119 538162115 317197905 909265271 645214821 960806011 110105639 735267127 329147839 137702763 768797603 861229363 809963741 848268441 555765719 963529109 495886743 364547733 801784217 467825547 48701959 340556147 595006603 593154131 212286867 829162451 881871895 538396719 593557989 990958553 962090089 380415337 571716595 398223925 715176317 281759059 33635577 515108639 124843539 713138503 936655227 172040017 552579759 924711335 58394181 861545237 410584231 584452317 185087339 356876087 994796303 166081117 460252489 8189455 754407881 538392479 371959685 274346105 107433085 677936423 30040585 945657053 70437789 280737151 949612557 443977257 642942301 394923065 311922953 831985875 552142529 535746797 967019459 420058585 657578641 109404225 623532871 205715905 899656795 426982623 288080361 596042651 510051193 179103349 290566215 237650427 450600971 641414851 947541571 285285377 615224825 750447751 567501835 409380945 823006195 505251981 676636945 617642013 77603443 583248549 199721749 349931031 506345653 851650221 890867479 435062143 886123463 912516485 3532901 967667997 87957365 127534105 400084885 453679677 816428887 710209111 574781313 655264695 305249233 497945151 518373455 750435047 197261065 100270799 993078889 875340983 477178863 610282771 959538051 863164559 745612091 518182683 836654493 480676715 393395823 262234885 819653113 689961673 331688657 128799217 418800673 325785003 770984051 914160395 526898925 442017699 821095723 498966659 846238071 196250565 882623901 920944787 721840677 531824049 654329389 811516543 394629027 100664459 834351119 556645777 163159011 707832325 207321657 518600731 709946145 602448209 224149099 292097655 821706981 168949297 397306927 915005959 700590841 243847657 363078101 922985013 324881011 815082055 474086259 387471221 736884907 46139043 538005995 582889537 573054537 364985049 306428903 514597913 782358073 499304017 947760851 812454025 174555309 605541625 908404203 355696673 817032227 102305863 84343597 455832447 365166687 732339257 525659235 813063237 643006319 485509719 95504923 830068249 984205987 356671147 560904879 246358961 561734043 820540625 627064639 556505029 69844281 992980195 584548531 233162777 172966571 270724231 476956859 944313975 69611108 678080495 510553297 911143345 912870689 177478861 979720499 865662113 185684711 609712995 403382249 73965353 613195263 636924277 335039431 147636533 346216961 670903633 848840543 128891829 27721415 128400591 195478039 185114531 173788535 382654541 930082069 569677059 110974843 934402991 835821129 459806687 851070857 208139621 314690413 555967305 480630429 411289957 147212029 420854363 939353849 292317229 813787973 650818873 532449581 183596997 873312597 268140041 181683467 41611959 148928517 704678401 788923569 867482911 201249525 722790491 25342847 620665751 365518219 771390807 894461735 69540933 996266491 359520577 408616601 682206683 380785211 626714475 129633555 852887181 326078221 735928111 850494745 379034903 69242103 835161327 806976375 521849283 744953161 56955671 144234561 651474271 432139039 528237847 225945557 218779199 140176469 155613289 42362837 920629569 13916311 569120657 527543343 758297293 716712017 69023513 38753813 709593043 921823167 492788371 47524615 622407365 822948321 506925977 303091141 936088227 584598395 707385551 688935773 314069491 136107555 609896155 658752549 84682181 862100269 59642739 339787959 364995759 160599739 401631313 497982711 396519885 672608949 649381429 463743763 964522951 26093517 799863275 580857983 938798537 683948153 864796997 377124599 72048269 522635257 501998109 790188925 294807887 690403669 692605271 835423585 152488149 703025247 404834265 518080309 731967085 701291695 124115353 963275733 1707247 839503013 214347409 117807463 251808697 509534313 164443585 717254741 329822127 292670701 741861941 360063573 177495617 688117989 661820927 998212451 951040613 968240085 257286969 125392067 151013787 655561475 663391495 853278209 183789285 441414785 807927439 667748337 433973205 142809639 622021127 222884273 625577345 574772885 507433897 227525027 131637637 596887603 105936053 70598771 369403657 757126705 666363001 541456407 564078521 313773447 348998979 335532749 734538959 739855349 807188847 670659605 332658183 50420487 585129055 255190973 512563367 813996807 716647807 583648985 598848127 776369171 889048895 70742727 218469091 562255623 252193819 652597289 392411057 509811855 143628691 293455341 700183635 160296473 65186099 674060359 910931123 27556061 535436173 8909745 312250953 29087963 580308795 80496627 888043285 279806941 377393633 633611541 745465497 119416435 925301543 538244207 124013799 211848947 496582591 827800475 3857813 490516095 422336611 221710719 405765823 617802753 38199001 448852805 205623309 639017253 166064871 204697955 657830317 968308071 958963553 3118739 655978323 47888645 100483361 886477021 504889153 966313993 570471435 210692747 355504443 461015361 267615237 667590449 13313425 154541383 940606471 693854891 680824855 164181373 280416517 148835359 534703405 454441223 21747463 765193977 833565367 93534679 231269907 581785579 641229607 995477415 359431485 186332659 855046767 656414451 271712671 303811925 859760911 52180489 256227165 288819357 426270991 436318709 224501919 165243807 800113403 957282193 223931031 671544441 30727403 980553853 951706753 198025357 450497403 749363233 480811677 819818375 472748755 779967149 432341303 730030175 579470241 124374553 759055779 741203021 128522267 59293991 817973559 915288535 393862399 383537757 194740311 942145483 175895187 913887501 654456687 412549689 611904933 666461775 832533999 747651457 140029071 932894211 961922387 352913735 377298473 366838735 443560989 191994741 278202079 451415591 809174229 72884031 881228699 314255169 546593551 113572901 908842711 233419807 751920741 917142759 203308941 832489351 84860283 455960213 431027271 223249163 601392889 621777281 16409105 336158721 260546705 914736711 179926403 297029773 601099263 173432525 858271161 956914835 796392963 897767741 449229659 869087431 655120235 448320269 553730967 753833887 759814661 611376633 362628387 875498075 451948973 953628421 348503357 852119045 811547975 789266813 189958827 772969067 575808443 174629877 185594557 791502631 214665979 323203401 677381191 14576795 210919683 812995487 473529001 547194091 621384915 980573027 985071303 32897289 95246201 570591815 357113363 89558447 286281987 716103753 126625663 149528155 519871375 383090861 870050957 664847959 566687803 224143617 689550913 920006577 982682677 126448661 488723497 603270211 99976621 15495945 163079517 178591405 499502303 787408959 483641721 891478871 128467213 557106789 32621989 73417585 141823359 856515949 204929935 459838965 568825993 789265303 936971373 863310497 331311751 433110627 418710013 31688445 384752343 877412257 605604231 46053723 893161191 26203745 421035221 563812307 544050473 254133251 914906947 848832837 475901973 612115243 466229929 920844377 687363373 9038531 261265011 691587199 243347455 986649345 518583437 845064431 784349465 326618209 35524203 457285545 701463321 3172005 794963983 719886457 615552925 941171165 390034685 79203305 119626835 689170779 723461955 96703575 632371691 167303867 645958777 174663393 8033569 619305187 432802491 325491821 259319735 667016957 650783153 943095471 558173559 673445761 256043913 740855581 280829233 422384935 128741369 749887991 5214657 435080179 704614207 449032007 208619787 823562295 303424803 951114205 50649335 365497217 922335217 536849999 854551671 779538351 516488063 83782145 956354695 915736039 794963501 242930199 444995881 553153429 58111457 274050693 565913703 639409005 168638215 588534529 904976721 943024745 275490713 606698507 632025861 101383887 789757971 591910379 765611425 429355819 149326969 935797685 395556691 985321811 998985055 400320573 736881997 603077473 142490327 62224165 361775303 911520953 606891903 39899605 951458307 77078281 702749567 367741567 347984207 926983493 978624389 67550999 8973305 993578663 64960457 637596257 939123039 307460023 36693253 210103525 457156577 781310269 747893633 896787441 546941929 127270737 969497613 841311391 759310569 331669069 817646847 923547343 857738333 976335319 677391667 192472617 287244999 383421913 403902223 962159901 893491887 906833289 896303493 17357795 780256171 310473827 603000073 982515069 634959187 600651051 172660375 674388145 431989319 870490861 341455545 929312017 687985461 232563709 985468029 273915893 45007 461175031 712941687 530704765 389937101 707883969 409218501 217720721 488794099 202752135 257811215 412338911 794984713 386775227 85917061 358935525 425110245 827284507 402594265 610580957 890302301 789841323 836638027 149566419 636149591 136924343 976886435 423695767 184200635 143243733 831530285 468112575 869646973 371458013 907572671 692648367 548830101 889719033 770424761 720747147 888698375 187892111 153293825 40570951 157210331 692360537 885398021 824748441 331522599 189278799 658526905 117918721 733746691 897868729 706724767 765634761 370974095 621528863 890980283 959703041 20368379 46923097 887179421 704230271 827938163 20178305 327358809 897364453 627121205 807908859 297605005 980439965 197972355 941714293 838051939 780086227 672806055 352804835 970656645 625084803 760481265 786484609 139093035 511282795 953693119 938854355 258744339 63450645 432871281 25540259 743072901 801092815 761129073 744765705 284763981 35867315 36754227 893013087 788588993 220527777 494007343 640009547 151593923 675043137 976945897 28983993 27157683 512332803 758241001 92966107 655784581 844149793 629777605 50090543 219403437 881108889 2454293 900740217 14482217 324682291 161830777 481615301 841638271 436249729 999967649 636284263 671238079 304538843 636659257 607075067 693295485 64562273 752074753 161598311 695583447 525149179 826872501 319589847 987881847 561799513 384246821 249027261 257410951 946737651 166141217 326730969 563988671 863683083 176632961 713651243 469884255 937022375 228372523 104663809 314532649 854592921 170062345 48812785 225448559 115160183 61936905 121454037 605797639 19093413 32775211 266025169 778004301 653506633 820771691 900971347 216138537 994132049 978551001 11758605 914312969 716057467 966552965 940790783 419538659 132198977 935192713 741914473 994718005 675935983 335255559 834367195 157847045 628939925 801350185 409085479 149639649 247821833 83208739 850116969 457456867 732563693 561262381 437737479 511600547 507297963 186443147 903717291 904709197 389353839 465415557 19944267 141917067 988476213 133635185 491693601 208015765 50846397 6646183 722294965 979804459 278982283 254824329 752801745 394988177 479351285 421753985 934572937 478519445 475379215 176652291 704630843 640852365 948654267 71928711 215679367 397530203 514420641 94034833 162708831 27627361 921836339 290999979 14948083 433763727 312946597 913961575 98201025 370165081 715751931 148204639 696206477 66291651 896268541 67312437 247531619 45077837 726395961 595214739 466410905 839237383 673616137 734438189 895526087 637539211 928671117 776394683 336116695 451240433 348665773 41696257 131321583 819565797 931675161 32633545 125265289 223948689 664661835 205236197 181081437 195736239 879315071 684119855 336924531 842769785 256831683 30370185 912254227 284159161 886009315 742465501 748545749 299614651 469241209 634018335 543865747 619930967 970334691 755388487 493397361 989692649 857133901 853141849 804665565 79254361 685860517 701688927 198739339 757060629 774871203 745374059 898441589 199688723 679612105 440802967 774230499 636127953 388452445 967111429 246488159 701031767 391231345 789199327 741256637 651778863 22213595 59585881 93631769 390594421 869329983 487431083 375209689 896168385 722541313 991888921 73091495 148423487 379919701 655353325 937370489 694783897 514922545 556415353 812678283 442932233 286334293 690093847 679378017 356637771 763835979 575832617 167241415 249350051 147900771 736445979 59969233 985896421 679764659 529630555 824765405 674370145 365793565 123224169 263674509 506910459 181527883 639274179 324856269 997076245 57868457 888338933 372012501 444103327 745484403 786805393 750051101 666285327 199038119 823170353 990321003 421364835 459730191 78381943 899731659 814994977 5996089 29454605 70632083 275418713 751811199 850066087 653643357 845897377 378680065 531967231 888609037 505914643 118117031 550424533 180455889 61726555 344493347 75434229 615467291 811221413 890733545 253837617 351029675 931790245 973536573 1244003 206675329 305791389 983419173 697697133 587583213 976252753 635016821 866860857 536750977 4154127 494589377 231276475 276103961 313000111 900591209 25862125 169324249 513322637 581066137 779447759 13950511 429200019 215559999 782761325 505000399 563859243 817703189 196442585 439347893 786797645 131172247 310949933 255652133 359661175 613836051 829831819 804495275 190359983 7374995 499928861 874433563 16623749 114138869 460276503 449404049 214085903 801875927 606500275 558407283 978088425 907452575 897266993 469151595 216604985 879838593 139425757 700110961 363571633 980204147 17701129 601589949 796827523 403727927 965813263 876510421 319438193 395875155 698349905 944518533 267133887 680829209 824366907 161287393 35792189 582118047 559490877 413643079 351415357 318406599 170847953 583448665 607590307 979701819 986171517 660372485 273652689 938289255 350385351 612482941 776390071 728439431 486862659 407388735 757855691 243797403 731886475 876354833 590569229 461303911 137374785 593905403 723336191 63730305 985080849 739152469 697192371 488657725 638340267 595835833 808935103 782489277 926339529 801847563 709526591 550130923 717833263 77592697 455061721 398642291 177067687 892732279 996917183 833752017 162171139 77615551 558786981 237514819 397688607 834275417 243197895 743789777 326436825 918374031 524776177 197011789 220161565 944601331 173335659 967517521 129904609 917744743 693627663 621008695 395905305 689339657 241588281 397673261 598254795 877586763 950202067 42804259 1009667 201577181 690263623 546067661 723663567 334564285 635988365 507358895 819903307 387271469 913600547 150069007 612686489 779774141 273743121 698861055 716922853 842451777 777570275 508888407 355960671 153151953 516235697 747688375 706535233 426983637 95227927 770801031 974370513 279607033 56830523 490527223 933573461 906580527 713129935 789917695 315542817 243097781 294029319 435531615 944976015 126310927 589905057 365351843 907091713 821739529 860731107 568685333 554417635 424459193 292017819 956851667 681417637 605705849 390879009 69829819 439425731 391674093 212496979 376431219 761362621 287666179 651440021 928678511 830497055 464343021 336570073 943483877 987430013 656791851 130088849 433413333 943415661 289307005 92298173 584299785 964918163 352257779 68849381 769031953 409732763 722768607 37849365 959430467 989863733 583684829 275960803 12240065 972770333 829536209 711033713 611965557 496576787 212749545 249543521 435232267 160250851 615914649 799254497 611618047 670086495 840935837 255279787 777645967 971956835 147696121 570421243 884389829 863267021 55408631 177345431 851810415 309472907 789573935 653338575 475530281 638818957 440594813 834247287 542490191 370183119 376564739 832194543 774116875 139140689 798250541 761333787 885395789 629611039 347759281 867996523 136414159 503961677 150998155 999228375 768565263 217483249 831969279 202610649 329567829 130924847 571434905 158075259 718843827 877788211 610499887 396459337 398834433 202867245 27957465 892807001 416444895 232083545 785358335 653851213 901084597 342025463 661729869 718898759 98744499 643188821 809655477 490431479 750167249 75237313 579073655 22057361 187231953 218998423 226844179 543550423 202020153 615765819 316047447 276901135 557853019 637741587 284331353 91644931 941227599 552426135 305641331 204561677 780517877 998085179 673829449 999358219 481824755 33518471 768038857 969503843 74960573 236289793 115105575 538424833 576464009 585594429 689658845 366653533 21823065 992889559 143597235 253638775 947046131 865886061 704657587 849970387 504479209 668163757 326259759 632455807 227452561 543539271 847989705 126371345 70400783 813443575 409832287 111186091 507333447 787813503 34997539 768127215 709814253 476316327 367690373 148327437 352875383 426020419 862713153 951477435 175947557 93688623 90480735 236645431 384628737 574890057 259117865 934604103 798188505 984586367 6393395 497185083 630331977 218388417 50111579 572504807 532865453 884784651 573324227 308604331 269407791 215451231 232533719 107991147 410841791 315173829 363836751 315527833 299492375 179644497 568971555 436049191 37143989 908042271 782817689 749017495 281630947 574047821 253183037 97626349 412393903 858334217 475259875 24342711 772477939 285977989 834966953 971122699 180845135 786744055 700288497 862272139 784605483 18472871 180420969 451233625 244480439 20799195 536944645 623684645 596359405 63877353 923655167 319643173 191221387 519653415 901368543 347391767 277705241 579192827 407060077 666061377 531821545 646687693 620835777 625762163 984143379 260269583 733128245 169546241 60939639 805645117 252602477 381673931 220329661 165727449 848375129 463479863 651162453 529123435 390794535 390049585 198670455 732289159 171779161 297292339 582816803 719715273 895887025 127793463 214356005 480240079 245433401 962767815 742441225 150251591 644165705 962668529 593254695 532926435 255115389 558559047 684839331 626964827 624057271 839453165 819232097 559935601 21097251 31949701 792520213 85595379 405397815 245844031 334403381 258482095 723344047 140337105 79993089 970381699 381623183 713199737 2722179 758471757 102664227 30466047 59603339 994775547 396985343 9929389 103977905 789845887 282693889 469081695 846713683 948371921 139464779 998899055 987535259 444431091 810560843 149772227 766036603 438363379 577970867 447626189 511435689 686683871 995369345 482696065 614595493 31362005 852500987 103761243 771532473 658563573 325934761 25266021 695853555 598658409 185411425 159820333 516877357 464730467 393008193 376926661 486676231 570345759 841644205 398229201 35666409 308220639 139947599 484863859 701852933 758196971 580069915 332912731 302614607 216577689 979779921 238009791 725761163 197538623 89671793 462520927 423351361 22848323 135842379 680372349 340354239 953670925 981922545 998840043 366776607 415942671 168539327 407039485 846823233 725678533 650197339 988071571 399134413 613299889 87228591 465200403 321207347 82953053 157859825 758075499 185054123 543900505 655173277 149690127 891308087 857509955 931931509 517293569 236901533 484430523 716839305 122615237 828170351 612661099 64242987 220443499 704267013 939884549 279878905 781387653 474516607 679575621 605874901 367031607 109803717 950110445 587245803 185457955 756970117 166082247 670075571 154173561 724107325 314633123 53374949 296667633 742519591 711894367 525493127 864903877 489587279 782930651 678924517 332255677 826743685 961682689 419243155 80395305 721377889 656960451 498325871 771543775 818614081 572889885 553009051 116675387 714272335 564785681 986175877 974652965 245524093 582444969 29136609 106442505 552481409 324893173 991780265 351754465 742333915 951046419 636136739 674677545 730204629 655100963 827508957 441884391 517229183 665967695 752724903 31992233 735210415 376100809 817824417 15794311 913064967 430162127 432968751 649006879 157336561 74416285 173878011 350984853 880135321 436112515 75189499 328786075 224597755 517745361 641240681 720740963 472431317 373944799 776352461 492235693 63701937 231910163 913430513 336932289 610581469 723021781 761654505 980459115 963350899 180795033 405183249 63782657 933976403 682280919 525513487 141661539 929327141 24422163 348352973 10704631 916868953 86243799 391580033 983830443 586458665 119829683 406374055 617876725 571745939 375763525 768774915 480468179 420877407 599546925 96420513 481239243 587812383 537695253 335867605 496055531 445127211 392144049 305035581 672529611 801868707 204649145 182440123 203389065 748616559 53047281 868805757 832046537 120907071 165535777 358321397 677616829 598994059 340810783 823950561 946419479 250736533 855877315 502424645 138087703 836227171 5472239 983441775 940567685 37539271 286815117 688709615 352894893 280427097 685906577 129736101 929847911 948736887 270997491 749249459 890587407 650828365 409567671 206886279 593849229 785028809 765254629 613853141 988763727 797419171 849543571 984935831 93943627 943349851 586259417 858006293 487263485 364816955 370333913 950562519 758054769 976695635 433560253 598791861 448590127 368960121 195369657 642578633 782684241 950432081 210724357 130087033 273369461 712282943 199239397 23923055 811668673 210608245 773373347 863250081 433920737 666239213 880575375 770639691 82249229 730025831 610005511 282155505 831339269 681591911 12538219 732952415 735479307 944945475 269837351 501468073 262619635 29015311 469613993 689052459 90005773 254559149 453087601 356583819 191774779 75054789 410988029 579543731 463311843 310003913 720952791 756959195 446160115 257388013 344547989 176230523 283104737 688936757 778437583 313834841 525489067 119103337 882653735 587975553 60885721 919228439 594574919 400090951 529826421 988007577 915034595 749933897 428652825 602862863 813642931 114520425 809785827 83496289 731202939 489221589 827074937 417168959 279947525 239854079 882163463 405564451 273349923 765917095 288870727 348231241 801052591 598772173 252954483 624431551 25886091 171734975 999472725 925806161 944562593 647726611 4295481 519754649 972639205 990921635 849751799 167065589 259150415 503700117 554421483 100187025 813673443 615264083 656506365 347420507 378059691 750546321 329338267 206553099 738598841 675888463 787023547 30360867 780501031 123282895 895116507 518514665 856533015 305037979 610708225 334746735 450489011 579125899 265407677 515476619 381825071 388825273 732769571 213500129 394970309 192824203 349178835 819314133 501323189 410394029 989406195 390931611 547689035 499024657 11906863 911986217 608330455 952004085 580522177 722189375 495744439 433916379 49092195 942702695 752126539 119300755 178895711 714217713 701130239 289426225 723076481 462291955 816831811 599206157 350894113 499269711 627984529 749098703 11393821 264616111 636991853 590592355 701641177 292047487 932332897 908212987 520138821 78052091 846307583 361701397 474382295 328053793 344086753 256004725 826391181 589734843 366164649 971369513 200536557 131883095 768093699 439966849 678986247 92101199 949560733 481468189 837793391 694634179 444884535 625290975 856584517 432375451 896192399 191243509 475812399 341306249 393289585 109755347 814968665 550635265 537181871 139626035 685020285 14091079 595093027 535565341 281021399 497094241 243341743 661727705 476246317 362022179 288152381 605837055 505672909 31357985 97190849 189782377 981066895 679753915 305732661 818061373 587217615 199871517 125449881 895302885 786223989 675329589 84904697 74924567 739082479 44291261 395798119 271094991 364963635 586054193 693597181 489003343 219308737 259465951 1500125 876874279 366589851 704558545 302094387 69641001 658673235 170667493 924021807 824707187 509579005 219247801 181685003 323212133 295066681 877994931 707753739 332576177 528013357 21155591 665828473 712392263 598532487 125261483 993313447 798422629 844376187 717034337 332513519 942375055 276064203 673235887 787192245 607601041 43665851 273519335 283717471 591161729 931808025 772824607 570570595 126098103 506083901 546372921 18286395 17302747 380104709 338733535 699939175 616994777 830050517 121771645 599764083 599347941 866630557 152311631 867599345 134509945 526670035 65842005 997203835 554047067 85379957 277673811 307889075 944196761 588161035 657283295 68169541 940803715 301512609 693556557 154457057 435377337 955768525 638680255 593767745 921866527 85557423 929650463 75509803 565442015 994717677 493384985 188981093 386554989 734549429 990386473 696021187 476737161 486756539 551156365 86490655 980115763 147688513 88923213 967855195 22281659 91191563 152813115 534142563 938617011 902834793 508874737 998916647 35617527 598181679 482507209 660879265 492966061 653017275 940020209 796628951 6957631 373186039 101352793 905189839 112491875 444314701 759528629 537507741 602033685 608904885 653675401 837850971 971424153 168377517 813346587 238119979 848137595 149372221 890195837 270116153 889211023 332032497 896372871 205101237 886627827 736986591 627031257 997994715 877609993 469406887 75115227 514322155 58803581 431724911 456102845 171770417 356236359 920746469 629873783 136998143 113839263 95502143 18990281 160106415 776090123 766068027 670118975 855617445 674808919 208904479 216618275 776845383 78158487 653585081 833106835 569055243 53641257 429652833 92036717 179155819 893546417 472490229 883178071 970080745 456756759 758645977 798545093 425286925 352423829 133690109 549481197 505274219 150695587 122543833 867302095 505277341 906910985 53475943 412653621 471555397 448380623 869613361 477119407 332787215 168632653 773318979 545739155 484516011 653283357 968483891 578180355 253387733 273629221 747065377 29637865 897021773 492524687 501513907 557855985 398160097 804594129 110784535 820295831 553907039 257518757 69996035 489616921 542492067 315820819 660239541 44516225 59663247 623383397 977751027 502232477 28769551 419413295 83555341 518273801 921380115 380788301 680444631 556752673 468316311 587484645 721367727 505049359 391365531 502819171 832357759 335932611 550195757 988986745 448548785 206805495 395803995 706101029 608439613 87728937 442918977 47703211 128773795 570603169 355453185 237282967 632672743 128415089 981992903 667558589 268276631 563055729 376705475 987775291 728763337 570321729 858218033 355097459 870829341 15913801 124244819 256001299 755783097 584210105 989393777 869499149 356163659 329121161 249515487 210614943 687185673 207150715 269252599 837851725 496019121 290939925 515752477 859327205 498673545 932725161 919695545 149283447 857008737 48426063 832976701 337909091 960960909 490313191 716352805 237837645 797877741 145303575 600477937 692439583 673599461 660418387 805835053 600384269 315414119 83170769 710543213 361706903 471176677 599071891 572182343 785983615 677245281 241209951 725783393 573769935 39735133 616796359 774869089 973149919 539469037 810053409 411746303 555064137 781868193 810741649 214027247 164097011 863392669 524649979 64866553 521150215 624086147 192975635 482121699 790951931 624914561 796670799 283858051 593285771 921161809 733742575 381863599 590949307 249644847 180154365 179269963 396022999 123936227 661060935 419666755 877680755 732386231 657874281 167981193 610792811 211650439 493599935 653007123 148527077 296630955 521924979 286751209 989393997 285923855 629150837 745783313 908850261 892232477 24121471 266231201 793473019 848089807 691670799 201514159 546207875 984992927 548620143 277577825 379396987 477232535 125703085 281319903 477366195 120444741 966849955 806081371 69336651 857353403 43557361 363865873 107026341 428668317 604461311 377705537 159629423 616362765 989321725 805433 694510235 694718139 65529317 221512519 702545001 574624733 486860917 619833287 246979417 344917553 804647733 565519133 880622907 958254845 7520887 952916657 340851999 714510353 964873811 965632245 97210469 93557441 212643753 90064485 438869425 380208365 526690593 818338435 409749485 217017851 854441515 80619735 945253711 341875671 302247935 758407671 544971347 60066811 28539037 86452345 10848955 773087329 605802961 624980995 64607895 580935315 361454119 683676221 233933625 584494237 294289399 54027737 998218301 210780183 994494565 634128275 308999305 854832927 894808149 401630509 618769223 661387609 141385083 668469359 498584303 160504053 763902285 87096877 944989241 679359913 73489933 441238851 639145771 108254131 911943103 468997521 602885137 948973785 65386297 286201089 670187135 964893035 748139793 594600069 672266833 69460799 741225637 92870937 850217135 8805553 521442591 843645631 717038847 770271143 599897201 130852223 976244219 761411731 545569873 328819823 442037403 1211751 670150463 311582373 645627685 187977381 299216261 473654855 44927525 82644561 491555889 477895549 492613489 428731641 742194717 167696761 69928227 185097909 215805161 763893623 729010335 422065699 523015677 825396153 574570387 249936231 857298827 506732679 628574451 857252657 482271623 351779639 873635321 245639607 637616309 312086303 877155117 854613943 921234845 494652581 758844247 227176825 454240141 19652145 865348239 252538313 842091935 480412471 13117231 804349693 908998579 700496175 902413021 30409717 483379569 992531613 418696067 906046231 456280905 693810697 687819863 881179471 499875699 128929545 90887381 571571991 611720433 770578739 344360385 993208683 494349961 528961325 163763751 803965649 408723405 74107807 874619483 381179479 453510165 687605307 457734393 430363285 282772865 777844415 657164263 24182441 949191673 318665703 481035601 123047223 529596459 495860355 113960617 890807151 517659285 45432417 823730093 615734791 604492913 948892511 760981345 121393727 408568011 990165085 417471249 777873625 718668147 457922117 610835795 643091751 882005505 688812297 695169793 656628223 375564499 387699367 206900287 742181565 689068053 715200539 990026107 259202119 996635315 68434037 434285159 478552591 8320361 407965125 582330625 716988169 287348149 936694819 115095695 798180531 871605985 239338677 601477273 835625491 47002877 37422755 929212407 763318455 960806879 982848033 46099907 934552503 108061225 594962791 959383649 950288561 982862917 193696185 703410303 64487625 60372319 816457823 942701585 286621103 281366131 338212783 447018835 789962907 295360319 516428801 228655561 469043527 201802573 732973237 106156349 789261053 782074091 731373883 491807943 231053705 250470451 533566463 768530371 676676161 817054725 682663295 24204497 322295045 652751113 514858813 212303075 943960891 811882159 271976643 339240489 906182865 713512497 275260577 257121569 657851197 166662541 283439477 67512207 799396987 371075723 483325663 118314367 608686615 457772989 618298505 139173445 1142297 30313339 833567527 205960061 524690971 659751141 388954993 191686669 473274427 936416995 824240427 204319521 539575325 278058277 379839519 627754797 532177395 932656419 149260573 209862379 512964975 796465439 431349507 581123169 438338257 378286879 894807473 865621979 836291041 201662965 286047505 280077039 760526059 383588921 329767447 702336375 970286023 140711241 680174523 19360407 77657297 611527761 597700609 286160829 751300593 876384575 244664563 5819803 63447443 345636299 751268769 751834929 372156337 618702965 814945577 715216063 41475271 780148103 244535211 502196949 963285211 364214289 772190545 325530437 323345021 850270441 919146319 650803243 856376257 814409139 50217181 679201005 692607815 272962515 587755583 428736821 297850163 22462845 368322495 382493689 206772791 735282341 88906415 405973621 428921989 730438673 501458025 717913387 55758047 8234051 189994319 356050155 339623815 176039569 883459019 117677511 75127631 704145935 2529617 780445213 277233293 362055839 521664857 976936847 386467869 998131177 311660135 708411401 690486887 204845151 426140421 649044161 546878041 236518965 915865283 34815795 105670761 900554863 777094975 243661859 499172245 246689749 108884249 272935069 732339299 108655605 312993533 983881463 825271779 473934377 820667545 22153673 716962985 613845137 905998253 188124925 863744981 101433621 224940279 271531705 712410123 101155429 825847105 405816951 81620093 263027451 168022113 124852207 896346589 355508755 746523695 661482537 389732205 880910011 466077069 723088493 25468401 569995455 132743525 194852179 817068727 250506681 779151275 328065973 712527511 588387847 295243353 827061687 739843309 536021 299853423 317032903 670959265 835803665 719998201 903350169 331159841 445071731 532107783 361325865 891138915 559950717 778708919 976018361 914151653 756073845 276092201 677775065 749147309 396837741 300579209 980456795 706713675 417109819 721227525 995698779 322722515 211571587 721085917 603713599 208671717 801236649 790980943 91093425 59882663 793608673 848457383 398341287 82257605 765269025 800481335 274446173 866139513 779196713 7865433 115583319 734207101 92241539 56089711 302949985 758449947 179417215 431089123 95413647 841802527 438955827 347343657 227064895 727934433 496700289 86709433 1595667 798855485 554493971 520227351 97810679 200518299 128796757 590872781 696746531 279299051 295458179 323194733 650268943 159991455 502233499 279740049 436232065 269000375 506667623 951469531 437788549 210825144 133793397 682631415 316583537 533803445 281909279 785323157 284987871 881112127 446235781 427007343 684818611 697556343 368849551 245285193 455719963 533161219 558423535 216210925 198211209 157567759 602717721 701417005 709605565 383606613 283476305 341027555 588580535 878692367 677613471 197458929 258222791 309086983 447549393 881844547 210508415 624876683 351819393 818878409 330616763 179826797 827897101 170033277 197709727 809182993 240553121 784965987 668278681 338697305 729780011 227806853 828146269 463883445 839060069 937000181 378197735 533923355 955778763 575657421 368676219 527592201 165702827 85043503 273103013 736231815 610427663 116350279 455971385 439771681 233781973 330369349 729483859 713203437 19162523 325797987 240192601 458263179 573925575 684138727 959297013 60096801 77079181 421865751 495236639 550710619 503288035 359112263 136014351 277608307 732512907 334915025 219055179 337905189 508888075 573185047 982596511 718115767 310799541 369633155 665762335 64323831 711924639 938143625 209593897 374172221 822532779 118621091 697020255 659036773 760199555 282708561 5145519 455201753 66232467 613339679 551074891 566670723 552664599 103415455 975889585 763202523 118967567 123844971 649345959 933134815 603614271 943215911 239225397 968640535 547267901 397279353 338336435 705291663 257384285 468534039 128317883 450187997 579393217 906567867 173477169 907818785 162174803 778570277 377752387 915206913 542054847 893612065 618571109 60132267 646250113 26648705 975309137 122969043 486871255 411965727 494192655 82208955 189649865 312528093 198839017 763594023 513973547 897563815 777221235 810072679 778732177 903848045 139076489 673104205 826496093 894254123 917045839 841569597 150438583 368002273 868870965 320973593 653354127 995398043 791264235 19979859 544007837 497342571 224034927 218761693 863160931 988378987 295582213 601803063 371068711 958468031 491506743 745130857 502202619 110178445 586182623 378338815 480852919 364733963 797771283 498355727 329369595 810036339 879778619 982056249 375456815 587017989 502810627 229843107 580075395 612806413 371353693 670236667 20528879 460144863 103317639 510523509 438227507 751396049 51286021 500910035 71842011 342394439 431925413 564459353 866146097 587916973 456077175 447515863 253505875 548689011 162303451 867397025 537842719 580539923 960538739 563128727 978525755 892838675 959233069 780152349 128778011 85927161 150351165 747942179 525347317 767381081 138206237 163131935 190765769 527052237 87705747 742458129 134704481 771335929 981204141 468176253 84175437 501942147 330405821 646665585 362385379 640122915 465282399 166310531 760159557 96453005 899553399 456875731 242915165 795249545 768764979 862096903 498943959 668441053 305893127 530983501 706800687 832076637 102916527 456630107 356855971 386290403 336759343 639165295 299516221 765836883 55800529 749034063 855382219 904876435 273506605 694015561 5500905 60402585 486360863 27408693 340106227 429674847 978921929 877384049 461031955 766797543 501698199 319607523 489477689 633435705 233163327 864688631 51256863 928503913 945443261 70815909 168405571 14246033 988806485 705535341 231600877 899358933 91290515 454905425 490466095 158698845 135664717 597128163 15400417 869321563 75200411 907903033 597916323 527694345 596594405 799187439 109220573 446450093 367642583 459863341 363543231 73710221 830682467 219783841 447025729 308609533 351195849 645216385 687107109 357043033 970492041 621671307 497094897 75748607 929188721 417434629 116728311 23991645 709628311 932284607 36498511 852907491 870607189 672473101 659709913 827866125 218164303 502245071 215370299 947807835 752801395 708648297 416927721 553224027 242239733 978421965 894114073 450109083 268708177 286960493 445238477 191148983 636835401 645967433 694952395 978774355 391881453 180035049 481150373 698860055 756694927 245611353 744931761 964942773 425482443 261426481 838590483 886398953 400963717 687004301 830189231 33524595 806686445 878504981 250818617 559713569 103518579 301994743 167553319 893629121 793848789 777927657 811428537 90745391 90293013 411103785 891448825 482148943 440581763 199497343 895065269 911191561 304819889 670226997 677311625 826075471 827429501 843001381 931388881 220702749 124908041 373092269 797964471 862824307 904078273 112414131 61769259 706911839 963453789 9221027 847728871 239517423 513536213 481522807 107800169 505677119 142207855 503669673 260780027 985474675 856941751 993019971 445176235 603862451 662652291 99297745 371901267 855577905 802616043 750886763 653099923 78194985 17548633 730842797 276925139 477457629 990381939 383382719 644228675 825301397 280460083 970628943 114488029 407100837 802139857 73482131 117328479 631181161 500204501 180592459 590981201 15298111 163898887 609177529 692081413 527440789 388031103 622077103 414626963 997641181 923303063 929098625 152659419 728764303 502922995 921861135 9558917 358186541 561219203 998819261 189988609 544273221 743485813 930291837 835596167 720986469 273649227 957242305 373053209 53795113 912520391 411278731 683166589 154002485 637787893 993097055 186804037 176677425 203492393 656910155 70773447 846221263 46457343 397057255 85517095 792498123 438798173 11891279 283166537 580241383 9909613 29593901 541997793 795957739 128423589 417942443 851363173 407428269 398649281 171602817 552732439 411090691 803742917 182739693 389256189 886121683 235212285 521578421 881881319 994231813 482397437 57660969 532840049 181188491 510117283 844206621 251155959 663813729 765964561 979199473 699734691 580688009 476282549 662896011 580730983 873726475 101531969 190769497 134514937 785182205 625990067 90518351 208246489 239426933 809005137 579121647 349865553 130104985 519915939 635856189 668982895 295112593 65911167 47534023 752306189 71198097 808226819 226759077 285725899 340516817 83101843 896801651 978596881 633571987 35377369 413148507 20623377 486793765 703169993 405854215 892825279 339757013 30775459 899607471 941218527 312221953 20745703 670740753 251065593 975289863 127136869 835874421 607117915 799128407 599387183 524684453 564857887 730414173 882517409 512057853 108530725 83266711 196656737 63476567 474134549 407290503 695111257 224468251 37799007 231796405 970111679 732354613 910981947 602732727 175710479 173315359 863058347 706739235 851629579 232637141 136256629 400448415 719717571 855668701 481341739 259742163 508127113 334689605 952419621 462599283 683750139 774878117 976525443 648675127 467638011 344774171 427667245 889853155 694320565 351080779 782082001 252393023 702816417 724899429 351607021 348641057 838655863 755462687 228850107 34792799 11947837 560419767 678878535 304221151 694705471 755282421 342499681 822677897 405180945 418265637 822467489 736871505 83658385 460308765 337856101 878243375 889938657 402557501 318222297 547351591 262432623 300999787 77914857 225463105 725879791 693525781 186613841 402868627 683830363 283068721 157718415 547810099 94140409 533495867 924551149 602715463 837851735 766536511 634780027 786442487 106270277 403426245 565647375 921798775 259333347 303196903 69238859 968850431 696565909 578631235 322645657 435114707 965708805 133419773 477215269 557301309 625177897 908367045 752080875 398345869 239762491 598707921 817486761 919195169 727052483 778603745 926535401 847748697 811178635 996855863 543538169 41385631 427453095 81924261 975793395 91795813 841388147 159875969 197832375 775141673 389761685 153522343 425012205 341115239 497929719 875725695 256768005 81493423 38444239 338810359 315175993 73968785 361384857 673235331 935935623 277088933 951349273 421505573 65757879 387711377 316072539 382605665 236441435 477395711 749930419 562993479 460745419 620513181 499300799 514532203 748752423 77004329 995294049 397927405 109945431 815784549 635886535 11030641 653963531 935423515 472867171 759655719 769735611 2049053 855160051 219100615 503092905 67185475 16159355 884756619 356659675 502554995 123471433 583950141 269420067 826999957 309116909 778141737 257953817 76725149 221245767 125038373 898985243 345361283 863619449 313861267 879080533 792649291 770631153 141332051 73297845 237061631 164513123 399007961 385183475 215460785 754393291 43339801 653393551 747729529 392625771 304647825 387281619 397723773 823879891 968314951 437060303 429786087 807649235 826812363 367786329 779442149 869310859 628736305 300357653 606493623 125131615 176622873 15799399 311747483 173616889 248753063 191330947 442951643 97768783 204104075 302039645 384319949 223643549 769343229 629179579 350721225 89955943 742053047 525697055 87857969 98915961 364540675 960409567 197244783 784909799 539304109 199399183 373224183 995923725 875846669 278639505 817969985 660029841 983370239 722641677 68849873 516785503 907694827 345181173 202742833 233891241 621759935 678854269 96330483 411920365 621000945 941257641 606292655 499379439 688862591 438868545 830029835 211891131 888451567 515113427 647438769 71254181 413605201 202432441 481822033 383118411 266778681 973632019 966177957 581919375 65614279 642905801 707722353 818133407 525876895 35498635 617761663 238763757 320690163 328421843 141030305 949154873 644026997 163693021 474673839 851790467 207415143 490112951 277694351 318521115 94136715 881738541 37664043 966502545 687794741 464679385 595027315 667929541 46375989 277947929 388913761 211579611 960796911 401212953 150314233 972961853 135260997 635534023 448369221 944654751 993043111 185289435 118862423 959064833 40875531 143456215 130751303 519972773 679177967 826804481 54630461 968668949 341251673 253194859 401244253 74106409 547124185 262441451 811804637 348963837 850334339 579084837 903039733 728383217 552342007 533935485 260809449 550587319 985029977 505134887 429772547 645932607 739845211 142041113 788685717 755695815 81415727 474642451 165534457 266246865 752259223 969759391 629606545 815070765 294874839 471980557 540373959 269644783 626685117 48062067 997389071 215974767 107901345 916351155 360282851 173303125 329323359 999634807 702484675 613027469 952572255 798343211 168732731 840109897 398318479 787053579 305944541 134684167 707208037 300178197 181737027 984886413 711036127 520112403 597747983 256671459 175317381 492485267 101189611 514789983 847589219 131949039 316423051 193402527 231568399 923896903 412141223 241924229 511452585 9186435 324249861 873575231 954466261 607517781 572080747 826057025 367516357 458926385 558129067 491914053 273473069 184942939 633379747 261302099 323363913 447089883 686870069 587541939 536377571 385913471 246925639 836966909 760855111 59085537 718778831 371046411 187589197 777644383 874650309 145857795 914632019 926969637 566502447 964714063 129393981 603112993 561431059 663192229 579802747 576297485 884425605 914710273 672774403 76256613 613291423 43042725 300582227 37132919 759560323 737856289 314193267 370546767 854727771 302987079 892182511 449833413 84605531 457740341 365097181 357352061 266105789 469017931 156395741 890997211 256495297 285155387 928550933 704471059 881636787 859186165 493419313 511166235 211106789 39285687 626870891 838351285 712025265 107713541 953691775 219947111 758021241 845812139 337023411 400576643 657001385 796863167 817366229 807597855 29838769 791824281 449122877 325212701 311647755 44099041 284353735 222699303 357978939 321980803 586882781 681324203 537105355 231510451 822605161 759040735 543110989 591163371 840525539 993825481 214187357 987036401 24262217 659218219 246998169 918154707 283722275 535016859 638294957 305866977 955412347 901363565 620094029 944562875 107716845 916128451 128157747 401799493 628807059 299224967 122407967 444339881 796517397 896002149 229352157 273680475 762485663 833349081 525448255 264599579 973670635 25794337 909151263 712278763 241192757 57573701 98299745 799224853 684039491 643140633 828960491 386807345 955488867 400402737 206302387 520621593 295233389 687583983 31341747 718714355 981962687 932212603 570110443 535354409 566978621 662687685 942172007 466033265 109056599 902891653 116774201 333533895 883820293 130507069 966812029 238757487 780718529 438330675 543207249 194234101 464903571 339226745 529080291 352672045 49850379 88105191 389888355 902190645 789710399 450626845 100566539 742901871 70609355 588666755 62722849 636960391 76362199 79115081 581037547 322283125 624778257 278312295 641314493 178186353 90528685 10015647 657922545 383187457 572773997 388079991 628924137 728690929 123678613 984470335 182580497 529797719 608607477 596102419 667373273 747849611 356335073 76092881 624079037 154854199 55019575 652236831 302878781 322377281 593927009 978772849 227771109 771714787 275163977 559919357 562742087 198506391 166658407 563302083 90029567 875509279 711023035 871129229 558421163 429055625 142780359 490061547 493591289 911816747 606243229 519568947 825819545 549909663 424641747 549103497 435771717 591592651 152255877 692295633 226331075 830581209 641920347 930420925 708527833 55995967 597386883 212760519 34770779 918654137 951554225 91137837 17301027 567372617 791122983 272016633 399057685 204282431 843245739 13584889 527744025 769653037 643687559 120333001 87877665 789490159 991655317 726202053 100079655 687951275 855787571 326315799 613550641 827751373 35660869 860681135 920770117 928488711 787125309 334504519 885027703 622051415 945324045 155029853 57942755 384547841 118910005 676371769 271796391 596721809 58783933 450561261 730002673 464249819 735408177 841967441 435815153 455584253 150233257 466053637 57713635 669518425 906484929 238551153 430190599 522429597 836255905 853484229 79788969 692654523 4792055 721921785 357566493 826764529 297841657 503681999 212339385 445031109 378275429 17983437 997447137 541173247 370172545 307703877 65124865 316887733 282395933 203045455 758688905 860598085 551130253 868062155 1589493 506624851 943389615 371138143 758372295 266411209 212940525 673244287 94767495 113042653 473542961 318191713 853605833 88374025 657394933 390208263 260690985 410358293 381971251 118300983 169277253 478538505 689817717 437594243 217487819 931394109 567569351 522226753 823548267 729150027 500186561 585064597 812565985 735356185 725993343 115733859 989180911 231487697 581689257 944245087 868641885 921000169 977425773 497529087 36793599 164708125 617955713 450392451 63895471 965573745 965782819 111012853 179194705 564103729 773660953 392531491 378723533 385035505 371146930 962143657 195423765 282969997 843395781 539178211 403566373 541013035 722630831 401838075 261658367 859707191 600109911 202258913 500320939 636169315 196497449 285307727 313623101 682257837 574740509 579709891 387200977 159381081 641692851 373981319 877280389 109917685 219704559 567148457 998315399 159975249 223805023 633539331 228731143 469516685 922500635 835592501 947889985 211585291 915780543 949034151 957797751 877879929 77984371 306254473 127167217 784761801 45304805 280823253 976973829 488579387 367650635 689844809 202326281 853098575 503217251 573881709 540731747 943704277 695495285 942125459 283797627 434469341 402876747 950690515 993285315 308973767 789673025 29187085 882114743 297414711 106921777 147090409 788710359 120514839 677814145 888030679 96203185 298053021 841070371 778000655 58316499 227443781 272400265 176884627 472836571 473887953 825229493 857572137 231783527 152852305 519671851 408800867 137246245 556056855 966476793 382719895 569090503 699863999 82656695 838253545 524273157 118896175 613381505 5702205 70587041 794722195 976878847 315582535 795429225 590838365 477366879 709245309 150679339 164569419 383634263 819429921 864203973 881575009 331160103 586970681 667235349 781978091 749630609 311927445 298752777 380070269 447201511 881321425 402620563 178236149 601310973 39324489 207535019 203650933 465624883 755308071 473102419 830707305 870420847 761908317 828042393 433257609 936091165 823390113 129185675 350580941 548816695 73832051 531308615 371388283 583713081 98384157 297974507 265378591 819425321 173185197 142209957 123652495 479200917 403114493 700137895 123068645 631982741 791918253 416902697 123840133 289996485 408741925 162821487 107509277 330317645 438622871 61900225 794267809 91124445 742250999 677546613 457017675 550391207 213662473 996317921 981858467 461173355 490724949 945294699 427092851 262556527 5866793 747370107 715430349 830528899 583515807 943641987 434116115 212513533 853942423 354047487 654940131 978453689 990260409 830889073 874909997 439139613 813620597 432837987 957488933 86864155 837849859 775389797 758185287 148123431 235973221 966313749 647300183 596324925 263097443 3048465 413798753 756924135 676526729 776083977 638368441 478557235 451900469 765669033 817766139 639493301 696443269 154458031 652219917 200406411 306303073 479710685 207243803 910826335 865777015 484651003 813018775 924625755 266994501 825849823 669803327 802994231 468071173 513670497 355968279 25714993 893019587 992625505 981422955 996472593 470951247 445830349 839251153 56291107 866590529 144666007 956291619 140320317 458686967 90412983 589455749 462314943 726177693 318974513 986002277 412180111 863307551 424583695 832573301 622141467 602355001 514685793 949889971 869285207 237557097 60613701 811133797 447464901 94070009 855483355 320471059 579137129 605550585 495445837 822821013 574069971 726209087 678692557 592750085 982439959 811624557 99666071 645403847 552365011 503591149 249833453 755909515 763855153 407586539 411140121 134117951 386884059 764264291 644410731 105742117 117514505 646031379 581573697 182187455 659651707 824375941 8569339 193781719 557027187 943072007 497304579 360303237 357288899 987690931 893499597 29848357 465091777 745154409 769385681 843612759 145698377 904135377 745864083 22963469 683966915 781239643 289885851 812846455 197681435 550603841 595394175 247132179 238058955 449128321 737487319 293272741 479469007 113993955 716417093 748919097 713349805 584445177 673304947 272894755 78748789 137071643 642760723 424837119 607319739 120050537 562341091 67480757 330428317 60400587 763264417 943579755 266591941 31126769 860170263 248946075 537848925 932242515 650510107 780723965 711777821 192972851 807016837 343376023 650688069 513589399 835919159 78042805 364764823 744163409 508660763 313245421 915410791 556960761 668322595 538772761 681452165 766761709 411864909 239232093 735640147 317607001 982789271 803740199 687100599 609008171 424146699 48711979 426033183 990862363 135665087 626020451 376012417 21024937 101024203 278728727 62655579 591317535 688867153 79389391 617220019 840798093 557612155 314710627 910358809 717158345 240908413 2173165 349453985 444392567 47455375 388314067 183936233 477695227 32371957 314021567 549876763 374074249 590977017 639748263 409666785 873972757 973404395 409336007 334373749 712894821 426485033 679828897 928889489 772254715 988718867 977091077 737152639 385317677 385054483 84882949 21100043 632506383 608551069 582798847 277747085 293215875 292377897 417295253 241552353 756868145 195477307 312915123 253225839 120019851 975594845 464254095 916386597 704384709 594481953 976217765 672485241 940416739 497062945 684614073 565885289 436377261 574207 613810905 179253627 769103281 794365029 736839253 580943551 313827657 477628423 111771341 73492425 532444053 266637725 730958371 678983095 690143869 64877035 468908165 428359987 571548849 405175739 594425701 516848487 163436203 102489311 639644801 218027277 104619431 829064497 616047839 729605471 353065139 147367827 608697799 937468199 633748379 297476335 529332689 326212529 845837817 653216057 312050135 518583765 919653931 74445929 653623293 93400815 786398813 922277763 765657777 642956263 530621821 344289681 162851239 946533419 70854211 123048101 602071259 765074097 775568945 693746393 514540943 167102199 525671053 482269007 662072147 90392069 228808041 395155249 919641849 638589797 996865179 88968883 113528221 235682355 612477127 779121165 346562981 287940617 404569169 481587333 584011707 500604429 451732077 385794399 381952981 587595249 649180177 749405939 260865071 487337703 825812733 87698329 206616653 471526065 742628539 794430643 811909627 855798419 349557659 514381229 903319117 192390747 368178099 335554295 852410529 544045921 77254117 958888203 66545561 694049153 418969819 76623213 55514657 545322531 369120257 132480423 21696625 921820469 532123795 883034699 232336129 339361325 692478607 430853107 655337367 884145929 700419007 580058177 478204479 833535313 578137777 250348767 558445647 287287055 33830847 313023105 216295265 273531871 699440137 121971169 61274713 651353563 84332663 697839807 215844453 340803753 861027515 129930471 818897911 323125371 470954569 158138155 37114319 181440259 610134885 755902565 320656365 539222147 838215703 838396535 851120801 560496319 108608301 153215307 612563325 353987077 97043777 359453141 462866013 941000749 243029937 103611151 970411621 168660371 242858409 827211001 227538181 12181025 348698903 426702751 547879147 98325057 220225973 790844435 94051609 160614379 690894847 343042927 540857809 655890845 749173827 764401109 614781343 4802397 220414861 19192689 939615319 188430779 324023989 651381617 815089685 235594445 380510559 281089301 579422783 796771631 895793905 555410587 305357439 908295943 799426969 237830223 495165901 119962375 365909331 576016259 34698593 524052323 201578719 962730385 659699649 153051351 114490563 333842139 264003513 638404525 800944209 89485773 626434397 86568627 398733983 213284823 9520907 3220029 873000849 257292915 531251301 386471209 874776267 608614439 756132697 124149727 885737153 996409721 883856665 819762509 600982439 895224317 837911843 703570411 119273603 388684109 179782717 461311155 894774809 173719563 369821039 593502765 379686393 329333475 97894673 859523433 876399485 708912005 863569341 633299197 900134085 530993067 50925911 512111621 332069819 522033179 215665165 799533863 487473931 894471579 257941331 49532821 463185201 93496831 515231971 844593667 310853995 311029537 790277573 578952111 45961409 790641635 285197123 764387679 13541127 358474545 274665457 998495329 57451473 139228411 122052267 302687117 459230593 486809403 954593175 130184257 179588671 900810487 9145631 824362849 622915323 346759477 484555001 582324317 171304045 29025801 764010273 953052203 279574039 450399117 569382619 861899851 49331007 411113699 620541363 533593023 897089527 588596023 948760189 328059929 433327127 74827961 763252309 291893871 116408895 426464165 476905889 393657949 571333847 282019131 256388877 117103883 460340495 119409351 169309835 968193573 760942559 336324763 314136665 36252389 571771657 58884881 212121083 330974471 187232787 156577165 311286591 193424337 209623887 465335669 971416373 182236435 709267667 433442111 78678845 429073441 334343043 999825765 329144313 117742297 681953283 32808295 594116183 778451621 6897607 796741843 609459851 151968623 743062021 689386551 449498895 536321711 665053373 626199087 852859817 571201123 581698489 177159261 851159143 393713683 945339785 644894317 137238683 558229451 828003459 802730767 36365281 648491811 525872587 403094271 455189277 536986679 99688005 626364925 149522301 271229103 53894051 7582677 410190197 879781559 459672415 84154715 554780609 501206025 104751031 129342309 22858853 339784929 884130485 966530007 500460973 381353733 890258727 86295197 463344429 613071557 636713385 87010983 672167105 81690101 198878103 573623537 911899535 571860725 214180379 629551995 873580801 244450217 682782501 582293073 743293389 526829697 20770927 390004359 239792879 730678645 182998647 589908275 383299243 735668991 480847237 561929337 797737869 348636457 183947435 907421829 212437355 745062527 137893569 301603463 362680925 926602009 330465639 316691387 314435531 120673683 419275269 915605089 425120097 531226133 480698571 200318663 487115795 934174541 320495537 602974779 753717531 696053105 644035449 753131033 132949247 316103485 42066089 862923973 232353931 924071677 473297043 908431015 792901077 401948537 66825807 857697585 315958583 279281931 523892669 358729183 515679317 551213201 871729795 304970033 191704861 394056305 518889749 465879475 156508867 977067927 415142313 868805881 259181763 946514557 443735873 293251225 230823391 656068125 371610275 201448759 923091239 338731265 296498529 347337599 751746797 782422069 752581841 566693153 334944717 903606353 301412119 145367001 782198189 672090225 732291095 637294185 716332215 313626941 85885061 475953049 338361953 739513827 808679127 614428477 217262695 127361305 613693517 315706673 432947147 937284125 611216369 307737683 518795229 988482997 507069329 681573265 634655535 614175025 905487049 338143451 628765343 871082341 480231413 26330669 503790671 861626801 56960831 31437449 637860011 812873465 125078423 796548343 44556651 315803311 570440631 421257613 492855943 357097413 682988317 642951777 186291013 786034621 872095507 362733207 102032689 510843803 415582119 936518491 738453793 465534189 397671603 300701407 504750125 292272331 896510167 170091355 519193279 531494097 247180923 919186961 266558845 435924007 901620943 649862223 577765985 991988859 940329165 287463011 447106467 948313347 751378483 452215465 856567499 611779453 621235337 702807685 666733985 634649391 976582689 716421471 861814589 282154985 532014867 940254121 11014905 746607359 161258559 60299231 555379067 805483601 818468429 532451715 255180205 311839557 316487341 631118365 1900483 819348423 638429335 29706817 233809469 629897553 710110221 14800523 29218013 45186015 88790229 441906331 70052783 609733367 397623681 321645595 506962439 268455 981477479 472153533 87638401 942396551 534078123 122997309 994343171 372122291 263679281 308766043 744242103 284187859 253681069 275663077 241116179 106509077 468083605 248053161 254592211 441761071 875805483 904462469 169250811 837439839 427199605 768328535 273786839 514863981 448812099 89200653 80491003 933631909 447022897 290887577 819380293 157803485 880017563 988958963 471182295 904008821 142217643 799712799 582980639 546198867 68144723 334725413 358341071 359561955 516165705 724693273 179929573 45652767 291724813 613191959 472111271 738466945 600058857 25137983 564710557 597932307 59792619 631732667 156558239 675098979 319438829 408588221 308459973 180140933 770497167 561980545 121473657 409985047 59904059 603983945 726807395 297008449 297841437 125254493 412923767 537077169 906786607 760643859 687861749 489103773 741594419 923512513 862169949 384193989 76945329 986742989 315402367 954790507 609094135 628171679 846410093 144032865 76049183 496762539 984514179 588066299 614008585 942568809 459527015 555056153 650618205 886826587 394996227 688350497 163715723 922284047 483088269 300868097 639704267 304224787 926088577 629834541 979453727 951165957 625447075 126568871 444778575 300283013 44909053 627193331 633817577 400484413 450552809 269730593 852157253 525758175 429174013 839732165 574157447 97331239 475133217 154154749 936106389 743369943 719425151 672720241 892797727 370259897 650112143 628619345 46668701 147939485 837609225 153996367 174636111 459283297 137853171 11199147 233426495 631428837 329316249 113817645 56604989 186690067 489626511 446776351 767229665 43603165 844803507 834266973 721451401 328296255 772138535 257964865 696601441 48570939 223724889 66670771 247402837 206791387 982504701 494917407 839826977 86191407 513475341 124095359 922583365 571457877 495788239 516994383 515902469 776156781 123622353 737564053 754622071 816141729 847983331 657769953 208016495 158372133 10744101 892358983 742234769 535250737 705244411 718988645 861643585 618696455 398830863 691550051 298352561 882199541 189685591 85863665 394224347 322159691 610583567 418462529 327962749 912959585 725863097 111688723 233527841 887002013 51361061 486188719 798577685 303116647 151361637 632206561 373768307 165601331 901796309 705826815 787090459 816727673 528857627 639234027 669817781 211899325 835331105 246652421 573347505 663207817 354878493 398764609 39343177 167248493 732780171 575651347 446635131 506689799 957231407 414486393 106778383 43987191 5760533 169609721 572477079 552223719 162635921 616379297 160453995 201042571 812282945 178385419 465085099 377743259 873427463 753399631 919756607 521881819 898434321 197783833 791024343 762859029 892175825 976151443 422057195 435912217 528079109 826855029 458262973 114465733 39251123 540701695 411450707 30759161 930771747 760982515 548349055 391297951 958533611 801619107 703852505 367634603 917291241 686753253 57047231 444095765 44038975 87445013 381162077 516234465 957959259 541959451 818296481 745817625 565980913 986063717 836447043 645548493 280649213 458823401 147442371 821438747 632476097 372858405 217346411 737698851 672624845 994197791 520478283 238531343 876155633 156574821 934158393 589214483 34872399 498415119 512825049 181265767 277717061 531920571 964468111 409898575 905409155 377169039 347171471 355787797 109422589 977157175 318281677 542103563 318681583 525705707 549641231 117056393 359012573 696221803 415722967 364073717 527648659 853812731 648605307 312223929 309753893 134738281 231778063 725438531 378316015 575349515 694690677 374618899 721445271 291429827 240316245 74920359 183890953 344725491 148565281 1268873 103979383 897497227 372848909 759119695 875736927 504541183 317852189 851269521 402992261 762471761 587963673 754870257 807278581 613627655 680995727 531123481 465332227 605253163 178642137 18440893 478017869 961665367 601781527 960216213 489399733 566413225 4220465 112442213 435082601 470164935 351104727 75266551 977833437 859942621 550917507 714242077 597141707 304462757 150385011 644219313 930288953 201063769 343677871 351661973 755890293 886425795 69055497 232770739 340305679 981668655 496650265 425900287 492675559 916054389 976255549 637852273 371607841 672110833 640274593 404049423 937979687 386562187 595525683 308493533 786078639 541765553 856880555 767822579 833376435 592575321 630849675 273598057 368417147 124634881 287899673 337522273 951888783 921984945 409433191 173255173 166564807 953565427 206923595 167114633 553272127 49030625 317737321 16788263 168692823 843863065 688829733 93383199 977464769 51913921 440005043 289150909 267201389 989199237 183125001 518328915 756607385 754957727 260059111 192790073 547850697 941835977 638473431 521615063 509965257 987316813 40116009 667676049 839364269 883782137 837609715 7866077 413809105 988077855 247226647 872064307 174236123 362098595 931803711 945567767 601853879 437633767 200009687 838104339 864648087 637118683 30598939 843456697 112342009 860677365 248697865 49012643 431150755 49659699 177302123 601599347 990780317 514935579 470481615 817081813 492054589 220354237 397240719 135220601 3510817 382334381 353725899 789788953 248312363 189816331 496066155 281508985 382217609 302287741 119532321 447325027 522983599 433275441 640682337 723095721 476665943 173562843 90957679 701900581 2999945 400126141 113879379 138598073 241357197 443046043 699883483 370533201 784265467 93810627 538236321 653275613 458384045 248053261 537060355 583119703 997352905 7195093 121629741 845915587 430249913 739384067 481187853 865061163 860089139 109262855 905899357 130698913 968734515 676027091 635604121 481324863 480811003 909074919 947046927 539430183 948039195 421939017 44830411 341907077 455549285 279883145 831873445 846049417 984958967 634636987 953921601 487435885 21524787 427847039 4712965 481275509 435099845 465727995 899191583 84162283 213717923 584036061 234203531 439270689 718005001 550713945 108841481 945654897 635914619 144593201 689503007 71630655 124057029 87902121 829360671 122356721 796446205 76088463 782933535 565662205 109994619 128878651 54289155 786314461 271450855 275673995 565487727 897348369 214822701 804265187 658413783 787432741 50801793 794685747 318097519 218107051 684294749 204764913 795514941 639133501 531725191 425158429 239928581 627536765 332873997 206350393 352926807 76914711 208152895 284638551 562051981 945342139 864794301 372140811 851948231 507146533 906611563 129845877 492099567 853735957 501927283 384627259 257755057 237427287 956767305 829710731 88409225 692123581 538091437 302236443 784464821 101423649 875054753 238706215 337248317 67145829 597869167 446180729 868205557 405668725 547058095 418634847 912798833 824995649 945420091 482368941 604185619 76351941 303489849 581456065 906430211 198734849 413486611 986157189 719074865 409380609 254837631 850169955 113397333 157768919 229326713 545232723 946202353 424913309 396665669 61487827 100575563 681477237 83949679 945018347 671612277 51013771 913369547 945301031 452874567 434974735 336312439 344086685 922639201 215953213 672613589 867990767 839271467 54919509 266811281 87824445 60038869 151250339 573232803 773725755 544727639 81376377 666729027 189578269 140781683 542660147 200459255 844302753 55775919 828003887 87687051 781072397 60022621 930616795 683225621 702172463 90672275 193436071 560882925 208153183 271886645 397832717 515929789 962165627 827241447 676000403 941993581 981497831 562996253 88575679 346979889 654062997 344509197 756436773 299534985 85385719 655517367 516336223 874668341 703939341 387089125 22225425 7252547 670049887 50385447 763328481 811941641 870081529 98402515 829412485 634746145 572930929 681392653 1516215 844944753 733952233 256291001 850552886 625278243 821416961 370456713 773357267 83501741 505637613 149930231 31048537 732690123 240930145 989853249 296615589 290275199 509710747 988680817 903599257 445258009 296306017 288242773 230732577 942324011 351070467 857380489 39466797 396765585 114542677 420954217 696127417 778803569 640512437 808876831 692597957 672050231 578684173 114331 19182175 175076501 164576455 954661527 346017173 781890441 105463517 986681233 957779331 304264023 912658377 709351889 218659917 208817291 519239573 396441193 593949721 829658873 388550861 459595313 627743 961841855 376119687 936818889 121828755 691014975 909313125 8425369 393019069 311041575 669507465 731216593 909398499 204477545 631945121 169311849 431291993 847423811 130963687 676224291 128490875 555913531 302989335 296523653 963806631 599168793 715606393 511863009 198087499 779638517 905165271 446084687 697431511 313168167 829726091 625658799 858697927 418553689 456131443 225427111 220138139 965586291 800351221 163002795 462739937 325392043 854194685 604442865 614312999 159356539 997709315 735192955 409282825 300829611 810041095 204655631 919193387 883292483 426106253 978812991 575312179 531617179 877687459 917098337 224862425 913799501 415864031 598619545 677902291 386609727 378818915 731381963 453126883 191036059 406034129 856257451 721066197 792231895 307788889 432495791 767732093 412584367 692773553 43232535 919936689 947802919 989471511 685073901 24725335 655835019 465374801 191260927 628724309 150904687 49685423 20075497 606800291 157315503 892833797 318839559 794111287 531142257 974722739 127896707 490149395 882423329 763352733 785069391 26010437 527334001 777525557 577859103 186606299 718558047 357434221 121878647 28506353 811501105 392957127 591376287 750029995 547835503 31088197 657129893 300376881 338037999 976809339 259878499 446649013 573224143 849569145 132290169 62443891 540233329 596313571 507309647 231890091 232965251 492444123 57063701 607163307 380523769 764307217 510976453 174255297 533795341 666391739 609664029 790243915 241386309 395201175 609965989 823279527 848972911 913371115 852589231 130839619 171331739 724391559 896392019 885601935 956162859 503339455 636822129 423687943 318374589 698732915 612427953 72204589 193011265 308545801 825202563 385390217 469131755 242374253 566999071 843252145 401611319 903250201 431713927 701611323 861562599 443944711 506535553 358915277 47585803 302289857 634030751 477100559 699685621 236321621 797376823 436152243 39494465 761674069 454365037 950617205 658974677 821063141 779006501 859531799 467710941 82279591 728731923 264541793 724992971 124315083 51430317 810621993 518766685 301458695 14530613 815619141 562351511 566400153 933597361 196605595 612587973 869843529 154739185 434881299 9609339 436686433 542608017 118102175 115026839 612124349 436055021 572495931 705633339 978550199 844200751 327736297 646349267 733004085 433193545 854318001 135047447 371125161 527764721 824988841 516361983 559096581 116938663 132199911 559032273 759967691 140372661 41908113 812773403 635583999 273855785 675711951 263359405 807753263 528013277 122480083 469500071 992268403 958091377 191923929 415540843 553495401 758545999 797198115 658281639 608785717 964692387 159993595 489296975 77277831 723062375 505188785 310021789 48147349 392557405 952430243 722067481 528794909 198187277 501841455 98055053 78733159 24706757 486738115 942820619 770895167 381347743 47853009 891601653 722093307 626420603 679588561 493194985 274400123 894199809 446874183 914319575 769615653 596709281 436062395 319794163 730526439 616405139 418420675 288729017 692034869 283123673 362645749 619892973 884628753 131589179 486757111 232081051 535610623 444995399 320360049 798151959 635475469 54281813 723024663 317561597 20286675 630719881 450264225 841750067 179160175 598794441 386289617 262222053 576488837 744176837 437545845 189444741 515120965 662383605 105407837 742893265 904649829 90445721 475958625 274271949 701380645 53365947 967513191 969947079 728728903 572687659 374885207 983214159 839067933 147697793 196314149 571376453 619500669 989926683 698036425 776019147 863570627 243356965 173745733 338076495 277119703 194080139 533072295 293233795 533333541 243191561 810860799 268318311 756209063 686844191 886246501 865322043 728028889 694564625 193577215 851275149 705953985 757684981 920883701 711641907 976794349 16715423 924904827 67643975 141938293 166544563 3314633 296079151 926000887 843326357 301389347 390122645 771877783 956118135 543107537 342100589 189128197 68969555 787924265 729978103 62025081 581080807 271533699 678789045 843767725 731428797 284155711 429583985 681137131 158153507 944218317 693882947 730895359 92975923 15407513 563837575 243856191 872868557 556005921 7699421 264101259 499701401 332594151 273407799 31684681 863318535 497195637 757999301 37897575 530483281 638775389 816614661 490238555 27701621 845854775 277491643 598466851 413947195 14256041 505559283 670776645 399884853 331694683 122882561 552380111 231026875 484624641 81286787 902547289 783819757 654961235 818062683 909342465 188763827 117669909 810205621 534337387 844815037 141689873 117582345 371977417 938371 239131415 66891535 510769869 301186375 84378117 409431245 719104951 733122575 974662331 763476879 124654415 775264429 774413603 602528491 766566369 651554233 386521649 218147515 128802629 184389777 518071005 594983971 744950743 3156065 680846635 795834513 158748031 515299095 953065253 974585017 99622059 56991339 519039453 180857749 970356559 57463517 155068523 192174445 140747757 260402871 642420469 767364297 934286475 531730697 803678115 761546625 97723827 754184873 708114857 782059439 676009855 661387067 714546751 123841209 208779917 892515363 45232041 12275785 735746305 477035925 689951281 916306261 18982285 271082885 306043689 538394393 274713699 426065081 272021995 597959703 82715205 302899637 616129241 936961311 222340469 819459017 212865117 400979011 554693831 995328527 672412139 699076065 31900299 191072871 605002491 275388315 24184227 201912443 159846929 437962077 790801525 110273719 965365687 695755357 520224239 993144661 648595327 779151383 190754951 673253209 489879297 78271311 49433403 625327493 176943843 402288915 371287185 291357549 164747727 400653235 63099289 748294761 553847667 170866639 566951655 732378777 840013711 53064009 531867 346208229 325680353 176155215 922755675 315451133 677004853 585493587 447316563 941975131 766786395 812399891 700027963 443918141 173765169 720221077 645392211 943872683 817328023 410763553 663962207 960372855 592278649 735880271 834219693 981064761 735963333 211857401 486971157 832174671 313930875 182033475 393176307 686255333 143813273 373048219 79240495 503676649 951266347 42475957 820350263 417212691 566792001 186973837 52219905 224634597 26910713 960613221 357851403 28071845 149745523 442088397 829849435 443237 788280539 943732375 634450049 667179003 11336801 683803871 210456465 700854283 753816639 94119691 597290539 303558137 367489465 294998981 665163125 977072377 473235993 372542211 427965723 751780865 451786161 218614017 255841879 324350161 300270299 11686211 61148899 345310963 123875577 655418773 56544265 481174711 614309749 698662155 755273621 834410547 223172291 587672835 852986591 855879753 490377565 298699295 604592579 947002275 432373955 590420299 516511659 521238445 590378625 471461055 469219457 441633699 985239847 712735475 554737597 128333699 527570259 646592941 349290333 901494551 587616421 853623033 488722663 231171821 318417609 309793837 663547499 32892255 322981999 564632291 822728573 997297037 718176337 157638655 189472829 565268063 41038387 443216047 149546065 45919111 492782047 183022439 815511525 200185977 783177255 480748769 85699251 800465785 386350565 93334819 779934967 256446095 714296059 79303803 775311989 911363721 387288405 248340603 429742465 686288897 222172131 619974399 515710957 903452247 517847967 345680683 994818071 717852337 30094989 734367855 644225511 634846979 636534967 968666489 214035403 717157125 977403695 333074763 607147961 644753715 564680975 531918887 997877297 215721435 952652923 371725465 691089717 369740809 854519193 120351349 629513047 529798293 432746399 183026647 452176043 44410147 573691847 954993189 986611665 993890073 164677201 379140363 605963503 370178213 203256201 355066747 989009587 743127491 306944705 915153075 176950609 128196403 510385491 847586615 667496331 543510395 664041889 911831507 133083557 273602029 219922455 727710363 160914541 478955423 454599715 110360045 208962107 157983349 738508101 336382315 492443117 973946899 847679995 776103683 645902311 319071981 56167633 205744103 223151897 449479991 151007577 269303191 109171193 442369527 957333805 236424915 847521669 665613297 853381873 306729129 412557893 34025141 188072267 882103151 337892677 790122909 138711025 688460735 738737435 493136585 320035997 643145085 45085415 360517667 421947407 753586903 182999887 258709591 606676243 755572033 891839361 980261345 111826299 733997687 262910513 898079231 995240225 712448379 55150241 233486777 264628969 489447325 341792149 398950115 309209017 891144559 575833181 999823121 445338503 693290445 672396749 806357157 915150413 232091357 570747715 486339015 21105419 341049609 645906343 915045735 321217741 5020167 774335081 183912509 486927269 392131539 779137147 774383051 277155245 489039281 306062173 925749079 123774473 359259949 154278423 167654131 388173279 785422619 583580213 861944951 504713573 56082583 516552909 276334211 956622549 648475143 562264959 249068415 832585583 283494423 194597745 684815003 129571457 194851001 815131729 817441999 942352473 502103083 811493205 734331869 587933523 838855665 462073401 802230603 614257361 292466649 373354057 182737259 593502783 936294131 743474509 759518803 524979213 352281759 345797791 737437927 208666295 637152127 638252061 86901707 244931517 3870849 311229739 706464371 459261099 906902489 526584249 463163413 622174227 37348865 498459455 984640177 602496143 403856065 541398967 666174993 976688067 965597729 121376427 55760581 245418325 288953721 549518375 201731875 846858749 64186979 102973377 186458703 63301743 345656771 755457433 303116589 754096755 37921993 722728789 782229871 434761679 242311139 53779747 216124047 875945303 703459283 227743417 568798411 332556261 495399067 344703573 208294445 798366557 641136775 179387837 719927685 560044453 753045803 657801535 975380841 558133173 234697315 197691061 696399163 433029249 605607253 557921911 924198435 500615697 965575019 601781361 327326737 332241515 182616923 891719437 630081215 407377571 1370657 448776259 960683 6623699 185234945 956397203 527751709 861721631 583672711 414669311 382906407 231300015 115159177 497622811 492144033 758305205 67717919 448989687 81106987 990840685 429243569 961121077 131950381 582954263 535138539 307430651 372479191 690165503 74385089 611538423 955701537 648078969 814214509 414330975 186381005 598071003 764386165 598756593 278340707 771591817 417925031 722026483 211177775 988337135 988360211 157997109 458553423 175201917 159789849 995391499 471304097 512122799 816615003 79008341 281287373 767637511 247005127 220302199 114208321 120762893 862894225 161597027 715635769 959571797 517824053 884565387 274334133 600584057 514451829 605663729 127978363 46798621 849519969 841207831 824590621 88828137 405887563 720379153 446550513 717961871 163760847 852482927 727935003 272562123 573579987 418292819 104275327 432586077 695994497 148450403 67992273 781606931 436940111 369529549 861377671 397781435 570596089 119924807 711106529 190464561 477137537 726843919 814506985 316273753 616850231 346392301 217819245 950832411 740559279 276837931 459791625 653446249 170158273 156833445 747948569 232154687 29502613 587336627 637546951 75399069 485555607 754644033 205476101 670337937 731743609 152957369 642687111 893079081 962647609 113629461 181520849 861375361 614536987 849432527 266535979 739357373 411034027 474770673 916267939 322496261 87584959 190477831 575619091 870902923 229267311 514468393 958986779 402984843 165014565 367803123 295560739 937003335 401403783 863683983 869635933 571698439 503133583 75764647 659007677 113299231 424851061 13068915 102118407 934330859 499096001 493245361 758660289 334480073 937115963 847560359 678495549 320972583 26079227 963869989 942520211 756766071 892172123 712092799 184975011 602081329 139566593 665800853 887507733 821472983 392000215 7180493 773058137 474885879 982112787 855285011 953060775 467813151 139200559 426366689 492155649 24623595 535384307 222583345 881671725 856840959 255254633 746928781 778649533 120640003 238982629 931514369 51196935 189960105 975080707 104728101 9143343 600162989 799129769 852891927 932817177 629300433 736163841 861651067 951380089 251227615 987690881 118647425 290334149 479140519 618234853 190575327 647893823 521688581 67037489 221068755 968024813 438626269 769620913 405854499 112930719 925745175 585224441 995716383 761263601 616769445 207932647 490854811 11405631 444228483 223947933 415624439 85116083 345034675 472780169 874638105 781770303 608128575 661903453 162134639 52605849 323617847 334063129 468245741 873777473 104231609 250840829 664285973 373584769 736934883 882896791 16577771 871004519 605282275 132721597 109940989 944105421 375754731 190643591 437671779 860246099 515923763 276290143 699693755 170224227 753434109 846811117 621466409 386485801 879450775 543481125 225161053 229109663 297638991 978614599 527672717 854225287 282471043 313414357 514538103 351435369 261573011 132254873 261821027 40480659 676798441 407398059 505207837 207077407 973580023 61913957 716047355 940850157 404902457 57824877 506135261 49417893 65241137 759204781 231290665 612188343 770352999 300743259 851616203 537242715 466777457 823304179 698758973 967830675 12682215 653367609 572025979 843108391 987272041 884795703 781506571 459151013 552296101 46244423 92992251 958478693 977888077 223151871 996680163 6799499 956030233 366994247 727919073 935822845 814442189 885067593 594109849 642609771 85292849 106878589 372950587 966276173 650546203 727110299 851649149 7727843 637454177 561389737 590179231 184572727 277443049 74625011 692813923 381846809 639530139 597107981 122774043 281494561 545299307 727996629 453756315 957058733 24366161 408559981 915129413 150111465 302935121 921729347 936557817 777798081 723263603 402965003 198103851 626928113 902813901 987646399 414084047 755227385 152546167 199774629 527792739 945665565 397865873 697333579 469088237 230177651 401128521 252205443 213149691 687634127 464030161 308740457 822086565 210159828 111063649 607703393 11862665 75032041 868690749 45565465 210912203 597553469 317192623 132544901 479472411 736153035 987970567 319999969 829833647 132223313 956112035 762702511 154876231 135637849 162045667 535911359 29631269 549253169 744212529 88104483 698731803 703236595 70869249 2960695 492169343 860240767 138552779 612145057 941607725 383548797 641069587 103709771 907993741 719586141 848351585 825219435 261245069 344085081 918583371 487883645 795084449 232208495 306589033 246657093 652478667 865728871 21898843 956838863 366438033 898127315 878559953 967942513 193956349 860017675 563155831 241431747 574240425 58142511 397090571 666053293 681906867 179265575 995765071 458966619 757711807 975002787 24545293 801097791 834721277 841597467 221566999 639200023 9446181 424479953 120123973 220842729 589439345 741493451 384384637 7790077 157644971 47879387 137378985 492197865 200304415 352991129 107675575 994163851 234695331 871861347 898714789 319590151 153122201 47709285 584618357 820547269 571202531 43834765 267198001 942854783 847482863 556465555 949169643 420448047 580157879 724691703 518840253 277027095 193487287 485325315 313213897 288151751 350852085 110054343 566111289 659549199 205817089 503458073 2895935 247292177 362124015 455875997 155975449 86355755 92139103 217841847 257866501 980528141 271873909 830594715 127818829 92099755 389352163 890024765 172326983 903460417 402193115 619774819 860585547 558598995 647679517 511666065 635485371 681850029 128509681 994178839 251800065 410593891 5768739 561533711 125624721 902969041 449366027 71268185 523838179 261388189 809465221 149938591 723055739 272798387 29230329 333900877 13878499 372204869 370923861 334562207 791578029 714873041 275030287 426439827 704176755 724143131 238870821 897216497 221278679 206781487 341497373 710045515 182140547 326984033 52579079 462597625 653941291 160736847 123977847 474970139 777458311 857005787 253966221 587759001 700498523 912390451 135923949 687283491 268399217 401792203 297986505 239073075 921965211 976687453 90838227 137185031 261263537 722644463 16902989 746150311 931509659 445140943 891488763 370861797 286524989 813281165 133212203 521366617 945008781 291778057 668424371 240609377 807797379 243063143 441239797 998456617 989239587 262508049 194918867 149664159 344173431 279799229 713319101 917030523 913945489 565633125 382400169 30970687 870167435 68599633 903910677 61796657 98480775 386827275 278122247 797145699 412584879 310711653 953184783 74753195 226991927 469517441 999775553 297499309 367215959 542835133 276104765 994763981 413405011 203095499 255977511 399221311 331695733 367812251 267586225 21390329 316174607 212510827 951490829 326420411 708955003 328898239 529479933 800317199 342069019 635600227 480922053 601215045 848716635 153309035 151727923 266316659 37565097 190158899 380930207 470517115 93815173 182007393 521820645 532655879 429901165 249009889 531269229 520856963 326188525 815977445 154222117 384775211 806927255 621736939 54936707 191397629 717618949 474136761 634302343 712262595 941822425 835508311 264222387 59556107 801067453 116419611 864707097 332395823 245442405 609756579 380111693 91396943 149462923 374051283 123907695 13847123 712012783 409108947 193206565 790580717 404763229 915067933 759097243 561410961 440417191 770756971 744670091 740882307 802557095 879231935 483217711 648421323 401863487 746265447 310372945 417233207 784393561 841691129 161899839 314257505 218638313 39179599 842414027 646174377 762654697 631825039 687073369 375001909 547993945 343587107 580572363 443943417 82049605 550979521 963734929 908670125 584242623 350164325 33588385 272843725 309524193 612357201 947406457 320035751 443933645 229487381 25106721 550262087 639891629 562434947 889200933 923000709 116245173 293233593 117770395 807708165 357058335 300263193 641138723 339974701 916071979 253189455 94884835 808996395 778762789 20202833 788065415 169946621 795692127 452090971 565220425 546289757 745742899 346065137 281070565 113245143 702189571 993568735 521002401 682210235 316808763 873290043 245718091 314082591 666829387 967479645 635371579 772475367 654183341 18888687 876745805 68828087 852025063 757262551 557155051 666785027 907318399 891371855 580937983 234737665 51763721 851545295 269217025 599274417 103999775 127704605 490174447 990894301 354383971 500353607 400876625 113734931 329578111 502899613 356617011 931134381 499372839 553259711 668229419 494050509 832051733 575964049 530457433 698396759 513022985 490394685 774639715 841687805 769778639 740282935 144355701 221074745 424513337 683639615 412731209 24821833 955657763 48296535 51886363 498008885 369207147 610596553 593277873 839767505 209816573 53449005 659184729 481444785 643271117 77266525 950122475 519457079 597741269 907598463 683729349 163374731 976358421 273927677 996127435 704389789 803135643 253689997 884823661 257581093 350237813 376352811 3736995 109508261 693411775 435066907 512277479 250526051 447229851 649414121 924996163 180522611 952297269 624486505 675744835 6959527 9018045 886956729 319304445 902072229 495799405 105892667 794296849 546734291 665151371 340808347 711900325 551339105 797832029 704001233 875206247 885589831 395201591 206015509 512797323 480287559 714679411 508272109 483273939 123651559 247156595 243665445 396748419 916314489 777596579 812783571 420809067 512964115 585705075 679097935 485192927 469131929 712313695 775659075 536739517 819472815 743040231 417609367 705867375 685604553 974338199 92238207 966911455 778823965 605272835 780843387 998872197 632050347 35258049 484240971 344909921 420015933 785922933 494970367 906318581 442223459 488575691 143348711 443352659 178901363 44335475 264980899 93306385 732510353 351425065 952188439 254068811 612260257 952964269 278105709 585278633 551072853 909099211 302158107 52705625 788788775 660627285 727202525 408083473 604575573 930982695 704642997 479388431 755532777 257008671 888505331 322398233 508797107 963667499 322346793 153512829 464284233 34739771 738784563 848678675 739247117 758804811 290151223 708801849 834330919 221849947 556822689 356515795 188107655 632200311 33217571 498584915 62466791 827369393 402100923 439200683 480850885 443816485 985676973 882956125 230567529 760147441 966465157 349319275 558711269 731503939 688313879 355382631 911573265 39287115 794446209 505480807 679827853 501694277 918986789 572825607 36303553 26063217 853383089 740560495 480451293 145373725 718473495 26650701 76547035 989606551 489075605 306698199 443076215 259729979 869968817 62201291 406174015 987972461 874995251 460189295 359017343 854067347 581680947 193770131 913439311 428441381 112172299 467665547 640182675 568864919 293154655 149231927 128489201 400136049 362286109 681620219 162541783 175876153 541899897 964986567 107945859 912606851 892678637 441434899 361362415 568504811 995961153 334392025 531615463 898486543 920161661 63235747 943688187 84339869 458225913 7566717 711460481 625121861 525565519 38024191 719448221 731484611 257518949 54101317 82361395 281130457 861537381 872591863 781991415 416097615 119179973 533686595 767592543 875971065 553397313 675827167 940113067 611113395 766789085 283582729 762847717 339330395 692767461 133329799 120223195 576498143 330012653 835427497 267051561 10516271 600055251 740433219 221270315 635511111 447483065 584624821 770606347 925305129 920312075 380292069 50691771 639302621 946176639 142934079 768311023 464347511 759118097 444972221 566158123 897135635 192999943 731339993 572922039 809743567 885532393 656728477 569200545 594333401 456727181 617714837 760604611 658175075 317656593 967813337 502205885 628976035 702949335 983909893 708644343 24408545 387141261 405016897 265559459 347179107 76711975 769408059 332075957 751374719 865768671 420163113 545513969 404450699 471050811 684254921 944242141 497910765 557727241 435555171 622016971 721002509 406677339 45966787 117743059 661053021 36227469 204960063 953917653 165914969 350961987 797939127 223404921 493247107 909111659 294749327 809384239 845528419 643340345 44366777 125713199 811998349 34797609 602445479 990680955 834930333 693473533 2170203 233334233 210741553 171386565 273106777 321276123 229685239 238647507 512668847 913389783 323870625 23597251 637338869 240553201 724029671 8643963 410623559 395805709 302442379 629159975 932930125 3615711 153023835 735198009 908452151 477123549 475260197 163811695 663558839 368052809 896358343 979917517 195949325 623426345 621211935 466965919 4630527 416674125 631098139 653276537 710325213 286998353 349450413 369509433 191921275 29655185 48949965 914928897 599944249 609466935 130431869 565454653 13874941 347114549 885868235 906725797 813365043 115163713 764312517 206190385 571301077 116741339 185447817 96936487 688650847 995243597 619372597 819241749 875438039 796289445 143567863 964917195 62711243 133169597 393829377 696606825 466554451 393459253 830536587 743773777 735242763 292232823 82634457 287601969 40680733 49252015 237080627 966915069 613778483 471110361 173751535 870288881 559568261 293627315 362194019 456476559 840481233 664897989 258078965 903860647 780790111 624061025 653623053 591664201 21445881 661931679 51637789 562892759 243240187 794988639 548240801 446259695 440929343 25581897 314212379 408732291 981469485 538908621 370635285 788754627 729849009 411628581 987002143 189449771 963714373 52367181 21728471 910394243 710412773 550269971 355283933 331637205 954660119 597234179 173129947 278498165 389677545 166353525 219292035 954570497 183408371 843065229 646963601 716116569 893189457 648012081 922193351 628357039 784926637 538419217 961444079 317509747 939713841 579399845 283403993 840379491 271044245 839214637 787331427 625427587 341458711 160182707 128231275 985490977 318959999 547243783 10766817 787383757 538203417 561736641 742610609 427294823 123937467 956942399 311887321 16830993 178180549 430728365 103940187 337159481 638529821 611735543 669061441 249388945 10194481 865768153 285722267 274743065 917009399 63059667 655616135 797261073 312295915 303403819 868050981 155187975 961421079 377473009 489481887 639820241 218786569 567193855 570011687 468231305 32750293 870031607 586207993 940491669 114521113 3284029 301444695 579398559 864026623 738814979 8166283 341434523 910522417 241886531 398247143 56854217 982875111 998676411 486668995 7864747 283749601 134171893 953004677 416010507 257636449 19974975 188495765 766888449 889616441 292155571 858396263 607181801 102989759 597921329 673524083 75229027 601211599 979384929 739736637 484743009 53033681 491994293 201318991 769614867 344513971 229237857 804701753 693658615 474284265 39784297 150050969 899507921 657982581 831959443 351011599 299206317 996115931 787196785 299782981 622702815 199013675 747560795 386668015 652114181 329562617 48782961 76657093 882579969 142762597 331760027 711882891 915238655 7703571 862550153 200073737 948196471 132114739 5279411 23973653 155305761 559769981 10235995 95390855 419393795 726077739 68227975 395785281 464119401 921556999 58453769 839948333 593098985 552249949 632433529 443470655 627331165 102871555 252599349 141399663 525763561 277568857 148745833 985728961 244830459 941713989 448236035 268375357 968289351 301382965 239727291 479671289 273091271 86428191 455355153 48270093 625340611 948175233 767531343 609046683 988699843 549250401 730182277 36834509 890052767 13118031 97245577 519105751 706501233 396381791 453051391 203135985 85695903 999370801 937741643 468837471 694793171 220864489 474774945 391761515 336765955 482084407 101672183 835935077 59958635 719901523 297799693 160474795 232027789 779593207 59651437 704731805 248173625 900270701 361568357 663140775 750372481 862951809 928507919 153218871 426212803 920161675 633220171 970921677 571260321 367623015 643003587 388046055 176518151 968105853 908968419 362090511 426857003 395690683 987409895 836354011 651061641 130439575 997232077 716156387 534168805 331791631 554433629 321713865 540302669 943205801 977626409 770718519 318954769 39678581 683035017 828562145 17020113 637174279 21438877 266164095 755382895 180240255 669814605 541327829 974631961 270554497 237055305 607972013 93553473 790707007 474217483 670790105 380244901 573074283 672600273 270920499 913593419 219581255 103777443 270257565 970967163 600482197 253104467 654175745 789350093 468768169 792083065 995536979 24937499 357896787 184953971 115015819 491701385 751784695 710358893 848250797 250245765 746245239 317498453 627182787 85925827 750676035 880365027 672702431 913413183 402405199 35511705 370038043 382481211 978953503 123786429 602504089 99626567 311836851 594848097 227559555 216490549 522486173 974012251 378147341 764227617 46616817 404109647 695275633 405148273 428318287 208970657 742543599 915993551 799347419 923122053 257288915 794193457 401434695 119475697 537115757 4437459 102891461 993107621 477538843 110644793 55882007 580929835 728145213 726373167 456733057 747821523 975910207 465335753 7942353 332399795 438733969 259470181 924645983 230301359 483008941 496942757 163745287 978013291 241074199 454718069 659360561 728578393 230691161 940441869 668347339 899561139 387958789 948211429 755435339 297901175 461213877 178758595 746922415 269890671 948313355 705211827 401087615 206196521 302704817 665987595 430524359 405951231 373278299 977635429 319236381 917399825 26492099 883375525 355239073 642039881 329503145 829773049 34345463 315890259 681468633 783959253 142343505 366498985 565766437 307318771 216530017 34047373 234273127 375889497 383833449 972684039 858691457 144191573 349065773 439434213 460323165 221350265 509503227 725767873 255562223 38625697 984939947 488298747 163360817 343561201 929953435 256684985 157791779 470640601 890684847 22099695 362661329 275358729 79397719 615492181 725144141 532908413 223866761 425074793 192146097 750880893 345592003 725342067 572753695 565485971 429859597 522407045 849289667 751876243 120892657 867383413 532028365 830744473 572585611 989482215 535119479 447200267 199763061 639233345 866046981 342901653 928570581 462442417 584267457 609602857 84572765 911543349 480877565 454253061 476066625 640729991 40034067 11868333 434046525 476588595 297832039 546603501 827880859 663092105 287389279 243931609 825104937 687456927 159914609 809047247 790970427 716353369 963070487 731430001 439380655 238796123 533882833 56482989 975799789 620243225 297971243 650373301 113624805 392833737 329427639 998153225 629833737 746301803 840733455 518742377 874768985 366574537 965409749 652397027 351020123 333136753 209493429 145172429 268077343 5795261 246719583 609479617 976140091 46573263 665462669 619478435 849551307 257771659 131907589 162811297 320431479 528871331 185770637 5865263 675565931 372538001 10617081 898416137 138327649 906593427 826237731 439530289 63609749 22801585 127762413 833140215 121535437 553305279 916474947 311065325 319063639 750780497 541163029 329596143 572767243 17328073 469501789 488174115 445818951 781456719 382481697 565559027 740944367 452014035 525672039 58154773 223246451 567985677 970858307 494825605 756910793 65886591 420221903 233377415 16778865 980450161 361067821 139278503 712270445 915590641 35356297 550380473 493736015 902601943 323048467 263646425 552801581 87252679 851642375 833633901 821650595 239044647 952564133 695168801 246833625 286346791 959743545 461996263 428220027 655535039 856507413 344092157 605691843 934655153 460947859 50062825 87274861 948177027 48455191 867333747 918883519 488721799 558229255 104407217 489104265 839641043 192471769 989599745 638300447 615169099 418958343 733775109 237272927 23755155 883316753 350752939 453444019 260326175 339608709 295932199 199537157 561224741 674593265 638883571 690336205 167311013 886873329 799902679 145605899 958195817 563194663 355108315 525164353 999056385 650091071 129182295 448724097 909914563 261295337 665814245 38878817 780790995 348337121 420168809 883240189 34285589 712422631 715836947 120721917 588144445 275466695 917816401 970660751 381411263 906232149 935379429 507229543 638128095 186740839 633718993 436923847 602835877 525964001 789826913 487453811 47624673 501869743 537456425 476528059 866950441 672109249 761335813 174983539 572056287 929340435 379575579 948182523 2367019 734097061 769105365 176109879 36855037 490180229 445535977 176526745 45209359 89472705 856724819 455834387 160721119 225004661 914214231 49181221 753469109 772904899 290776449 817452247 799616419 596527319 228750759 503131573 513533569 838794465 426995169 675665623 708844271 881656093 200296857 552761561 727816789 622736845 740336757 444330979 592377571 339056953 836705647 579623587 928730771 612136117 688917439 979561295 32442401 142923675 273824235 372250277 66428955 305603663 917518017 206830827 333092301 139969337 390477905 558304495 937511503 354461131 298009339 620373771 840303493 979299201 150053473 907797015 215062293 90946267 200575089 202978431 526179693 543876709 195545695 920009517 200850123 941835187 362659239 741904027 416097833 834525787 178152715 227429827 525080659 899058435 243932571 792548143 547503833 39712337 353196969 597225963 552667921 686379005 798801361 198076559 875621663 198470587 103677433 738740791 656909031 593639507 27546187 158446475 110371101 682546827 933916733 298631609 721866807 992798777 180910987 576278391 702349173 905827635 742464825 33103363 942727649 840777309 285979793 677794851 200868169 535863459 16489517 615062311 886186313 740127735 449058019 490788835 312133693 819875407 961322203 782453687 840424527 767920819 549168769 832813959 694661233 124086825 218902919 908683461 760172375 353765575 651000811 290368611 31248005 342718627 896219377 306034659 774929219 379964643 985365541 390911561 530852255 468111021 864770141 51106083 460742515 64008761 683168945 908522889 938767711 578706877 574029195 292132631 722766283 64884347 275762067 322516725 871569897 796681665 771095741 849190609 256676013 334234077 942818633 498474465 777267675 148718891 888025783 607992803 214466809 344876815 217753813 583190047 501055577 406260465 215418553 324582495 791076371 406283075 264738237 625126911 681785095 395176065 985081479 145110231 278144477 689937965 783234561 630116947 583511045 382988751 476983393 435139679 124494007 964285437 496753697 235712623 967170549 684138317 900292873 34997381 332386693 184068453 445140259 739962917 512472569 440882157 324081091 937176925 595696551 497467287 415785605 153941445 558623667 854995231 223015503 686432121 719936771 195439175 327799883 606744609 377494341 459092695 142932719 372040171 373557237 439735715 936256247 358322829 587296083 43512199 487021159 655349319 171728229 871183971 205544843 718736603 518107899 440376865 511060473 610826395 311971505 528005555 272196489 942418779 213875683 651584533 924688739 737240443 179832251 681341257 547171059 603554017 464007211 199293783 837331179 815656441 209343209 921001301 705901131 127743165 271675509 493289049 135112019 139581353 240505113 949216393 845838481 526558401 395788771 382469133 739060187 718972057 651622317 821224471 571844427 208988995 243145241 943925731 277147205 878542685 20324491 325451699 796878455 632311055 609852725 126085583 689757909 867143943 546460689 580236173 640161433 845012349 697923549 570868291 783500363 835737899 635559713 483500631 889693363 972628569 383354671 881520177 437075433 334859735 983258911 949141317 411652679 105638395 948059345 580623115 131211635 448432033 261683693 526838789 69609815 338311471 56326371 742640833 137609513 11833239 479170541 318856911 834680933 970552653 956553223 791648199 814730191 771114317 72139263 84884047 901189747 534271009 370129249 780343567 569543333 632666327 877597061 837459897 772685057 515611651 151531151 556285961 803527021 708364483 847135333 995898561 2803221 300786111 654300599 124008107 907265643 884613671 934788349 195506583 543772717 669081261 856489335 939983203 502671967 679335057 102379055 446629103 763275341 528064667 721974517 297578789 241200779 385029655 91092321 21196791 790939639 58096603 793102801 486873955 58481331 297759047 389519473 784169573 757935917 276066625 351247917 451068941 231475993 20254007 594321857 182743657 373153393 913442845 254332077 12453271 16148603 528762741 783902263 432974007 110218437 467220035 994878575 477914355 593277985 256608279 250975023 28075135 510510507 53745157 742083353 856971667 423987143 970895787 553961105 359336819 487271715 766463539 416703689 8787303 929054643 76165959 243374779 554954693 805652915 482650143 128436261 991189219 836526757 409758329 783824017 987824167 986893913 142332317 208351821 711250169 871761377 348925783 289000819 416005069 842844825 608923903 524559075 431869211 549089063 993389169 747289925 811903079 824172661 515603733 838910987 903048507 574065337 143420631 395423337 786635815 483439727 41615665 600888931 457529801 408516955 637074463 32288191 55494081 711502729 598818599 907589905 692402105 21088335 764178009 994818219 905193061 493748549 82565961 156732339 286690941 872571219 645877269 18342671 301094341 249543077 765771879 819643503 396671495 914165933 432917097 313995083 227741203 985902377 407665107 425445 754324167 781048607 2879205 326915139 486386179 615311063 708189537 241050423 71044529 373358055 511941017 922162009 375571141 568930349 559398755 331086343 100984375 120382669 853703963 879937645 471526411 811099441 13570217 842125433 297522763 719219213 781331067 711260643 64342023 431561825 167751303 812991787 980415581 795552365 540499275 51728539 798951789 802590401 843875021 328127299 648523617 842236719 512282525 391450105 500237165 983375315 429500367 108131425 853098697 631344145 388996609 127836639 808732089 90912153 708338781 365924519 845299335 341229913 939268493 3421359 383839365 73958547 48634315 438261943 541921037 789212617 217635281 664998729 705430655 813266887 113845737 999851955 551457099 951705761 920335071 204944655 242440415 806566579 827150601 866348349 187076277 18492323 8942409 60734439 17551185 945763677 335652865 344101241 626312509 872717587 660236321 610398767 302554633 965942339 591334943 805449991 116588883 932105649 610614009 936688841 672854459 611819625 116891957 604984583 537001451 750681793 532560353 959998233 707167639 309108049 32643479 222005535 48904313 953053697 351467375 754475265 424972113 2247421 487532053 486948207 163797225 875359673 432887475 148844771 393693463 714340335 652982275 612195483 516615091 628840613 917290815 438423455 870902175 869103401 923960625 379813825 24859077 240667147 500299557 785303193 240113689 242555947 393506291 238537349 590001301 615793581 90350327 596591537 858965561 638485243 216185113 671572747 461794319 329256395 84611015 531760971 596790317 72831511 60178935 942500851 392678571 909924647 919624999 709519433 841357483 474904197 215260767 188857951 585427289 370822915 673660201 181694987 369645795 113225155 331309729 616608753 285836681 990471459 781812831 162505333 464404105 459025365 381729679 355379403 344175407 132615625 492688861 712279529 590558157 570085181 791161469 161828751 904837821 608345525 469025073 324838727 304371553 324105469 290839355 148961633 490324771 246586409 378331247 350461427 54630007 611763861 606674973 573881313 237432277 865960679 741235241 51678671 689462465 426302987 598884341 913349935 9688261 408630835 747694449 725155643 706232947 220127199 580076563 726959089 729065061 513828047 837901273 284990235 181633597 402340625 528261195 561916743 459975591 362740217 728456563 654206671 665559379 908048165 724986093 765717715 61911035 869381497 656537809 752651837 449225059 715477533 573525195 293772473 760846165 16329099 23430407 497713089 749652643 820866173 627585849 272118679 485896231 879916277 175772067 501160515 331218371 303686467 63572489 600936595 655214435 753902839 212417721 993362209 844290551 820434417 700953483 263476557 514572921 138608469 288040155 107404861 566453485 857943693 18364563 823713767 409230173 49368655 941284637 41079805 653392091 35361175 976183921 595694851 108828801 206441129 558317837 307057983 258332785 603751439 638845175 60394947 865062103 787406241 967430847 568662373 144747235 380013947 485414523 266108873 95907791 145408255 429530311 77867093 914993121 892642265 1557961 106994999 923038047 53425919 912610867 364800109 389220253 217905069 311181367 279060145 542331893 707438695 215416471 351683727 392783561 56794617 681155479 713575255 476355203 62502009 393680903 126875167 301484183 891411519 768173625 757878475 316058239 536653045 610249489 632394495 695734459 51304065 100378865 388585263 623278551 537043485 988465353 974469009 42350949 548631873 564093711 123402533 389529343 594061491 292761283 362560181 530363719 381891969 562318951 511638991 323758825 473486331 529221901 324375501 360909205 546129089 196582219 925393 853490439 319322039 873966653 329397439 454377471 281549575 571194505 381162057 322726217 228181031 214037857 927049705 241532087 848436945 835366777 695360221 621372963 221922317 344118799 280748589 517373039 89153827 649517545 312276397 578943111 590386859 35012693 431143153 910683227 332713855 617682987 882336859 525996007 850570693 631593671 294196243 907276331 398550505 81912083 61545737 209691699 296740253 720635001 220054005 742777873 281543389 558461425 518592601 493685727 762982641 916090107 30102909 344316609 322243427 800368793 159127919 989573085 631709447 599055965 185741831 711385961 680228091 206411613 957481449 511740319 652717985 81759541 592653691 436433855 500562853 433612555 986891245 187933973 719569663 846902417 595575351 682601459 62855655 410528507 105682971 125554869 485451235 922876935 152730911 689719993 619204287 665724667 837478293 259003757 782747537 2774437 648172947 452585793 689878963 747792221 314712061 488970415 364151753 10973185 639184247 148555069 31097537 722375925 789511029 500995697 901891789 421840427 438950701 628164831 199689837 967012117 330816671 418500385 104210785 605844403 641512853 53879003 614273465 837052813 967783583 76161971 351210693 462772399 905998867 848797791 677297701 785340081 561460501 406946713 633881789 406117295 360391305 768056611 541254071 119041873 684986403 381877445 205339529 746208195 414974807 253514579 579066607 462581439 252575851 802686887 169170411 791682689 843148129 382240677 846023373 966353615 258866447 363574067 64445735 827992057 897070601 562485063 573762775 984597459 438543281 919111899 481272573 532121789 62230831 25732593 225221387 333533851 807322227 256144529 447641009 886702557 823941943 437933519 749492717 886812795 475454457 767114949 8639491 941460719 980911873 749923735 600767615 953592643 221503841 858018411 724621621 113394691 153927665 510899321 79501891 738916167 24402001 8179445 432843019 778553771 212821993 93496871 541906235 304241495 14419177 583520853 239623621 415115513 319200587 141359315 719043559 184425669 232088011 566669053 146918951 148465533 87827703 794954545 971099981 709004647 31757851 490220509 407421809 395505485 750042703 320889969 554546413 375099785 360572279 993286761 270089061 75053817 970960697 472605253 558514375 521639427 995157507 260178579 67033671 613022099 233956371 276439777 375280991 919811105 157846627 99996875 134970583 747064493 788859327 191905013 910182839 517382587 685642167 971530759 165430871 725146713 930629537 702022067 262411601 857714973 285909921 775144373 17427595 564969257 768860059 836337869 934929967 56319775 634677827 749542345 676629427 982866991 797495823 709593719 144405203 917459215 149781055 618682547 71675027 169839357 605872093 97178977 867283007 882609343 2270905 158556521 196700779 975668133 129415785 75229373 129283573 775700611 294381391 20045657 19631359 185596601 450799507 921233981 845180917 705754411 322422311 905807479 77547661 680723275 732236735 425639957 471775429 478145547 691099103 363766579 662571997 439844077 957970383 859758837 374755171 611774197 6595997 235799683 380318763 103368113 681678627 702798351 179619155 427505719 103829761 39252437 959011645 840483881 554253727 399013143 682533015 300725417 904337455 313852189 767728469 158159207 619695013 808143419 521113009 679821209 224731077 46848205 361178929 862932733 146771989 487580209 552797603 178223833 953644263 400863189 833950745 845093629 340573779 39510571 85337583 804686013 917805369 800048041 14193609 807603705 751040577 4918743 251202709 481185815 573937371 152806973 765407879 763703043 449333311 303600491 343485467 310263351 281635951 533919741 729342739 172329391 78347569 470983063 845291391 357336815 362679575 271259617 438246065 982561291 507803255 541164941 59687495 730381459 535177333 295641431 257238305 323846315 746736119 753427201 31259761 603787765 984174763 726999123 746051751 747460769 271963661 893704739 956448897 529828965 487715933 827799879 594508803 293258623 406388641 85167525 596858745 959588791 390902441 123400997 585413239 506375001 840322577 645705913 358236891 840787515 568549685 627635549 561133511 442421949 651294527 55428371 750279335 677411523 946584609 419013091 822563891 540231871 470198161 46968035 636548963 226221221 902117903 753206057 975019133 853278961 394852325 705050843 186717199 464201645 614553121 473251361 963946985 21052263 534348189 2974253 810876459 615178801 855484411 434058301 847172663 597152943 130634911 672725133 968819131 401473795 254832059 849733485 522551723 618309085 331398473 382018603 294049603 24931187 644208647 177183781 585069317 68655749 870984317 528951737 866060225 704006997 276968957 705181013 936302473 529989813 570200991 443784811 864542393 865974521 817622851 111648883 534178549 419824897 975556753 856302065 229955629 30041395 373580281 622297453 479930769 472832125 99093429 820179581 137222813 263177555 681105601 134370487 679553561 566231223 379650027 711452865 383317263 819669805 417375423 40708931 173879251 398523845 813431957 342232049 546373379 518364945 902034833 76070019 244149377 565688373 934526873 330951101 877970041 901545427 461221213 32021095 561046113 116087067 414261077 827538519 528558069 432389317 492928705 579232611 759091769 148055051 364428461 329331825 279801467 162697653 858621155 350238825 235652939 322664723 843575041 742661439 231048073 624034043 928289635 553927915 930907991 748955849 109638197 472704113 546534691 742199141 669766243 499702489 586402975 569379387 106423977 697418809 706291659 112094277 84502151 969596583 256093671 282754815 601228611 981728585 535170689 450621807 877701869 608069447 52528751 478051619 94436703 102801621 690420427 215213875 251407163 710429739 427854331 239578429 583652069 903594125 674900137 534362213 728272783 712701765 265755851 939066973 987757107 703845539 832535707 700724823 137761423 178554117 749267361 472151571 722284077 108902347 584677287 810711769 231771995 687293023 254688703 900877941 191442995 620805939 807517515 542578237 369251221 403126981 66245867 398299153 814719017 980624529 990056331 2840407 819731809 258314279 861712225 334699517 932506225 551835671 504812265 720407929 494123357 250949881 38660583 441018825 117961707 119956083 252952167 204516467 859681967 453829165 747210685 556392837 122055163 598445275 134769031 388451479 253299445 559970101 101207719 963434439 80539267 909049599 481186889 171713209 527245397 522604035 754807525 445495199 470138339 703820563 561935667 799055403 167075183 850994439 901902137 224412829 259798783 902625733 81903939 689724605 117097829 420618037 88980711 639373527 285680953 516865099 72297471 403230915 249497561 862523903 941035951 27006173 875208817 30386261 142152549 530059021 440666863 695565655 453909461 538933185 295026443 887175703 759465465 793159407 223446853 441755053 696800281 977492245 33465319 212214335 294629053 558157369 139388417 313209847 85149629 244611817 771656809 462155779 362882867 10655549 687427267 213513123 943221893 78389203 204524147 177941269 754025821 260057809 690587565 262017699 975398577 375880419 172023911 561348515 591539133 790083649 627294049 282652013 991054597 221629355 714113317 339274851 752409427 696157541 705843457 612140783 767143103 73551933 38257679 650338949 180762021 852682377 778147887 602032285 264703399 384483627 371805451 704500667 179232433 860096133 548951823 841958505 482671097 230272389 553715831 667634745 978375421 21750949 40717377 127468739 341710973 486410977 784719669 819118765 159981959 700606657 821593829 668405921 56533615 458490191 664009385 209663567 306906067 134946597 327918241 337882481 585586581 740788577 842047669 775479499 436659683 837162153 198377877 403948839 542689839 833478697 635736507 342452821 969728057 897060507 928067685 362553395 605186305 834147641 693289627 599942561 481690581 782821581 104599599 18651531 614270283 407862947 304209081 920725473 937647165 152091027 265136793 518766237 782540495 101971705 269990389 159502531 80150895 317900221 876280257 868359005 708247505 835062605 45436083 849114749 167816177 465458847 336564301 854572091 299745553 822448945 963773397 233817023 886433473 752016905 895127389 248476205 362958291 789227191 942681275 277161403 361287011 363866191 351050899 285712545 9244631 884600945 421508425 320596515 327840729 568049219 613177361 464469387 352401759 315105649 747454945 713216299 765528229 387866933 259935353 810312541 322579247 477962057 899929955 221670275 755875017 290103031 32602863 116590855 178195079 17822731 468358963 231793757 635056071 669175261 239392019 747651583 621068075 304253003 103152947 676963181 930280865 288060601 134567173 199037491 733106523 787587351 901096387 960806627 316153047 992311003 629031275 72779285 942266329 159531011 537462727 695682929 515801199 205395989 967213413 430170267 610919913 955129633 477810335 362765897 701026279 562627259 618238613 78946099 87698251 560753411 85667377 926380319 427192131 651056031 755003167 311927249 737268803 520790203 315784409 443923489 553437957 633826833 157833121 431113959 167276433 732892637 847439743 835686407 7082543 916523493 405093185 668569447 386830455 70760567 950348673 478094333 716269635 328128875 575162783 841981121 923845305 496746781 570123459 163382201 427780931 416450933 543304925 391850219 831788183 621132513 910421413 262531945 960362415 550020441 390418333 6181457 897213651 482037591 719442699 889320901 508061837 556391651 390686977 538988011 988914353 20443789 772161109 539557369 465244507 506974313 793320107 856624425 434939377 958906135 662207849 903049147 598131231 660626109 399515839 987763195 272793303 495165961 46216357 616729403 389125975 891360047 628309467 221840085 903228963 64873201 535001323 98802475 963079 947496851 501818661 348014761 509691671 856117219 40517023 878270143 522135473 949844537 125704253 142876903 736438647 49450355 269511843 140948389 349461079 69182453 941715781 209102723 513173891 870143663 588027481 949399059 61075579 25966103 629752031 161288945 76905471 745158957 378813345 833785531 68636957 214486643 160125997 859790877 451892267 837120251 787966941 881464523 333627331 435527513 608355027 198273151 709521865 457227437 845178099 895442937 126238827 987299741 920741615 238653957 22840093 27946839 36233025 198204533 335549339 710608527 534050599 525400355 551376103 797398663 564864427 284921075 558984785 618766339 179842203 416270027 279086699 876509267 266349969 394845857 618353681 803370571 969222893 882404975 42371945 877050697 955578071 168216373 545443549 193472055 487826495 755928575 837847075 17572479 618200029 889154271 869472055 826650393 462317875 70407665 382249821 956921731 954327433 926331475 682661409 833297093 125545197 586273585 107909719 545056363 691193655 78873281 922113819 490660235 408168203 503289655 172043475 413084613 422861007 226259419 243602475 819086399 288745907 876049395 266175253 315075751 851308719 358470099 577231311 359125555 10657157 638540245 835660767 879002273 665451451 253470555 997186317 644647735 10682275 655764945 340031599 366934467 846295891 993998247 877503331 875957149 126026671 321954137 228992139 137999011 374112091 71876199 806056149 390630969 632040907 344170077 952361589 858313807 32436277 665044429 401295845 52229213 102195867 481232211 150534893 756759133 309233345 141044365 442269077 880992217 658331965 514013481 632779573 442889437 277354083 705660375 548248423 537190655 826210647 530349393 998255887 314360415 602934525 565002589 234943837 710997155 743719689 906400705 340145857 138041849 531621103 813546833 688182263 639680023 450141941 463601383 727223047 528103227 329292573 952660071 668595771 111148843 466006077 728665529 30665511 136676919 37252329 798110671 438439335 804101683 523059843 873426339 493082849 375902077 758425651 154422075 146941503 452458495 894542313 151401629 537031801 649634851 961859423 775335133 363113607 401681889 569485587 606691095 518866093 207089081 378248013 619461481 470282109 952517039 8658209 718456833 76712645 718435409 628406113 691084303 917317795 406201781 491784627 979876047 66742911 238406269 737772413 158865025 142718463 316370633 993372399 352864625 967965725 935981901 234773507 74312947 525019153 212404285 610069877 859908189 660219489 599456343 147224019 858231827 982879707 833381345 832724585 369129089 804165263 670296491 939081807 584777495 608449757 884510729 908997993 621454673 245590633 80904155 494400861 817911729 924222237 246210949 898230937 821475519 339313709 879539705 626741595 154641423 779086617 168359337 6428829 886398781 990685857 834051479 722913579 82210535 657562069 707900997 279052949 657146299 158464775 600005319 215867441 771826025 776236243 841500589 252775459 434475437 622731039 275731483 400445519 244366665 103439381 307993267 586644841 375606533 843310891 145016485 855654375 807815861 144185885 795550373 134888713 3305011 99230191 648102901 865426393 675548259 898435053 608418651 168489511 193308717 87488171 687236129 680305033 377424771 352335109 262455075 331276897 941137505 618779937 789789113 795463895 523363273 580889963 892144335 197340637 824946371 630632853 620281295 678852647 22745443 824725405 647722931 830851385 637528517 841387207 708647415 86954075 27640583 957157023 193518495 381673883 839556695 823706107 695741503 949703379 949704165 642746357 453876967 293829283 328257517 176346865 536714555 530013043 836807601 342337949 716548189 580532341 881384057 916316139 409818621 318459037 358602907 977370651 344807249 905190319 46954093 22312877 568193047 669295921 888036181 300001903 946621845 327367541 489693369 404687735 132232091 204541075 197724433 545266207 985795453 810178923 540901075 351202061 475643675 820762789 270796673 771008299 546054619 600824753 630588585 602072751 886660521 379002823 38038233 983344147 758978559 913705705 534853807 523927327 965944535 181828317 235964361 841129437 864750523 712393781 997725141 446664609 255513271 460423495 524612485 886558215 820318563 870691639 398877073 875979253 215554013 207150315 831608251 920640149 824622025 495581713 335326161 250543197 83856215 113970725 358304929 175980041 4897853 301731687 592339207 308540829 393601721 889782237 979918567 722726245 489303699 77130839 569607209 832854263 427284501 824976753 803832769 599556139 3543323 235852423 712344743 132169257 921219583 256750277 651134173 677960797 807903911 839179287 185437809 69474681 708127621 571502649 625692785 861739645 545319051 23848361 321873403 474581417 546328123 822096049 806095661 415721355 232957593 807698527 498777141 139336185 30897715 398015885 643851333 228353805 464495905 496787933 827687061 83836971 879277569 620458163 374658919 448816897 823602935 521434689 361478921 865773187 970643123 623833729 956518601 828732907 620633963 880408625 39764997 322598337 619189213 969697753 275994397 309782221 311913553 331913931 588913787 270035751 221058963 950554655 202683281 339704105 146345977 393098677 91693019 528900217 605140579 597155125 395531739 377888001 964753207 409360655 335467547 588602871 879071073 161191805 900022315 526514903 915175259 954368379 640666025 698425445 977154081 992381399 677867315 286473133 110187065 659922461 781904247 765108483 375281841 44894117 243448871 255092483 306677793 986973331 589350651 293169043 618171303 851128525 812678839 354504927 748089319 481362691 42977827 655226969 132505617 289058221 481604373 315172287 366700763 729667595 138575717 430973461 61669253 838317865 822707699 946500263 844270289 139962065 97347501 517264395 10520593 212301473 550018693 450185497 498074139 807176949 628230259 271629305 937571915 715527161 316700283 185048855 750089095 461879961 596079013 832757287 289115969 36684689 43867655 517702947 861935213 847747681 922884537 704632147 722010249 481057359 924052955 144593471 366725275 521764203 282496925 496242879 146019889 513290127 399547691 442672621 796972131 805019485 754675395 892729389 537871567 9197881 214546855 176653869 903478937 189678677 273434401 302785505 93113201 312107435 21382017 813707653 427768463 564582649 688355109 997506203 359851437 928017353 757609837 245990131 39954453 248913001 730675651 186739103 830083475 147339507 630432411 197740027 556176253 699301447 917611629 69285549 497127859 1490701 368956605 629293215 973608347 554104503 443235603 315949065 253422371 589575801 179741189 636445025 195270081 570461271 911086635 252860017 621593969 518180887 828493607 811947331 971834815 603586637 40840867 665704749 583377075 700751179 6391121 165655495 212485607 739475511 438310383 743221753 458439545 728651767 681398841 261588207 117052173 887476795 785623039 185147163 868290773 5271675 563283985 834996029 970826883 323501305 489285449 78563157 854472279 199057339 421512071 646230449 38344217 770845587 68553915 457252325 504468501 556298521 250044369 228975055 160949283 302763947 690942409 5181075 182188191 478035061 240618657 450722715 524916593 297230693 623560291 79924635 4777223 176405555 500942373 949576595 751815509 130641247 268318463 767904707 685290205 178093875 408315667 758135995 407518629 929147071 942924427 648232525 442883127 33516249 749895835 659674773 491078317 637119269 562860155 881512183 645687205 533874439 296986735 218947875 941390147 396074163 64801473 810579977 724458041 824493087 45368513 918003941 585175737 142504459 342833613 119099455 949857669 35717377 77761093 943449825 334007519 848215631 548734099 907944671 116694425 306944271 454094891 266427541 89171977 947972897 875716229 722353577 403503883 964881455 961814565 74594311 449529607 442210469 744956309 790367969 282089707 716193471 340646503 186203061 384694573 942985083 159697461 136415047 660703947 557853089 83766689 274139811 164511819 248917699 122152277 250888223 573902525 926356537 196590853 519553619 469158581 650677283 285937257 88036135 911279443 154884201 939457605 806657223 890394939 893525947 377397603 942237351 781300639 796067475 127696789 957293185 931172145 943014447 951783093 408599387 804846899 870942103 614326181 869459075 909055593 790109341 674732879 606356617 560421921 322814169 270321063 932393549 591385907 428015787 726043301 159142899 962253563 34867257 597531981 228167141 824804449 954865271 337545385 50010585 983389395 166579739 224692427 621781449 566188871 92776615 801743821 71217405 434135867 382026593 480069329 228632319 77717941 398384731 278480641 612202147 481903685 783261547 194443921 472807173 714550271 613424949 353323449 770880139 883667587 202307101 10554301 137706463 384510711 922223959 412844519 695247607 351993607 361562073 381038729 566457871 743929325 304713573 432526845 265531563 672128867 943893375 92243365 477414551 51834547 566460541 468759789 812640999 750634921 645042803 248363075 205756151 345267101 895678533 994167847 24981869 72705131 840788119 497463319 595475253 305371005 631494875 384923551 417393281 934190781 927313483 359774545 644640209 326047139 983746277 454028743 28536037 153010733 336892019 765519523 994238411 642331617 441565059 260000143 865096153 768449231 97541231 534546751 895835303 917043339 474926169 799282285 652805919 190769973 833312805 966871257 574158441 637817971 72020869 72145999 831748345 623313009 334199793 759651233 64634767 62073577 402965419 703492521 64261163 449698837 233120955 789365321 865880861 208755647 244677615 389824875 675624949 713817653 430035425 429086211 108122259 973944139 846943217 940192011 187046939 641299807 209474887 895664259 383847415 828231769 54374355 232343671 770303197 429912231 417935693 386744313 171517897 444090943 552652343 130299427 552467199 63531935 68110039 615133975 502447369 787341007 868399167 663481599 925449151 282512475 384109381 600213263 371404605 476889177 17296269 215367297 885528293 725767529 638708861 431119765 464499811 30508465 826035269 141962903 557602477 345672669 933571293 79545049 863153919 737911847 795255045 637696949 889822685 841212747 855263559 117581709 445864469 673444751 635729139 657124557 458554295 997468097 66758431 658928869 948529955 727884345 588091823 983835983 743246843 238099411 367981639 142323345 148623915 209407737 728007515 500923185 112414955 934950549 293247777 58596547 503644083 858840863 385684121 857362145 100583241 924445589 95819405 539710509 460319419 25956991 319164555 714557779 155020377 759299817 177157101 608674307 541365955 227088745 180362453 553163255 395963869 572474655 685803303 741459443 977395665 729631921 498960277 102141635 655639061 136309069 372355737 72159797 359545443 330551207 984696177 681367589 574757315 87313153 656556839 305943413 465156989 240627743 108584841 638466833 603044393 613544529 478686257 235637481 8698019 155967593 150801279 363461367 871040267 537663947 899082651 884317249 69227987 378720601 344035189 125368781 799035051 164707461 277416901 743724463 502156687 500383809 601305613 127122945 730069447 235797517 718919573 876589029 414436573 505388273 900598379 988773511 918931365 663043193 834668647 100156951 363763005 804980155 555881005 194262223 162302471 543507543 696834595 833454581 138526897 327918451 519160185 297231567 343508781 196431549 250771239 1210801 504059321 532600683 496032495 837440245 711849433 775283001 773327959 830376959 756498777 42897777 826235825 601798197 337776463 985811937 282381075 453698061 829909781 25719261 487761761 718541313 950751567 608060741 877525823 845625745 424069355 516046205 317628961 635185739 720669723 825953397 380331837 463644349 122370399 49699747 760563349 36740995 503337591 679810823 502024685 99748927 497291635 97018405 911198171 881702045 599289763 995766539 5525171 551718733 168632487 140079951 856415641 969912587 858854755 251498257 202413425 248910743 696596225 797150199 26203631 987498173 28223479 384210991 323164807 337662799 504765185 574897519 233049471 162788905 83841057 520044533 282868441 73595177 749428135 623703943 651751787 256384573 332383013 612765299 181055945 991874133 327291001 321870993 668294997 167787117 261632707 684366911 844492599 937709701 558091637 575657827 351885663 747073193 911721279 546098281 524725639 636371949 671772447 388577097 278725165 579763047 892752217 42006147 230960537 641513275 63985273 248236057 97092319 320070037 93306451 200330397 502423249 724383653 174196997 756380709 667751701 733564071 261665777 630074701 248747793 658980059 368035525 546086973 596164341 130225295 602077811 5470627 63294139 926109457 103623739 815002549 342455071 231078845 975654557 344784689 82377903 77511415 729164391 506883677 523768503 231965477 112099247 697414153 442490959 633369535 817609423 651086985 954355547 703598651 489018219 55763645 754057089 980561179 905433969 395366153 624407857 972733163 145008661 305918559 438944419 224726335 533198033 321900849 262047447 895081389 178093677 831061119 7728791 12851929 985485809 902667985 728041331 293013359 517508021 568170803 129604289 405631263 610180693 264442941 806308005 448919461 875286961 553720075 202158851 472857539 283021305 792941125 787939983 508168769 708795553 223199513 388741055 368411379 42352485 187115581 690021331 603770293 561930569 781944559 964078037 622253413 431128473 638427639 891340181 140579569 495628009 118729887 342036137 879662665 640908823 908787137 286597491 288266601 797313861 419935419 469177883 421978963 528837343 395593843 333622675 842489615 225914523 727679061 935144079 769267379 73012855 807296859 744682643 969908309 30266291 199930623 717610727 583796505 37054429 710860363 151907225 571352619 263537097 911260363 39379075 479372733 456047765 258414487 805203525 813693959 337502371 868585035 225222471 9298507 221144225 134909967 407273147 713054167 578171523 557794961 539855253 692644601 586769027 864998663 245996953 738300941 782071847 903144241 368514125 287101559 385417021 75629137 550706693 996353951 958576855 539898425 290714323 748997111 751129681 102089277 797554589 427404795 148244559 190154813 845849865 191524141 980512703 173008797 262289031 692966677 909605589 78831695 113946447 256076359 414615565 386084293 723391331 759191903 558060843 857041921 602599561 53556733 81813049 950511751 632308051 427755977 932561039 593807717 144653847 517458811 34635721 200112179 726923769 647153097 664036039 193990925 482312671 165567093 955883195 169809821 113322359 602404685 831825429 29341197 611010109 174804767 34833299 729967125 211435633 321396937 815146809 240303091 133956633 571679273 724330835 779549549 960528901 258366765 730547573 892261587 518345425 85591751 968079741 529126393 630331865 400832495 74356877 148280639 150768201 46768807 363079187 28767371 375030797 950072573 426263233 579987531 168955105 610973183 774761365 173685875 191366979 206152395 482684627 755444101 798681469 521383809 166946569 617537413 321303197 200246347 654407175 810454273 277510013 208506971 109244909 177461265 912722367 932975341 446295583 132223825 274967751 921578563 582778437 185225451 195177159 374655141 350095193 487907721 530200505 289166185 608879765 623747427 513300571 358011877 696736379 115938103 257853237 716769919 407231963 663018829 506796953 467344287 251076807 73504369 532499615 593465529 794000283 90382073 262878759 770616645 896612859 724729285 44826073 657447877 830693847 280737083 953702949 387882695 706827871 176644679 844821317 616736729 569689359 470449507 67506741 421950105 405682351 235086731 360622531 469180839 759372361 175470917 207627131 89804717 118374961 429953951 831926453 871081565 878299397 815690545 376184213 838901107 565509799 838954265 468592129 146540465 472803139 1302523 775626921 25979873 395352655 961923335 641512965 538136531 184818055 158130931 889503573 862601573 674220529 374489853 706482597 313900407 344746709 894707693 219093183 859495155 892811465 38719247 9491521 275189707 570020523 38979385 532776071 824962043 247846045 688511435 170722749 44211333 436982029 782701995 101533903 341446259 728360365 709467719 370414713 855313365 239839357 281740949 239274043 259117769 941289661 422408209 328932187 29423727 431877117 98770375 431924713 742840305 343725837 292332863 623760319 302511489 731661069 719097235 708395391 596914525 598342241 934432353 585645965 162459841 488182707 438738637 128170779 913799933 820559609 491930759 173116707 343251041 314794605 395085509 606055267 118894405 901952919 781910855 637686117 665765647 67714113 556025679 377163127 566028583 680784255 242171055 235257779 962256385 701014701 772259005 354386169 606010901 120411249 579071829 426022385 639562471 490323893 776192991 460275725 694183937 39272623 396454473 396244609 578960883 816371675 989017607 109017425 690060635 684867837 910447387 832977989 755651033 507964449 930744073 500445163 500148503 770747547 392457185 370788507 198679497 125673481 49617207 786055545 215255719 503028045 603589931 564971883 63278453 610054035 682220385 691879457 204573179 841882963 819736073 31854355 856951567 655132485 168903387 361347715 773080969 436809071 116729873 877896823 879418187 338894879 935268213 424235969 383644223 194570981 676259667 866809081 786969433 71140769 230480257 923509117 722509201 390527861 345111649 372667513 869440747 949542863 870085587 46084059 311852913 145978211 319889995 798975835 89635891 676593963 21789629 669971833 697163343 567303023 901122215 139873407 716540901 467468471 595773199 342967677 569315615 211113179 809303941 323379529 487333169 158719477 719430685 523004807 837957971 605884267 908263287 703116187 296455625 951202023 47900599 677966265 617170653 366867807 728632207 947645911 641460193 989880335 545154353 141884597 193581 164444539 781760861 306664669 913030695 761667693 244766811 624809885 295862841 16080637 954433783 759959567 311785425 729977223 509417353 493897749 428820591 684285869 717063405 988505939 352739985 129005403 122626443 113398843 430972097 458113481 351717457 567635719 260324501 908285551 924583349 111942325 615138725 560106003 715397301 176695821 2178707 103008193 278255575 996812961 145021961 178179533 686446123 6982603 827089339 277208277 269905989 40503205 575589729 374812347 614922565 983739933 152047551 143597485 697535951 923742691 142152095 408201501 184790293 712170859 530885331 667790027 731880905 809001977 819341621 784917943 972607789 153816211 310234535 784615215 325101571 798990603 322731283 604599241 198285215 943786745 171148653 647949919 259060433 111596221 916948141 613315349 786548477 674889341 961359319 94309465 159611141 452103981 350984181 693263839 110809689 488512899 955718937 387824035 771592687 325446401 851190621 582707431 261274949 408542957 68180451 225087291 665538401 14582105 377476565 477607793 963378643 709081629 667485031 592048805 12990895 819785175 446575827 636004669 907922069 361490163 575373657 683758563 866356649 609768605 241284165 241055373 967044253 621871057 720160743 538499959 640980131 843131983 950679709 287594533 880195453 743718299 288171463 876054115 472830575 158371339 921648849 761768261 32209735 147987379 450878507 831497257 586660189 161258871 496202319 110222769 967899277 323636731 163439297 478850763 528783423 882631857 752503563 974053289 163725409 312774867 692128191 323491529 975445609 540536415 834485623 226520559 79670357 983824159 94342613 426558761 997693357 226495905 167007877 119445959 475620477 93916737 540999221 22702953 52986971 497537563 456211365 320333553 558892391 726534681 246030483 217859981 374121285 335853547 650281675 296204209 748917287 563877129 47142175 776364567 277866945 180570037 167681641 166965447 909601359 621606391 969263243 970937865 702385563 272342173 178734961 88412533 360809457 786375233 609640457 429197541 865494313 502403651 364578131 885418879 337495457 958869451 281357645 648427693 416098109 871572169 100804611 883057445 337819245 468480245 398930055 62115809 926913831 328372945 368426995 611022121 199254505 588215971 645440105 921517447 466217659 139095933 970704917 986190031 575461417 380026935 722963495 682948893 935297097 794283119 869720537 357358039 77169595 953449873 339343727 486954153 167535781 34377163 389418803 239040133 617827251 133298965 53545591 756385449 662594335 228336687 998340245 529662361 223361957 108941219 211066353 996974625 306566539 373400257 338310385 679714901 492208543 84096671 209033995 717392019 75091001 254077729 678731193 29789821 246360117 776861163 792788859 936910849 830176253 717365105 884854493 398099537 718915195 329737705 119770993 724880109 127266343 110505043 999229649 439552661 11497983 443222905 842743711 47317079 347274891 799125225 255345287 956987017 402895573 332785663 941799737 448288197 616985465 567168215 720298863 232805871 381756305 312859483 767175663 995032373 258561989 577747515 561132415 811477771 46533953 317237233 423699443 902141741 210478783 199263163 804181285 157521053 638492027 429737123 428863479 158849195 357671483 751600247 924974933 659484649 205016653 42165457 375558447 796246835 684423305 110980113 554663807 974093999 378085453 429021791 83118411 742445255 949791869 465396395 158494105 588312369 673968265 491539373 110542973 902497769 108502377 511144167 760183825 45191731 619045015 588274081 23930743 711473051 451610395 689660393 267885019 22800117 275284613 842971033 671041901 679121245 539766251 406608719 132499049 573168953 850209513 520322423 367518223 210668341 986313383 484738879 784874411 31472451 863699155 280336287 86772111 938647971 191940769 980122713 12033045 955371477 210192851 934181107 32641185 994023335 466823085 41788863 462882969 88340013 564007935 744547539 938991733 423507653 968919069 548117779 78336169 681567761 692279269 738160419 993886909 232550143 677103297 734839415 849648183 9826755 130148507 452885061 223021483 181330135 353584363 46313615 226568115 35605507 576964529 469218587 513574897 129013583 233691247 36309113 55107601 74086931 69757751 730394373 857649347 778229225 687929247 652039131 129759427 809513911 110218691 240475109 555365841 877115559 278063435 563214037 413818299 514280751 653474917 722195999 526869327 288929801 95054535 603521545 594067817 65315645 871561901 847147157 812502507 999507733 975687139 849138841 66364097 96949029 885543089 391985833 424925915 383074633 765000433 297834535 767632181 385276583 192929537 783524411 654419407 970890921 266550469 403554005 803187895 805895 647829679 956118447 983879419 667729849 936147633 346580295 222874551 219304965 803057995 783243237 85112079 194954615 745077893 431856797 754758441 454030819 501408491 161564227 615056189 835621735 730618517 297969783 437145215 938046821 421118495 872584357 75129655 383894921 878889905 599273723 988674475 63081163 307847673 920234355 83206447 879777891 873268013 817431241 119702303 674256087 653312011 791301515 334355417 686775029 886630617 892665605 842524107 33446093 441781863 898646095 244360293 208177855 647626505 135363917 190093603 952439407 130047901 429042597 712707717 990267847 706367629 673275335 920196889 17768955 137739459 979462635 125942893 785644171 223825593 644008721 707777565 61586487 388400489 162884099 579461837 512986639 42163037 902342737 767062307 386480741 966974369 742875987 822829783 153767381 471747789 78138663 491959711 979953733 261496829 926034871 628296765 684902367 672048089 410044341 426396029 59524633 305722255 958444439 181878067 368379567 478783957 787275933 554088245 726258853 645293545 24010193 504307305 816542023 243347089 704301827 749100469 817831209 860271389 798174153 344574225 586990887 381983329 673419909 176614003 731471719 841574845 674711903 225517277 871629909 118171671 985596233 269236571 681466275 274723547 794945783 68232705 520435023 305838849 8181231 628089573 808734877 959890441 114335091 947002669 868603673 508319479 522668951 373344769 529182617 961613657 7565877 786581395 635131703 351130183 473109993 453468191 231245911 34294621 847171357 726498533 883004327 881501635 610267905 851808051 833196825 85396775 10378381 705320279 85765357 911447743 84567939 880097199 661679267 926652489 283144041 296978329 315990027 572621581 151115411 516820611 757648949 933599957 627333907 859999965 800495745 695211773 438198223 550639395 147393427 760978271 525615981 848867543 927642709 539502433 677977949 115032961 781465341 16951029 822356695 627089335 746164741 885227405 579742173 348475407 995178293 987334443 470375989 97276975 156248727 995291475 141900913 18128831 881074559 133818387 251590889 589352817 504465289 254131971 103837371 213509121 906720155 262424127 704197331 311019313 967388895 360044399 218873053 846565577 315503563 932544193 576054869 454276511 374019867 950960619 329630075 179109001 410935507 937418029 581669461 568167789 273425727 122125385 963552691 549433907 824947189 222068113 35147313 702843341 606564557 764248793 355442987 547957559 165919983 379662977 496954829 9549427 317853639 972710511 769303043 652815241 81904647 466782479 825750409 76223887 649285295 490419291 728977629 361690011 498401279 197211343 508550217 171162579 74488453 351437937 220034779 890717791 898339351 532246991 208602479 922358385 268200655 413829889 779664289 917824837 905310737 344195747 151709915 444071197 845265291 851196125 453565773 671885379 786059825 572958303 447381233 296101383 631269693 265132379 530044549 580483527 339729719 57960081 624425105 433354209 644268263 794824775 888880231 214846147 590685797 111614285 724215583 693311967 834480139 329218041 545037465 159046829 160355711 909006631 937430653 914849201 786043051 595638589 224783675 925536115 77807813 841329965 458879757 208543625 815802697 592521067 269509359 409768841 704436987 101802739 344727983 39877145 181813479 904786511 801570009 142789089 607795041 969161357 596265415 205288085 676861701 160412737 381167767 446990317 385647033 800150665 368121141 627929259 282297769 421042191 566709327 748587421 56257607 573029373 24276061 257950355 718184273 193308939 944533663 894357861 635698635 229736055 142320161 439212793 116167937 46000393 339045037 385413175 639388041 656607245 89541601 390357267 293118523 93905497 268350489 849238917 256955201 177379149 428836225 973225103 194492673 433582543 372738309 235510591 451024181 692176205 931131233 525745061 877011925 609903803 963324437 544966105 264181289 70407067 179051623 426168577 52205497 392304369 813556327 161453125 244479325 9062477 490857969 486339545 102676527 551853251 257972129 255305717 854105235 346049521 750481889 908046301 515201847 226598145 469970913 86809305 668784143 438959005 698307227 726297919 601936215 84821245 629278669 699698023 774279313 566999777 419690241 975254193 505581965 656749707 74686085 158103693 7892829 200592845 123699827 433135975 184713053 133498365 782192043 98125245 842078259 915251959 617684181 735628561 920561355 998113827 538276195 725998829 244758871 688802157 101601929 17841635 623774805 376194127 269289547 738451083 728315271 98591429 833216625 545262731 339975421 820766293 749605257 49294731 167095307 590324495 703646701 244959295 554088521 455047303 383965371 543201119 426704031 171956443 209866975 490786991 887554105 417079733 22443527 867589113 679274889 58524991 201065899 866726925 453290831 339722545 992389133 695685577 632987019 645810635 218430259 583034637 651781259 962744017 400752623 246287811 428287461 425181841 571165401 219883743 861168497 129367265 825767247 461382489 173898841 900489249 372899453 605741877 671476741 599302199 791811665 921499773 739503913 615373201 237538947 196988483 522712773 691730981 985873299 863805855 13170969 521441905 204286923 525540023 646656693 966997115 35452475 984797619 462457195 175623891 146448827 720015815 863574871 346429837 201329641 436904491 566455773 504508231 727619119 196355875 6246573 45985323 893639359 102776057 274934967 372155107 348430223 146146559 112471863 191328681 621632351 104318607 768373941 46452535 774780601 136711179 794463227 295106007 823402219 488666589 323455773 261245013 994390287 830273401 579487863 325450505 294762759 691075671 42315695 524867791 471605367 269692667 240649393 326200847 361590225 336447471 139175087 914932663 416940367 485020355 522848039 894872637 676960751 785077013 216410333 651498655 801088633 367932293 325871837 170337123 515911809 403786943 922075517 253069209 976923483 200934001 499074901 652198357 218961703 589874779 291035215 345503543 970070481 298577211 377296529 829535331 50443785 875837917 316958101 431740041 646249027 402768401 672869651 985302113 88061891 928407477 60876817 351994661 314281871 314932649 578337757 62436255 903956345 1826521 655008519 31191835 850691865 634998579 196947055 232466545 488179407 206661815 312258617 169564413 904433857 508720227 322464463 386182567 972137443 638577987 165632487 797654493 226742507 846248807 769741179 430641813 610162011 869068525 422779091 640511309 239314553 288271605 19375481 671090957 428447831 778069675 498097729 145854817 75600589 20230719 854237255 649582943 566055033 712283115 673909233 514414759 414870983 415001843 110946281 458894941 362799075 513378465 650624037 763183155 254876617 506017095 648307937 750071643 772859705 133017407 409991585 401149335 817477559 610563563 817591857 569504811 446368153 199888565 706710949 96830693 55760115 176842769 388688731 506857757 4464297 815152759 909311477 329359023 439919967 88395117 328847967 836265731 417691271 538148985 86480079 802225159 97018203 816149037 51506627 463321905 569478617 364729127 999141115 961605759 848095179 846631175 162434693 11003257 521353663 607970169 598342583 453138473 798295057 751258413 980633129 636238379 676998621 292062941 564499653 488518553 846980109 208994381 267024563 50976793 448622161 655113543 665793127 886493149 937406497 818496157 538676385 108027543 732104127 637116713 541801825 797552265 704812851 921304781 224202999 979660663 761243467 44353397 881198835 922432431 41583265 51748369 70524215 990640393 965129877 371025819 626353377 80625635 92492879 788193303 254385505 504234529 809034687 338158479 137867627 356338227 675576989 183596821 495761915 386624527 451949419 205893571 930802005 716368947 745112687 368889277 638601733 386770599 267444923 672175401 80960991 901871605 325368103 971431741 915042047 832401465 100143441 226819889 70350027 471633933 442818725 228625739 310887149 666759063 399992657 102688721 837199963 414998921 742795597 454871063 894768721 776651287 633303897 452842871 293200723 249986045 894560255 260818515 891880495 713532805 622225039 676011285 695526645 774692221 150010911 997755697 255901701 194458681 122119315 878451233 478845185 273938071 585329039 605264997 621543381 959198975 538030471 916955273 912915897 517945439 116974257 790246431 393457189 384184111 104417805 578689729 936674273 638547561 461247589 296341267 167251957 896874133 239547207 318869435 411777721 814790339 215309327 501260399 24813253 490030985 80272601 262584041 825933827 268278787 187933071 788629481 219544219 34460887 568705761 664597051 806479875 128338231 842631497 734797233 364157941 437534167 320679941 976636965 806271353 594154485 956261407 648835195 811370967 471691863 701732197 965160857 665249191 642075211 469521265 167174517 692603333 65062057 722574499 100875785 399116881 163854543 918997283 22355541 747702205 790678945 875154401 46486885 253948857 425172111 895177621 392636747 894937155 299463823 776459713 135232545 35797149 673505569 647803821 257450251 648057943 255717191 698104167 595961647 940362819 354235539 260466889 65147075 473731455 205030427 966340209 165327361 184372845 351520635 40361675 399228969 955676603 649644507 701638405 262306441 580799835 910766311 837329943 450840943 446623115 409225689 489251779 810947895 886936527 122980973 76149135 702661443 156454899 633351145 765691853 562622207 452725517 266515997 671101075 667764955 456378487 408994397 745743557 552671059 154475221 970299527 134685447 598426087 279425301 632153093 3320013 873228323 32908649 797446849 528867661 331139737 576460881 777146931 939075209 721937379 381091213 239232601 451996231 657580453 635893037 910915771 865123607 961324421 42310273 690657637 613375829 582521915 916304171 256584175 374838301 261257339 536572425 713919605 738514521 159700493 906388043 164878495 727189435 213243575 845081189 183882907 260277175 431986509 881687315 565691933 973846675 971901097 148124761 866579815 234690129 715306671 910718593 48832061 160492487 808806725 690948387 874744559 622967177 602467 987781147 651033425 715647225 237371901 480444555 47068611 20538175 661702939 127754719 157845033 93879883 951119555 11336397 274837747 40391127 411916809 915105361 13425689 198896225 662503943 877092527 686184469 611027505 869477601 847986291 167501553 359029851 464235711 248578929 384129337 691927987 408649939 605663687 468025605 358301657 608334425 605368535 659106545 444782649 846424977 374409807 310858021 959048449 342059207 990686497 185716303 304017963 461743951 260326541 618061477 791962227 384403071 46607635 913516773 770979431 629942971 341570433 548844373 427705683 835944559 329793005 218136259 775979087 674799371 27465905 966544265 510732607 330800651 278510449 724620927 488031689 868046833 675879963 497374737 83140701 399794501 140544483 551293225 897969459 506577307 804070979 238168129 682711883 265071245 304155651 668870739 339182447 335496383 158583341 434754537 783159087 575233753 549564691 723681807 615111651 233775757 266836311 168359261 208936361 545603479 551655127 72716527 272894059 15115447 658001861 986581869 984177371 188296891 400528785 291983877 826966895 910058865 984366583 185839469 869067111 928016565 927987711 441621219 988424141 598274411 815919859 325998893 790152817 638947963 91070311 41590171 331256553 903566807 312249913 520161537 415773591 131426171 689995659 400256191 835994787 781648487 253154249 943870905 937271551 715472809 815361707 491932513 482802527 723695951 710023209 262124201 915524937 897331573 884973449 85050643 592736255 596287295 474877527 460097955 289266581 717372885 680209767 869583335 448956901 656555881 853943767 131456759 183920523 684842039 858465801 411024495 551934705 918924673 584333995 102144887 516766023 631039630 222574001 946250173 677681541 923792821 450050901 445655159 737675629 480710479 502489375 818088291 350361733 879681723 658032855 343433671 766626593 674182503 474000277 17937779 993481043 458170309 270287539 887703995 170758657 199629901 491748565 648141951 398469073 356844673 369876713 214979365 26904115 662841327 320148771 616987033 294612063 769237285 575249919 650568533 923666519 393031359 879097665 728731221 376152033 761800289 132698355 567780383 662565775 926134195 405999213 713320129 421116857 570709351 835312459 947644371 983320445 110078521 368698477 543737713 373554631 593484267 94968581 705953603 714354755 865495109 527182723 851645303 360798317 837474845 34550949 614315971 547958917 98527817 811618927 939702373 556061329 695177903 571446573 979661605 299106659 861927735 773086323 935410767 337345425 567961811 196487711 996257721 663940221 119157887 73615699 60331459 228720465 937916989 985213309 613217363 955749369 745170455 13253455 739735509 497073201 85821725 768020423 473589315 182142583 205412971 379654953 58531863 177820437 853633573 71928835 859631963 739392281 491260531 80442917 318473885 687457631 609795209 999227311 123805169 843280259 710015903 509972485 802883573 205802223 482789367 701801169 227658961 953462227 137334239 984209159 550322483 472772137 303529637 491654631 766611793 388118191 966832039 661778929 364303339 686014957 16860997 258478069 283553603 376518965 586175977 460515333 9863723 873630111 169337605 418006141 6483191 118415115 617423893 92327169 997939847 534091553 141048219 732053889 518065473 12638289 163711007 64361773 348903955 644002517 425270583 113397635 825293681 750000041 595920505 78698821 799468125 173828507 713216139 292446083 7529819 662187063 436797973 86840463 850879867 537601751 764946635 758891271 165405521 843106713 976522341 589662925 945219067 781105769 252752295 404280845 458641441 915511797 259771225 424383037 284326131 418139317 832571217 316090651 978480931 337172459 768882021 61245863 342486001 37817501 56106107 722521903 30138917 92661403 774533499 93452871 334689547 785316225 538535513 741148109 39690617 997294507 46438157 636988899 929593039 34300741 651925659 990888183 305313267 59503421 169968139 569663163 938076755 823761993 987872115 382317359 665712867 185421807 996398827 552318867 232848165 347024755 113960339 148268407 421015581 42863333 10175129 258070443 28542299 120228897 436771375 589402959 514803699 579355587 577176205 370458311 140866435 429584437 911505655 762398909 831982387 902066855 116818615 618837287 777244851 673538579 535891997 360375359 587131189 831408183 968816007 635708813 714619513 920757405 7829077 476606171 538409415 749318547 641596913 430095677 41173739 960523059 850891471 165506063 172500795 121881693 673941863 976358903 85313177 404445115 960079677 258380767 217852517 86735545 475565529 435932157 746947731 25708689 815057361 296174285 990194327 611802949 128509373 837085715 977925743 418415261 711620925 256625115 980395937 302142759 375252481 617841529 664053309 929142589 795776181 861511307 223210967 524130813 254410775 817636851 585909389 966142547 118612457 173647583 213154825 380262381 913132533 923955649 642837621 95683139 352981773 360930647 319142793 619876247 941879817 83322789 75452293 483546095 659182799 76773625 592439851 683103773 435342153 4341987 320268749 511713465 931479141 280535363 264574529 852227363 933252385 723452219 164631011 52402817 156487039 119705657 336237211 878232263 502977929 348963057 442319063 746765739 716545617 282248797 431185549 222780333 595238129 834777285 792516155 426621207 574663561 459478705 596349927 822997241 921532489 312088569 594751007 478243883 682398813 579854007 912213757 118274123 527601413 213344337 191542553 554350275 597592191 149091441 240246943 999441349 714306325 935258125 817760825 894046023 65502237 521792097 925390879 149804553 154094831 511919601 952541969 107881109 749981677 998012807 941630291 231768633 121136001 771526461 462443955 118929935 146991391 780859753 510069383 58576889 432987199 559603635 597594289 323489179 926106469 17261573 249757331 805988711 976151835 76754839 737960733 24359831 653982451 767854049 369148611 228691753 900544647 589337513 990660231 180806885 434997369 561763323 900852975 916071007 85863795 437589291 671355141 557401835 998796585 925376471 251689829 617170089 601248083 571245537 735387943 105144709 264374453 548149623 926633207 975680047 507808793 643855371 660783103 279607579 524805969 91941213 78064889 743253389 823055925 511996525 606871327 55419019 204471211 601805449 442984763 48550887 622543517 325126727 898422937 736132409 714950395 871884929 469339153 122056417 530496191 303556443 337233151 216719621 787798765 984659781 636783691 179358873 391509135 575638509 855338339 785682515 700336567 20115797 81214781 121484213 541664383 126655 668368727 609053701 969184265 26559413 567550137 836317013 371202943 314135823 531469549 708595069 37906709 223766503 23759119 268288795 698286339 544706723 131541175 509486747 860983437 385236973 658647825 817088809 733352701 294304189 984484807 917783489 675836069 581124681 622639123 521248291 388935135 124263707 345071025 272291285 730986509 219040253 939167717 478549287 387847833 610013701 408977539 626797619 524524535 445215883 647504091 453878235 650109601 984451127 87429841 359269571 874741783 492879861 576103367 595554909 157213157 967749623 885275565 309656035 460576413 826971323 474285049 640136019 706945241 620411909 470212265 640316535 776798779 680193507 712231747 977727965 219532909 645776293 768974295 971062753 405804579 129022187 461232633 594169759 309932567 200298135 581887945 745726465 291861513 783135703 688563949 791803063 593879493 705868063 43893651 875771193 894337053 422777641 798479215 230622153 395550697 425126909 987410627 446142575 62759697 237177315 922314579 744416761 346434425 591400051 617907053 669229313 497840151 294476167 276991209 368259303 643562469 897625669 85458979 133690067 284929763 124005399 135415043 920132277 695396125 83447219 156178425 874793541 883449253 455678995 603348215 358264837 350074261 420944767 750562941 542872635 934897423 348048001 93589649 189458937 380438077 18044653 853371331 716297239 861483603 481307359 238022695 970992179 385277067 704818109 606916189 223726521 409422117 991757107 114191499 399874263 285554285 43007027 780304735 48364421 199661493 113289723 20495117 159110275 269894743 351404303 590974039 819684443 788661941 436571707 530817921 750876253 784722235 447445907 219907929 142998431 820863833 811369845 777374775 370543109 312212617 511910787 271379705 762059571 142998865 100705195 914635267 689590685 102957111 19683103 278135877 484499833 889140431 546825055 874011701 496794055 416709299 776471339 576405715 309734225 795622021 20053393 144916641 552342437 152798959 704601831 212698289 485698591 386831269 840332743 490917271 970923739 862539873 328991765 974986867 251965891 990634979 871195647 508661739 643316103 410291959 496376569 828879149 620806305 795950959 855965375 287767279 620529743 503575847 317173331 669378669 238695835 883571965 64349445 553913457 501497427 498718173 17048935 183104585 214122513 262537659 519949909 665684169 430258485 407726737 663122933 710837583 792937959 20016479 147988657 794412741 237702423 869950257 904466495 110116501 482680189 333808155 31543963 192043447 101495451 159714355 580897545 376085929 742800313 166754973 947777813 82359155 601620197 435805317 39710611 632229537 613446649 477763611 951221665 490653769 651129747 250653593 5840289 484874253 413027359 559617605 168687679 934051085 377491147 772473189 771906929 701324541 228256399 679945037 994638197 684676369 441733421 122935383 527768011 282952455 486221355 470715365 870357569 729727013 465146331 805515619 923160043 618068025 140609107 166427457 514483239 297654939 48970359 960253435 521611671 832859433 946284269 183326481 322173225 968715079 421700387 471980047 182860561 813106919 108209749 576990599 306048457 714548091 298859651 484520981 223874329 979159299 879558515 885151575 667088649 688344839 7054773 928474363 377632497 806820243 994865573 906564529 472823403 110797373 425804383 478081077 813735005 374392103 17412813 447686215 744355825 477774835 309671585 294039475 974884764 324063439 58905423 864600395 713983515 523181941 226630941 580041707 817784179 259340321 597806605 379146609 504627183 305769113 499230965 382186955 951283491 200617773 887177321 221212649 592691435 377896369 464935883 542444231 375687277 511879811 488944195 238384229 822312723 402894733 236999617 531793615 731260309 678728505 912597503 353637143 516738795 999508865 689659259 734681177 484804443 629128415 8834173 263642803 306475377 419835229 823662105 240916051 395812609 209924999 949417251 869302377 298973737 29384563 995441467 235164209 184066123 862812611 912309709 794929131 565869843 26976921 442929415 272488933 366267257 382707363 90882787 567796589 80255669 681271323 372825117 344198111 554124109 445474749 449106243 836798367 580437007 821475281 506599329 676535059 233044747 230634785 712865871 1867187 403167393 700255239 498022193 956477683 119812725 978936161 729754605 18863451 270519409 77509013 114356979 156491633 936406473 202226063 434072699 75167945 248114173 28449223 867266949 669339903 680259021 383031101 705502427 5243057 831756873 80286837 590926349 315009677 201007043 65045117 278626931 738244163 48461527 879352299 749435435 582820239 674745195 619744737 474126623 39286067 643742633 606978817 143099905 732262903 707156231 689393787 786193223 223834543 710236481 694911237 197940273 449499703 912955227 526267357 569437641 950522989 241720481 627411401 511540703 259367231 301990823 372425241 855044617 909206173 629830473 229842337 907118249 558332547 849124269 870556609 317590503 117912051 574606655 175787869 382724277 962315253 556253617 190720487 993062855 659328669 594874113 324610641 871470755 864948743 907797619 732187165 657330315 240874833 630676883 440397901 657073045 485342121 255541047 616662133 950094741 473494335 247709305 989789093 54203181 765208143 238126013 307553153 145774277 567420955 60017073 712465195 523306893 974077419 416139847 563411539 908521085 123496981 65382335 429121583 632671575 949535983 325725593 585990781 377801123 66516959 217978789 976338051 154890159 543770701 309409523 377008657 366181779 411580587 437941987 622237819 134398515 935774069 923382297 62514593 573788725 847548973 244562303 676379881 428715273 222062683 619114827 504459839 920063463 950867091 121315319 315502365 153896145 795167089 783319371 292235133 279698317 391474835 651282769 117052137 94164141 378352551 252352861 49583471 934262921 941242719 266956555 75084449 536167999 869639283 925217089 460301987 511779515 868163749 639339817 108099863 100860841 378551747 112598843 254890029 266606725 956116635 677568557 965957019 979224463 234751499 83609609 360249247 389310669 430231537 229894425 242929665 590160657 846050875 821932787 532920587 488444145 833442779 590157679 733658777 150240719 969292233 695284661 745830149 30316245 116231 458274097 172931125 688253935 397232291 589153943 479621275 147145945 902088363 814703329 792741931 404848145 683930429 265779797 115354977 921143777 778464887 493877119 636382279 225453911 904867975 290411061 461277035 689595215 615851679 587293329 257590495 250264421 306618871 846839 86425927 264594691 117993171 387713557 790047941 360766041 553624955 165150687 942472713 183124833 587329349 725534351 538915657 365129945 614915975 124298925 234539333 340634953 758917799 265402625 346576447 637872131 45641997 972853155 963372297 559754271 209302059 791889133 43761143 691020669 285029757 284856453 301813737 522959813 378647429 456330837 485794117 945508711 608138957 909691795 645461241 238769821 694045413 550250939 532801913 629312613 981241195 481907601 218511303 699240839 913999103 9788961 962900583 608886677 569313355 441234367 71665255 377158119 870990593 155059463 175874655 492604571 580335837 921136095 366917485 989263261 86206625 768568435 274985013 53767579 327091479 124376629 474568167 725566733 43459087 969291491 490210619 919899957 158904167 286634881 855958891 575409945 150696445 104921947 169048383 312907401 287194305 942165255 151481351 259735841 141580191 736291677 235097241 754216765 891479189 854634119 539861073 830148361 398300837 538457835 401504279 116670835 755104473 91257923 27500375 162272561 156328257 179169927 687560459 900257737 770020347 984200447 476572847 157498495 272341031 965184307 349554505 34770275 350780655 513356283 852909671 448228945 648584325 266813553 707895073 968983013 930497829 157327609 337213205 69477001 683364369 845040705 281096039 880362863 346259603 331518013 220293065 516781451 898168573 916503849 43385197 750374561 805961127 627081863 933822995 8773689 435057143 607350823 798315267 568775841 630559573 559236891 707748873 234360307 672642613 100699839 421872763 231207183 903896335 76418489 479993401 435292319 205775207 450167541 493246121 815236111 247658183 185606821 666728889 507588761 649020351 592621895 54347487 296055359 711328493 354483359 740490265 188606153 419204593 137268409 259734253 48881349 294536821 218704617 271549289 438886541 690582829 357011147 19888421 958243647 52494033 952100165 78912063 163717575 382853413 358986627 90625115 257391571 548955121 111081975 511237035 776951003 656984587 458297185 754115553 135452961 615547467 494490561 159896893 655609515 294936211 934924645 996537735 13876299 250309325 510477795 161637643 512723609 244195307 471998227 264224673 597306613 522660075 885814303 641866661 45101701 860752331 746196591 772964095 649164605 807278229 942172343 231315485 180299475 491525727 127331831 508671731 806538183 197807681 881007727 140481027 691331683 483645021 719899311 917842259 290914231 1103069 448672905 838182765 584732827 9964789 601563161 786089067 959252653 46866909 415770819 898205419 599706967 340303321 435194935 97081619 472364747 635412275 158379365 569846159 921123583 324705083 223658377 388267159 713561267 298595151 266561835 709525739 913529969 505749455 788885269 931393229 338198919 418345253 472580443 822440209 182019855 749185221 162300507 446137351 74245867 964668455 768226741 125910673 282635455 885228495 126829403 630558485 245667581 786526791 43737213 476447873 989240287 304917793 602425497 891315019 306572387 63919095 341878899 785103985 56588113 328689003 139266839 179199097 708174909 498286119 508902619 808317555 238556795 559686111 835056215 72810739 785862701 292230731 411263861 287399193 910801209 45346351 286486619 559779723 170418773 745372757 474820739 131057013 284514291 798075023 197169573 755649423 815963479 637296823 285142729 341736729 919401351 536825263 906710839 728420055 595421781 823034465 840833415 99652119 103804249 182673089 794432147 636964785 586556147 473949895 685119615 764645633 35675465 886386551 784146873 385342191 157264719 690380763 151420917 445089001 869233085 860756997 143258925 422983653 973721615 845713423 783696553 621240161 722790289 12059 919898611 810014819 332983379 910126675 174196191 322873979 314224685 685607915 844899721 935979709 932475325 362491933 258323287 316351689 91860847 912238121 541000691 731054021 299887215 953190235 422829395 233874781 447665593 894473219 902576051 639286475 45331725 307697279 391382167 139602889 626232305 261642287 186318795 68550561 602499253 500605567 972941411 603961375 128574323 20333535 517749693 361336475 477831949 981573833 958097019 452980467 440224295 825404097 318359433 446395019 885683765 965684561 720358687 688583507 699777643 4336395 288433077 641729729 612520141 712226953 134150929 636623571 849941283 869455213 218928447 849938703 974835707 569052001 546372501 29819269 952615857 864735001 58349995 202787785 120359777 752149839 163227243 662398459 213972469 529702851 255817981 768341953 276555037 485424193 942547925 500457287 302523475 735550363 39483315 586107975 977833427 837315755 302456471 292783357 657129387 470122323 621361873 2015535 734252711 444732285 115283443 187098411 272425313 970869277 953361881 421959369 605695289 617943597 536824231 137735781 946581335 768980397 580599499 172544487 710477227 103377577 336912377 928693693 39390189 272415795 454772269 854641117 191753887 936485221 229822379 129000135 207613959 373263457 333251327 371385981 550702391 717075795 57965565 72803217 998651655 627574123 957161665 991784983 382692117 932096995 719917745 890323631 371795149 131937023 4125559 985267071 391397469 301535497 786620427 517627701 677084093 264309075 818793381 86266373 101439917 8634167 805949643 695056561 910980791 565579545 697803849 26120061 966233131 358947679 47760435 612909879 111500575 216818559 520528103 787599415 817937271 630904051 302212615 659549019 285652183 969237563 751935361 424709895 671632819 597891043 371668615 535515691 381473857 765252989 144105623 379886909 997902209 505086627 981673591 47238459 909289533 894042103 44884783 809836205 266470915 483270693 218613527 233436831 574727727 638035165 284369097 845233063 850108125 83070425 757931049 594638565 196740599 779164639 699933541 141535487 33311789 446160309 95750129 107808035 213450233 978555183 548187527 387041285 131161753 168307239 906382639 117962983 749924119 819703679 89094195 97092749 794954049 265340451 111594789 478478919 899282097 194082819 390917351 144538345 46595015 889883929 694078871 23807953 124959403 94602859 826425255 264089575 217433677 649235199 657425095 599580827 68526439 627532521 906563829 195464927 61839733 999271491 379635571 602151475 787845061 871134767 274854353 686121375 135263843 858228185 850728163 791273135 608069929 984565617 127200193 906648185 56900789 526253363 337945811 208348317 564198259 368248415 464968389 584327233 738005137 529151553 855527305 18168595 940376327 80088875 738253661 629980233 983508631 707203959 890051525 928842655 511639239 879714953 352230029 362298977 359081961 266894279 881291467 373592151 420546067 472995751 575772633 868020955 776829993 862481059 704918619 739986891 232009425 350999099 888076095 855205515 109628281 711443453 852627639 733358859 940000605 168668791 598574915 89630915 285164669 775477317 317324451 657046957 642386079 590963465 401441511 194921299 122730067 12306543 364679009 614871489 455380981 549612839 516734893 335452301 975732385 202429421 806696111 735164887 679461697 214272641 162054037 117314885 811753863 444854447 900127955 242775813 341119209 875531083 156512037 503896781 373135271 702242603 11164303 384094939 259637193 930843699 872089947 337783541 78258723 556324431 474735393 672317803 957672265 358869103 160693181 762618897 149155485 537707919 687434833 732841797 471966023 791942063 916597321 744987377 467180343 895173341 409804891 580538239 947025447 993034279 36749699 983046375 364331669 266398377 361644037 947446697 502267593 827089029 84900461 226537929 590934999 116447719 464780431 31703509 849299603 701786111 790454921 784002019 74672797 434321929 543360445 88843411 691562849 830070855 552453593 203194379 426367757 544511233 709917135 292638457 497842075 87308171 45896415 473627539 8459721 37581119 248155017 47729815 493497887 366166145 179681947 870680139 327187951 708986809 744909867 153752447 536589391 293706329 61948563 231622791 86652195 496855005 478740855 23409219 473586193 18853061 151725253 773967639 985100681 866851229 887791025 266828789 716800963 645625 274840501 138572623 728073151 921419631 503074713 932916775 353282119 783306915 451026023 158473471 785314539 464255041 775176305 28909291 232598787 846075387 358483033 249418875 601070765 995682695 134979069 525021905 401384403 766005677 571940751 703161493 247200039 466115891 885465215 996323567 987746591 143899119 237257353 683076763 515796219 662612919 238092469 521806549 539420613 828579695 94422093 170023525 111496013 410304003 847303653 692057749 532458793 824637285 80504411 819461185 601165755 581552011 666506705 768856257 432848683 662875005 300004531 416505089 276796011 611011649 850870457 541353067 840719921 208867821 769233371 902521849 341027837 106648727 986415455 297309989 443857175 55141 529905873 793739001 11330451 729988989 785061125 345249025 456373061 22622487 670243097 555756117 98984655 532855913 80666479 400547987 14961305 242766005 224806581 157770463 256626131 34446153 894824159 770889961 839457141 430568051 907450919 242450919 17038145 525137551 631966741 49992087 772955839 179237633 921878129 86720831 834321981 850215729 645524563 526506671 584769491 6519185 820130069 551036731 486356069 987844765 184366939 643993283 48281 94222807 590588435 92120237 891592671 148685511 891439473 295851749 387548015 191166467 972581361 573675749 600760139 866368033 862240599 459820711 310729529 979948231 780263853 553460149 507388875 412457373 423350347 989421083 892191065 360536405 988849869 892167025 343240449 495286955 690756117 605318613 430715311 990259553 90127183 167559403 169933071 593487167 427039473 371289827 516518559 340377369 913887671 242769779 515070617 930897867 463264165 653814489 524175113 729318709 749691143 784625371 229488319 690726209 867753841 763500489 971938385 231791329 639882945 503033209 947481889 473863953 818188313 291189317 305470041 903112147 599068391 95653401 71401445 120757551 597553629 997410657 30639489 589400635 362491385 536526353 412874155 522693133 485016961 554582699 683227821 214689483 94045949 286530867 922756501 52609181 97292355 82854455 190534975 875496629 847049585 654810063 985517383 405217871 947668459 12195481 43970839 189821357 898208603 423862457 152469727 694342935 438912693 493039839 325135001 944023523 568922425 103353153 747726083 374322023 188704615 887202461 896362661 241600521 432311311 380246331 879818963 408252977 659090243 286876647 720450207 70254931 383309151 524429047 842208239 702173927 440851977 771174731 863671913 661211503 276160811 517497673 813430397 515392377 267065339 497227229 72724069 64181907 974905333 558435713 327267103 787725403 808138203 51415857 850609523 956448113 833257661 70229363 673197811 437303423 644065517 199044949 75391223 922681143 554374921 187212655 170844061 470634325 575887091 517742303 933535441 363433371 535172823 629930057 623275329 299005139 892352555 881361117 269012837 860980941 779120301 534230353 844682367 779330919 988413789 194784485 638046613 589482881 725126025 194719323 482047607 732379141 701853125 987553029 315982529 962122469 870535407 536318903 531549391 729739293 888184617 114498003 1073869 350469295 780574433 205121081 567484841 891653541 944461257 181927005 461656091 434140431 810600929 204287283 812075427 842565899 848903273 967394873 516016523 320086713 115960561 642057845 884070881 56137027 249773129 454619509 480503937 95911133 569619857 811970641 142394887 752532415 584377645 782588583 706617565 34522413 968328647 609181595 792360501 518591599 66597717 602112733 774661379 690103771 476209169 525663141 822567179 269828039 949491075 933663149 551625173 758561177 233931637 743329341 350960047 909874361 67412731 775377189 392555187 185565083 506965361 123772347 539779523 298172087 474263933 439703515 469792131 886219153 645389833 812841709 22407525 808330675 526989643 184244959 166789281 898656685 750637503 433131815 301675321 628449821 255036201 7353281 743821557 721913507 340615573 578172473 958972515 844821225 673413207 19503767 933012957 699541923 989918989 409318517 206912129 188818313 594760857 663269361 114435387 728646239 633709609 539987631 154924473 264219119 595941423 131968735 947263349 770190601 356205417 190050873 951407787 120058507 651492315 293648119 407574375 326667861 607539155 466836707 776806009 751457361 83083489 758443593 126093433 430144883 527099621 415664895 484590791 895557299 259339521 127861607 805051017 425502741 464196259 123088227 29324211 765260707 367331455 123389281 603903995 295857261 912529807 132455771 890619363 557871505 480103451 272883149 754218929 931582767 591696555 655933117 93805685 425988977 252351767 258313403 141949195 117037963 623736185 208707547 460893967 273181877 614815031 681103549 349376491 435459379 749183995 912054149 268757457 58782543 574971579 381079781 116993719 891109467 924401843 871070479 479931741 336191919 732949607 696844483 448590413 824296881 3639971 831579209 819889877 844602571 778139515 655970413 771708945 414549099 450476363 525555591 220610013 356111377 730831801 949784179 258353635 129409083 476574383 487277465 770148499 93434741 463193445 16236519 380358183 376560975 704273747 5275603 809778077 575522663 838426943 676099163 648525245 552136285 377928757 74509829 342855707 307825883 100066441 181156833 41097227 564274325 318150361 751215235 336026031 935278405 194930439 334416651 977281263 346951595 342254401 599411229 387037819 227435153 434501881 170101995 923171531 73325517 98926063 644806183 449120545 95074615 306022691 519940883 728925827 777466289 835194851 181302387 317281987 333955109 409932485 875188117 526693241 861049991 786771107 992564559 745455877 571307217 103504291 387285251 25351565 762733059 143653935 234440595 390379013 256057639 950287355 686845039 701938981 422013011 801818887 224023181 751500393 766988703 251473045 245836139 315236637 970362413 713428015 682752527 533885265 55587625 317715117 22205449 547434717 347532481 382544681 486191213 974668895 252740917 935264265 87176411 387358275 10889667 73887225 600776825 27864501 497247159 107064043 464979187 91662257 509222243 759184669 872093569 362396151 247484705 112953361 484760035 46672909 164546131 866636183 375094621 926568515 271830115 467590339 506000317 340171445 591707077 63596269 471409755 395357247 319728881 272835261 595590419 801201547 54399851 443148063 504977741 236894219 439168701 318149189 58827511 767313139 715775865 203981485 839171975 936577095 51798073 293727771 533262589 77001679 118248095 68059805 864159963 693948953 464004695 234056067 193065267 844116353 26867217 17433709 416104857 366111523 331361927 747636285 152420397 563561449 68168573 875209761 430107285 975830403 827947709 910989453 203784957 528067435 333591321 639870011 135940895 796091869 66295659 940716851 877977909 481044711 90344853 758061501 390945545 533590357 168431491 879686001 319544553 914675649 272630821 899489833 353153703 511089035 88775797 270958347 682420903 694773211 408589943 836900737 948845259 122860705 732196917 446976577 754658691 414999957 423911105 937544263 220114629 797365049 612249397 496768981 748134159 563539923 432375731 399138683 654170217 5777525 414250599 829137163 801982303 797250551 324289153 567321251 624788487 901040631 504611643 155701155 780377857 773739489 296561371 103964605 575550579 750013411 753386407 579096033 370598665 376537589 274505459 17097037 614891261 728863447 48330265 888055429 651225867 356909843 164609403 451884117 135399801 47033849 452930435 548505811 157855509 643566241 972351909 810556503 326585399 52693737 144638811 621949065 458282427 415229563 656266021 593034581 107068427 992781769 368768399 212074479 115675153 47504137 656804907 153458641 736161861 916983099 664788627 967000513 522370981 539371305 606337385 229554893 652243129 302882401 788149593 88695109 214337165 972535871 824964627 926313929 677025719 388177119 316248403 437227067 169664855 783329835 339032537 916984523 683901459 970426067 111621233 980976359 292665113 412448081 243939053 832606289 592302877 405569763 104840999 319737353 673061217 381933203 323729409 937297759 132706473 73404463 74011239 395924709 537423427 918116689 23927369 607043447 767883527 495613529 252463011 778802491 688435795 348028271 213401973 34908827 92740363 418489219 455907019 680711501 4465823 877261135 487929783 883158861 487868423 361735759 40704595 89864671 319571133 688481745 849617859 823191695 941205963 564660193 616480557 732468785 973765309 489216601 859172039 145930211 433343145 599707607 659584715 490101767 839759151 230846151 156665977 579402569 626677621 110429783 395417885 791946143 635055401 160576895 537286409 182843207 436834175 823339521 862569625 713599937 470218297 601185635 490647851 57805019 128377499 274438647 90491949 409281449 767371893 179413973 994262543 156917641 362250523 778036699 188640587 77692191 82419821 179568309 994303335 426088275 460040655 425985487 357672425 955799647 534423345 344301157 365483365 452326075 895528457 467553399 736347765 115324975 935253079 930445771 59112125 188624067 879718813 692907761 70625251 937374671 482268653 625766469 401446557 458649325 895815389 425613539 557014949 219870467 868795017 54580149 895558333 59172667 684574873 905361005 103636397 796229131 768003899 117836417 866299209 110536237 454274085 226675761 142901355 94163881 174954901 851846533 566509303 615570121 616543569 820031825 101038803 688141089 910092711 257694761 736011509 544094861 622230639 482340207 299180119 603976243 265498631 184424523 200172795 683593599 636962387 8623789 312894185 23824675 830845381 697832015 993457461 757847069 942108239 547217327 794199289 895217329 767789171 205979415 479035993 56591211 491937843 896347541 703375739 775371807 911410721 427346947 832032151 74627307 332268115 332624385 894353889 423817521 86168933 678294773 82437281 560450717 425523583 377318163 760880157 652309031 368692047 921778259 636932521 692748551 687270667 695063923 253886625 529863107 758947185 741914363 569925987 795995433 443512519 677247549 517225053 37040969 293188061 56356945 337048831 661185667 952548103 865014549 201793733 357689467 868838693 868069941 791001135 927232795 904909979 134706719 976352715 818796951 580616793 686275851 931296551 313689455 642124503 984436729 833239519 196360037 609983759 681596339 43274903 925871747 858065803 877208009 638527479 346702625 132474711 959015827 186726833 56740825 564399883 15090479 227477889 966383761 411875779 405674633 900732967 252795251 316397607 929238605 798564977 201252341 112172389 334090999 392347693 146118099 375171635 794731973 410917687 358789137 663961551 71770561 398429811 15651835 865694975 63245499 541003465 763981349 675091 457129545 661650475 127603051 306117855 900413645 897162389 300305907 689863107 195632751 144590599 91310121 849501861 822600225 271847567 388630975 474861809 139739289 365274939 485683891 644315553 139018583 709745959 8876617 817578031 46767523 343818615 956403215 214454181 377542545 632704851 747440341 437864335 93054709 89166061 666835899 690070277 315215985 65308801 866330915 998787491 965757549 824262481 574352315 763751569 53010969 145539749 909360501 351480189 717629037 611402961 712713873 257209245 788444459 96265777 663594639 808565935 113263579 889410595 387257151 382471675 332375755 677886485 744376241 939949389 446401045 931189369 993774917 87090171 66307735 917239749 708250783 603446757 265982717 510370177 174471337 921065071 825632437 328380723 410450841 386486667 667313399 348416881 246950891 229314731 653952453 637596369 988847969 553070033 659212517 802278649 398996491 155246721 862353641 374646161 134327099 540551881 114652713 78108491 950323341 373196353 215594435 528837347 720430823 631354117 41177763 866187803 628431219 904511679 704075383 828632251 595595945 848959385 531517111 92291481 233818945 280612683 558748067 60654475 436098367 334518803 882767685 779512951 143365365 76416951 840059501 866287173 217769457 427267719 671463345 564802535 727654417 992755799 778735731 598311001 510111355 251953031 447984605 396046237 381095067 834223613 919328219 205457339 6269221 373878311 701710889 921686985 505186579 93078009 470272325 839141597 476186795 32547317 749555577 311723293 626147961 363705375 997509075 247542961 240079443 475348229 686441263 213119691 183081555 975218879 486181673 813976231 390489565 158330857 320066347 819823239 648482975 305050285 985434981 563269813 606999437 415972277 945871825 999303809 908019169 391298873 693898029 633357129 145579555 111798775 969799681 636919659 834997531 601934391 171546017 257934165 451645153 834720963 353832225 119825017 328997839 900640247 570435169 289548879 332512139 6756013 244378893 90707803 970110463 230821709 714962835 690689061 798787681 559848131 795538477 884480067 706221101 676295049 743038937 606143819 550437927 299189403 497326943 684467683 672333147 509229695 964977233 527670963 949833245 160284739 583719943 429858671 756425481 434046079 189325471 390191055 228204549 670320719 605191173 550657175 104227645 684361309 265833703 754165391 753986083 464356307 549914045 656531341 445882997 796655465 963999689 3406183 202869047 313274973 998097425 290178819 934312885 728563063 363757157 550295369 289872005 92251139 637621345 652214317 256510079 11669719 13200481 856268711 913878989 957763411 630230673 125905083 199331029 19259997 657235423 770797681 357412177 631874403 716261123 35428575 400538425 744734043 795949437 729490971 444542421 912417217 37674135 966421835 375398061 463176095 197165663 487504791 236439705 275556995 282064561 563977523 342598835 346080129 806093865 1186391 301796191 614939703 386501937 74478663 448043339 842443727 564281595 557143115 894940779 525629427 813934715 46870713 195051771 414568923 646168949 368784361 734739071 243323719 776936305 530291005 683426497 979799929 733904061 384040991 225691865 538594371 804123509 427675393 542122531 220871419 905350773 136756321 612481343 294929277 216296551 313374139 790433055 114859313 537449147 513571487 152511987 104885253 93174953 772061085 169534521 640324973 78608947 670714189 1665461 449910123 444859681 723974485 455573107 794849667 94071297 482882397 325957575 275374021 632300845 601853977 470331725 176898501 321314243 247375937 39968235 342248355 310008495 301641113 777889485 982449411 855365023 796358635 614204517 144109589 18565645 743419913 6245747 273900177 770477621 439679691 961516023 359602865 251488291 651002903 116183615 475004991 603900583 717643733 88743905 431448455 586158681 111253753 588596407 945990239 356768921 906802811 870523365 818421543 205408909 719496799 785923801 830411205 422781993 247533231 642584133 959193767 871222563 493403261 560813353 271569859 310934525 981777121 660819397 496241559 790186749 957313537 289862825 714950697 48067379 637903879 52052391 497985545 245029755 468269601 461023963 310141771 188995441 23747471 159053227 469076111 280008319 493002895 497217473 750533113 575163607 868581739 875959827 645279289 58408047 390407033 749456859 424792455 615945223 415958033 842815393 192397469 551709737 688727445 538201135 159045573 985262115 454150767 510043033 637509579 415793937 400132627 602249789 131187463 735360719 207877625 749299643 319247445 288608007 692212901 674231813 847625245 417738793 112158881 398456395 893355853 727769711 918225791 511876107 194681947 268708055 657349847 802225161 844522565 826010665 649757519 376137041 595667345 929970169 641647505 585197113 426690383 446124443 171701067 243536729 410950675 518908209 383743549 998448795 379263741 577264291 234387237 935717413 266664625 447205025 302452943 959526769 447120993 577398691 952148235 377899575 362360511 614821611 90277815 841119103 156048141 546810751 493407155 977670289 482407949 576779057 784419819 138686469 414125331 508495257 812198477 141401781 903938799 881636119 518645977 836490437 380756741 609676753 854443149 365404835 367558199 662711995 459591285 260628995 442348021 688214157 197196963 299592929 893557045 30408899 392804655 213177983 48745845 402515625 888945983 891500141 530282939 234330191 791032317 804259709 251218327 524450189 329550745 271412939 364274717 691306753 506808909 774362813 812158701 252567831 565923165 9228797 404600107 107111675 588338195 426910337 981237385 926081449 885452481 126641797 171981881 789213921 797561793 319238541 679529981 991433769 650872437 186042725 174699801 798341585 366787143 766056737 690153307 589315573 576147883 299940383 519368219 354654577 235010331 900934401 786380597 262019823 763112471 615686323 210716177 708581857 753784875 503879533 681779868 311678843 913568745 392033191 101034063 301487041 567713769 492773671 781197605 912492155 987142611 885784057 84352167 214798393 70719307 43779443 446300385 345698641 602999047 6818607 886581097 202733797 580346815 648902161 55220831 115374557 762460471 412346183 984487783 399760361 349846329 966480195 203018931 895058563 739280023 654883525 855695349 277555177 776308779 995367885 26918767 70197795 230117847 78908075 970838245 346296323 347603847 541640945 874727589 728774689 85302827 514850939 767986823 987381725 602393789 297354861 155441385 302638175 901685571 815193653 27735983 611680663 33358787 791521927 244530505 265331517 402312015 896255583 87904173 490364371 273648901 139960321 264297305 16637855 81780999 8974329 136718933 191210931 264376699 11187227 33564459 548893415 476532119 785661571 805826039 262666457 671750293 572865175 504516947 25826037 213751477 945704961 941372775 123545961 534309443 530462137 861690079 483355181 146390673 543186679 717613557 627513345 187355385 298370625 788595555 354969967 296482269 4802147 425841523 781054407 992258473 370493809 459929843 967505953 865158093 809148873 477709879 663204443 513343427 413262605 208060957 769652767 537135119 411607339 270832397 862176223 280171835 784102741 324447223 492002257 732727001 13361417 606357325 374370549 7230595 635564813 523455503 969237 246729949 884572265 980505797 172461247 443759245 919159157 82665081 690794063 987142473 446138059 912397767 187079393 235557067 511486031 783785929 362740831 956594131 281333295 715747623 806009209 293851949 947534303 462718733 180516009 792665771 110041369 238966837 305271597 147700775 524233957 160330715 898055183 142531205 430456461 392745157 681420573 775003307 446618789 190181441 843612145 104637071 810641417 894482215 580839147 311158827 665391325 939690709 236773939 164719231 357073809 583461423 804748473 310316695 262716885 315167909 783615799 138157701 94294951 658346797 175744297 970300515 530344523 104224071 469871069 811428693 786693963 901684213 505247583 71822977 924368769 451647177 312859529 706939423 971805699 290302169 695604473 497974883 762682681 747250113 338849819 214238355 477957583 386793129 10921501 704666107 352541623 616190269 725932023 407869161 64864047 485842103 107167083 707979193 310085051 95487699 401588223 796099021 74926377 334824663 79445509 471256721 68647049 673952403 795266453 238561909 125289787 432567131 500277133 509167605 151808481 320186125 69171865 526743185 702725993 960674579 139719205 116468693 4938759 431755095 189817709 375529043 275653173 346532177 116102769 628290727 191376313 844911361 224152823 343497327 686832801 772707817 677701519 620459353 900989503 15703067 966922389 531714581 197570607 757153069 646756645 484681053 928504149 128362811 35508265 996931831 215784671 199734253 312744787 469099177 788279617 478572401 321647129 777145671 246235959 30303099 379410107 604874155 372429509 565144141 808154433 993861561 535475765 14745005 817837695 606280537 958085407 252780005 30618377 444883325 133925215 465237199 307179073 981205791 382003223 964880585 619094863 221255749 976296115 822107575 795083301 15302389 881911785 270303243 829753463 128835139 773832885 255792055 83264713 863665483 464979803 507254075 355125603 488516651 206343783 230942367 505081171 33348369 896635311 500927087 299340659 733729581 675693387 154068675 864776035 842526651 985106595 381713463 639603337 562998523 64422755 878950131 81297177 285115705 3985021 714237349 349508363 22230473 137208625 792295555 890115357 732122113 860663295 838950475 511471063 559836229 615750069 586512195 635002507 736389377 221725801 323416635 979834449 679392677 927544949 245894535 831566599 902051757 229370749 175322629 831553113 27209627 94198127 899074591 832565941 220923895 391729535 140011711 941843539 985724501 42372393 963391583 646112307 405635665 64255279 525818873 611051807 979752073 584878241 768842775 676977319 606140331 699767761 952306629 887765027 440870247 942822747 708221339 722098097 780857721 714593059 552933557 478266173 439375009 546832217 787441083 720435059 17814957 48969069 424732635 566784207 879295083 128086813 738721739 947479695 648554679 892228459 395437769 58474429 927599989 347550631 566033307 729436713 571028365 329117795 547623825 551855977 892428529 12412029 306771839 839470559 919830941 37339671 158995141 799675315 881046675 11513245 68322887 385043927 845556955 226842823 332343671 584983297 52221577 167639949 668767047 29938353 249948089 34062133 799580473 11866671 580362121 214652235 636997713 140951439 955777831 852432547 516262429 676878501 647257795 791816283 612295093 8372243 209894041 314597079 69387445 735134785 173137387 604304063 966678597 889897567 239724545 420034061 189518355 380110693 432398641 696096505 315280213 203410709 712577489 160422155 501475273 676675831 809237831 69848587 350321847 816766809 460965113 517294865 722965481 499961429 2449247 116696439 173070011 321940169 533628655 246143969 700389125 660840801 928598315 924520767 460285491 999781771 236753825 628458943 802912305 148710527 921161439 53288931 685617779 883036223 70524291 916511085 243378427 506076305 322431275 276256359 832765261 759433735 122723205 28759593 79470967 993258233 445018435 271539279 4083473 204407941 904096027 479421883 721544759 364561815 180318933 624259481 629584529 503867357 291738681 964517983 446592589 953744079 262679063 538625737 145540385 121517741 308801867 179103963 165642061 198294401 588018617 911838945 38035 105096219 861142857 768246895 854021957 318785809 685485807 705780579 549538615 238419397 496978339 148249823 483151561 681718625 66266471 956834897 841481185 806049233 163088457 483631211 390312683 235161809 451717463 405880875 542008289 191794911 699501999 968558039 326085439 355283013 108403055 194596343 362168587 984696849 230869189 398400097 171021779 632189215 854138083 880357683 869534127 27606283 230478081 899044817 522073915 389661503 917427553 223677413 28662431 935626731 62645841 599570019 934256267 372927753 669310239 278324363 394379569 490292055 942121769 857366237 476675921 458958173 356119759 360347689 468245809 309867119 759507579 881908865 151838113 217893281 845258143 166714433 794492151 173645011 297015735 671783183 378207247 214651825 401214789 35335893 824308559 679375529 459891411 328957641 129231785 416624629 573029873 541526631 729769873 116578963 658490941 243143281 363867139 850448203 112793685 565151223 169166729 824277935 27832551 133681483 652454193 461573399 312428965 501434123 851515279 808334753 251723335 663843609 678176705 175368505 362374545 626707361 308715121 922727565 41029195 804242459 850580169 540024341 921121867 660847679 774694273 429818131 255588201 265773331 534518743 538511501 178648197 74623459 92504723 500552789 379095181 812484419 645632257 617768961 564421491 15884305 328436215 952368117 685734703 560197743 885523669 252126805 92923077 567269067 27400321 178970645 473140029 148184281 829018729 330501611 892902061 671882899 957358465 846571351 168296749 240064319 648285003 457183651 980823005 57017963 687111371 68848349 227302893 3240679 108307857 849518817 427943817 960209875 401132209 675620427 634366191 499378579 801382345 136550277 364973921 498424017 725676547 822861761 385242665 887411587 474151689 762123763 144931735 458788323 261537811 477700063 212739081 833217913 931595999 561630989 892131039 471820303 515102901 355640779 547493763 936366777 982524769 966735925 925383273 13290707 365393467 66055975 519767049 933656835 685567775 323792715 781127143 343289395 806949237 120270353 949565323 446081177 925515049 745386673 938608011 557150385 489190837 606484781 270111359 638189119 389742869 130986829 589866505 601617231 649287887 653525407 16197587 400710965 235785971 407715965 757616271 927449487 997446421 411992837 119795963 162968383 247770963 481383459 957039827 272113011 28124503 449741189 934022119 991476381 495260491 222934181 97810183 78598011 841521895 774754751 858163981 20656657 452778603 220043489 394762713 653255853 193224601 998512853 448370523 184492255 109424323 845844537 960662143 398217863 363706303 517809771 231386181 27271879 158511337 460996241 150213289 624625933 766875689 993487519 475404219 735747085 990334957 946477643 747512971 825209024 305111595 511404567 296516659 391658353 475926369 683690569 530384085 577148583 409288597 628432369 19196571 117337141 448313687 279559659 579525305 407432763 160212155 889223635 696661607 429313053 489561183 688382739 643521001 93604741 318148717 338893277 137881481 880924009 815627151 372445223 38224023 234323205 741573631 629406385 686966385 116938973 516260471 889816581 169510263 279455165 900079937 682343793 1746451 310261177 901925161 222968337 73564601 925183789 355447943 668169665 479379937 526538687 125482039 512904235 145924879 617985369 29761185 277960127 459009997 92728115 993648307 40886455 348002221 693906117 593372387 283051537 10750537 657030869 683371567 739847317 636288579 983120495 32964381 100019671 986653765 329373159 762632379 183898923 251545091 282148315 568054179 65112755 259895093 975462957 344754413 541112919 823177375 697205515 261144901 292205255 148051723 674543079 400233429 99332731 814975563 135423617 13530967 935350453 346850873 636270041 913922309 145426043 132043703 736530239 235072425 607905695 914122159 423806275 76389519 331747769 868039701 390058181 209205391 559387945 440185057 341727209 459385093 162252823 479504663 512389401 617473753 758273905 321332673 831229449 232564089 343051765 520045809 999743161 960425947 514690333 708934337 446281835 366614397 489143349 455949395 537439913 936359783 930139469 187272913 172752459 922115363 71047741 495216239 356281453 780755917 387863971 911770981 366441839 408087293 604330475 498817783 441647619 767700959 745261121 909670511 103419417 326210079 668380065 559364639 980638703 30134513 154164171 307071585 731974919 843031063 217821765 572057239 480654129 244545749 155337567 399527981 899287937 980638457 774704949 551280017 803705167 148397529 734120611 417470787 644718915 305509719 240582739 945942721 482873417 151129813 249563063 975073175 260429459 593026115 492029443 985678935 260939423 10383639 567261501 940235675 65554993 641758543 145351975 341131525 431839063 669140595 488459863 16803903 969719649 285636749 848973089 662779389 394938863 289034553 501535399 31882489 631691747 203235473 480741329 758228723 476468843 912942651 211231823 549320119 925587451 326143081 515956123 174267927 754703693 820463821 124960243 370725101 823270505 14492585 107467615 85552667 555141015 33492673 804378289 401368459 578312303 242699363 248544385 611707953 541174475 303619175 98420783 432759559 863667665 531444521 643334371 715998221 138276587 631859859 161904781 647274831 748430543 59980559 255121125 760388575 14642809 427041941 654420589 986909911 307768363 684522403 681559403 470895193 796853877 663108159 291287281 299102351 993295145 189233913 58268631 899654829 717281893 595680231 332853179 259751917 430565257 530300325 314255881 714608271 285318727 617532505 587960047 888207583 271391631 315429557 103970917 446291503 803907231 386060013 655894827 754651609 498310139 196157885 632341963 543274047 594144879 644498799 546005397 450277837 146656785 903159505 311630241 972417523 182719289 632874037 348440525 277327403 29248399 338786431 677334467 175091963 405323519 653264401 78889461 358477545 160124093 568318939 74193049 881426825 691973699 534377043 89370799 934276213 300544599 812265593 283092737 249058895 757624327 974337743 334877469 277777859 964504995 175751783 219641439 215305857 703681483 555779543 97035491 412938307 996659299 599049787 507139219 337308109 4206485 278341689 882373663 631757803 380837589 945509123 378828801 996129899 380284899 183979853 682747255 439934249 565196735 22476885 890790795 262225159 30328249 199133921 580622347 997431025 70453347 326361151 889015953 849029847 64015001 81041735 465535357 591217843 50728577 252663639 394994423 496738697 454882437 629283667 860735471 403646565 751197275 403353771 131752223 911953237 134217727 645806165 609136131 64280693 460469941 933017041 166211561 465791719 239648265 842785825 51819741 336356823 665864399 76869335 845410489 22645109 449603621 867920137 530449435 289778683 465100909 257675347 744798063 992127151 15134291 309981661 946598883 380224727 797085135 753405779 773001839 117458631 949942041 328439279 843239637 71931097 401244087 153965421 490284699 767121521 568878453 998054163 592004627 903622901 881297769 318579375 996857685 672051419 348260587 81894809 202330943 804563101 70367397 963640751 849293437 490477499 936747389 815971925 600673403 942793153 863307693 571518845 566414965 397862723 66842029 426737305 680758891 823043799 999361861 638313897 542642723 719177249 775422589 613410357 267421229 708520141 608551597 992697417 409179365 360766347 973278063 13386621 220022119 407626519 287198633 116107757 62744221 313342769 932607621 263869249 424419385 278676901 812463737 82848165 74048433 940301125 805649983 648739027 133047621 183006957 663214559 299866887 760225535 758825083 234270115 713607687 985094573 560458717 471283999 910562339 109751273 397858819 363389487 989051183 628154643 959288297 209804793 796597131 580732499 253631887 896858601 633645339 870891419 462940417 422200497 740452431 7526047 652451155 957350735 593643807 407356899 891723675 629368839 591977477 944740783 4946941 227618661 177048331 353148689 898779813 37881149 853160637 30735075 402099395 579135405 199607091 297177285 446741907 386896919 733484809 761689629 881697109 410276393 29870183 75549473 540102743 755356373 482970619 578942403 339211239 274514777 660711929 101418695 860594529 711008315 146535715 469983923 37589801 825318467 157311935 578163417 711170981 830355335 388343447 125267025 807983693 398785637 204077061 104382713 137938581 395665537 433015015 973858941 281687813 251318725 254490019 287817035 516361763 259856229 891108133 372411291 512729477 719497441 295577061 722854509 750023361 719424763 442195683 481358475 197408891 47078077 489621155 815123845 153482591 798422655 356305971 509872819 127383837 765989595 146593323 153210931 637829489 994530743 40953255 551063025 267259677 973802301 516410703 91756697 2005225 35187427 662572113 358093991 796266665 173917797 169394019 475818841 329664569 823482567 140864963 681967545 52393079 851362645 883412023 763165591 240072273 768592547 692829711 389623945 459471799 27431309 709868063 811796209 704486565 925191737 651343303 139222777 249595933 353799955 495681515 47623565 113256743 183579597 925213181 520613737 594406871 349095013 914782447 828609547 233672777 348703 990027843 843670715 119423899 687464073 755702525 797378445 350916859 459091059 962963627 572341333 482123419 599512829 422377061 884956085 104387251 845456521 630677959 778654229 40038533 169162693 801794041 223190181 641356637 207260835 367285417 74041437 618662799 884504419 916884749 569671423 792505713 904438661 197511395 580237843 670538345 776085721 297133425 96359399 684848095 926825071 459651719 413952661 848249925 996013991 760685945 392415995 116998679 351211813 616006695 133095877 421635799 8280531 758580727 892539489 340372493 699174887 760583381 930641927 228074061 99432925 746810939 327892153 836375603 90075511 852327973 340773949 534053725 770753733 35089431 859256613 883268985 501852441 84214821 518590409 360083769 81697807 349067233 710672199 342747989 672144013 528457065 892579979 69265295 387367359 653405797 351812931 471968693 359410711 812304131 75527911 492294805 788936275 254308089 906116535 78710029 818058359 652267141 93382077 880629499 436416719 437222255 886802377 555692109 757116143 262983683 848755313 35897845 136121523 751177239 869735703 835817707 459612995 950394379 50661605 21765425 838507013 270779333 845187015 753679573 527138739 127488433 185149305 363485925 867927877 861387209 242521209 410121855 999923457 202108551 905510161 454658499 783299955 587276277 239435857 795002075 841816689 342400161 224456975 972754681 762566677 177379997 645906157 642755929 513386435 792142477 148509011 903669821 679250217 881225875 360420465 846439405 817101115 381457247 782026817 810817983 915851571 53007655 534133633 108026121 683938201 11461291 381467321 690828337 374603575 845851181 783072061 138047391 891337759 92572287 370999841 913669319 33190579 588848117 470425925 674949409 631891089 76196207 402389589 635334959 370020777 855351635 976059327 738796415 340011311 921276559 295207357 179145119 910261407 672829335 927959373 355668269 199432381 246456685 479879479 555648201 720679061 349371029 462498061 834756381 869212795 243080735 770949671 960615387 888474891 554629789 339372195 498518207 326896683 634068275 165906029 555258507 32428039 544259203 645820979 337222153 189301265 349497277 202059885 436212489 594637831 163499929 684552285 88990057 734057709 803790161 851789577 62025225 326405135 838665645 545530435 9686483 956849667 16659965 59607457 231178937 261288867 34287895 913343367 144411319 344154899 782935127 949915673 339314895 647892161 242189989 617214539 719545355 844402783 183746925 648539347 511129211 458114027 131767209 958632753 84504125 234097835 451391189 799705775 482580081 825041959 658383351 294426459 927240257 969481527 574626461 718194961 302204383 447099125 676045791 637346413 208950665 247303109 60760411 882641369 255628411 16148055 285084725 784771207 865966597 184164505 691754015 285471083 230039159 413941453 438135883 34960457 339742249 206786165 757859961 653978281 584938113 345294171 246034929 563754713 534928615 171019927 521321087 199081205 597088207 796879237 560262521 271636953 137256881 179862725 711908543 500632623 592402961 642334025 647462327 138790759 891403897 740390209 981206095 323868345 16457593 911770923 903572477 335248935 97865135 558238411 899274431 282618233 783554747 367654445 770429979 878859069 550842951 2429605 558645279 300168141 587178247 891499983 836228707 230639689 989043123 839007379 493683461 649955223 720875535 716583959 278089131 20043115 815671267 783558357 234563713 91931453 174629893 64460165 548905279 496144713 299525965 724495405 857099813 456511389 745020829 19163929 503229173 883098883 183774943 617296351 712105473 37945369 480678919 158085721 785328927 681747517 724166157 567173547 183030443 444971157 65766133 722718019 556152461 555577109 738584777 495019989 297587507 904470899 721535641 509070427 211150995 217360945 227540867 581758235 799867179 70913941 570014119 378097827 53340417 480465071 421646127 136871621 222458019 391890011 104363343 448444829 598542889 938468917 699060031 55581329 620183601 650121639 897983811 944504651 790848737 755528419 469435813 921050817 106071781 635856863 101401015 785845807 52274805 567727451 468233937 786539031 167491153 720661473 959300441 884092233 391670461 929107135 951697849 890054103 594009735 421542673 631642463 376140831 880686597 146149043 821507019 654878147 37623833 319907151 524109691 685374127 642293029 440334165 169402105 208313881 553656855 88998655 134307291 988327293 155316073 272628555 927009209 596405151 792626199 499548929 355633973 468098443 455535273 73440181 578809 596131735 346444841 915391163 714674361 12414557 166703921 696205365 306506285 261541313 853329119 680226827 519294489 667113967 914568153 683454189 403136839 75543647 117745483 810540883 913585033 362252489 984946671 502421119 708355257 18210357 987996927 527337847 679492025 812766699 479810373 12543501 942111091 592712835 42037261 500146649 491718619 944857303 994754095 651526459 852133097 786415371 729485063 517074011 776036257 767214477 937470333 631906343 152081165 79134737 288011007 660800349 904165695 505553043 252956803 489484663 692112977 627797 5517191 719897537 569504101 426048231 946016529 716106827 587494309 662629659 707865265 722555629 330268485 191478797 844619131 890460229 195337343 430979107 234067727 889169599 499969171 797503495 835901075 697703303 564441805 446689711 393271219 975762841 477224829 177249623 408052137 303701685 784381697 72899715 393867823 773592161 180564153 367996671 2073743 746168557 975066129 890080735 542449303 163814005 974223225 852327553 780524953 852787157 557162859 766905735 732622713 795942839 324918635 793149917 204186521 509168013 279152899 980744123 888403945 808295051 301994693 219051417 781512159 593911991 711932747 355375933 957172089 776640979 874376247 295131315 58561085 4729461 648455989 245287761 479559227 763625713 805539571 362208945 888217863 962993769 808681521 571251127 599731393 971505093 380992685 838612881 945202959 30955189 744699955 332505777 271599135 401678003 459178901 771303895 267132325 229950973 124259757 439622915 663344099 565294235 774432861 618392197 631473821 1123679 399031185 835640303 642680353 546526945 944089655 770516765 947911751 738109569 835759439 757158195 246357355 51299687 139389655 129461663 615083893 826903427 324935899 806163733 811465939 228974221 272069229 275928721 26690941 895248135 878510759 549592663 905263085 913077559 929003435 806938355 727600683 421888559 430458789 685284921 561132743 992371911 648243141 766767685 13844437 668360349 957162821 768853629 255997429 525743901 819139689 477750411 139715917 739865205 58096507 492809575 254289547 686481565 90347981 514627657 380773859 220271189 949618873 769419703 613091863 796589607 666929827 825388157 538425195 539728227 872193521 117937327 973112493 263988001 841628185 238830763 174941237 106859327 566834837 361721875 271322849 457649511 133383653 472366805 862972181 142508555 109417109 574302755 563188673 734198113 981386807 857969019 183741787 542056041 147275365 376659363 739622115 186731501 157742529 638575011 933069531 890950011 956977399 778718163 310283861 289338479 618267575 387952845 362442213 139097317 931940795 336839285 67952811 277083847 665988553 135037177 242120013 850355909 3478183 546682829 410239225 89719641 935277609 35118763 933588069 570345921 345747497 888977563 94194893 132509959 420655497 617774311 993414907 244236537 660857141 894335523 605374525 917762353 148391709 719029035 285296999 603414031 97241915 162267173 263351767 546104763 937513621 211455355 413686391 80012069 936116785 254674659 959933617 796401927 92726307 785192537 98704253 836472029 119511173 178356001 262212185 674009077 992248953 196089543 118068301 400711771 942173995 905943583 112335077 271497193 241701579 424100933 565629751 930362173 292388757 307796383 910009571 194700483 770662601 986068697 542064911 724066729 875104691 495927269 221486441 69570279 842517157 223833857 746257191 168460351 654268921 427403697 414956551 735161143 725468947 636542915 595759439 40083489 582538585 408750663 525470925 572306709 863317315 932435613 73036249 732912369 764879685 814675303 763259985 818219617 829580007 5247891 903900569 877281489 3727279 974178645 519869857 273509245 700831281 524692263 479090145 731084901 171699975 292651215 756659795 357292879 589864915 223169115 850900097 122694347 492098113 635134749 370643575 463764789 77867777 325037233 30810059 426784169 149077711 401396219 535810717 807869713 170310507 169583657 897159315 903271711 901914787 814003631 988824539 487499593 885941061 528248137 675122731 600390607 161052717 41969403 902281665 441265851 48473405 332492047 4930659 253296347 724355169 825405215 273491553 148532425 157499017 614478593 130319247 877890533 788800177 113876445 795547723 643009367 884649177 298275613 934480511 50184465 987695887 22572919 552263829 965176007 227654753 573033959 53350533 73993981 4852203 237270193 439057615 910494715 297359825 814763617 525032311 385600719 741383737 998354125 329543435 177946707 882689625 489025037 308507553 6718503 224714603 79306121 949817819 649857969 579185585 782124781 592951771 427002151 8978291 357226797 368195663 725552251 794463237 631128963 933446001 385423985 719086785 473023093 241012733 164764559 355066379 901521615 912003129 405085479 615429707 214451367 623723253 11413585 210067699 621704791 509445253 442686187 458801535 858968451 412593097 743017121 186972783 186199065 528549669 119664097 778463313 666379085 498590091 687904483 451046067 193607323 772519277 924931751 88397105 576587973 383437 152870903 659766895 401821403 720759087 922148963 407718675 16783663 331103393 135609155 276752597 735894621 224721593 739546293 61811051 421120585 208814233 504754853 679780247 693717795 844060387 556347327 569910309 725190235 794379975 29587583 583946985 393982383 173434617 292481571 178191801 179800097 154041533 705582005 168990587 468201217 148794067 646696709 177249557 990723297 325900939 64063913 125411455 404908703 952496831 280140291 717010863 951193693 512456391 117559357 448609191 780132487 794412431 995376963 275167091 777428693 833801347 411296721 993830183 752949567 501137047 410106725 107972825 847000331 374864717 157274951 969714607 260218821 505022887 142131083 101054673 917431363 100236089 66499589 498605681 335730077 810197267 780125015 116760267 828573757 350288601 722708457 525426975 534381769 304340397 859493611 923063995 812222779 649500479 576243029 756723181 553115083 23523525 314578153 634866451 736998401 135409661 922031919 34299787 653177253 829254701 707645045 263072963 244035535 375253797 165400789 405066539 37819353 672992825 836001069 237785407 645909607 630458185 91613737 112538241 354060393 693918651 33618743 713814649 545226253 765403003 163224463 127436221 84182485 46288899 668662579 666626275 502144899 751827789 583468521 601624977 52291875 501741283 232515139 403508591 376951305 931278547 210914457 833588527 90895825 783479471 725313033 668019597 464291681 124648091 885861247 457518667 988276195 577051705 749005481 926887217 725496269 294722489 838496511 182659349 526275547 262905041 795150529 354645709 538991121 967739327 19826169 194232383 439178939 850600011 568913783 429306195 739869037 274400959 813269457 708282107 990602757 345411319 805822057 179239475 982303141 568963917 128485481 320208637 349423547 745788839 251905469 838800737 95570681 15993463 515895841 200724597 464484957 20246959 237203475 807031119 9103405 446491089 165075421 919008789 796158193 652908257 817355919 381655279 899256449 940850029 618633471 264704271 695573749 848959885 17457871 577562545 213314487 145647583 953641319 89006359 780211311 227595399 36294903 807852939 480200209 271009845 791209849 58556509 6287325 589006111 573348779 741422827 137037395 95595523 934825493 513569683 55099971 182317865 669385227 276965059 412350399 672173917 152041633 692687341 355606307 256506101 220001209 143528585 924782101 350755537 7350009 65867035 291452031 223007063 343835351 853266475 784702359 342469493 141212037 650598223 780585177 579059615 536748039 99539485 783697671 819310807 844947747 746356539 338846001 939107745 109111403 25279825 120478121 338785547 832043831 593809939 187453197 658399149 623620517 232199993 762997567 170360997 978138017 783553413 71336555 441299095 76912601 281649605 234323977 229282995 807260869 172170183 348586961 640149935 110364583 158266217 63111881 444177611 9787781 336491403 912181821 759288521 801085489 420996887 939809473 265773819 826571073 304538623 413878579 796511287 589072153 536386625 612820405 55798745 207778269 823330009 623807157 966725321 46425729 111261399 84272103 976903795 245619643 822819403 2776901 745586641 7208203 745296717 305654805 708707935 560718779 480403715 403056613 661259555 369721305 939539605 733449605 766584747 243552065 741788727 357595157 671794959 927456911 853677601 204795385 420441837 600981037 137351575 925006299 256424553 666680141 623157217 975680945 191427379 101433571 538907477 626137015 324967043 44787893 749123659 346097519 790906899 221350469 331493411 511308969 69392685 466596329 840779853 601747575 730042269 289278389 559134517 690969653 338085049 969780363 440044377 503236745 354624097 276186387 169743419 34979933 514366459 823237309 814692709 18318823 888440693 406877889 684022121 162391971 457499717 834464545 705582303 686014293 309124713 679655333 289649005 522460425 418442599 969419995 774678715 535355923 141091661 779595549 689871229 791169553 778128819 297863051 678343787 242817509 92290743 487305483 337770825 771758269 342457341 887494993 119375329 816055563 539816375 148082133 794502915 154656653 103253911 227318995 47518605 369641031 326808541 182491225 948215647 645539719 876686929 51459889 753041507 753741021 449674559 815900153 473099149 900377641 728401535 691271183 51094485 687555213 677719149 201323161 164082495 993446775 351594737 333252491 839280085 238032795 311539321 470190747 599465127 176517109 69299449 863686731 541589715 439743175 304265459 246377697 345236601 736871585 961499757 839664493 347218371 430545235 412046833 787736779 738518501 698197247 395468185 202014871 899358231 787461891 259212803 282136125 686464669 464226575 353618771 62827497 636830145 97330711 329534011 655590807 915181269 119393623 767625965 127620101 798254387 133161299 894306347 181490621 469342525 538484951 491449911 402748941 939144541 412036599 738051555 719182865 732443399 792366351 499832197 859232165 253923763 786899397 946854393 678291059 219183077 894198789 122997159 233616619 569197607 808546561 758710141 881517895 506323977 653747767 843519985 837128325 337671977 334553707 684900865 905217903 711950375 569720489 282327603 361116051 409559471 870168389 584748951 421188683 780480879 404754653 22423233 843303351 616163623 172121427 408698577 106379199 396973461 775258837 687305325 553198867 65464709 608194263 687963329 623412267 328922823 758692115 372788357 339344969 9314617 672525967 452201209 755364467 592185787 318324377 119443681 623657595 488463161 341603265 859901323 586677753 215670177 807850727 918833615 312277325 878708979 38269487 195830025 867872927 472091181 483318275 40709665 777171165 613336667 932997655 769916549 755425477 162648973 650502251 120121131 248969681 319075809 814592577 412678545 590256461 229282935 280911651 723903677 498118985 882639483 923393001 59391039 304750493 739550237 331333551 826642219 205084391 785731991 268349141 616954145 742515603 149193773 761353229 234377543 642388173 586559785 997903175 665729353 694341521 525047005 102231233 447104609 135495583 638887331 962208767 631027785 416051837 978015965 483672267 643566667 688222843 117518325 949251647 490252339 605013941 362349407 142347697 358422361 158340871 344139155 9567177 158971289 397218075 603992599 13545843 418685533 256343907 851181167 578413281 4526479 419630355 79648563 674720401 518131879 951001649 323832571 575998537 878188963 295812223 640776553 894623249 172004873 834300051 113928233 495884607 114114537 891332289 332012011 857959793 589145303 458417707 743008105 761929609 376630515 498481593 306084967 578337461 382858723 641434395 844251311 353615721 157819347 894879691 525216019 854219359 31559293 115395079 730731117 721930655 128742939 536622039 432617631 350480241 65618551 269053965 990794645 970658157 515049439 336413505 404887615 226017645 508856359 219454675 546635159 285732503 684892589 690140651 570300833 711033429 849350745 240943737 407267431 932538205 280275097 270730293 10768635 363849899 574472803 357281697 484995191 74057345 292403255 877058307 315073277 673323375 345103895 638644589 980542649 775822151 971972757 635247031 956752091 338704423 531166661 834985343 641436317 268044145 969298503 735911985 137288261 988523729 914067009 415992315 296917017 5258045 412863071 986620629 294186349 620913137 693381851 368054655 810750875 872600433 598707313 626108035 198311173 55735945 564225895 840447281 722313749 516240207 173432459 172506785 669587519 754476571 495812661 526852785 41792253 823143061 435572035 319393547 44547279 810407081 927666713 381789217 858852929 578364811 724581287 370849833 671855333 839245493 217972323 502059555 757643349 767021805 767812427 581277913 757320501 856008513 36414695 61114841 87877675 966111233 53788739 851304063 816447213 358792141 336816117 854961383 663992629 437398153 684280605 724095739 648094147 4669023 657388129 642202989 877087075 479783107 295028463 404559537 981503463 65297269 173906811 760295435 699664169 232376695 629283143 215713411 903424523 424356371 387961623 735424487 94909817 605424609 326895163 143098833 526119779 777735099 994665351 387934881 764542917 507983303 36780633 764220543 454331295 399333999 359382937 417419867 98909693 710839657 395294391 121726703 14213873 641465009 725750949 852443577 292596373 973079947 888847075 326948353 519128077 849921923 712312953 56782809 61628031 704173421 479284979 297279257 98120225 569243239 884405095 601845343 353132333 70499027 851237749 605398039 120623331 766793565 588602947 89677679 702569103 810380797 683609983 641618271 238862469 152679147 590217311 809666985 403108123 580618669 117196447 654290387 342708149 134680079 443840395 471780399 241672127 323101991 279751403 199153365 868451753 274868813 828018713 120604835 80169967 588084267 528884979 265199173 795761169 725958057 102428381 499256615 74362779 910365947 132524487 760703621 193043231 767106721 77620521 246709343 635931447 755323995 461278973 687238779 889843079 969679415 524185293 23765353 197773749 25243019 456746661 711196037 333564537 552879601 783727643 557454827 831747207 445829199 339524431 522475909 593868199 407299535 290615271 370012165 965667743 738121447 195316753 204142305 15586115 656069203 645826435 963531353 642895213 104789013 417078907 363322999 879048705 22539389 941278911 706692617 406509797 626267933 910601373 989307817 226112785 628921809 987481581 770420919 324600185 222255039 927341837 559466587 282552357 863597651 57835491 967229575 239018267 659007 376446683 897122031 738953583 732760193 424075245 518059031 149660219 907373405 884695961 846394439 575423395 251173727 409418721 837936269 653060559 867747419 692535129 656243139 829058545 519499375 841038865 38552457 583580485 212965629 908337323 771720007 555854859 816322995 624525645 621685549 636159119 389942147 113543333 467630899 894061091 32999339 422255337 720253467 875775011 797029553 510859991 83759723 513445101 620666717 298153141 613096309 84305135 776750023 763395923 465557073 133656473 322968647 425245445 964551389 695398503 792505479 604210859 347823301 15863259 806060655 620309673 426666615 42642557 974117173 420158961 17351723 568577505 22796371 348187381 971650273 301975969 948923025 962155703 845682021 91113569 678206199 301194681 407395649 445685961 719929309 274282253 956514259 578686091 592760797 476718921 322286903 325258083 668651229 439722889 501441881 382395409 507739911 521209461 774081253 719286627 624008145 258275643 83588695 544440615 479548663 26893457 249947885 157314873 6505341 39466421 550987185 134853757 659824303 495197551 203957363 2636763 700744993 106249481 438610121 192486213 146895791 812523869 928410901 491688119 162929279 687742921 38996865 206139697 763566077 87742771 721865977 342601153 245566939 459457287 601194041 575190645 742365719 76288575 359056063 388303721 752515061 50614869 797970899 601224641 725793027 169226323 380582281 277003429 775413777 549834181 523850165 661799495 743703615 986281411 280764665 864144099 794519535 956101097 714334653 388988347 135358927 210073953 895861041 478492695 314822097 708379091 903658573 673228875 378133557 477080187 164968659 298354355 98428027 314671383 109551691 332854957 396977267 654575337 509815043 681036199 490835757 114120643 3704597 181233171 100446219 562214137 800895839 525789289 752692651 733453931 775316109 304230443 608759549 144267133 72349709 233713383 260071989 433853473 175556887 518818603 5823439 748016073 774396845 52630931 76920205 973011575 304509845 390137795 369001855 271729071 958940001 430667107 108625655 927867263 291009385 464864037 248464273 682652031 9060043 712175045 449700403 563711947 186818675 900794629 207058953 301084685 477948943 325525677 708510597 362093167 355109143 564461971 600692581 707703465 209946059 950044301 228445613 506562297 710832693 596283777 421047465 831456549 253755685 661870167 894183405 987877245 36598577 265199617 411981143 799457237 350647227 193195387 213133321 244217485 959179757 240420039 702317423 728386955 79574963 358349807 566809153 487302973 182586057 446913539 349606263 517302167 320276397 246904351 135432023 416079131 779200169 531252839 396949101 403140557 244404429 783243011 840281743 19279419 319920879 84058919 93002199 544028797 297993393 22930443 99133353 510541105 931007355 723641329 881505203 653784187 739728765 840088871 519026409 346544907 387293873 20141819 495196805 293487895 304649173 350235851 857947919 477295453 726596465 714943735 777116497 524185637 466134233 511913961 566272349 975183419 507918625 259492627 381272469 599432693 839931435 72231409 23168407 622749235 297693597 845992709 467617107 954985819 872225261 539229399 376550397 228325977 313863501 746254589 300526865 872747431 722503361 181389069 778547539 313633345 746642703 630364589 457787855 998473389 685067721 726567301 782238425 507096057 245574215 131918409 258209037 807515325 391683239 306121137 886556241 789878295 433389269 573736065 254145745 690401963 157287295 641871745 615172607 218505129 147512093 200903303 742618009 830507463 440118001 187361129 699287715 999927875 595969025 449442573 593197673 415532517 91145247 122523739 388270977 992133625 841458913 137066311 757115589 282392917 142817963 87420873 704226393 118953305 859708833 572507877 567041707 974420203 550100663 737929123 95931245 19903865 355325091 512410137 28771999 208040441 986989285 16830557 223167873 586049001 885000391 854349717 745732001 450325071 910171223 666750697 115477973 587347641 721684337 651539597 356605751 197877823 731809969 535491257 552612907 257607807 388279425 470342833 11096929 974424733 984744979 699760063 803142855 516732489 696384603 547485235 780617887 883531961 524468511 379960939 623075947 969985965 491372001 573167559 605466613 292038247 531367159 249930161 430328405 723354809 205315701 439473307 281522919 470701561 9200445 767481603 636813387 73742339 649254391 226138727 458574707 456460863 942557203 596064849 963260559 332991131 75242185 730293079 786654749 374301835 673694747 354421263 14120417 461520401 622644177 982179871 424745447 812203185 405966457 144481585 873162627 769685627 767290989 725278707 627003475 378347779 784457933 139579171 488878905 166476905 664128639 354403459 636812129 232370769 134086967 693147613 333676355 229964523 692752493 769015299 960002455 690239471 560435293 206025677 671805539 205194135 541254421 490906913 494584819 305910701 315472735 695793641 960411101 951417469 893400025 850297107 297532923 881298909 850349537 477095325 995809137 557859887 893658781 143089545 359096749 896490325 370846209 67201249 803947363 173217213 847093699 224519863 110258061 677757793 124499045 245524517 463798387 825322685 564854829 5467467 697630877 448160215 61146667 118009945 977471971 959408959 622488891 356707451 561275487 971509001 715976441 644439793 14820215 403890645 540431057 909354489 468994773 882920391 336755439 233780701 519791983 229644689 118977871 976601587 360401025 109450085 586692783 756810643 147903117 246978051 580381593 341964575 249136739 955509683 181493595 838460161 587468821 819618625 104965393 342568621 11105793 604785925 994783383 137070491 864744905 803720155 677234583 145092687 32063833 790032939 157394561 864641875 17011175 964968163 68117391 292207673 948775663 722532473 926053311 944088731 594720053 831520747 937713115 719973659 197467591 282989503 12651889 281395299 525599477 524427525 311934939 958805031 738111839 549707857 356627257 461322783 450781927 223237827 810838899 443083535 762549179 159344383 133172537 363875265 7721805 129903159 39383299 962065927 605945179 444068125 307639827 212907449 925951723 510006515 541623663 607969213 134064453 715131515 914474729 2423549 887319297 820617481 684971545 581367145 391155449 648730477 644651871 805925115 674555729 563707147 998316771 705788087 262410871 520736453 388144021 435001767 920443423 789181451 261537325 389998557 678135877 90759635 368733739 875082099 956095019 684622235 834932441 554575755 356186465 563326569 71483463 715379535 904030393 350175181 753988173 577577203 321136463 236837083 218108297 290160815 777898889 924889907 610891879 307718599 358529041 399400441 215089171 318456197 307279581 387658975 472283017 239031867 141340201 937961239 76897417 809666115 241256313 374143075 542769305 225914111 334627993 766334983 320047113 321318873 859476125 108658129 877385973 942582085 651716323 234827033 610075193 878517693 105737741 754134971 43208831 685061825 252240135 202277151 430869305 747660253 155933705 926652211 65199515 688528803 736811403 33506669 88476587 267289773 541044563 247035853 593346347 924428445 938838381 168097237 47864497 349352733 835304239 77404567 51844241 431462625 182222899 536952487 978733037 837957793 78973277 118096677 83065773 329342499 466677723 545575607 543762817 346174253 284839967 333432201 407506659 423199377 425358057 350630741 963384849 413639981 215074361 694613589 703442707 537628899 952840799 388491859 291391163 595777945 340912877 139279261 571129249 856149061 708771263 923099653 376107301 299741151 706082297 872911855 493267567 536714861 915855627 949293373 328741231 534681077 505436067 256734303 925508573 930284427 261629123 30381899 885469755 232327753 918955181 143424127 47891663 898137681 620039149 539563011 997185195 271450573 64151639 13382243 474020519 640533489 718060551 286757301 398525537 60483575 857609827 188090009 762185029 790603295 992714007 5954357 93333889 198385333 738896149 313622581 452484877 854329611 119543195 255258579 196984489 246999163 798949677 131417291 967695071 300390759 471560855 588571491 945490175 755395131 453853165 809818217 735814689 814886503 926640525 678865461 16943651 12312933 296289561 72528803 411110063 1512377 506535039 866021149 476187703 342712815 936156913 588525965 864017649 80474005 594925037 881486187 748939741 176281671 485323833 188292533 207469509 891697319 28957405 173638387 775359545 148343647 781183537 803849777 976574095 319685155 706235599 405003781 565165801 573025453 562559131 80398735 539957551 569980349 243431875 385544565 199199763 481424415 846962619 868052195 756382217 335370661 51509311 710668435 464814165 54797353 460849233 412109761 322836479 38311055 22411585 123802419 887151317 338768829 720048545 620652599 838525041 224200617 942698573 346750885 392426803 478105677 24881515 508433627 63205187 715880105 491573605 239787197 956455313 912376265 937765873 751046843 512140503 779956671 126449419 166366157 651742355 98991783 613074423 568670061 141152269 216933279 164853313 269525667 225405783 166558677 69793981 901014783 38981705 847444345 310704263 523165079 850374019 720364229 583265797 629372423 13348715 211760383 502258147 715034487 260101941 426208109 700730899 623084949 256929751 543209059 302103763 351502741 185173267 727843899 121346471 850121017 244213359 291293271 169209437 250186693 824614461 366420003 236195845 995573513 16217237 195788815 652997119 879448665 214122581 560103575 132666605 711505811 138705449 563290939 257383869 759840801 945097597 40370567 184431779 505320429 357096845 962976269 492885017 736106095 677578329 357279593 320618981 893884327 893278631 723338553 22963221 663236375 41327111 273285931 302735867 507884753 372252117 676860911 16201523 237405803 192894509 587385409 185164449 9871361 587696121 849283041 955510643 874481979 906630891 189294235 110936093 281149511 824829049 610252609 449227611 797736155 344309987 31904431 968412977 67930931 789285427 958269123 95782379 524003099 267739447 847059819 120839965 622009051 456347785 635691415 788710051 377567821 729331593 651743299 441819043 337458127 374093663 325137775 155370887 567128901 846228477 78477607 195620613 643588897 237904151 329052285 291097369 854719317 764369713 871729293 967919623 944963171 28885139 817722229 871458395 324470349 295467595 776037731 334726635 294529957 621013299 757071751 245975247 337339009 778607339 211885853 956582511 426415997 843159259 232740453 397497975 420156609 726526771 853567917 364558299 941999867 911612395 33500227 315111893 947935329 683001797 180245891 964573419 575639473 124981575 914932689 169126377 362301745 169841091 992170899 168259301 182350257 886839377 254902849 40336441 283126661 958884047 388038991 88092041 958414733 927783145 451223365 599021763 267032621 408925453 515144873 16207131 30050389 710940019 154758927 465672717 686102141 282830107 621792275 910373979 558716319 420146385 96119379 94237461 880071749 412972063 745249405 581462157 933239163 872792675 132959297 555279199 128174041 521457081 700626267 932943217 895727227 191617549 550881421 575880941 118808073 488298507 978460319 518082377 322434481 542178351 648114533 121884737 346595881 29866425 691492027 570080983 461003439 751318957 286799231 187476059 133968393 36829153 165479071 696396129 914445703 846127081 662561291 375061185 256721917 500768295 544726975 727599267 642368715 687202501 250240701 486707571 439534807 190970031 216292877 516647139 972446605 84654241 151580611 91458289 49460711 80214553 341849083 245204193 934820191 150657631 432730067 388670015 912963327 308039559 632013433 853371361 104343635 240487269 355903005 898406623 640510579 392863899 235155195 933089187 175997179 269346193 372332629 647613139 545199379 369093495 170719091 375857769 838322793 423044421 733549227 335251101 478289459 248708285 252616787 180782327 563966511 950431079 477892049 864246079 268864421 620257681 672406157 219704973 21114975 196338517 703159545 290500155 841339321 306645905 431828881 763446511 905666445 593068785 110730197 520818579 568490817 487231203 85225811 766339677 861772487 827307679 909802137 392324039 365770129 205620263 16313925 797967257 597340065 813481793 192726005 890686941 794126459 109224063 781259607 861883879 731886637 920289337 494390557 153920851 430954575 543801229 187861503 84513031 37822717 765632871 425126335 524302381 965301215 339222901 695766571 843610427 243427619 866479919 799101969 143646957 244692607 143688405 968789583 302647623 552660531 968897649 513091267 583457941 261525505 264811731 331727707 356447851 562380859 181219473 29090057 671668391 570606261 637348623 852161221 460009579 891437519 886220145 189878417 49669413 362889071 432780201 353766011 728801671 262453249 739377009 55850385 36197007 911519615 156819271 626023665 416702083 7326309 742919029 150358201 100151275 622684345 585249035 321861911 173688991 639634185 294801119 365787453 179568311 212790125 343758483 787022947 90390941 525213825 737125775 887834829 739103993 865422447 717518339 126798019 914953151 420983265 266647529 270938523 379359535 507893007 595577855 23285931 17636299 946067127 244726989 577540185 247670365 618508063 131926439 196623117 285522173 615823639 308090273 981713977 656986117 880874229 319636125 762133337 929444635 322079125 362598979 838445295 506251305 489064285 69853955 422033797 999019109 54623039 942190357 465100971 258377035 337030575 15624571 242314751 838822815 200749481 754870523 591184415 576920171 365518777 530420007 895839163 989376009 154633447 331735895 674715775 789751055 817501645 784229289 402802729 722561893 825499527 52611081 160947579 740867893 222256319 938809125 697055551 717260791 995404447 475978101 423488837 228765027 600557023 125264955 839967083 678871679 895670717 792768637 677443215 540762263 9705729 607525901 443895201 178300479 615917303 677256833 970748557 831771733 150181493 728806461 793078097 425835259 267620571 988860773 15415535 941613215 978436367 903211757 901310065 577836789 653844095 672518027 623189991 950475767 338417695 892667583 115074927 514948331 470386545 977580499 613128745 756523871 899782009 890952917 60068671 534872101 667707335 508050849 706103523 468777049 824558447 176011475 802232657 70485599 171485199 110163157 825380811 889686757 575869137 536532697 728655259 336387039 971108703 898360275 681393937 433972105 75331313 11933065 650687115 888113509 4150087 161097597 571461993 364910403 220833699 686548485 906113301 38410293 375803863 615695157 755476483 546489751 781166905 828546031 390517931 23178767 969552805 618637019 534831249 661558919 770816643 565183849 890995005 907908405 640891327 547480785 953299781 602975893 458204883 3399445 305540417 167271531 327343035 11103229 264860371 244312771 691233789 439060503 407476645 590923505 512398249 484033469 814263913 938267283 841386067 442116111 375844829 512689803 309443609 552520179 635013055 783294471 557943461 141295389 206019545 563053433 773253665 958018821 559052545 851191199 26103365 207268327 639696911 397915263 417330001 335296977 380298981 596903521 142951689 408686479 431150445 774722779 137068475 932921785 285413017 441094091 770602301 292119987 267092839 39075413 728809967 446350497 641349589 442466273 353230263 192046199 353208301 579683625 13722883 50616555 780693701 994029863 894979017 904998527 175375221 152996381 259492487 721893753 999608863 313574555 237780803 490989801 346565869 457279601 926490253 101862315 373254419 622134209 995458169 746664795 922337225 367643113 632355749 431338341 697240403 843436185 973804603 644239349 452976123 708528325 319838437 422900487 271091985 625264553 9121757 701909337 621630451 301217225 503405533 704767349 108028161 152093169 821351727 163696297 3373733 58320949 342354591 166051857 940226131 869604593 458794117 661839241 191125891 361126859 337609149 465281211 583675065 177022127 551494319 490096663 210765951 496013007 648207945 68274135 550309991 551122345 345295105 429541113 857674763 980530689 754138069 876492359 343225357 679923939 47299915 538932047 932157719 406858915 493773939 68731243 58973405 572839903 384211937 957742779 404887831 403922553 749443253 144613159 662569609 968866463 371953043 484277087 766442493 949988293 831357355 550852571 893960517 5345189 124135349 849720285 153657403 823811909 226304235 419251307 422510017 192062451 169695767 837577047 104068801 917020223 293149317 17313337 171571503 807402249 31600397 692296561 168065795 452409461 828851979 742399783 94601025 338313453 689684841 419666507 688641779 679676455 507033487 463932821 629503019 311354397 873582201 852506245 267577091 594595351 167031203 769534565 904793757 375459229 509318677 821442373 787750435 433912711 911523675 84952317 159257545 125281521 884701835 465203243 26268615 379619899 356074309 231270203 25677667 794232343 366212269 42541915 84487137 975365749 871537269 455185281 454866329 920454547 662253519 794492787 604571875 811648757 512135805 142134965 775694625 957493351 677240771 288712087 71864255 711953661 392716143 547890741 813189933 786525203 712149209 536059755 550864869 507041359 498786269 682388451 981630315 676776605 373564387 511243023 153747273 396698927 91394265 74988579 336730129 293031043 131862581 285451557 683845725 234079839 325042677 679341015 709941711 367383755 367256993 315088079 802468369 368302877 745924419 816641121 173540311 993880819 696905847 395248559 745925595 287049007 485734231 627035553 536163293 813389055 624364425 119416807 388930473 490503895 557131583 61055995 964715025 445348209 589887531 366077979 157253103 156297941 174562959 458186831 635391269 336461131 11509807 101170537 573735325 612475499 784917337 673916929 910762059 661020687 178502629 631653239 1150505 206496605 75510833 25314547 676306743 837044159 966723617 913470053 278298497 193187819 222645797 37914501 104031257 12741341 192619059 624246997 537435161 744264919 884461769 480864411 707995555 930480745 625371631 742047209 505662179 520349541 98007599 254015895 164238601 548655593 640885157 805161283 391244111 397733719 559800555 569605721 209158137 25134939 121008167 138303239 245638481 914331371 170516491 310125381 157235369 725886787 767582411 164538323 407436635 9882343 60980003 608783677 154216905 968787107 238898525 223529677 25680479 102428813 676361799 362091425 543612557 2633469 996383797 165523861 428771791 963425181 791964165 351660117 747395237 159448147 705746463 44908109 956149147 890881113 921248113 402982329 846491203 102205223 137290355 403030423 924671031 545257347 522714655 405016241 404777497 956323451 943557373 664185495 625278101 777920607 496770589 814512287 817690971 589609423 400604181 931024107 760663589 908142767 759130625 255545699 736078265 490693417 186446473 163144889 814246621 512990385 738261209 946110305 838591333 505153799 631015851 356512927 955222315 901130029 336734779 37342075 931048209 832408685 923889999 591747011 302959107 455049055 486834229 406195473 894686193 335588061 709353925 70601669 53625045 880162573 153401693 346342919 99512757 850650201 648443873 1773255 448081815 693274743 667774145 662505663 133757071 902794083 548362995 519508333 805881015 96968289 979101687 441267737 213992241 744853245 774487759 291822805 199123241 472437771 359017229 151549817 694002895 92233385 282369991 92002469 950963295 35892025 262743705 874113727 495235353 987598439 127433387 631878907 559284809 127262763 523219881 641999439 710860865 348312765 171483341 141433981 46909275 541128099 732848595 133582091 362408187 887339689 801015809 617001547 280385159 709549285 837930791 221682773 482317429 164388271 289615001 871217671 475629887 301073841 300832821 727987213 383879781 955976147 283788133 744517587 667804533 414281 844674579 512291989 509173501 229995411 668838327 183189587 306454425 672615793 905740367 814678739 554316523 613075955 717127011 665175717 765345951 991472745 241328383 147067429 578433381 604969075 596345019 725056623 349797881 314778869 780314803 144542317 262074395 175186713 839770255 5183440 190611351 168118101 894437501 392729105 550816577 219052133 376775729 325846381 602795503 228936267 899528173 341779951 11928453 463208279 105154421 858892901 55058927 556089115 507318041 212129129 948795933 236600179 698504365 178208347 616050443 80474501 543889 250497123 120398009 156132029 685003945 731513715 556550965 994377677 195231079 652258623 472393101 940819891 553548989 67939915 878434525 677860019 737471275 411712223 583737671 79517017 294132409 703245321 312794871 899050361 487922163 858869923 191632669 662972721 47097585 553446477 226318069 341171171 372640847 520694383 749467329 51425597 275409461 107939129 905107657 740916785 597196113 454379171 419369057 474246141 621729753 150249839 430871779 847135015 823829643 905031715 851156659 203590775 381184941 674188817 683718201 321397765 195322893 102543441 162594023 611053609 645821445 133693121 676004921 568253581 905106541 401243917 296421551 472303897 957709233 284617123 931898069 266047235 785965755 487632571 387558975 379816901 740232709 568739671 159261315 533997607 252352649 925525565 698558021 669975345 116459217 57772797 622480433 855881531 244277737 725284083 269543417 244055775 884031081 689846331 391081299 248023555 250482029 267064513 600248583 417891537 986647965 239256369 746215387 92312767 706386471 556979719 975914915 201165705 998526401 664586371 144929339 906813491 433216937 719208873 610943105 983232009 916714149 678790991 55656803 494004639 8873989 859600649 948454611 791970259 943339677 989644601 770150087 333049029 141873101 76039689 248713287 302995175 982053497 177661541 267293785 289125865 474632211 376670473 937120019 582492617 69111181 158208371 654895755 794014157 543107689 351075051 873969127 913071485 790305195 429362053 347476045 920422831 265901793 562832149 186272757 704868225 582382883 242028605 966541589 553695061 677606413 834266469 584958703 925645273 344959175 205412797 333137105 656128769 292443903 851857469 584464137 280541959 578586603 702700199 556348403 534967153 472730953 852163715 730912499 861416973 969946209 677005855 722579313 821328877 740585725 112318357 188731359 184904301 572657273 330620355 765573817 1140273 897572013 783793493 323355521 847715879 853595397 218041785 914788799 927292035 204362605 807313959 269247497 822866881 823394137 711765153 348516085 529234851 826778315 865005 874382377 95674425 389352263 463611805 133221197 690267861 839448795 738636553 872199955 636979475 583588127 149631055 738436151 73144281 489995311 814530139 825463419 540210259 341608883 234948315 355940775 656914675 296392153 775516487 467969167 115766903 410244695 188535263 685596687 67243747 569827691 766461101 71476231 238425219 603437277 413958785 609726049 193761003 968860409 670374897 92196879 442103801 527102357 969895009 1957901 560520399 66168081 654109941 516697693 74530009 282003795 355853727 285591815 549364943 131770567 740425753 810501409 97414569 411165543 652032737 711129025 462565293 167013293 111518785 635292429 69542761 446064035 895519560 29160237 689685165 863860183 228345551 335307091 710558105 985316445 310485109 866910395 407008655 536720851 87880099 822753191 118017597 927878753 36590729 450603615 307691159 528404149 227180833 846703673 784209881 933399815 23229481 900608139 17265285 420958737 36528683 102538171 303320939 631441947 693771893 905979953 221107867 849466357 610035745 526466401 609927287 612348915 957058831 463095491 945491613 288712437 51123431 85827289 605024511 23784801 436308505 707925041 494282955 587586085 846697181 865488985 562930563 515812791 725352501 274114799 987253225 2311443 209341159 583299731 315275529 390788803 335921797 549680623 714979639 19756501 332396135 432556213 51984657 213433053 633403565 24896673 116134519 70496505 247062845 430515829 931636635 197746897 243145931 394630395 455684589 698614165 72936909 990162947 447081771 157058551 308733829 959645547 858281049 385204535 782621945 767375379 986437317 983350301 293771771 5187813 47384319 556415477 538174497 448599507 630860775 956584341 330431951 367511769 534782367 317666909 600059689 470040825 119035541 752187699 189255459 391558973 997361787 408728453 421743219 848634293 140088145 84662343 308869273 487082623 530325591 698365691 863619807 55899835 39401755 473767077 337570133 291847059 589919347 791211733 608297425 981154619 68568441 881979551 556498677 911294443 7573651 248806817 503604009 372216551 885594219 275869445 68395935 214068087 56343285 807668341 143406923 117095921 561890929 981482793 823953907 680249003 452882017 372255967 978796313 528513291 715690639 453089503 339976979 64529529 277958675 212121333 668274165 24515945 882924105 392022135 576017569 888626771 584274385 493045575 722742207 338493627 700897181 206746821 630895807 585154091 945721309 847726821 863131353 432482099 310155023 402855707 102693391 400994929 129033463 338753893 735513129 652870021 459489697 795056457 139394997 200309785 802432609 975920855 690209549 445578977 264226517 422958499 791445841 329984149 309113311 473243595 473361255 86015737 700829867 920251641 700662019 685873623 569025969 108246871 996088221 865621503 549617065 766834845 161003377 461453903 964195993 486374667 537058957 452764839 734828237 98712163 723874749 489697521 563260891 626875639 587904409 580241953 833556381 614368925 730616709 386524975 125260087 576169393 732556453 66341407 336671255 345485339 131633389 918609659 463768305 384148553 574664211 401653459 110541503 210639921 759685273 277750981 536092105 844003921 252136645 767525105 389629591 644755119 193861543 834338177 908446977 366198745 201376795 833707433 395938081 408481257 449811901 20569249 885982813 52429175 431507449 180709549 532429919 802219183 761757947 358450199 875109405 343746107 83858111 714792497 919801555 757753939 571009027 122683475 635415299 803795383 272790865 229992163 834754429 955646635 436619255 359473227 646432339 381762045 251257105 312147961 394015203 573374979 329174651 136268653 48243663 379450783 541674975 388625701 56425987 255223091 781637037 694198189 599333301 164589487 421082143 919879317 480161889 656739207 357346355 779779963 95612107 744208829 881396403 485862143 226056705 174075607 160392493 540225483 708193875 19026399 122351867 991853971 8012897 350496625 487832637 239959057 595252749 550390437 979353819 760890373 204409733 785502247 248311173 151305785 276539 401276705 899377843 975356547 247132653 509170765 937683367 495256763 333103009 214631141 510430567 73138627 373179551 224164787 156639685 422513285 647547775 927870979 28034137 989035765 477745947 135757485 438605699 780825869 239545239 406103309 354106731 477162445 312736097 311930891 484917505 104159295 499087917 453476629 886642941 694254713 84151287 117046561 685940959 952651411 728722433 57970605 189027313 108778415 233147867 726530497 773499459 341395705 982672471 416405223 644064173 39620767 477966481 570696763 832741069 951961825 254269679 697753941 529529359 113083645 273664539 460503905 221799585 756766783 432764427 481055753 881149819 759078137 115779323 470902919 66333789 543579011 694609519 984255127 30820561 239559493 397935667 392697725 232250661 102822819 358649691 336588557 575478645 910648083 114659653 672808599 485522589 231102477 946512531 263018495 14071111 206688277 625530417 49749159 437243621 125944501 513784919 894076543 368030893 702664831 161795965 506846461 802965663 834658829 108987753 253922335 633183875 170833153 68652071 928109419 936859885 409407239 148422413 307262193 936184369 798725327 3030453 273505863 818507121 589624083 782047491 363193223 451272085 551552919 988479013 220301405 270517325 470720037 17371023 477032181 378052371 260835215 464752635 166084867 675510821 245323439 81444207 912767689 944125835 502912871 932973113 577171979 91165719 404038051 32313835 141501719 7767137 80073299 635588193 202674117 999612873 445469809 403405503 438168177 629757303 747255809 516500597 165573893 329911131 278531341 783740979 558270443 221469997 895872167 950222581 739768091 298944879 756991977 767648515 642166035 581076583 903100661 999509735 207371737 928860455 304760311 772829301 637607933 890500743 642705439 765644745 424136597 501072933 851946663 748598857 712895803 745402733 2895317 841758625 25110811 917313677 212261871 932040387 26661857 656938365 538146889 565378285 871279553 266914047 560753213 266299555 246191485 147899801 51417133 494553265 381877593 581958811 287926403 763161899 737986597 399264545 43525299 529252463 660399667 971050759 951095351 826944543 253976167 169970169 25312143 676367913 645384995 186509923 955734343 985225663 378393943 47482497 438323953 610656353 639867769 183637841 695123495 250962639 362021001 743824285 601745291 257139223 226398985 238477045 945331657 851083407 290013195 17051311 640435857 107987665 249719843 153457389 609941919 618755265 53355635 452063639 612612531 367745677 220978587 295454047 403879833 213093289 933709519 936459961 982177059 15957457 330616003 177292521 415331883 418674183 196564147 730572535 29031827 726171035 409635689 792755889 445763655 907650847 474272819 50319793 180590647 479099759 339695589 696302167 725899103 171737265 317233629 798328523 33796287 539553615 307552517 927318525 25863523 556205823 486573255 96853159 359024989 393913277 511161371 630302279 279420103 13325005 396534911 22259237 689846979 484339643 571718907 161920595 980974717 160578907 175560475 341143209 602890789 988803785 962480117 922654151 412901367 28238443 128532779 634216467 661443891 547632877 561555933 122192577 554810149 570906177 747706303 163583689 798663199 36801189 951407621 695735271 179764861 980803997 183983725 199320487 287871901 394990327 103703613 906077785 169477869 415258563 331555139 253855765 425278685 865320801 881572567 231052729 106736103 245443699 567986903 92097009 611666833 450558439 313004199 76529195 432270177 50744817 776107065 316153759 800495595 156592907 868950271 443685453 846155721 744553213 219456761 402171903 367386783 218344911 425379247 436321603 601048083 777106649 913955629 136803957 407417051 858447797 586577673 914670769 131118001 599339335 543542629 804344033 97509463 675569343 616724963 876314807 758267541 974506635 273230001 799143337 178546495 635722605 38934409 29980663 459452207 961809255 845094567 233367979 637165639 736318149 386597329 983505811 210392179 589048603 426010455 679894601 77800611 654069317 886937869 430057773 602062803 975809897 53039955 113049447 716960773 308810225 504561677 856324841 304612161 765774483 932278699 514473319 251428507 775729739 190110245 462625125 125422893 65949533 688356341 861255467 83137819 449193045 33826085 587216839 884914827 479580425 634143809 944305171 486813365 704759697 210966367 219315631 905358029 646017877 43739937 520208899 587323163 662732801 255652777 713232703 204625381 389811849 472949669 373196635 438125183 225771047 375013199 510185241 366660165 325232481 105188707 321922303 673996693 610946309 572173865 512887903 213189853 767556387 177302635 921876561 3200397 171851803 896193155 367818931 500633377 5188495 754571087 87580465 234321945 204473709 249732917 843777081 627802371 975877353 652075297 296588803 496160621 604733823 54482827 258236817 376498931 184186353 274268531 393005481 852913209 323938639 300649821 553195995 444664807 437948395 835177559 64379779 498278831 758164577 679430391 746965181 558499661 449974423 666035295 668724597 415824769 664101559 986127665 69781079 559915801 432626743 97410205 210325983 309301731 528276691 488931161 416653133 70739899 52989327 218943139 227026853 674298245 808336309 45742913 902555837 242032169 10926047 560553091 162595881 402731929 809740003 719532861 549265483 914362321 326348521 481477839 928923469 579797457 284456541 779161117 765436955 635571879 739927793 546345113 291722097 744901217 219779747 664080693 468112077 603665179 867891383 32253299 23356279 293390841 22583993 85519445 940884867 75100195 216004479 946711407 625185477 707938251 947613217 202293201 14116831 16209709 76328713 778745119 975235897 67962761 55039711 755175035 621489155 479009837 705854871 673667989 676471095 181277543 599762799 449023907 253782161 627982229 481692141 160083043 212318111 823735317 544736473 364168987 27644077 445606997 778896715 437526427 138735573 274937543 180712605 178195255 601916407 507525089 678163829 809460175 55842233 466189611 817247421 458445513 623663247 18138667 776135851 138358289 905954225 386146167 124906425 524086561 272460059 780713381 913513391 623170035 646560921 719202907 453253783 216031761 92796091 12618561 818150853 19038601 736633817 87044361 527354069 635501549 578241297 376032367 770195629 402852193 244326223 197129013 34855543 459224967 546601537 394182947 213262505 689746063 913267551 331435279 537932799 560862767 876392169 213387215 879094909 772698277 786402025 877615433 177319535 747963321 315128879 684788069 653090667 75835829 447952209 76445973 985661257 15657589 481423795 617061205 421544241 563187283 136007289 508739623 809762959 758701365 82035093 84687251 696829461 876543373 80664769 365178031 216995523 865655119 69968507 808567953 130945241 201659127 59903245 425919839 238705381 77094031 649607 107617601 606618301 334800037 87036095 526559081 329791099 521362763 54419031 660690707 499104131 303069989 750368183 958469761 253573507 427166293 182976271 815287293 498744687 481728395 264748633 424343255 125630593 501382909 455147091 259930221 908184385 401027947 479369095 162461981 360637047 420620055 110277955 574610261 895382587 520530643 292252321 261378695 77341415 467168499 340591489 544596011 834469921 823896151 461483403 552413381 961606611 877306725 180727599 722765533 395992371 72795915 985581221 706284041 301964221 72614845 151890159 978139103 348109877 890158205 150278355 40549637 181307301 493231055 441626083 174994467 263875687 628703425 857311095 95149293 434432273 409805291 379361199 915176219 972646283 977365611 998975601 677834095 686978049 786796261 831713393 783567031 677137381 186244233 11683877 792964803 858640117 66510351 262107855 680406379 683867701 82066097 747964277 885224341 101532401 768970551 102465001 145067561 982167997 233806065 886618561 222671131 276051319 769915573 110957921 566164579 378137665 453734879 776458989 83540229 572363913 427939159 892755801 219989001 52962819 556363913 187283803 232031621 191854761 266063471 230285939 348822927 567414721 186641029 748148203 301952845 258587353 217313745 934751187 124373991 571270339 469036001 258266113 570442641 756891 359508429 289325847 111031427 835082949 807388979 784929149 262525441 204020719 749929783 686425701 258308947 513231373 620299147 498794693 210922703 730000219 862973281 917565021 467976397 458221915 714066553 762027189 5309103 164754397 595153947 659367969 859874783 880434675 286721555 441620149 473515215 867749113 365556151 100329299 62439931 112499605 753548007 660884131 520947429 914964657 651257097 378957845 154147607 769130627 339783691 932189411 555803939 726608775 841648995 532101897 312008609 62841217 347017487 96419925 959987255 309369469 572744853 406831443 680271501 662773201 707579907 546346077 89900375 195361045 97369329 113821331 133747533 462947121 951592317 858112221 682230323 989622097 39988555 124373225 570657747 57582055 703189645 988709941 619925247 725459889 149319925 133415163 885759631 385845941 277149379 538970953 425060457 528897851 926270911 473941995 889526389 282544857 819928629 871525241 536578983 386593133 819563005 179360087 100315895 751176219 834464115 906845353 705926761 313809485 26608767 713295715 454144007 13952695 185399695 973393723 510627043 844043353 602810519 823956147 448933909 761457523 594927641 731514897 877735363 799125653 872897563 995195493 133619735 301050257 639966503 776935051 152390719 467141763 50202455 91728927 456850811 549639375 832184137 727139469 260152839 702013475 253663523 465789953 852443187 839115123 404736913 789181559 924356943 69960187 586207435 361021101 998089909 560697919 426046865 80922925 709035719 782979339 114485797 368935239 900749295 993773171 552063835 998957073 595766689 942227667 322354051 114863981 862621525 458172369 539016063 764510979 303060879 457879897 390209973 310444355 649838809 279725725 460207379 476728423 929584837 123157275 209806351 129289069 411754219 654170007 683123623 753414943 453068273 454898461 843030115 807020811 601539201 94169089 847581517 142805131 156707913 903470817 563571455 87565759 948543753 220593055 898706583 776647311 213308287 219125865 560876731 357521835 756342903 774196403 218415767 167292299 98293185 22575671 866186467 304392049 961649979 80046075 19234015 288045155 545971141 609491277 200463695 653413427 996936779 714846909 913876865 349484665 215494331 505779499 808357453 337291157 49834773 613229243 581645071 667431855 291077207 129051607 229291183 538738615 753119629 546564661 370635419 104912997 388308169 129492431 640441801 453664057 616591907 947039725 412674999 58319231 756137153 482894873 269033323 13410625 548668877 969615141 16256629 436969565 533575031 634033715 865085929 446327663 615081465 420812193 857679719 362258147 901481111 232223265 127583253 679084007 839520411 459891619 690485151 826484595 277802583 822622821 25923903 559006023 155699749 441044459 388974767 26385133 349327719 863415809 99950905 79144115 789011847 111922107 345390249 928137909 272973049 33173621 419215447 615701967 19348535 986354389 847634977 986730155 843029697 865017799 570079083 867239099 259474467 19753853 361246757 914574133 284876013 451971191 672235973 399489049 271335869 739268725 355256905 455934767 52478517 982250373 470559543 753676555 207842811 870353659 718809759 461308929 966601157 219254901 112401941 200499 201317451 747738839 292460985 167104905 341292369 292665161 473183025 788606131 790256801 580467269 561379497 890058283 952314637 914517125 735211995 244607023 191800175 296159755 833413891 903503559 497211305 294512935 86829031 183832773 386188199 257461097 829280469 516567233 327671385 613437105 402578341 613123611 778006201 125359651 225979571 470202363 627358413 867471657 178552807 622397009 286370457 244912249 275092911 671481045 969156405 527613199 640861185 763549705 26514361 718374703 543186781 583684147 923317321 110521187 19060165 493637733 880262411 201732483 454895051 649443191 10902837 3809707 305304451 462123271 610492929 659809085 525000589 885842561 473233327 327212005 313313295 197806099 230691979 303079065 805558711 479740853 793587175 454928021 668555961 72168489 795769629 379429469 135782359 201645045 103749775 55362749 64048469 988422761 186310313 658919371 309429249 725831329 92318939 44256735 643711027 722430073 589910687 179690659 939680969 604518301 988444793 844898813 652395559 810645625 556751603 282523431 546319677 746677577 444893599 858241945 232608385 510582027 198026775 625169433 398695153 324369545 805860607 250951093 31045397 428221779 475790077 964722877 871609337 724517055 597246407 821724113 247229491 783199983 154082071 719385813 55831779 881546187 315107245 924021747 239960239 708243461 828977237 204030113 303469253 109250577 847074017 266150553 905649625 899249971 628500779 570412771 346937645 985990771 669078551 455904967 902964613 562377119 677707403 774051037 463538737 523753041 853582973 564192255 24679429 732277993 610108903 836610131 774506591 433025423 726139337 150956099 691040809 397484339 127352111 173801349 258092749 809531535 789497387 14183445 883088195 209012001 726540503 950708023 687297289 259100721 943656535 876702839 535421223 631006673 924587985 664102057 143230249 963220953 478950779 25061611 962928165 458897129 714271631 390362015 245069755 390367079 760520013 788590449 172261649 67330183 626561027 581880921 489404373 769335617 872499199 753325711 422580029 275428689 544843677 162111385 203027719 669052995 269820991 429304643 174663801 739941479 537170257 965167779 231374689 200341461 362175299 383044881 77348631 732276587 963605649 588231479 622295417 119256021 788810939 498609149 135522283 180397185 99821389 548499351 805520989 867584679 335485657 82056325 850219591 909012039 426448889 510959239 925532067 785472811 916962897 607545773 117449723 955140065 647234441 832796487 823933787 442623685 224422995 896799989 831707481 872279795 173675369 33708955 362186773 349262167 91173009 227693667 986291509 772846493 210593681 236089795 586286311 96278849 715093821 531212407 910519009 638805121 714796143 984285313 359385953 316872551 960802059 697444401 840000045 444417217 82879225 286817049 948007317 923148585 815462699 183874327 631243117 908465663 464639131 34703691 538883603 834908779 411725647 826138407 709725041 25760351 492755277 7310171 465188849 378705295 200852905 548853477 442986891 194401407 209490301 340812297 223754431 561456503 294507245 204516691 157431185 712563589 404428833 226262167 196168335 663931779 987648075 836173811 907803599 171180817 185823911 911174857 948561905 498221463 706063733 876812487 946899739 438503237 244295937 531850975 612377595 184564243 835077279 395634767 319029447 519771843 486497189 560794525 568961085 922964955 794697335 176538001 921556131 345059501 454959489 328574531 332446921 52504657 554416179 89658893 836208387 950167205 1206281 871608979 867420209 614691669 418106245 112818115 341646007 595030223 509616943 559730897 205697415 958313291 718784667 408069431 411990291 531907531 444285285 584183741 95789149 171333909 343724587 735412075 441525735 948846265 219349915 881648281 333718213 251564051 799323493 77062625 629381511 824444735 175850821 162757417 115528015 558698025 694030843 55420059 577618117 220643709 989176917 334503341 224073489 653840311 319155745 384420379 204439279 318415895 303447355 284129001 533260187 867273633 813681287 543650147 372662237 771285035 754747117 823740445 938446591 558294857 267379807 550039029 72718813 573090653 871386329 284763917 306217935 200352401 620845915 613698513 253571009 438820305 572561651 738340855 998999837 123643865 789044143 836799357 662696157 414682663 574957997 465464739 379163771 483110405 220350475 971363831 253704961 227850113 807370231 988590413 648909819 534734453 125228449 61353155 300701825 235762049 641552197 271682235 147042865 498516237 691609637 351577059 990958639 714375753 761862025 715517487 336648747 323893807 990900167 328857049 170719067 910202491 167361845 922563687 335075709 668584123 898244921 11086247 48843223 900139835 745988921 73028779 816538169 114923541 649981357 845810383 891073527 678799913 57286923 176851127 921489649 168781341 432091861 596957009 850943629 353425765 460815513 705816273 989793463 692448569 468592869 407307699 562521833 747716501 684643415 335396281 547331357 170732613 490638989 202518259 894069981 366955993 166676789 350289075 356702773 305891497 669852417 364310167 551961277 820557779 43493543 580595583 419922067 366864451 386287087 78759581 910187867 766238119 248440993 329221217 832369989 802257783 901600141 370772873 2722823 679799795 6745487 393660953 924552159 591095077 229161611 191511133 858247827 70647261 856415849 220638697 563807347 766362801 244912155 454135451 724646741 885969157 953357469 350987157 887712147 375901693 863931377 887204419 6587161 946105227 621660193 369208157 397677139 84054889 973164093 378162651 483254581 435444247 864949603 270727683 827848257 53424601 680694193 762379363 641260923 485951429 178816853 664368331 823951217 265495727 275539841 202618715 480684091 551423033 575499629 346477429 222530679 620342731 75758427 440464071 958336073 113022869 174303641 307693637 725100641 296877969 749165941 349186859 32637685 998107773 770969677 861360123 805322947 411008227 57976961 666243461 912965139 579286033 367336059 720120283 483360689 702667553 793313709 606025561 247299571 579270643 8224147 128456611 297279929 143249966 699909295 474181289 187920233 512249925 91903883 6714267 797122543 769281645 995510711 904917493 661919685 834674601 465802961 234570879 95493607 147588287 858052983 904627267 32428251 888099649 249645655 890563477 19319215 107058823 112083235 386868499 341758715 43154097 285844883 855806623 408668637 368908197 898809451 227156581 850802937 226693143 742004851 895687643 477310847 443842173 502775169 864259773 664327205 418763801 656904043 200955919 641081387 161679345 708582167 408057631 577912403 916897751 893676397 789427837 67379695 345901921 235463777 469908745 146882517 463844083 854918123 344260325 901756257 352052913 694546191 774653567 69553017 977592207 877268693 272265097 97072015 193684547 457819475 948293123 531078807 352122957 557414049 915292973 981409295 356840183 710698975 428115605 824754941 169279569 499806781 257081617 134027503 984247345 669258727 999540155 647539965 380481849 548257051 161912057 685692613 520278993 195740955 750681461 383993195 717871403 545472305 658298659 362627231 391532093 798561197 24570435 91368857 190435527 72563949 695160407 337607187 27975761 134696017 167834411 834272087 282754351 906200387 107869137 234915633 313786741 730425399 487953323 414244599 840130053 191944613 700627289 321667209 791601543 984089873 61239751 973277517 697934187 364029443 291726123 443095857 323875051 932387601 150109185 348614571 160674307 253651 722064397 493846711 472697473 470308075 263241563 173886433 611548913 774456067 175160127 424645937 393726381 467063757 510170455 530398785 879523797 781192711 849437317 466346287 497971793 159241581 429744117 117202847 383839953 939468751 794074655 86579649 868474061 573297661 690048443 829547853 417175173 786301649 429791439 603261053 603921413 783745579 171510183 516399387 581344281 391418875 999673305 575709555 137737049 57760557 242961215 894690141 771487529 553772737 454926077 179742517 783010477 847967411 466996865 148926179 451683289 600222995 189015679 617867987 381858915 421150449 357627377 570205439 951797453 165215591 677978399 48978915 164100957 360038551 766092945 757246341 770752291 336310955 204138015 800701557 324701435 494469335 240330723 990442183 828147841 108635219 808730435 788993307 34117921 246026595 997579753 213637013 703645447 118605905 402049739 955993319 226201647 765598317 611240229 716305219 649040215 867240213 238993785 920431979 257371913 127234729 183140503 326333345 167523477 561827731 341286033 638314167 526883089 688393543 821804997 987053315 717878367 270232381 54587349 877430625 743612455 899265529 159950509 984165945 986171097 633746437 79878531 10838649 663727791 937264371 209034195 668017303 464675495 975592029 379447907 92534673 481557387 208365285 865864763 63045613 989701353 423132469 118770097 496639675 201126939 63375617 238670691 958576783 367928641 803097601 424549683 647915657 186987075 725282041 753923919 448895821 753193937 860720819 357675305 20380173 616798307 53268225 142559361 291363195 101812539 506977725 520030807 774294233 524464991 878337993 662241785 531096811 561890977 37350415 976908285 201027327 845099161 383382147 612143933 536817643 482326439 99311389 31110621 889933073 765528563 854333153 379932235 386010963 545009261 655873753 820049467 788513825 471942605 635334935 870792105 272094833 859918739 646199221 17979863 28181953 762309387 265646037 429183573 241225495 635969599 291475105 343728629 93598211 699510541 905701453 318643155 107049881 602400273 862954769 589687381 904508793 535718327 970686513 935362085 803720393 331579181 375693559 717546297 462489397 308132715 367371189 777442253 297854965 580244017 158853317 252046181 426309833 107293961 956435337 809666509 815414005 356846145 265127277 242839577 293666375 864305141 896892127 238607271 894041623 766274305 486038623 719339801 12149825 299679759 13710187 24062301 932139053 741008017 29942671 298513061 417911241 702941629 872355165 461328751 731743371 746126227 255035247 348609919 120572531 637046747 468142439 406636769 853746435 75465001 355065583 758469867 407389261 142476241 746816699 882333495 8029157 350357749 284615045 939752105 747122155 676311933 410770189 685889647 574020101 465224985 674909471 235593981 629119583 9019203 80935565 336166669 953258163 195206713 870370865 157305511 690743611 958946819 284715501 451684883 302597569 702655347 59809195 364053737 777025683 803429153 574968415 847903491 286720899 66602605 673749251 689302919 174358261 881087615 894924695 632372703 39396555 904550215 642741287 65162945 633757045 992431741 687747013 18584359 984547561 443906723 762929035 864432473 13660069 364104703 328126875 667414497 955727281 90981283 74909727 495724691 201749401 796811367 203799627 967222155 225554291 254109675 484084057 880968239 873739743 177126293 579927945 126887979 571628803 355231641 835280167 248054897 721155467 875929069 899948421 409391167 279693233 157396307 552007165 990556185 809707057 368545361 73159921 316943563 442530129 751342135 176102605 260840041 885295583 980167713 536977665 573798737 38732851 418119147 595078919 503413541 218728233 34931521 209078117 682841555 395638059 126453903 375511713 735528077 260540707 219530769 454234191 932738771 989098377 684065989 125692937 262466405 223679323 716558197 441924721 856277841 426630945 863921073 404069939 963272941 527675879 7945423 598990591 890144979 857955907 951882993 314839183 354640615 919569237 424683007 848507303 490365271 113827779 572994219 557612817 470186903 995211451 325656937 334359201 965076835 623128817 255248253 19187245 282053053 110943655 986032111 837304473 971761653 255484321 134603405 747521743 91222173 233660973 859873521 36032709 104523921 302937123 973016443 291753071 32944119 631535329 453204051 425239763 47333689 401491275 495767145 362833149 884779533 93233361 725599351 938780411 725739119 893497963 310581243 432501481 78577571 127781779 297457213 214327785 696743733 249348435 793874767 731999015 42574329 703911735 313877257 287277779 865914635 674109013 296654859 642149159 602506449 49787981 999154363 482859369 984962551 575689797 273896525 527034591 120472175 692902379 185749945 768055773 464539767 486249075 188248763 671157949 405759893 798519711 820731103 988860129 625884561 910693043 107326069 287962037 330859393 181738367 610024853 630509993 465315011 639745879 523089693 215646521 592154105 504683035 98713017 918750693 148055057 809179439 534620375 556129081 177071423 848884867 436318639 313200585 423774717 826937741 268349505 709519915 554372115 46062157 624865879 606757891 540416393 242412101 891296385 420933885 623036855 527627143 474212629 48773065 148711991 578411433 469192501 181079331 202685421 9318087 39925707 278136011 201567241 79228553 725554307 874958477 8668921 772169501 106146521 920830267 55056767 638480953 974673675 933990833 311562653 25813019 104341283 999079885 967125919 227479177 864596975 451377533 614951705 633304529 545003017 963577265 327623143 158515147 737531601 49600357 154996527 234777301 750513007 483516569 740980315 283015893 993704405 641774937 857632801 345053751 200139191 513697977 653479293 700314355 587572633 897376719 171464883 170829193 858050499 367261887 99200593 688892923 314784579 783368117 57957415 415810779 873652467 389871585 871865939 668709439 436119155 936131199 296311357 144600771 281194795 586976719 159188363 234649743 240098635 498218527 498220855 349045329 105495243 176552125 690168441 855470655 875721325 349521157 844404695 903111447 546806967 905913691 368149023 56768287 197713659 224035877 646422369 565426983 432289873 602973403 851907069 848730499 708363927 718033137 990040469 553938707 532148601 120573167 275389975 371738683 747515237 83073371 619660983 872282093 20937875 113782729 338880241 937555611 929188869 534287829 448195463 238566725 111827585 724448285 172727689 898669683 635990935 732924751 860583753 975689521 726648995 921751835 761103715 378576407 173533121 916618045 821427133 341904961 287992029 919167095 231214721 511938647 624091299 690979729 183356197 755579271 679407503 607067743 170416485 660334727 521840865 977061565 627481157 100284053 702767517 715722121 1632017 809331833 237560729 402785201 268906589 322611069 29748841 14581029 715432709 550567035 514831985 157430753 366458159 381632721 433872341 390360295 54224711 888248677 691373447 619258687 461289727 182731171 797494337 412323581 276068949 174695045 582546305 554547261 474783885 450166661 345432721 654520861 773445939 648419245 324799359 486443467 878644509 994251401 946424357 813303673 720033637 986593073 212439331 561241437 269298799 91278145 260696289 556360383 499814121 898645473 410294415 224639205 345915589 953601727 331713319 438953509 563132995 585555729 518415973 12023509 698936035 596182677 978268631 985746523 416712819 749934227 932526025 818673183 195952137 452679895 718422101 780020371 586289407 953450167 589854299 395360307 829209083 804267539 891214977 523987073 234771431 609571407 475762747 598807813 109278457 974122845 265699521 596027475 548739499 751963823 997545999 911399175 428636101 31423559 643729905 164262591 342439761 992157609 356784375 812938537 810541987 740543203 376740217 690273015 447879255 7785357 166992533 163018465 670038611 852996035 503025975 367756457 571612353 424228655 275334413 817942557 249499159 722191867 854432655 418190859 335681297 211944927 130663677 109303121 967802803 120406809 623297889 672039373 302566473 235127663 893418379 74298221 203625065 472126257 159428625 399390499 699834859 180651059 496537687 395387879 485923831 525996757 298165633 160583099 920614905 8183037 52648835 237436077 824766115 246264089 825397777 408388043 154073333 232996125 3473841 15790131 90536751 582295947 566472869 429414405 754015711 941351527 176858627 265368427 422058715 974156351 20654751 116190615 853243453 103932203 547163675 599369669 579115369 882279367 174453215 14757943 614530573 987784253 704750619 839958325 835528477 191058743 780703433 558329877 341078995 338921709 810102951 1902637 158338231 833415197 89196607 661607395 705998993 684699407 188058335 637886367 866973561 753206925 129844129 259704019 503542729 925540083 671553637 112878845 480033063 489466139 314256595 971945113 639904637 163205485 529434971 551267895 629902849 895567573 557023285 902099813 759053359 717051853 783460451 148007873 540711115 80605009 2260651 888752107 403754209 427327975 485713055 380153997 738963141 127907485 263254423 173067609 708881171 124302859 756413363 170124299 371501489 747611981 938064089 278255973 302119115 440072461 488987069 917887025 598290387 79223413 870848213 320157247 745143431 807455805 759836515 732700013 966476779 495917987 26333293 583303323 196939595 432614767 279586757 290194099 96070973 306482925 309141249 848581031 154232473 745733875 432736901 768056691 899837319 846373601 990891637 210981145 498445939 390191005 338354117 563618211 993986833 602145941 665490219 569286433 943396699 588418239 139389479 218246065 42906777 59577239 723894275 521045107 741890643 239582761 965117647 539284625 997368673 348575741 621055585 652763197 20274397 956599853 425890139 881391541 108566315 731216471 806363685 332576309 440329465 33432991 268824049 118503693 981512763 47643573 598440885 945894541 781031213 628170191 69916977 83276045 115630929 652444589 474584045 247465459 932391543 6988433 438103613 697940647 812227505 701052493 842696757 22170013 251169883 480759351 353685687 377258829 910860571 468524075 404143211 551490363 777583835 230645137 527603393 800984305 196901331 663566423 957221619 540131583 99586681 548109297 848422141 616309251 970651799 450636897 985022637 237732253 209498679 517872427 704623247 939640183 444349615 674445407 982811901 766335045 269452183 516481937 70441239 933752511 942802391 131351777 704783301 953148073 972100251 573101555 800286391 119675339 723725909 837241591 466429285 16680187 404010947 523760037 23544337 557412113 102192875 218951735 354537153 356155375 983717909 741793399 429817415 594363263 261100247 984784049 228885817 825964725 554455311 956266171 810967803 951567497 843901921 226913525 353826995 541091071 419031735 156239173 810231887 287706655 606073413 163355673 994478475 907152127 164198795 962239847 458475239 553074359 374661833 803125165 75499177 483467625 744757903 381998833 345965537 174573887 766768303 209835971 709616491 974781293 829642053 179403831 515314403 14282027 412859829 90929901 709475253 89048765 603241903 567639049 961354765 41102957 793558561 510949947 800838631 684339085 249972813 558777275 712674817 818955125 730690229 154784579 589570789 366151307 691928101 586514717 611122147 507530553 501772465 434605077 763859473 367722733 998647477 180532355 26095953 429093159 328276439 884848451 696812875 740486757 599541763 884932797 17955951 322484017 63124587 882194911 212650231 762035489 116017805 685855007 73774049 472129485 465006893 554346363 866813431 655909847 377474391 304284025 48487111 662739433 566178657 414111273 608474539 631762871 993069539 940970527 870617795 67038457 642177221 780196475 602669559 292718707 328554547 739099105 487191543 522448111 315996065 185924483 749332283 391545407 77193417 590433299 891976453 154670653 209988273 203927763 812190813 756869067 173058215 427410053 954271505 693513171 479742267 88995965 907994297 135713353 499404621 578359179 746526649 334885157 540773121 806058259 952708663 14600555 837919425 614868983 928001315 593538597 667298371 158788007 83621685 538875749 141529985 360977177 70227949 727760197 760302531 651201995 436737687 816847079 675983507 167495875 256614717 392354677 874131653 560632721 676566973 531160355 735422837 686983497 16499379 773105195 660242185 165095307 616050315 190964685 417451051 704027003 404993139 588100949 576079057 100507851 803429731 393153299 895676727 478393005 557399323 73014117 738772705 523902691 210723109 322383787 333569435 426845873 113455055 325089617 423498361 825765861 172099381 820421831 888780503 629893591 675374643 850907783 647419739 437749347 21010291 722168341 860142321 193766129 237562983 493851387 452559307 31252847 523511877 143514571 298733673 199146323 601347341 157494559 150773387 581002907 186617479 282817689 281418303 116678351 33170247 197273061 447209689 920327163 440586657 909534641 121466359 635205557 731249847 671781053 62502013 789808669 709839729 135832775 178421653 123888855 91915647 323391899 697777075 268114965 257459803 766808075 289301911 937492363 529532995 85433073 610789697 708429173 143147839 402312239 896372993 926342045 40407073 544533935 769890919 715564623 350960513 614721637 200333651 262066019 202738879 388585291 2113769 778596151 915440387 547368033 194768019 620047791 810637885 688569267 912823559 64850747 508282917 714993235 525975873 149924817 903553853 912845147 405408133 60618735 396728267 865917677 414864477 41318301 186586337 681116469 274181537 50696039 538321239 275981667 940850541 434575715 913147085 110052017 92390179 276999729 215520425 103753059 296244847 976005111 447479583 628780483 176482375 996438369 841357861 782408483 664781287 226000553 800205949 627838173 270646227 426247817 675267757 251275093 636499671 674441547 718745093 841228529 980697865 370256829 459874209 864747303 176282305 228328499 56575325 506909553 620638633 221533579 139435749 660524623 448118183 133019693 933008037 746914893 177376245 406899465 696612057 995014909 853520907 153755281 132947583 8640505 886097071 948560325 960613985 763907555 991638255 823065389 766010895 226111847 160597787 946244563 307148511 634864181 403286483 86329427 99661555 535500295 729378043 626746823 722929715 688075171 406657725 593400535 121439569 938243535 37238927 977625263 658974401 294782559 615097387 818468361 397253575 730438957 700460697 32828961 323197291 510787867 726461217 79568317 820867963 335535381 546323547 24948267 221601681 370953995 230801187 21624387 881267213 5629687 577239449 303158627 453624599 158637023 291676207 32448623 817270175 923488969 687083157 853736663 839405151 910414793 712760519 960652177 49318613 365000441 695048717 284829725 102237257 741654907 257983473 638916989 256925389 54916731 544469831 129546051 748571193 822135337 365177645 905520773 271084845 34823361 273570309 800251615 326204943 689688963 982212219 507596665 659075603 990652347 658571911 670677503 480096817 841664443 35555425 283784619 391229477 87719901 732972943 200157241 821727099 868284293 901742557 319167215 595050115 846997529 364298849 937574301 160445781 517458449 338353781 281239959 161757903 774069729 879666877 905373883 389006749 484280081 635729959 32074355 959360301 747116327 269154021 932746409 522285751 421090487 590099319 382172373 561578555 956527195 798992797 432311543 930448771 900736949 375667047 949853841 306445599 489502321 12462629 742306229 443311973 590377791 144411511 810031609 986783095 994631899 861897793 727437689 137850943 324693253 906945453 386033117 816428393 530972555 827400753 179508051 130112625 86697275 859359881 768230287 330257813 50088689 890436791 939393235 448597215 229521039 447312139 951412965 46884125 786220545 401317143 880991759 728579305 204322359 707428025 166166571 640327587 142515245 584342289 475106711 613403253 929746915 856003473 557656631 574293323 23306599 933858537 993423485 832418271 733695943 482895383 341190235 786573491 615046687 886148447 545651281 865689103 450817683 57788749 822987879 39444225 873511753 474424757 875661609 378155619 167172983 626486965 333308079 579928021 673994839 952058799 859294613 235199167 369687083 155253329 414467587 885459793 449530171 288370573 786322087 293638019 79203547 354423459 334814647 146090519 924935781 637477907 247846385 749797779 488180285 381189803 554032539 739009353 514409675 72621697 131614597 870439505 217014657 825524207 496492035 521249417 481871835 423129753 534476787 818550685 974259801 9476205 957656511 800819195 913268105 569701023 67354193 715032539 90206969 194494633 713802787 869900863 467473477 89399635 874440239 144131053 419885585 605618597 501094655 74300021 582871299 850412535 379833247 851118899 956301011 208848101 742538407 704703043 62294837 450972751 138437939 147361681 377588977 522329189 369077227 751091145 714294989 364598939 600364541 78912359 913208479 877019309 414077983 109604267 935143997 128370079 883364751 326009243 717237387 943526077 788256019 74095879 626353781 853714587 671944699 670588297 467218925 718038039 820364059 657369987 486649065 858249043 643205587 293533465 796263025 88128187 396355849 477937981 155752331 487613957 19532841 717687465 889111629 71581999 558086699 675946203 929233613 774860665 632234127 934970141 484995633 212669041 844378201 488319869 994225057 134640875 885901079 865901013 266941263 939262981 940810209 240585925 861838711 378590753 288118355 478103221 182666585 345213933 103412629 335980757 200735299 437717341 118414677 66685983 701899907 269244075 774651593 386157135 562324597 421967197 173101487 9257715 638189949 978114881 55714639 352770135 277711107 999632233 580235123 507154069 763323257 790165809 307997047 884307597 912311643 248655165 737952565 931495141 164417067 548421243 911782931 220901137 847468913 199598367 7314947 715571785 865965507 77170085 495610999 301063305 542269879 66219473 46328177 375136669 623142131 411597741 130199669 842525717 228311327 713731217 547054993 529697353 807889645 17840665 968240221 779302745 438216473 512743205 405854965 264140331 347439461 994000615 311975169 805180019 600887705 910280655 887709359 301868455 93821067 512903323 314835893 111589895 505326865 907167055 943672915 984992669 983256849 711921207 341233227 406412089 518320243 18961639 720526831 879561073 862320681 694684989 601727763 556845993 88459567 843811931 102875159 895574277 866425735 652409773 977094369 865101689 683005753 740871659 143340509 559364281 863881563 108847117 793463557 798874955 378530051 729706585 481072853 174979441 641627223 257775453 393300819 718935617 168724351 38672617 556912909 747136143 803611053 456054557 931245083 888848893 660081181 57200987 90650905 718517747 906055441 540782929 110561839 213993635 986864339 712922099 273420301 52855297 306695347 927255165 121413349 767713489 32512015 679636849 413390711 351694235 85111621 657238431 183390217 715333037 141017795 747716377 824675179 802092577 848309243 837334587 594305011 795766999 398869605 891593897 880683645 584326519 641319557 946894931 231901039 432383601 426719971 918825577 364552635 358217725 954720533 302849127 131728341 8002333 537196721 280222485 966117049 703304855 437831261 178103677 857643761 574519293 753936065 994284019 282761611 466223783 668325775 559796501 393091867 249742517 70666373 544720069 446692031 48412685 512594527 422578479 425041185 960907619 889866733 589462473 591894891 964969773 86823165 21727823 711693909 198058157 870972781 316202951 251074845 294165225 776914461 990188409 484171403 963244979 254183415 589256699 11555307 930219169 175354605 510943275 943307795 821161495 121275133 92452395 803967075 416390201 890580771 336413289 582370241 58537979 580799087 335687831 883000219 477432339 969459441 600579765 487567077 415945729 598502593 957922819 287472417 754854159 912533253 864134159 737026899 108535117 765861605 211436975 563603723 404532881 785537173 617288189 985607005 961222013 957762125 274906463 81907687 38492281 423679313 648997503 434005459 256467639 840479465 733607251 808843467 546529581 180085611 795204629 734364167 102977947 38162735 40343117 248014661 89355145 485501845 504093125 890482637 652869451 430043661 724970897 440060267 987300597 456055555 914191117 507772279 370093417 188818165 185785567 73249741 267113295 645690725 701858289 411907029 226847255 419973085 296704633 917163899 572280571 458475757 753196275 142817849 164908537 531913011 672552227 829418507 703745241 537317967 788261653 53776503 466298925 983301099 924911133 473735053 894120013 347811515 841640409 730436833 387051097 4587895 438419243 668465297 919044921 808572387 336511295 898181703 45637277 190374345 842972301 373093933 604586493 410958329 998806989 998524923 646221723 602461009 819276037 228276721 3379581 158532017 637274241 664055761 471499893 567665411 424372695 856307183 388345113 642986555 703066337 402217499 140489933 19904081 235047619 591773367 944694967 782711113 792712427 91321769 893526213 677651245 514353165 612189023 835727027 272242957 7746339 577114575 488424193 619371527 59244661 813184887 161257973 577307707 959150731 881679453 665885857 560439763 548951869 920277777 837909979 118230019 520044197 456711591 308960581 641179139 102593577 845814973 349477961 279544855 155354995 782065789 485714195 522174601 405080441 283555217 311002527 246906027 701526903 335446579 129019563 412372951 427912177 269311261 95148737 537543791 16359345 402849433 786993457 971969757 826754255 246635379 597421329 480738453 300962727 55458307 28936259 230213903 383175643 221367589 173683311 860289231 325024087 604481 204872199 461017183 882731345 840501573 851496767 872315215 692650823 926840231 85956379 12781885 625052665 479631717 188640867 519989449 18825333 165562117 84197029 37459103 211538703 306103703 974604091 781775469 727021157 454930863 445853765 12822003 787885657 158110827 854057387 800946159 683926809 643585653 90734109 89981739 564254743 623485687 6965779 723753341 628325139 269642923 937429199 499131069 186204941 561933003 624106329 227932621 783567699 441524769 893716351 184474007 910508155 527643129 451931353 424026127 280192351 591230763 583603659 461671727 249165347 846400787 652900987 200446455 976068405 398830745 651594201 466848115 606898761 2424107 242822813 22602163 74671963 25864127 198900295 137496277 232888749 438511059 295671843 418450937 896554191 922046575 961101883 382512203 90708883 919497501 774812269 24346107 79850261 585216249 395127637 363691331 223299515 67834781 639712095 833608039 284719151 384390191 106958265 740846513 876158055 558166625 919253339 711480435 393138847 8394085 507758085 616101383 562709083 82282237 623661889 939758031 471754087 540594797 987003741 864360757 265742551 47317379 289826421 860420269 500364297 278994839 191717221 94457007 982984095 524209285 29905111 160749761 601053831 813824949 305720381 126806119 694968563 66025749 535439565 6962745 782602593 178157083 645294727 710189775 659894677 578774725 174996787 259955659 674856861 699391131 227167589 952007897 930750153 744697767 106101617 884142249 236684985 659711365 732775033 15210485 991234639 313208399 468952421 551551105 721165497 553034155 750668261 754548759 842948715 297311691 166942579 231583625 486279199 643390049 950322765 940870577 723024861 931161007 78733435 156692081 940592109 900048249 119544015 319733685 781305319 223856141 992469473 359305325 753232293 965774147 735566609 196476307 191829069 953975671 27315591 573063979 416689993 945204883 675440947 4013887 645131599 819980033 413453261 234888929 323458905 525128377 158270935 82096427 789159855 810712633 556972439 96171071 816135387 292231 306400287 30017097 806665393 653615411 29361735 222669945 149411149 771992915 115612079 237195273 924061717 202339971 367095229 884847423 300806325 711427817 850001061 914460769 709996575 494655287 284516445 48583363 627943313 19749281 577692071 282914751 911310735 134649059 609758985 220171191 20534501 96770887 327707091 996696853 640332199 848853403 913905953 443256653 57729075 894847537 46321359 165198297 474395691 138764781 7209609 556218169 568594813 482186033 29381307 757589497 791017819 42069741 16501665 706484139 298299717 689586073 857943609 248733161 99687931 565307951 806312269 556348759 267027083 579931447 944861805 649976987 691579723 883749825 983610607 334324587 640091861 448387171 648615157 908651905 389231885 501206073 647938151 120166301 303228961 429497833 294864375 438943371 461431173 389343909 679929369 800252445 276256501 58166561 177745937 297293357 400642419 956326555 769856231 616279965 481247823 287076313 145611881 240806745 536066075 436560425 702567985 630015825 346103219 377710179 320807583 866919809 277845821 964981221 628019675 953870569 886721315 887009171 334910677 419605141 227954459 69606621 674979911 628072087 338409761 733008569 9850287 219362057 679133305 545413287 288536149 54993167 224643759 697946025 824503883 955115471 109738647 442915153 982500201 868749183 68141389 47558325 849455695 859238489 224572727 215304561 878294371 140694429 695092481 413290157 858640857 359846039 464989341 966290453 378870953 269787547 142577737 896304355 201143183 383793919 575039371 296862419 309730839 128305703 293508139 476752171 311464081 418262655 207012671 323100601 220620053 360523383 159981093 654054357 377378433 218348681 902393727 215105885 869320577 18520123 820653627 442940853 642667395 498201875 277944461 452429519 703743935 148660645 570278127 439766557 349224501 898946699 928900905 636058527 592702127 954341225 882073411 159166173 989870013 369968613 405316245 305745891 229925301 389203639 893481657 892862025 715463609 958204051 605181589 109747243 604180659 445784897 995246419 926884657 426945103 35687047 927955817 576033671 801281033 954990905 854422929 246204647 7266847 107608625 666815955 393088909 91884187 608115539 48990329 962825023 794117707 395948165 832629015 430934093 897120201 150586047 585662857 282320011 920822389 17345781 939171061 345098329 697765241 508596015 614137029 986486683 111345857 577248115 895280049 380493505 640792583 454906069 900707505 334646723 636352461 899043951 223169547 355253531 699911259 284525157 244059211 694240467 361275583 757722335 164329797 117022071 964053971 425352463 983977751 561354527 467890999 396485169 628021027 551165031 246949459 594847365 159699733 252235639 330934615 581367895 413356005 377390333 975043643 58143993 94730955 748688173 907974081 190982599 700915277 761448137 429949551 824086815 572864313 331233815 756722583 251668847 198815647 465363425 374105681 63654951 728138719 401590401 378243197 132518083 592374685 59067093 442572225 952478661 692615875 297941827 673632401 206446517 72156293 317905079 759560483 816988199 174155875 575083945 244181113 936154293 701357341 525061913 718533465 334193155 182799811 898831755 954527059 256092345 414157991 602070029 884916675 11783817 390714981 845314871 669202629 995916079 186962659 966661157 298907205 594885995 559093323 780236159 414273263 227710475 374224403 675904115 584874815 539682525 605562359 391018423 413541493 251452349 463343867 597580425 30013335 324987791 840128107 930846127 634500213 644501819 154744539 867017849 173416105 867280051 790102823 429779387 154930325 674736115 987589493 566027477 502750813 386738171 188464177 841754795 992589555 373224921 985200397 859539631 998188817 262696859 536173575 931646419 150853685 385303901 654772323 681114521 267845545 600868419 773385645 6232325 342887803 682937717 286464187 715416997 349137285 861301541 692472999 972851345 736256103 501250447 489867221 755893605 716877449 81054709 272847091 751081801 708104987 323030431 771338739 485227499 374923543 735043297 602750741 409058945 470459963 475932183 822432217 954754249 108792847 877842591 911791117 51888137 918522085 728116199 505978567 663683601 850135253 707196513 624297313 487320629 719398079 597679749 826561153 122320469 229057353 356820437 705450257 216442839 477405159 443170271 369721159 475655847 311799249 67398449 990885277 298203199 518279939 9245287 522160603 904589467 255433545 142335781 289347083 757269823 194359091 49441043 703333249 963826239 985541913 92351203 383263705 518209325 768031259 940585809 394020857 210420775 261537055 668703 416445707 54886613 908082649 334710549 966339461 677550949 676127679 578283273 623833123 967384973 624801553 68504273 918427881 788854155 639581657 289635411 920497187 238167335 112981223 377404791 982906215 818677933 340965073 196263727 111125133 275224051 670349051 408075895 912426685 413125465 263331465 388938065 65125731 776225989 197600111 889229253 896434481 169681059 959728481 473311465 464940839 843240685 666596069 908816339 755712389 351342621 533203517 365207209 727885017 320540221 877363839 31112083 304417017 35194331 821487231 452639173 936282111 921863947 561379295 45152887 649955151 725270123 549316615 650041835 394296471 912682019 417230633 517261935 459968203 6264545 390598969 81233745 233149733 841169627 438996219 430973935 587184685 744820945 105551095 689407145 415885995 455577349 948886139 921935337 184188087 81792073 247209633 516692769 633553579 636457713 360433481 286888909 775599149 841469405 512068635 451148911 302373671 421717875 549851527 223991695 945853135 39593121 122024389 801659075 905492129 39787483 808503255 343757217 876862305 743999523 351196803 639643343 846708251 503089149 135720283 276997877 449745699 10119801 676423607 47445959 499968277 862107691 483941303 969478397 110003159 479049777 170578241 906256219 458098581 146463027 464122633 715952553 15383489 112669279 578343813 703849917 975215641 353605229 816104951 376563565 106551713 279967383 787872101 155914655 668665253 755021223 321482145 115272507 494864571 662139623 131934785 217649717 652671931 697339187 262698921 209623685 609950927 668730853 522795005 51332911 411797597 239635429 92985393 718966075 405890079 879704223 93289723 872458431 462873613 946273037 56866267 273891281 239866735 171684011 474880539 594387863 698301901 371158655 394839499 770994489 557826047 562659353 40838849 382488811 344910111 825470091 573363103 34761445 440662417 585265017 304337103 39828587 530672643 911401477 897472381 105045703 575381097 650180065 72872101 806251593 213613311 491068479 187287557 47133007 80454983 363052767 39661349 580624185 799951633 381551369 675663961 7009137 698064751 686222473 15072693 959519337 993687997 737441461 747105307 846357663 557922977 227095917 439564339 920316303 591541509 874386455 154547565 217245897 795174177 419343009 678019843 605066461 48971629 936966273 260593395 768989283 171069869 11138485 228897541 653161217 187409393 931186115 86885835 182346337 611021709 779906745 638878109 871076657 637345817 427978287 290596763 526476847 511020157 781467715 922917549 981743901 892984805 403071131 201882755 119196101 336270019 982512995 505984149 567718137 144616407 389187155 595954469 25332113 656491297 505095083 112823353 87500659 453231855 985050925 389613731 781658759 275178711 930144043 39357689 121714113 651681969 160152955 174601887 852875289 55886247 659034745 318193339 971268499 920388897 107527181 455450427 700916793 480644051 745656485 399509467 829958941 991109821 93413431 997171995 610202455 401630751 676125505 75636545 30208781 573049481 570681801 606273887 585809001 239354317 583907421 155419211 979401369 596505607 63017237 765845927 516079325 567283355 341338767 849878749 247588211 128480569 862033649 753716249 925340837 876326097 906860775 863127383 899121609 672233631 867108521 885234517 625735223 801112363 652490487 672117917 993291857 2031423 52073493 473875583 119967361 728005359 48366289 665944593 215200315 865482391 823863169 143959861 572755191 410586589 316889863 272440211 420892473 653684397 939788741 465610141 375208331 961770041 541404841 921416583 677155711 787475967 234362925 801425493 999412911 582828739 450295117 367646415 815339965 998884753 236658833 966566531 333680467 617873599 440658179 191569611 493571365 719468773 726046525 114688455 852651755 407308779 45248093 923381599 135292265 49342973 861960457 25751107 740947305 888892559 121883757 771518187 711734973 786708827 185938755 270519961 153724221 494005095 572425925 552712277 858541519 784696833 485300669 152938477 249926493 75982265 876894583 639830777 481269207 666110319 132139723 566886365 414982967 203871047 15734037 829641919 29344897 746789803 40992573 380181135 176536255 456924241 669556913 275632133 899606531 494659891 795596391 420496547 971759719 314750361 16315357 355234735 770644237 805444365 79593499 544738617 374936351 532382819 82395307 349705501 350353617 546515639 901694631 334208503 302171227 998337135 280356781 942647859 658302209 451919413 50883811 363696383 466810381 808264703 19288053 432425299 559067089 56612873 959938077 978288879 898024103 805330903 699922197 974762333 669031921 850784565 343905831 504945901 496992025 331089207 251969313 715156917 534259347 940730169 373951829 873567895 496673497 459067363 902388903 795482171 862575467 713826843 789900409 885258771 703898581 119199769 609029819 67823445 431560361 91090523 362422499 208297473 994410113 868577441 555087087 612282337 384166143 346690297 521276005 737187715 366495181 553081529 478154581 599921473 260933023 587385721 756364627 336821307 617485101 370999843 850270847 385110361 803575357 923362783 61504639 352641611 176131733 86648609 184955265 448899211 816530695 306829993 726940473 349219927 429987953 799657591 61966825 507947447 674676405 384750299 925580629 143932797 335097273 534685541 271961547 851712577 670766707 128711671 385706275 388157795 53822427 865841071 256040889 371281931 320126455 100806141 886810485 322133545 100831949 570679189 389984965 663127413 800204145 394256243 779704225 352492657 737936637 155021787 100143235 900124003 458751379 795771223 326911859 105025373 734156637 892421057 72453377 65583415 808001935 357227823 8140097 607171217 392266595 416035081 458095315 338696401 524115737 205068537 773975517 330236971 645775613 249074165 199558413 791194261 282875489 903667001 490772631 776500945 384899231 83516233 494220605 480096613 391092761 835289843 875674947 7153057 226432827 291778631 516204919 819732641 460265333 875515301 130704945 155618369 400703041 896247983 340071503 786796589 878509091 421810513 932127797 34777809 673145767 700037827 711118547 119321193 6731867 525683325 550559903 868808691 957386203 617444679 74929817 584325177 663152841 780832297 706111299 30975179 752502735 639886713 557905839 407853823 608239777 690597333 888307313 628833527 116815097 658677537 874939049 370846363 559790999 280726407 792042237 735067293 707655495 718111869 378925723 880920433 461397467 49887677 728852537 868308571 982415149 409846863 6579987 798892643 840410657 886786427 439167475 480520535 443150749 687356889 8292391 225571537 636101527 42416197 209312387 275031857 871187465 541198047 262038117 699804319 940021235 255197209 448138423 114109451 42364001 136560035 372388579 747316783 724975461 26101113 730370017 767764617 852704539 918880995 665280815 360869985 462539425 500180331 181020629 282879945 125593381 747620837 35577183 832403097 921896663 119069039 610233571 276990321 953683953 235243627 971614209 811497657 406654393 790084487 618461151 260093855 557944181 781420213 293245995 359407905 67981177 351232563 994860571 36303609 507495455 953182597 97174381 452114611 431453385 427745399 100375399 304666271 77088483 591349279 793759191 528339669 206759133 737316311 110926357 437768755 819432755 93882947 193393151 17810277 4264805 529594449 39363833 814768601 635691775 356266547 913837301 61520071 994454163 601831017 393880933 30019119 728646845 697466035 98502217 220696027 470769947 648541985 19936553 12262491 638726491 915391747 354319889 464897029 985217069 755318779 801206935 526542843 964312141 298745063 988682461 520561959 787061115 785263351 712924803 168777013 348581763 956070047 891271613 250186657 765438263 111453339 719355455 888306857 740116849 236795117 251721287 827660375 732002325 144427493 963579803 848884601 750893835 865406741 673183371 883933865 595125573 344318555 913939691 421705031 109847487 288154839 161062169 826430077 208439417 527600123 13307647 829063735 464655743 308686455 107683079 888970799 409967587 717641 68819243 391923431 175333057 202245301 255968229 765816999 727351863 471976775 506465087 216291453 467648115 627431123 483248581 376671043 518482085 339885943 303052173 537150617 911765513 893932693 37584697 912712167 923614431 997789659 633453291 62553437 196999541 93784635 216581457 127491315 200344857 617422069 28465829 448018283 296734503 426841737 523871139 485274443 205260801 129545157 84211345 329077733 319224851 187619007 241148479 872112721 810009293 226164689 836309761 996392047 919833003 371515039 138508215 313522661 498859823 923506455 530884805 344897319 878405601 190359661 288618781 214260331 831833429 246023707 594985265 890952883 60783399 408339689 781373955 704427205 311275509 293107681 810314775 317238835 649556077 916898645 270179451 959330387 589002815 466030567 202942917 88083783 690451239 533741429 380612375 683570425 645293031 980874801 25917203 974025751 818917191 597646219 651400937 579114263 276987675 236220735 567719757 286132543 350444863 558109781 95701891 66505107 645593745 623513623 678644299 580907491 897436671 918520601 857690871 41928137 686947193 413034041 156678747 290393511 836872955 262455705 675516375 665322401 308942215 8157093 946645071 609273001 992541221 951991829 744362293 333860729 337133801 203837153 644345723 831128975 489427951 412633935 393845411 558126645 121429077 769116907 598118319 974259065 733972809 402719369 805067315 991713589 390648059 815402823 293242175 414990345 497635239 493437319 42616439 483794525 182041743 188428791 876895485 623720289 505815291 717130379 956451969 904592911 65546561 539344253 749764665 668993573 42624439 331619925 880390115 25143083 35495875 544819419 155896005 148197747 664322765 866442791 108140207 125419285 958180679 195289491 24027381 934802161 842031021 356213699 698809719 82188205 583991167 753785253 701005211 484539581 981134411 123171181 234861901 153284441 989317791 108301719 562938887 99142013 573483801 250342887 987154371 474587383 895360343 744463463 903338507 482977361 493870343 764487279 67865837 25305065 784137947 193993115 332510715 294935261 963670411 898669259 560408921 807059475 63028953 148703025 382694057 204752703 808059539 824177469 850410523 269538775 383677319 919547309 996412773 962970139 22336147 307231877 529809605 689047061 307931029 231271441 927280643 115451029 241502331 572622821 215996265 906631217 313593911 100949983 128748755 260632653 209095617 948459809 362992283 214343181 477261595 601691929 148865703 274345829 616135251 788953721 525677417 451992585 890989175 966343231 171490515 460623487 23575717 958075055 209175911 217076489 441046267 97926231 327911721 887642301 55011239 437639943 240750247 928779375 588178395 177866975 436057593 600869825 161720527 388392259 483892669 323368475 377304263 700847067 459513367 90940335 495184907 647974817 732194743 190816881 687505905 965093839 379238099 820149029 166492111 51948263 447267881 838713939 577214475 938118073 957865985 386045257 154498829 228424279 420191015 463309601 761138247 429958941 443899377 953945019 727311669 613798831 971669311 605764799 854101081 484907517 50815351 570332829 268945469 64766775 507045255 788564877 262033009 894880473 985133027 433951889 849936019 823677867 406222221 626421871 817448257 328086711 962480905 39051449 307587371 949782097 347827045 734693575 581034493 628470551 167004473 360444601 129978229 622022379 997695395 466660981 335531093 509326841 465736519 469599407 744601445 491663287 20301141 793303517 371800699 596361185 239435907 655363905 913164655 493426557 597159953 750141409 877251361 164445651 866575553 127011215 493537919 910119289 327713253 196825569 867639675 701087053 965562963 150808891 677965837 508954481 256531303 503838657 711739193 26822739 75148297 755389031 288918537 671966629 753485733 567663075 201954957 244140903 193890613 637739445 151857379 67236569 339305525 798554919 45637163 429260171 426245547 738955337 316971407 386551373 147366181 885432561 528330049 47917119 576135611 567788481 360744317 845956549 789301003 769010979 580971397 161901449 320994361 528125507 185344163 766605697 534317301 954290205 540462375 11948519 269849207 579365999 528619887 847124547 886481017 963192513 494847707 156082783 496608325 743492455 743402197 813670735 894981031 304066677 459998673 57545839 292307957 333435597 920312903 888962149 390090511 39913751 618039739 204111899 606630491 840417475 848277429 384741319 786586055 364304139 469408971 566095333 324715209 414591469 408827285 740218937 607827295 750446385 758778805 646035151 770006287 936563049 173421781 906923771 190613991 327285997 986676135 375703131 993475967 182069469 212066537 916234193 602280949 857413153 507733593 532172937 518014701 180181609 165106625 20186363 184958617 771474733 127714295 862319583 633146539 156376239 100740563 21026619 853975907 485364469 970396471 333540189 176447113 807128785 425266189 821252053 835580521 954979545 534260039 151069315 927485147 816244849 176685027 614323849 454559291 808759999 754363359 305242453 538077809 10654641 347728197 813538203 764149739 820879619 183397163 798025813 590747805 608508725 361597097 969295307 338727689 694052493 342287329 280801925 62885685 112180253 922591485 457351259 82801579 757280955 783712561 403359591 658075781 751254025 28042677 616785167 275256929 97392497 414214349 578076925 693042019 841325855 844317891 598734375 4880445 24926991 907826407 107658185 965520673 438797311 248376471 901640295 753052881 227528313 845153843 945896139 580726671 878647757 825896997 557047567 864086061 488188177 947774945 828938121 458544897 950520871 57278687 993800673 472662247 542654647 985543587 193257985 20644935 180139827 390919863 192742177 451643919 970541519 944460205 78204601 972457653 229936015 432858655 531896207 868371767 863157051 505482927 936685231 706325531 266732129 858437127 440710253 814330481 758548059 696094171 359934823 168813261 598687561 29814755 824921983 304170063 281266451 111794915 875263715 324912029 823461993 114250149 564743941 299107299 535388099 616305659 252650405 264670169 453280355 363039167 100385219 70101695 250761553 215708627 108521133 590214489 855351387 219498785 902557945 325844725 684940057 189690781 769789313 158820971 380282863 199420735 862539369 609279767 316925699 339928331 33204255 844450785 8351557 742953995 745000023 321414199 655753581 204139601 543497485 318631695 430222077 797220343 423619459 20746215 940073275 62006815 66875721 694207941 212897847 80700915 558206769 251977273 706378701 294408615 49485911 855982167 369413275 845937523 585215777 120477631 552277767 645891229 414701625 567918999 391877701 279255657 623132567 856601483 150347 301282607 460762481 13115093 396343257 866897735 26581841 615557935 30369145 53117459 106262785 972809699 125445243 717417727 701699989 844836541 176845045 59824763 606932075 447371029 749510089 157675265 637872677 911811783 496411039 10953237 827284913 880343357 454676969 511827265 827749697 576233569 270780381 445532951 752165715 966234027 799666555 861248561 221667243 471783705 688440973 939545137 775245911 151023665 514306465 17128641 418960039 87127299 142825233 579873429 183151675 599983395 243866109 711896679 426856949 883618481 950026061 926976503 265600259 831273299 979825841 616023313 664547289 869608757 326368163 932207751 181900081 305412625 839026785 537051955 957427475 76247075 463482099 562441975 241376199 184159023 335515691 890126781 567447781 258970505 881615009 161993849 418314311 329854211 874546613 935099429 41607443 359952891 366735 196034241 160363187 658469977 85496607 858669145 657283037 265705611 290817821 765764095 601973643 711853191 630653707 605816525 651365893 346008781 310638383 291981541 697419221 36084575 928539803 295500915 740758735 659604175 502888999 667460261 789016847 683155249 654135667 682915515 667727355 921890597 726590437 562210547 944872767 229016785 545049009 536058265 23360461 854778593 868852941 92900863 727965923 151341967 964689403 13574527 838612229 183889303 902882241 825471099 557586687 458721087 604223855 465062239 876493541 46786389 225795617 62243739 757334805 28315697 613119923 172836523 469486897 126700721 387506129 190644495 615500583 450303801 748270823 708866899 566741545 110981305 724033841 774240521 683700663 571028903 414531501 536463307 752545425 759844097 753979685 928224315 972217285 500935503 364404009 140208901 780662697 716109213 600587023 445805529 184446679 811547777 291564793 132959345 272255795 961208091 652726991 182725523 618779371 132366865 493912387 23546885 542507891 504107153 404532937 829481371 46362247 46324047 492252839 730907183 473912105 506677645 822938079 49679011 575666345 438663695 589269061 391812579 106458521 449883173 833915761 41263071 381156565 303334563 488100291 372847761 115393667 669420263 333028707 973797119 399841549 839063513 648428355 572882479 240011305 812731113 940185111 595114037 318865875 490615049 27304803 771445547 703369039 731918265 865044077 954928691 979011113 552277505 837426503 397928569 457431349 49931117 363290569 946672685 362737553 283427603 559677587 575552395 25060765 967893651 342141965 767899091 421175307 739248915 909273445 738471505 388280523 485553217 438650777 293090647 517594141 241467731 333100131 868219711 769009025 240856069 596119887 389929325 820439237 906964387 692044973 147077959 608508157 993898997 401406101 343341379 237217159 954266197 362474469 96543195 606272261 350590625 294555977 974635151 40675429 169628733 544097327 754808557 477962203 463134489 173872079 226817923 853875169 348227757 224739881 596206829 268123199 71934707 405424903 204436685 614679805 981238645 444315897 983636175 467576179 135868479 429258325 567684003 209823547 320463591 410946621 374902789 946489147 897192845 498324379 724368309 748545181 644715991 713848859 916642431 856965591 192439795 990316345 620073783 70434723 323027351 615862579 641431731 666786825 209280257 517786643 207358167 755190099 6242295 4986023 920363407 926487317 57156295 342459273 229156811 545255211 168503627 557523483 795523719 417667771 607197147 264545665 317138883 219191087 90958947 652162477 616389515 63566655 255766861 831623767 483388147 655569379 33384593 668038657 270906129 271233889 144249007 8113907 638265353 495254085 684634537 839990843 505254919 252908131 455390227 821722803 261913659 98797017 508604413 182672891 626971617 199911433 606243849 889005947 725809467 545112223 973302365 138205539 659945105 550263955 766115751 267480491 191749943 757482781 285391389 924214549 151143047 585196227 463201405 532374055 222815973 827539539 30336269 243850803 352217273 570422749 183771805 362574929 643837301 627165121 473961857 835433057 384126101 71469475 612767385 640197641 485174425 908855661 983682633 954462653 964559373 457961555 556813699 208160691 953860229 788323285 907345081 520484589 653289879 933590195 515729133 902801969 365868519 76219389 115771041 682357521 660230689 552881669 901361895 265012963 907350007 704700263 50049109 802529225 828421407 456046089 362470407 292620205 515679329 998900245 856939685 63109437 16241283 420278017 964974429 443450095 266322265 169814153 40362725 579857417 485748415 559533489 92807291 548629903 895367571 165505989 644024039 676992849 723824323 242267481 132544371 439044841 159169087 519593289 848217849 337602233 797792259 739469243 266894039 555877605 281890577 29299995 595019763 111998559 274173553 616127259 204004793 658799585 45131833 617604025 994829091 591846633 927892607 397774905 107071915 241039553 345836649 154532903 84172891 997871991 610132253 713804889 656989375 29471973 820075731 161867241 591863791 573225899 518451137 928909627 585720199 934929457 996154153 826842877 96992945 128665511 31269465 115760417 485714199 972123399 468844447 874846695 988465649 828212751 381348183 970753743 428865789 635232327 73165029 922867113 264534913 278802433 110447537 282803589 488663885 890928981 24609837 481093059 160275381 978206499 224838869 109367559 986813081 840388625 88601899 331287611 234400093 601186195 517863607 562445205 380770803 919826657 720201231 837770639 504109519 723791863 86078409 184005105 735221997 923078819 46694795 426105541 316965591 488625007 137992957 241183583 756313497 579317433 662450385 49546587 376410827 359978399 630182851 201420703 407872139 811523335 159525781 851228501 606025341 358077093 39779343 958699251 943823569 843860463 740692485 429964085 467973949 547421989 530958419 430439967 450463743 686725713 754899673 744138237 281268957 626725955 299535743 35079269 182916647 8840081 716620093 636085039 679845297 161347999 636825865 140200323 747253723 152337297 428295911 884906701 547852939 20054363 725293791 856563647 163449391 419482289 720011781 596277081 456796859 786671641 259351925 595745755 881736369 581371349 737149775 412060115 439360533 395335419 862004669 528034583 645591925 334980703 965328369 285908417 603898601 564080035 698330407 441219381 944657167 756556847 107850657 345061665 866751499 472881205 523387303 146848889 374710925 970008489 922034831 68652663 957441739 769677135 798204847 654959523 208696195 98494383 49198957 221400261 547888893 105034775 183399473 702264309 44029445 379216801 120105839 773347725 399493361 275272749 269485215 279932723 641820321 475238243 413423171 811783377 317735803 693928371 596995305 707675549 422555243 786354005 804259359 358790931 41351147 64934219 696830851 244940279 363858167 48559195 686495669 241271637 535149589 385331735 272355167 269537153 223149139 302004183 907586611 514694935 132343369 429986747 944238573 276598269 394873109 287668137 215429455 616658527 852270427 909584981 144401187 523332527 453423691 180575285 522322233 875918763 345749659 858763403 854019951 923179351 46385547 884053085 696844453 828708351 841273309 631900541 137711045 342310969 368201955 209484161 588469441 768819421 5200241 349268685 812314005 357691413 563103977 82936197 429021507 954030151 452257323 419693725 481838805 242439469 25310891 945227979 61489755 786899135 878877533 572360079 107594739 438661189 186346943 41486387 795636413 670016327 537255639 107021511 345949667 937049245 639992371 943959841 778090393 690703201 47101675 770617827 82524183 680584183 421897373 869999479 977624737 577053965 458792557 425349385 4703359 488724631 645077515 498175381 29497863 465387729 921627821 287461593 721187215 711388477 347483155 727834719 729795197 79433643 533477759 485350005 543722553 573053741 190040259 693615925 64800055 92753183 525109045 268246911 690671087 202385959 662523057 307083259 751337445 467879217 366989983 173021209 899252387 278482031 114730733 490801939 619336377 132021855 119328527 486914279 832202437 543434435 820562695 577975645 719163495 453559211 728862297 385509639 703752521 386803819 82351893 240374845 944128031 6043291 802261711 232264223 303686561 68027683 954302887 103665045 122126227 34148655 724471617 472589391 475605439 429878065 637583309 863330757 202019061 813058537 685878531 158878777 351673363 928080215 738712861 383891377 122947833 189186505 700874725 526884095 977858961 249308373 372733863 139350201 792998607 454564435 341374521 899070019 85426091 817238893 952994301 990066883 239988265 279623051 245878485 492892199 429328467 771300705 329340207 884190763 277317433 1651695 166804741 277962063 110612985 901572469 287379667 601475033 492127923 775868547 963133087 299486939 243584401 292635883 539158265 729594155 65104839 704929993 491576821 121430635 764074125 751543681 516156467 868154885 209496615 149536963 40973271 105918501 651663583 212015999 920217491 22452423 78581255 304066289 571095449 776868009 19304183 421107105 420756649 779009109 274178069 914709081 26310923 369982747 24384459 246299437 469811083 71304209 746604935 609472121 51918465 336497433 634159305 24633315 238203593 82543067 827041295 21797719 390501067 267151561 714397157 699232775 645968245 118862359 903411675 293762417 685028157 910925001 535113615 596526169 444420897 116424103 75471777 741707723 864854951 854429247 979014843 883333661 285096415 797789675 300211857 208773095 598754397 739033803 636897499 655649043 207503937 859615943 804688989 82467271 303904303 116627599 88029665 87801725 943976281 330581659 338542393 837034989 182914673 928124973 680188991 341117981 198179513 549988941 345802197 106219355 778705141 12902089 192622821 897525305 644484723 279862073 561081187 832514963 329523209 477505025 921128263 802436493 152455961 778802503 159736215 197787797 873067653 919088123 827601239 519395935 829662653 137414357 339228319 165243621 594128311 693086039 890099591 609339247 539289585 665282759 411828529 584304007 340605809 170952501 732411593 988513793 939418567 481701501 650774653 553155065 838473735 387113789 132765837 583796181 665892305 223649243 256574519 207435839 542597193 288555403 331707079 281046829 663994657 938857795 884393103 281792731 829939595 779207363 932117479 119030477 828690761 649330581 422806071 265780431 904999839 256338441 950782179 759222773 400978011 283140661 193722465 596537757 31858901 377809659 647897897 851406953 593402601 311361285 28424895 408458053 963121663 253239743 206066861 623628905 482577925 123595877 197610373 464627789 802855537 459282677 452246497 182085303 770063683 593439545 970954595 19747763 208539133 458385343 1833911 462310551 459717809 545526497 500546957 443631355 865385715 915152831 130709407 633024457 176397027 74515265 177983921 228464681 121753639 124276503 443768717 931932303 819517675 40463547 210331653 242949051 334281961 11901035 656394739 972298669 677029467 268477999 707576121 481709237 18796811 907197147 54128067 66307683 275448647 505419521 454912641 174862489 734864609 917805063 985614445 446137461 591059517 958559507 479611275 927711079 533153597 899283477 199347685 753142819 467664465 481905349 34152077 49450917 180028271 128150949 393111197 76750897 863866133 954381563 855856695 565240403 271372619 431545817 565828999 330792415 878041245 136929047 915882941 319681265 927110945 702685781 687109139 890022127 821163895 486782201 609074381 404845955 372116421 570402103 658380343 834359715 973750455 914374917 993771933 217236621 702635655 309286693 27565153 877247681 652385777 476641821 626026719 83349261 12066107 966947645 987986307 567016837 285016883 830722977 436951489 549470855 270029361 887600933 192739603 966310837 48171281 847302517 535226873 347334909 825190973 968933629 891129087 744910225 966594207 480312825 828127671 441025263 243682479 265632617 696352187 108616669 150740843 56013329 836616621 759700835 144117595 45967239 290960441 77958617 884598155 342397727 766927631 630779353 153248913 948309243 529026539 655983431 442705805 245614851 993914765 947717713 30459685 393067497 744112321 200415851 314474117 641624097 695001945 666499919 277593191 911096561 95882543 158807045 111445511 674614619 101546277 138300375 317041707 133991219 416420391 600147287 301127713 560978961 907617829 535207271 87829185 362510421 247847707 987764261 703507817 652135463 654596617 503261187 722619133 721877625 330997755 646830257 731731181 998774271 752093955 520501293 542584369 373097021 371423547 621160889 210625603 895509113 430292421 735423205 95984173 292488901 183708621 658475653 158945657 461191417 27789187 53989297 577152323 583889333 162105635 894398673 991389477 736881505 385141741 374463121 340578375 903232813 4625709 655920867 556203095 983355921 840167733 27419141 906150537 518884301 285427297 462845307 796698783 900081133 274272783 508219153 973184989 632277691 233244589 160781789 567868947 448956501 398221227 766289209 126745749 599182231 620115587 481120201 18071361 297330477 2359739 171627131 121768833 479983749 621606105 634948993 666476351 950795479 754360433 743799643 226650099 332118563 53233437 94755785 997555101 226276403 259568257 848748763 372529087 775826327 501736003 286242785 727400555 523657381 787150105 496775293 14870839 650049151 483519933 13594509 608349247 678479887 772132847 964651073 32886059 263767809 929545085 336630541 819128873 152205009 279269173 973405869 593592559 961960893 795820018 373016869 959755707 75338191 451452825 91751615 382611539 664233429 674176531 612651795 272390917 115042409 255502417 741295101 443938217 530705133 339298639 105933471 999813277 245008517 601911567 12222053 262214597 214909219 82926489 726709765 315584915 834001535 48068609 548999291 386281977 609132827 722306913 749338635 257324921 831902015 47064541 358052161 723011605 297041401 902191003 429940209 676289631 155111971 710233043 554717241 718149229 21469533 120070585 175944059 835281115 831462159 192271765 447060325 918048209 933342057 983024045 773205225 120324605 381828195 68116309 221244231 750325653 913657535 493215721 337907455 779010391 50157315 159342023 853220063 736792969 288817793 994823517 348935421 438025979 73802833 121674779 588516275 116513281 423506003 356155261 745846949 612260219 280692269 645500931 837295553 965456845 481270867 261087803 246818875 377108455 570803963 61551027 949083533 995814977 432979239 705472007 60604543 369396693 593115549 341876699 930009115 294400301 680384495 65467351 466027187 832948565 122159475 296796589 795732713 501642981 543142477 272216857 978865819 655180025 647895137 800924379 482733563 323609145 32874595 988270527 637598841 995379155 149636295 699211673 798124497 195576445 566299347 791372863 623518475 133143413 129140619 402088087 407218545 268527489 584890047 743741319 112630679 162083313 167948297 115866887 701766747 581748633 160333771 253571853 756662239 45447641 607383081 923057307 724948111 99013015 284776469 169182911 735428131 980591679 368381513 780680071 790823059 332068043 607567427 386984719 848058149 737448629 222127949 863698555 542640997 39111943 89417077 82742003 357615655 473834317 227936917 464492713 687222409 858083487 216951629 411025369 986079469 933217433 226357253 863974339 393290753 147130467 20507629 403618229 858224057 76967339 174467583 301268477 525584463 856466343 366431225 440218873 231374667 838916629 576750435 13117447 672498293 804283965 349396623 851373205 546774245 159155179 405100949 543472915 477734389 138222709 168642901 657314301 528608841 736806843 212010615 344408789 485884111 994081569 476675177 238514979 191067579 709734041 590711401 648012669 647895433 114848149 851213425 328832121 126843901 281467415 209977935 401079741 803562785 28121507 401611917 79734513 947729997 396626503 638161801 967768775 480151837 144858523 534983265 892004347 177521267 636460475 296323579 666005583 414674299 616405071 988766219 237621643 195509931 527576965 990907399 880018053 106673855 98309909 371342383 218899475 943511995 244806457 444151437 527166491 61560811 771800505 89906673 492156037 326794979 878407397 702058225 87520323 269352577 625926289 155819249 596452433 95040487 891257629 351499541 230416561 247120003 306410095 188609873 737499499 707342599 813071091 347064665 623728533 277713009 78257315 609306035 161726533 706517253 385094651 920608929 873251233 714447697 259728641 165624633 364123601 845163301 12179011 126190159 408478727 75057313 785655769 726358917 352566655 659581737 514870879 795848771 553164923 382398567 199764991 348569787 965389125 237450063 147761507 295887585 290895149 729512737 806641347 693843833 594802065 567184989 169312477 843156747 858267855 931460563 862120439 483565285 763393877 137099157 738361569 702597153 380327573 90899967 886103025 322874015 453719047 785433271 802468867 278070279 692362287 70605735 779872637 839328457 114900373 928874501 142283089 345961757 256493519 316597581 461897203 121270277 65146995 154341441 498297953 67897927 800241703 85678577 400808737 104548725 658204051 82613423 572389697 338812135 117839467 838612249 163582297 414133437 265611879 107757841 413527685 804737757 12175945 530040515 757397871 315298811 153229535 966122405 799829313 813454477 56491513 214708085 187830451 688848853 914036079 22031155 761825539 851397849 292285991 123211309 411105017 890273643 377420041 487636727 853083105 572065057 861359625 567472239 773985937 730893407 146952479 913297079 302773865 34717001 102064461 546858045 503227471 450806483 788395425 815765171 736790449 510781363 674220587 915590169 392067 325737321 698735363 413021615 399266631 638901055 433993039 84792069 698008065 943644997 269516855 748242155 132609857 742711121 746164207 998428289 628763163 367709189 858521263 134340651 330552877 832667595 620698043 681845395 299786401 155627471 196003419 291957679 756217633 310518029 749306597 950649785 937587429 158029123 34230193 45170745 45046701 270764027 546968097 906119929 688442555 138241923 22021535 648310029 556524513 980877301 111426205 795850193 267937397 589160497 667615639 240266731 914486867 239873247 614096399 140321861 623367395 92137327 726159247 569855253 849427985 276032795 544353961 325933783 244649303 47124961 61039093 34599759 141758129 892414345 527962905 259140233 137210789 85315237 990881213 634773465 232643139 308475277 633212053 528911581 939218975 132620641 214497881 722029687 439773015 503198985 680123597 879498709 752172949 460582453 539854779 920632681 209660163 663815261 131900915 898096625 493820761 776516547 642780243 435026801 443230423 730517101 842807483 802503223 739553601 761784109 319835925 515867091 461338341 964498073 280621653 243644453 389682073 256728597 245050227 502219855 590266813 205589703 416518771 756777407 564151607 126364829 696708447 321748265 461750389 323469139 784106825 585210247 961447789 739901289 283214665 817151777 588479133 33060133 329660293 162662527 705434635 463057817 879922215 23808377 245119559 227747739 869126237 196250665 394106725 32107725 361505637 490966517 480382469 458946201 824274305 17936007 201392203 913907499 461738747 997030613 166306535 543034495 447143205 386892315 965907985 177055061 317787481 240030941 924463235 524058673 383085049 804394471 375113863 735656553 470186351 96955725 549054185 514948369 868739887 172984683 396912641 120477707 23575729 915544551 743929515 331097343 568884857 157104299 948413263 345849439 500671249 724443887 471499995 605986911 792230923 402309163 35595205 34016259 717079295 970279717 170412299 356578323 668697235 631957225 900998451 120925213 292895601 490691531 379194189 278788987 705185607 544926825 951010285 975882317 126224853 445123749 27876915 359250555 610909145 891218093 558794435 675701429 130359839 253544947 264413903 658535285 839774327 291382839 626787593 257085431 939697343 962041465 90840753 94109513 935452119 829484039 782763151 449517879 139188395 637464439 492226543 398610265 648519977 617104803 730636201 141433363 114389841 891276977 410801945 938687371 746504225 833212683 259108137 177811633 860894373 478568549 304315713 5411389 108927213 843564735 980095581 853079473 166880535 879576411 618142203 556023891 409716803 551633347 482923805 94593077 801908125 191395023 457949525 399909165 384546645 303327641 248602039 983233503 120562597 114583687 704734691 574117039 471196113 496603205 839329533 99568337 846979363 562423493 395093687 16331579 365243885 666226243 671398467 554232749 802564745 933068871 228242787 888439729 620495961 255387803 447338331 65340823 290492103 995884629 334546425 652218741 804024903 675377357 779638933 897629229 477524819 542256299 637385483 299385449 217915243 95207643 87034563 40856469 381839899 10361743 55124395 955368685 6466547 927276357 155868473 47157359 249720721 203715009 1705323 337375717 181593751 959550737 843409865 520500189 897004715 907506309 562355805 798608049 682537091 198538685 637455043 51158913 176505047 335066011 211228949 600103733 591668587 592029005 594274041 586573181 106353673 124474183 383310497 883513811 291657091 741053507 469537727 989682805 311003315 739852361 848752277 374730603 66068859 546419105 550461671 242712969 827116999 577719267 890429699 615799137 411570311 669767913 998663873 642032729 290422453 387337177 444652671 289849751 528009301 25648157 844083745 688209675 882896241 585953899 247467543 90033263 619417883 710873023 263840855 579353663 465533037 100193371 181392735 776061127 718896011 332816591 227552567 370187031 337555099 162280685 978617449 53802503 197790419 883488979 519379217 28170551 332627821 661691873 794305993 736182797 975163561 930894793 379222199 63157949 316009683 202165627 309142669 504511805 901628733 86848053 785579903 207518287 806140225 361351291 159533641 108425337 973807937 69267737 863660341 583614219 328803241 774235171 666137361 752246049 952017385 499234295 529157681 977518743 129376635 98666039 115281779 186074393 355886307 515497169 84500287 606418707 315598507 896849143 684444293 627765953 116165733 826069033 103386551 371614499 838916523 109415719 829524437 420070653 232234273 933146879 234474341 415717861 581080941 795311623 981600631 474125615 901577285 179883737 148037281 149801213 568434531 843887449 2124799 210068791 989265799 77740469 117523001 903499919 627874173 257118561 547632251 665489275 129867543 71886361 348009343 387385147 91734063 500818143 554037377 886170839 42380713 387147011 105778247 168810529 436536939 966161687 332017183 159616177 468114539 506619895 340661985 52487911 320919971 385762761 968046571 269960427 429062419 98763511 512480801 998850479 328022983 285669687 650354931 396788199 119586769 994169477 705567063 500346647 509756747 551268389 479337165 588004997 7920473 672872355 447108695 134850627 715539233 889676243 873795975 891630121 959509721 456704467 181288819 765679831 781829307 152669701 949852599 212043445 419095559 864187157 338075003 868707571 919996939 134561017 348242539 240662665 826309909 736781807 351437249 610942263 887102849 876045687 703951673 941436041 987134129 527714655 426030105 652818121 240088081 339369659 270597169 288278549 8387601 592931561 981102293 816737097 190781741 151975051 834845155 85186321 30624997 500058767 64200389 681823451 711689925 851395881 789644645 662024159 366073183 80983251 22281019 502615069 351847245 41312597 427141703 684310367 860895795 820038327 933329931 838252597 719092665 365568593 735607449 88490229 893133457 745374141 660788103 534262465 421913973 785372641 774718193 142675587 186584107 504102375 8193663 610075623 714658425 280034885 838556767 138760297 845058867 260350389 178002501 338890311 16717107 361645631 377006707 652624267 471490653 936444461 273907373 560175875 611321495 51250963 878883139 615888201 876985049 203849933 787469321 985994175 416161815 259830401 253305695 42004361 161712217 418912155 270362409 750543513 315771301 786577101 658360281 459298985 348254991 664230165 736805217 760668213 365565361 904548535 500687425 762785675 522268591 984915007 756120705 933521335 681066801 367837569 318471853 762423699 208474473 522297499 300993245 38441151 199225747 921447663 422452141 456851619 163140079 768130089 763255621 805338479 230270153 512898369 732390483 157865243 36032373 544206191 115409165 223638121 702221641 676072761 210477105 594973663 605952681 273342317 549607429 661820111 231996417 104875035 848330071 824041553 12178113 546436003 266444417 648489029 975202405 217172905 447271515 434764369 962189679 26113047 794366801 254077673 734114919 970965025 216242253 422180931 153892577 867295559 284681673 467360097 337782903 323719241 113188031 995460873 143456717 584088631 55598521 531755725 881851275 21413731 701756867 302319619 327435107 709547113 492864885 31489231 994807057 887955759 52013035 450215701 616552277 353152991 706427341 824606089 203078909 45087727 651052105 369940641 186284503 710878491 129541653 858704285 520945087 786351207 949864047 930220423 41292185 109895455 164528157 658208813 586302029 156517335 486102639 142399785 439288781 191802219 195388985 41468637 328430613 711431681 6912731 893954413 80112677 568156677 342617913 902579147 228489995 8351017 14192325 876058289 757898453 377104747 304520305 103179165 963056545 702747663 621620671 415973337 683725453 118307491 807455155 283435891 614603975 204811767 176842715 63071813 878928511 535731499 592875343 762221807 833778161 854742177 633120683 164339673 655767135 563291399 182167575 935020083 255741713 794227279 453641281 708437751 398505563 287379641 554501471 600421347 98949273 74453957 699978543 127648895 296723753 120790851 842771193 7051037 201664889 210833987 524728967 345475029 921562619 863677989 481438005 704638855 308865319 936906637 339528923 256106715 184019071 684604773 447952101 760336705 618694033 401983459 667402559 255803377 82388203 177223555 318997853 751483627 443286315 413125639 776641345 516213755 192284143 55676287 186393711 762948523 15105765 407985981 65813749 892934745 479293629 324560605 82475627 520427299 752230451 821834053 788161261 282855151 788370697 38216607 143564323 178810225 129982729 950149219 438692411 942755871 843436291 380622409 953475307 736440633 79463891 912860501 307341425 805109449 51039069 684461017 870543509 778149791 127903113 514868579 393034147 298949201 748734281 862098897 194086769 307893827 942834073 69672009 170678879 265884825 51868283 191513143 987955795 303700295 232911865 890004047 435700153 549662723 26254627 344574347 13941899 372447565 28009239 19658289 965517637 691103597 528449011 938670797 223026667 434008951 473399269 8401717 282840337 577413695 143046687 309637507 231018697 824335207 61247449 502634779 473186225 276744791 323189589 868316075 924950001 194998593 534523617 730320423 974846519 684953625 9713099 884201417 738594491 640061347 764721521 660104985 307529783 509433447 715151923 135054559 767231219 419991987 538659451 174898995 707344831 542144161 849180091 510309487 705694961 394692369 290640239 423143481 703647589 504467115 443072537 159558267 926216577 96054751 157560897 390668907 432454199 895902949 257983869 266142597 491188731 621752511 287458149 335377037 912090569 254344243 353291417 890405519 448723499 707586771 541971399 643510239 843459119 96022519 541764257 870127897 605927017 163105215 76105439 370686499 436865527 299587091 149818693 469737257 641489793 439118753 879422107 435642781 548851767 963181287 764806327 303997245 442755787 187007263 346839919 56464653 578175101 355255637 239626665 399133273 197482005 683881305 422676045 383069111 82030303 677684929 389576527 919227903 759337393 270039537 797062311 282720091 761724907 382082317 817772377 107530289 582369395 932223753 228939373 158803003 417928375 907971227 664332793 472731505 616957355 3141955 850800149 108563739 605158097 95315019 858838497 388136129 663087917 394833859 320278669 469631803 58065999 56248705 508225605 525420963 130618187 885696039 536062791 37282909 353728447 804052511 380456149 861346327 340498133 115499157 203217465 427038405 240466999 579092613 535575491 213229731 569677085 88737709 586695633 288798005 798803781 869931927 88250819 82836549 678430199 750266513 663695619 711535851 109100287 124801205 117249029 264404609 343847859 255469795 421582145 154742189 306523637 897336259 398662203 269366619 73861413 256133829 633772155 61871549 787029303 280178979 572173463 85864785 984258975 545169627 766561063 377149915 542295131 883729333 759721419 541105511 435087601 534813763 791070771 46037321 128562033 222683869 773763851 372994333 549483375 463999139 486316307 762524105 172537609 847213693 737441287 557847673 492643305 345767963 565606327 318055327 19621433 934686965 438497523 317296123 183280049 430615885 377431187 86747021 772097681 728765225 146217597 204094627 994348187 134798683 230054555 167382227 140745249 964245113 328606683 780683255 589951225 492675559 100350781 977172787 921920895 80214731 641106621 69055477 945736603 254891283 319962219 953342191 532603323 213516413 178207575 522886433 892494805 19144067 415945883 154853579 428928103 393907825 603272793 604961917 185080695 308709463 854215355 970758153 843528083 157971467 900549365 811589515 555102933 450110255 808369727 395750505 147101141 466032941 389134557 238732365 350246591 41771569 946587415 994516525 657609789 393621047 280352835 592149827 790884487 336070143 831619513 409761303 233547869 180819981 823240667 271642483 554058243 763445175 337162515 391248235 117065799 766020625 801425621 647169629 65297791 881815805 595006105 139246569 410704013 137374755 73807587 276203009 132157907 805241333 836370493 750811605 883371585 851392167 959717945 662452963 388193355 9991997 380619377 376400367 628250357 973656703 709960583 217428485 704021183 5245435 406599205 636900219 314337977 272581899 830921215 638301417 759693693 440864207 410514125 817307705 618812963 302008879 244951891 761014673 840401751 612799707 589697627 37321835 459305539 191516749 730630071 136130687 812086689 993155521 95704897 520086741 172715179 365044805 141605851 39559349 633865259 237397925 278244463 449796279 339575149 24235899 223676145 65358261 610343241 645910565 364704089 476130771 738904347 220509135 888537771 592403327 775986123 278083943 513371121 449629293 146722503 373710245 846973245 651174551 586270981 255594507 784167593 523408197 763893251 526878175 244251479 743664641 585298633 898744115 581161073 516865951 489576673 507936733 691015723 863370043 177275751 393957505 767234237 666859835 134830579 59242371 749955435 436190793 664189873 742100503 269045631 418509915 422627915 668618035 998625099 709371309 319123195 858322583 896672553 960238019 753463165 795451853 967940731 411200617 206173461 660802853 332523181 682754227 630666135 781749941 647338029 342046207 103700563 166720863 926543227 153006831 913853741 49218509 582862869 525395055 549153159 775381355 386097031 380893367 569579857 805636469 960579171 967565887 649629697 842405353 703736643 150505165 17973141 281047697 846520777 543299693 684578707 480895483 920183711 329621109 522377227 532914305 596520313 867522175 581971603 514155331 911744017 937910127 820549957 907924777 903615271 255983219 89144781 439668197 622622855 657712637 679419479 907726059 107387139 235814093 828448919 654978175 655975797 367790307 55209167 285249703 414928319 508286607 831718595 674584631 868334027 348650339 83900097 396762563 935303309 865918267 818664609 479853227 404895999 882664251 545566399 858357787 859286305 957355729 744613637 975963137 70371071 294364337 685889501 70386199 415106987 458883543 761491775 948827353 129429567 340382855 904593833 590842517 910898397 334757197 509466401 689514069 932775855 333954557 714754615 408898295 448151529 654829235 410163457 486835737 317055685 133368021 359203355 550414113 201130627 877963789 426281899 209860675 872466287 227768659 365352035 676407669 83311835 752682975 921483893 236478841 617989665 351310391 863615139 696244949 570507683 992163111 769595185 361616603 62400461 80753859 34566895 919189153 984108047 324253545 317218863 291396105 283823075 159395515 868513237 31720637 335486927 797012647 656970307 759285545 718202969 736077919 390495337 885356425 157986069 217057121 703082685 512035549 776085405 649017459 968033855 116571625 548916371 940756637 242167665 104157251 547800227 117931063 464064869 836610367 129398653 340899291 791305393 626644223 53321435 40826221 972344433 237871469 464171905 749756699 263993163 837839669 723803193 438805081 701953137 636789459 215024341 193023713 824070807 73084805 792219441 536231867 139465977 819911251 448233003 493515825 237377635 655346959 191855791 430381269 321580573 953654099 374805171 237193865 738157313 421810041 707245611 116851563 859799659 260619183 725761565 198124013 811231045 83487973 524944277 103258047 209185529 879416271 330815649 753219295 628020863 583614449 582283613 262124175 994315093 737496209 157803243 805393503 479853187 578922433 345643127 620665635 926815637 660252505 637639217 406622195 896297379 111037945 581536851 690182967 91809353 103571977 449576995 906641819 168008877 22367929 117465319 595579153 566138497 637579521 206821107 621373399 957931769 147204769 82641569 910216561 561088467 537743653 499566419 95424427 752230997 691185367 362556533 876620187 626815565 648126421 391726199 123235995 648914707 43722493 678463445 480526159 722219653 656923893 952290319 433635493 874891271 508498225 491627697 529285839 698280843 286843623 859985487 282815053 539346563 596240919 52692863 570714847 511445231 978531467 531749349 587772565 702649431 651073235 963828013 579226305 108843207 584657221 655796743 494885631 942071253 635409155 243507503 26490419 699052963 322371831 703306853 86719883 241005011 954379469 180247925 803232123 590314131 301675521 847618353 182344895 31732637 338808529 758707317 408637275 855536941 52140871 702817055 430452121 142760201 376035377 911683357 617907473 566171009 737669675 485334367 75676575 486444137 535883409 291037409 127012453 453788193 289457293 173823395 762573519 559203981 483267087 74952625 621050771 595063837 953149137 166913567 574419373 943407305 566565713 737225219 346515297 931696395 95285719 204255617 839106875 397841645 694481269 343848133 566358801 923238139 849373955 51345151 696571643 87722827 80795681 391189867 647305825 475577983 1702455 948870729 964807407 693910201 530673525 184306663 160782231 295617193 522156499 961311123 313082777 731119747 901568531 936271529 770658677 206332169 535152827 554789261 564727289 736477825 441082141 297847973 839950139 670055861 320957009 401565545 628618133 76422399 499801655 72025421 86814379 68347709 550443637 358226137 733230187 617740501 952339327 488344723 522901513 729861299 831068043 588722703 331249919 147017551 513764763 62665449 916495381 550165929 560127093 904961471 837359701 178051653 157420971 66602815 422326289 845118001 655370899 628722969 725086699 138724355 228369233 498843913 977221569 304952029 751102921 437825489 830422981 46661985 80102575 419188793 198989671 319785663 76117113 868739093 709923427 58056109 138720871 919054145 913486785 497281385 494043011 960889499 915163851 773568185 379213723 461517585 180703765 523892973 414740555 952318099 111368317 595659481 725167087 17932573 480529957 976193501 129968817 181623729 331467129 808799965 348389249 882511191 552455729 55969099 286757657 20075555 509414981 501278745 543690999 222777905 960472315 335467209 958315621 105076383 784988127 673470047 546067313 267492507 683736517 669179497 300401141 558160471 261723083 725354493 924576913 643074569 655403091 302732477 305979309 61928185 71728651 108691915 259704441 331099245 875017447 158409431 760921071 817401019 725858081 924454679 487217101 416234041 820701249 831683657 515552155 245737549 373664271 396410291 69667755 65822303 366182307 459930405 81067029 487343841 45015639 731565555 384581561 980123727 785884879 75138045 741281087 500292139 445693947 755390121 221117975 535033853 707755017 529483235 193874297 591160921 723527035 100653861 874548581 400151003 796219923 182587497 441818535 824021025 840642523 130276665 771982539 42032345 427221547 361528739 974480681 847570613 113000607 384724793 68002277 153704557 488960537 46110751 852765155 911505346 373273541 79027703 719750871 804997253 98549273 426825969 341547575 331954049 332054993 569842371 55005251 686853013 225028849 101862315 811329797 34235551 924853701 279362417 613911373 566531213 145754081 185251423 572569011 262822993 86763299 482766929 930578325 521791715 961935533 30482337 119351837 770447429 750949869 515647029 879975741 842904709 791467925 342307455 521181355 940752561 899700899 642948211 382324455 924426215 683540829 920486541 256666171 32028231 9273419 524031191 555604405 921993723 826032451 929587167 65198639 523104309 624430691 770573751 543423305 983236657 719982351 526396675 85959787 258063409 157758705 47422949 669029319 713927805 965684477 198569229 944154449 755394667 838022259 164031153 996517325 447998289 215265235 772592529 294822851 902440853 428620269 300723183 702090881 84083615 47568595 146098845 245785377 843965153 287924961 130553327 779633539 730623703 674813373 125958853 722075471 109184003 276310865 904095621 792862965 460904687 635747027 948714781 495916205 46951211 235837887 912363521 506845561 244983381 621869783 905729843 417925663 479997709 693588267 858607415 534498865 931204605 856026381 433940765 833578247 48939735 478119707 463807863 398467777 168819543 970756407 917383017 713157959 205161535 476144013 665430933 931881287 851305049 607755669 198862635 601509695 309109621 724475143 616771811 435914857 995992945 772317929 818522615 287613393 166131501 708166791 52011823 366333255 423238035 305702005 184773083 910422627 825172117 116586385 98858705 129970563 758207535 684375549 64347501 899661521 244833635 579419687 232013463 348469567 174522171 490654147 229952443 712042883 135367111 291802827 847348691 488686365 310328101 994233989 430227547 726337367 770359413 543756415 306697305 605708865 89691873 460271497 697339739 941432753 328855707 526523587 233510009 929539657 662989793 279720081 928857425 710033011 307033071 850440605 436301063 931700059 249160213 793999837 572096333 80720893 154701475 638884235 788435285 327069719 87464945 283624495 207228127 872579891 675396965 125568403 400237363 429774239 382282343 563482315 483078685 572731253 599640427 365787955 405063923 714861461 462754025 978333041 759053717 158655655 518538853 672744047 246626665 305303067 558976361 857027683 23372381 712722219 552038533 35273 552448999 661190613 910440535 845099109 573952005 981121505 758787199 649127491 371052605 615791073 261611687 203819703 957696669 383648813 255563139 68519263 128003773 807260133 642881995 175336221 874453179 857617905 910047043 549782303 675613755 919687681 990807987 558330327 65395055 857695117 762563569 672434179 700694025 823913687 479640789 350680999 488594505 650562021 450447937 65713937 817309687 628636041 187886111 381531601 801006431 861320283 490476899 217475527 459725401 740048313 26831109 858527765 922603841 16782543 192575753 249321001 834435071 93635467 520398199 343450807 742290689 219068837 12389733 217006265 928977981 80255901 45350379 652984439 644928047 329239485 462381355 736862329 845119715 421754133 258364239 403047575 875685089 675654267 333577099 15784171 985020995 420590995 92698903 44668123 513554343 965036993 43702327 576935953 672522035 855924023 690887989 15015811 736730515 561029103 84284769 515590765 857782527 591773865 700835353 621909331 686161975 126660585 415954877 613404929 130328445 241124613 850387129 720820107 848320933 933214481 31907963 869272397 260068095 217941487 179208323 288068589 958877293 890040135 324159823 387856725 439763541 854465931 56395113 21537981 587556261 923854575 934541927 222222749 586212563 977261687 936635361 238645435 639073501 948518123 812970105 716126499 273767499 419301849 217093849 396589865 837924391 500391067 477707445 878419307 130776331 864582993 352155589 207255499 962490901 89225187 882593485 22700663 19162603 389851905 224565399 525059809 616957369 901280037 152307957 362032841 715375673 177722251 111390145 761091887 997087397 65874753 10631645 788137825 243871175 439703571 529353779 150334965 965559531 669472667 809946807 589392325 516313833 444648503 17448289 364460279 893264669 878252563 253637941 68031989 726797935 593849885 496858429 591427187 398493773 457817869 546327947 11487345 770663853 895322725 137799225 9781041 432804877 593968491 735236201 63853629 102829171 198843953 712841541 384232045 775671407 991299213 663931649 69021403 433992981 625274659 219594199 840485357 43800069 5931607 253565703 402231375 863513701 612691293 640851421 109077491 40998881 663501099 431316649 156722967 743652275 289659777 443966921 751443773 293274005 947804649 316576413 530614325 188881105 390309043 699964561 722124051 293424435 750301685 941547541 182505263 365818899 324247185 685005731 126244657 813545295 149595441 426192575 746947077 517893707 97106753 703481587 538234333 1277687 584394749 28808913 694361399 977786057 405551971 66414835 595956183 251028415 263721789 609570043 830218699 591184735 419301913 417568405 901813859 767491513 508831825 201566319 870230335 553622625 304105733 40035657 735906113 708140919 129952541 379091169 991362455 506928289 13823563 371159299 997514421 406286347 4401155 59042433 29521749 776556399 710524041 624364597 170796927 391417609 852858339 880975873 697402235 334235807 125268197 67215823 856264929 305276543 621365795 827906707 505042827 122475649 435749117 593959239 659127967 850372353 307045535 231621611 994931591 867451879 806876407 692632203 846190841 213518241 686672831 494634041 797349873 351564837 141772659 441989135 535625905 390315507 223816289 581279791 324774857 850610957 625025939 973074117 345572619 447884805 997866983 422065921 558932117 19984623 225375483 927911453 54654407 513097835 226256437 477814877 241259091 227963551 367885769 520438795 960944937 365364793 887197101 53933689 741203335 811525997 144094371 731803393 948801521 734005501 86898481 178071047 747959603 416672045 669627561 533469169 547646307 474845899 219087393 191300661 161260249 307524655 417624955 136136269 621211453 37253687 113681505 516631225 910195835 570312007 747252031 253973509 146060231 380655183 603271249 721491907 52466843 406805445 336912023 328825741 40599997 797472935 955543765 211464197 162328635 466528125 921655969 848852439 599802469 738612051 330056527 660745907 563600603 847362239 800917761 956656723 612564353 856188129 859899297 893895549 423264897 220689503 667054043 509011191 20309839 446639719 47923243 621353109 790470059 622089133 701058511 511217713 241082517 360763763 939681743 287143597 928202589 333251197 66827261 721556725 970413717 740322843 516078579 869676281 728980761 818946849 753357323 932071091 938166031 683026669 338488947 682812713 154780897 392283753 939669531 762243425 908631109 269964543 620876215 369704303 221065015 428721063 908040395 446122349 572487931 861120991 78695069 8268413 977077533 188036783 710460223 195159499 680814705 990973347 412966025 916693383 757557269 822124497 155634971 219648493 336995435 264758489 268055901 457430077 886897695 865622497 580884095 930424771 999260457 882106519 70545273 38546641 66950593 687134769 743930379 110607297 766450541 187741293 386058689 124285431 837912569 959163537 495991525 924252889 204508281 801517675 906553749 664581341 934125643 63817043 838404271 302895741 379677203 900101415 951978713 660215099 540928697 492061515 318889863 856128159 932909175 948615087 624670191 615023421 338543045 172007371 892110865 527507887 657490539 203271577 999420343 137121687 330792561 240140451 464850289 282653345 792738095 282967797 643002773 324658045 745855039 823986725 243901253 960433895 731810951 914303059 128384363 177502879 962894129 452013349 88221107 935092851 31313587 312450249 523213721 38281521 580400583 391668981 493621083 954843061 630731381 568691687 426197251 323467745 425396999 580455269 153885023 54633377 370682129 843923391 963881739 463242213 38252143 348854473 304472419 399680937 605320263 806104289 31356817 806489837 85107717 470999537 448374661 401909695 188909659 916021859 989326073 277972781 373368903 94737455 752156779 673316435 523097101 917123029 294754339 550965587 554723385 253016409 225485619 922183257 894038687 953561929 451734643 583879317 362508125 738092987 423882115 683995459 932291029 462218063 832084939 150368421 221205429 586473515 475760507 848915203 716305903 664214781 341901963 879709617 892542401 888570363 234095037 685213705 262949295 146016227 888323991 887413871 213233799 933878523 123931499 767265611 76513881 637043219 493373521 67531279 82373509 48927615 565835817 306550839 117931951 905390623 827487897 926539843 685999297 634120279 195259925 720984767 735764975 213873433 507390675 825420607 78910137 946857175 692527061 770376537 152111073 570758803 147468769 350678451 9368689 362117839 667237001 37334771 623777985 70680735 132732195 120565969 522322283 673847955 334703571 937166081 741970005 87651791 602077821 260651083 374042025 394618613 31097301 694608757 134017757 721109811 649985105 827521621 786013613 137552707 848763697 538813121 852304669 379894369 814136703 446482333 284781689 708021077 990935305 638763989 581900885 285566825 718862699 896941403 43413389 501060985 604888833 667455013 102502983 538960093 518196725 255129915 667803887 920272513 97692983 912363427 116525879 626888143 414958977 560172915 81485597 980866497 923794513 262501057 29926373 376539601 353670897 417872563 206904605 691227913 492749679 222798961 33826197 452982007 945570725 996965933 709974125 706167981 700967987 78231587 697474567 310196175 167089537 423039891 824317713 81563007 450464959 262570955 291075965 905663853 869505255 923324185 816711051 346929871 924487607 690889177 662171323 542057315 437514935 121660271 578327261 472577135 585345081 348345155 505046273 489491395 50182741 767226311 769501831 241342643 586867691 951076727 218643475 403662111 956782499 596152789 526630031 803401325 508349165 232943721 902354993 142654601 195302657 672873929 105222517 683145453 610102239 41481355 669757981 350570387 886310739 451731541 208647737 299806213 789855209 27356367 648913179 840135759 762803193 322117803 744475743 726424073 288251047 518625445 284343019 763389265 737000151 950863487 439152105 742460875 403129917 580996097 175866833 259709351 69545551 986326015 562748763 73717915 910156111 854502229 415859853 202741989 675373889 792484323 574109107 640756811 510609659 808056211 406167137 636073245 946160403 71843159 385588851 308996401 327841511 307801131 259606289 206081251 195124129 84081169 27583905 752388633 961768755 207889681 310260957 203602245 106226003 611468353 917277629 754439257 612540033 276942007 17368199 676137431 312845063 473152665 799585223 477135811 876489203 32003599 148514643 604299947 574102559 774068811 484274501 483179175 919738155 764904073 752704257 662706261 469947007 69270283 126315573 862748633 137075277 867121689 924915669 853008867 940690057 453117705 527502619 14325929 939278839 512294705 882987663 423296745 617981727 720799991 878913273 38818539 297507151 334292163 166881905 729098619 991504289 252956169 850926417 244055279 176668661 442633793 824248127 139566119 310522355 963495407 507954213 612565897 908695563 821111707 308338489 286458881 265992309 382260955 603908599 739642889 256621619 878306629 737063203 291316381 709445131 614199679 464959945 49408067 515272591 492675633 965623357 809820681 383281175 499019533 222941467 791982215 141273027 816209873 642508361 828221147 917102203 63532345 179590643 289592233 25319661 237466133 457809291 487467553 511286679 360282163 996578511 985928441 758369203 405570417 915429059 257311089 882120781 348364975 512069811 467450955 590725429 487575767 181928757 161498841 552815619 50394587 281216291 459836401 884015381 555634617 995015841 197339375 191252631 931432301 154170909 815508153 483554165 346008583 399195977 574211777 447027307 900415895 86666787 220406779 187127543 874185269 538978801 211120101 266680419 467714823 745557051 973355909 251960511 929979189 139466713 773726825 693470177 412383475 145999333 157002153 906256491 906760313 760999107 603952355 407197895 381272843 435226401 622437691 291217953 777804785 643575539 533900385 62542197 852436865 793239157 965428109 189797505 775101971 931256619 979372665 446080207 749777159 61907167 451174511 54032045 483309005 277273257 852491067 513814069 375458513 386474981 283678259 396946503 661053073 273242419 202422583 91921803 515885199 637614981 249827245 17630065 977377365 749296395 294556547 613200179 692043891 476796483 352417839 144620239 44284295 961620721 677927853 425772045 338938673 762047265 975076233 587847039 620046619 683194407 386990539 311635325 848772601 334621087 50112013 853843239 696328323 844749935 958852205 564844389 62180477 335889347 492095119 383948775 304622001 296231439 345796261 74981413 215171311 633690637 702051937 249081441 113544981 831961539 807355395 888338081 771740675 818993021 500237139 686396855 373215651 414320849 891538589 419741755 687644393 226460569 106482617 712881035 998966989 564770041 327728899 709469395 768853331 690176095 273021027 875836929 168624261 860918397 752483909 364601037 171160947 411558483 449994915 528951223 477775675 160430113 363128825 714472713 346850301 782393975 461225037 927111635 234596323 128959271 214629423 276960491 684075041 913933901 343615923 910374901 621628911 468733775 567946105 543187029 969779089 677939671 463783333 123805759 76236113 48939739 327168745 732589479 194182273 573097879 286883703 50943315 313741947 47441549 772325393 498826693 33751969 495409805 30847225 366536275 584747613 437193129 467621633 305092625 697619491 796155455 663573119 528339681 906426475 654853617 348033615 28085355 54020025 169090731 419585753 993110305 7252119 250142627 466187 413682487 775054485 340226645 993687387 936542129 376925521 41024389 194851527 970685783 522144107 148111423 89437141 2633655 382113679 443363033 766640021 332738603 454870891 715055083 298884763 968604371 624632511 340470111 92303879 661841303 819227209 196026715 255961725 538077479 802523347 631854937 465937199 639962109 296333363 660357393 432835279 363779413 1145921 311277963 689100959 558903869 519607775 16332815 164902243 119596161 632209911 836305205 320040041 838016443 68421757 891772375 235451529 521041481 957607275 193783833 117890335 335846487 450240961 212509289 824705299 199568083 20614283 491839611 709250515 261120629 241242073 48431179 532432469 177021119 494959049 636810011 11849239 381427959 481316219 296039035 909717535 850452271 378340891 152546621 399267837 325072701 489547735 184161917 118700229 982660037 136062703 755965601 919403543 450642731 672422561 420057171 481581337 338076323 595276857 405504393 212870519 317410083 720163849 974934655 77317739 104764523 683011691 327909561 376859055 683701765 697708225 69361667 591744141 481826881 168661109 675511153 598394065 996179765 614090747 174705249 389048787 398791619 853030347 614107509 506039663 539951765 760380777 517342105 42055437 484531479 210626655 695460613 206821533 160349829 419250495 285817905 953601425 486029533 8979107 293437667 962201065 245168617 985033773 708700455 593198379 816477751 246963081 728840787 314455399 467784225 37641575 155994113 166974001 882253511 693130369 664552213 595858345 766937361 44129435 578239677 448700789 561860785 379845503 268970859 272277953 635811611 206480895 911973343 260297799 577646739 499922677 505733145 150339905 709221153 180967491 186546793 59363961 688051091 603647445 57082465 944610877 302786179 301240987 259580893 427640415 232792399 823050127 614568961 813073219 670864675 633390773 291743803 476530891 995085805 500670487 849511743 381445991 894077799 221862087 359681545 703606029 122755085 419110879 944873693 535011387 259951661 888493953 936965191 265893625 232352465 960415705 176248859 60084691 796228311 414240791 650569845 418663135 818624989 272844661 285734075 244193469 830293833 235289657 25911959 840597907 322749775 554157225 973002497 52811789 353893349 540727321 357712689 977015397 627076557 116785123 914725805 210397527 529098637 908256361 693861185 902645033 894395511 386186773 467069441 541832361 700382113 60841051 257565259 481910831 354662637 996429493 495546305 742880919 230687237 762052515 642651217 613002315 78943061 419603889 968970541 370822197 210025241 155483249 710523347 168523981 855998545 788422013 117986057 489680657 216444865 423520633 46064087 96307081 379098367 800309003 615042197 663217985 146004319 834628073 237510109 602048719 2197763 841344461 63446419 687049043 648317909 393960823 198912485 567599987 913324673 442534323 677494855 519297629 41475971 249930835 675110515 898497221 952954905 852169009 942104945 993261037 556572491 614518575 913731211 415837849 756861165 235650873 632269397 256693785 539492499 415872831 504676779 549803327 30524063 580895037 307355313 253593967 996788537 208138291 331210199 378866059 641853777 906541 639479501 542565125 845712799 159924285 350803345 935994575 297484709 26793853 660857703 517941353 46827689 29306385 492407769 796562139 734836925 496694047 609045953 397575089 155416505 701514973 653772853 768268289 375777341 133426053 872837021 906133355 622336177 783237207 129773221 166672149 470477893 102334623 605376319 830669485 317268977 506986673 399905193 800033127 639563637 970329827 815784295 882897669 824584797 311699609 791808583 63241419 184624883 820639039 474485593 618921609 142127957 335287109 233747453 57901971 639431265 514897189 1565909 238583753 978188989 567903333 58772175 733426831 52776925 271758987 814062111 226419669 834658551 719664683 776135487 263209745 840171019 627385311 234878453 833240643 637457635 140977995 817873999 345577199 469893647 312214549 949066655 976139043 844044261 669880053 37547905 271800949 530533767 395919519 366514905 313156357 872556511 934691547 433342677 771977337 93590681 477393263 130659817 473210623 274685233 818569007 885463249 93669965 266830821 699970293 633060753 21553825 208513215 469301925 472527987 459688385 576946829 809991205 445963535 562584571 477645803 22569067 234333505 601795367 14833205 827147377 311183915 45667235 960991893 757638713 180144441 979233109 588657403 526988747 757456673 282905769 121986849 815099451 44301535 979958679 871941509 590765731 463048887 942468255 536095343 2262823 646243125 345590211 291715825 28617199 961215023 61323669 185287139 971242029 933730237 792241707 103815397 65675035 627548487 780641825 424648543 427902719 772651641 326444959 707526529 416784415 621235269 950590291 534628675 288264655 159747563 219649395 199339879 517224299 374238187 478259901 561537139 485388625 695682835 298928503 79040953 164809711 576153465 4663921 638891601 557573301 634368375 566823423 964665883 809022751 312920241 969198849 303861437 700695469 372538645 571730907 781912747 706683117 553271255 84690815 400308251 282076269 839201907 937655903 432504847 383424457 454323627 696618875 277065037 794829733 728185999 676931419 221387623 990501545 179754353 955010315 284794803 193187463 260580077 213245219 191674965 701846267 87573223 852608703 584343857 380422341 494722959 30798983 729454331 497412787 816482389 362433961 234129961 254157459 229389559 694408411 140798971 924297281 238063735 851501403 483002235 355531937 569927717 708915185 556534903 217473179 277464211 600480231 807621259 335276065 819157663 288431639 843897363 572048175 753589355 110051295 243332921 438749893 469325411 860514853 943538413 518266865 527672895 247915605 374627817 292824257 746927095 272124265 828115883 238830417 269477073 90520795 37265277 930310853 808157273 734930869 218276717 233773637 605096293 919808387 934936405 459926019 135326989 575010141 106421717 705165883 461200315 673841887 313810773 19432495 735811605 126985521 604354821 613746983 592622613 118460929 170750431 773120375 826078195 193493125 49136033 751413115 859321655 650731645 711096275 656310929 960316329 977106219 192115911 953733159 128690785 898022497 750492821 278581935 263359161 423758707 40594461 621328545 267703125 535969857 261149703 594656639 265788197 760401967 980912067 418225367 678214743 492175151 658477193 526584119 611044205 460633267 707576923 218370363 257426985 892620477 30619391 188680327 638019223 434504401 596811015 607723715 767751691 919419133 589260489 972584097 749213729 662774489 351968617 80284893 972648383 832684673 956955083 52095289 596822031 734940063 131068323 476823933 187576199 875905629 777929319 737755263 742883555 941222003 612640345 857126677 261317671 243718175 250064767 623438117 953279903 665628967 100252329 921783959 303841503 793888731 663096947 328290397 841080261 489804815 632820793 446169459 629441395 192767523 7508773 870565851 164858199 441468413 782318889 898988445 995096611 210938379 559467515 1237455 269948117 916419649 908042779 322614151 58933171 769185569 385244627 241359595 234150213 225902767 51265585 895329315 304775521 769952121 771121167 830909027 823436837 899935127 629656333 155048163 589638389 460253605 255169171 965725157 308800379 726744013 666063571 297373111 247724715 921917625 11190721 9984423 557432261 400722593 446468129 327842067 764948809 929531459 155763835 923136601 971792391 318505447 814147613 163658729 294426129 471594583 827742241 281988399 147138499 557719023 473675879 428259753 2497219 354240393 537968279 159188441 572802811 198955405 173335841 273595975 190365601 562612455 335159869 682003081 99280433 866743825 710003949 469674549 455415149 950240775 588229623 180698609 643683941 380708175 861306093 353548901 825772907 769709815 525718823 872161605 613732637 286356375 651806917 290732105 410931549 151558733 262427055 849493045 800341591 264793021 61746323 95913937 310965123 263738647 143621615 819400947 102023833 766023441 15888125 119647601 632663711 678908649 970512585 353339953 751955681 594893159 429256995 876027419 818525683 150974935 108559779 67996451 825234611 210070799 395951271 304524609 201972547 174511727 390336091 844855673 885735953 635949789 121487787 934580947 52315345 441102791 337469267 583664485 400354685 384589347 853923025 228658501 861044059 44359533 331439471 549549977 597507577 237779633 248513341 603428745 976849959 678785399 497875985 544034633 758307589 1041113 821835405 995084561 901111543 525998197 521939739 293571109 650073767 224598895 350470887 131582927 106882059 309701495 661116653 95692383 232882525 771707843 924403435 59001907 552404005 524804115 338701931 153789611 707323949 728038313 321324987 170761521 243594377 41555543 805458677 192271415 424033429 913324915 279094009 296466491 652887799 856536793 986383471 454391993 382737561 431748593 42444999 894263105 550726065 405971113 610197819 490732643 334565051 188391541 565021641 138802359 230925179 516580183 757461049 955103203 948126717 696232147 521674525 32703889 8020885 903517945 578122957 863162479 291462113 880046941 663964265 179433275 535432131 848104991 340988633 740519351 115345001 543163619 410573 124865453 57877573 149201369 818622141 248168431 332525077 723726009 7828459 972962133 237262813 72556989 115047261 416786373 135685099 95695535 110920165 265414439 393100751 511945179 362238491 122931823 249881449 637700887 424694109 452513941 2778075 512970949 142012631 957287325 714932883 714333893 235762807 896014225 482599493 993770891 673700341 497739651 319962093 544194827 338833361 189513355 595366349 300114883 323483733 825198799 195783285 176958905 580925585 404494457 348765621 401662333 826830683 186498231 739792813 700708131 374680151 92743881 7485889 897452875 96235753 16541421 306753435 600492057 691185477 97375597 137026609 642872893 244932447 876885919 684735 300010991 171056125 49608411 447259081 120637929 195330465 857680259 804543515 942415989 807839137 893972993 472785865 649442911 229582609 986319817 915250991 958162431 410440147 906904659 721351667 768840753 580436879 15542307 47771137 569653085 729799351 494159299 149257867 597878385 799717759 300373189 394689807 744456163 897587947 342587585 506780753 766909617 550700995 852218461 731388253 40295265 975676821 217730115 732232839 958460675 29567419 562700323 537731181 789093931 713728085 90335159 241940721 520113145 190995275 640694723 21901889 182001425 109340493 192673041 623503823 564868773 489896149 363269491 321344859 60646247 822910239 428664513 847193061 571844249 146184505 415416289 886416061 898752765 529144047 796823997 724548723 292624871 573170651 522498117 684101607 315425831 38352987 830044531 241881405 579348257 787023515 915951691 199404255 433056695 998865801 266783191 789070977 986457 298611677 564938793 595485731 930099965 685315865 541933913 283506951 837671457 794800259 772612751 744704183 179652043 408755245 639433455 471311371 682634123 625482221 31417519 233437727 211726965 463064679 543836167 13161299 369905705 848936959 56660027 994355801 715428811 844477417 166229653 977627425 122065165 287549723 119956839 549763049 640471329 730988373 912622859 890727987 602692041 470001697 363799779 243941327 712586825 983454671 472281177 334628817 959727727 597951605 661694945 425251729 415548307 658171637 590987253 119433655 82588561 638191097 469249045 474441519 119223249 176920301 92689357 425386539 221796929 33431821 330960815 850800425 381301847 473531991 553353813 106898415 293203985 226448021 26811745 528417413 20076279 213433429 45013629 505392705 240277781 879709681 284974173 734396609 857609729 469720713 403806137 538842343 307100123 840274181 53418071 206753249 524576327 405004055 967012349 707752483 975836023 684220467 352250749 194497639 995914527 19335325 147299765 318507189 726479739 467927133 211528327 116903765 469733461 985903169 846420953 87491551 861385209 923631331 28446369 811009581 431571519 294568865 827410391 475996517 689726853 942590375 241876353 709824753 213597103 294475491 955028389 272143751 201157421 656823567 140523351 778400803 205750773 617106087 306890161 76236551 465331333 284217849 392022229 514975427 360156389 576161297 737541869 35293481 664514465 890081223 479261997 573561943 445823183 703726783 459504847 576210861 840180495 258279005 604142099 517576925 559749767 902145749 456758597 194100439 531062243 772865053 708991927 838224601 639775069 672585463 332073155 590881127 980755889 579194857 232560331 135857485 923353381 634789445 195440699 420741281 780459143 361187617 559330435 749900219 43371567 100966495 524629277 66205251 415296761 941346729 925446285 192048677 752500047 143366509 430377309 148524693 186586651 936188385 168498463 330217741 532142037 258918923 556737903 955119699 275860859 520395437 430017771 681313141 131348885 936154461 769455679 648345795 644503853 184658287 741782303 812402397 289991391 292825349 689391941 538078631 566723013 483816969 550209393 117094731 636440711 227488039 872829551 25969981 298681425 8304859 62086673 128147773 979672029 151571555 709849137 684623437 529990247 724363975 287819187 510832055 516614325 977517019 773318013 103107603 41712149 228105523 144802181 455754299 708592479 287918897 8132549 391620181 567237105 539829757 559473981 610532555 253943471 384116359 261284601 404325203 179177225 488022407 744764171 856296937 789261303 917470335 181416335 996179921 549693171 727306933 49758627 964391575 880145157 737808443 422600309 464926479 939206589 123445993 786367541 751138903 715058225 187519327 870710557 307633873 974011901 331525637 707328627 660600617 396848713 198267915 736392573 595370327 954500803 684254825 208594063 15031699 787809951 860428513 900372995 259310435 175741343 901077241 784590139 473097363 431578887 395118337 435570083 597882425 534469287 92641045 160449451 958762925 283392979 595003923 944268239 608909209 598722153 785569441 388345231 154709731 827655635 69041203 393994871 146586565 558242299 236869631 372966169 64195769 386983513 300432901 194380305 166827393 773261549 492675599 707797245 288110123 997715769 207213741 619867531 673612813 615179087 528177717 650532459 379547329 780462789 297325515 972163159 635017005 428562359 465704019 940653845 987690107 281328589 172095359 835031659 525848353 831289141 438353097 239300909 58161115 84173219 789315695 167262773 473000107 387468633 330239611 437972327 833532897 671231005 678256059 366679723 919888143 720216633 292139211 66651379 755463185 762810247 970934535 838360889 663088653 907890277 772538777 785449347 499650671 596996279 119279217 730863063 754900969 126303471 716381513 962287433 40757625 457523967 950737567 436182261 305704803 775530855 284660923 297497849 986995763 690470447 829184687 755050371 576170429 718534627 205420371 517178307 515337247 790306971 386906695 233812725 782168251 128604915 495276787 451668313 965052735 918940947 472767879 541882683 875019421 488309161 686126075 881957871 949684243 835600619 83949329 401507019 745809447 881990039 452804431 50406451 788381601 578681331 803738119 954788499 160708247 677589199 96400977 358937435 412296551 432076415 575132173 419236871 674173877 99739617 418556129 252977945 580452715 338666335 921436481 421488921 347277247 937707491 629811555 897424283 109967403 543700455 324349513 312710715 127273335 390033509 629401273 371768215 313357995 131374567 920691781 2940509 284502559 195176313 72015427 65979453 29896301 982504883 760083159 175919347 688319867 992066993 458973669 392018753 642926451 706022427 526523937 286637039 811666379 502895647 740053505 639658193 731319359 295121523 567820485 89899457 807564243 336732245 572495735 24854947 412229075 388624011 139173861 347404127 673142483 897848933 774646699 910336231 850718127 325571767 15521573 146379319 292465805 685202657 438857853 870602321 209086937 522557897 960384163 1983037 184867141 900410075 561140305 560804367 348256975 203378959 251346693 957669859 968201659 274448357 214128649 761681111 552454039 960191585 508918123 781294105 56086323 212057617 812864261 261948889 972493231 21762061 137889143 353129043 366571885 660271601 662983977 831950025 301860123 280201957 938044235 487825027 440456363 459978391 621347543 792411095 610033757 716093501 698579339 117780251 23310257 456694165 204182255 581508533 846709367 797756391 528013141 196551437 969464255 680573181 149985493 529744789 384921321 820458035 193448527 962342345 794753177 821509987 243117675 679111465 720133049 794808307 698202265 746353475 368027263 724209621 844093969 531217573 59408743 536829563 317432533 712621037 542792755 890198503 483814571 969150137 307598067 282931101 853477413 120294071 127727353 856256939 214239129 159066777 956928481 688724905 241042987 141264663 728608913 496498099 713894079 890533363 745973301 777158513 584528649 409784059 300057919 333594897 579158143 927510269 303405165 298661449 266222435 627778775 58011075 868453721 38412219 662956135 144184717 406543875 646958167 506702747 34530655 449777305 86369235 944538981 314583831 123632367 559550347 132530877 849664471 905823589 540243113 708211621 674991883 625660385 556790047 146547243 232894827 855155919 135576739 764371293 171131375 328117801 174033333 786893401 357635293 805636203 298068127 135364413 536998593 546005403 605880943 654198327 94059889 258293319 460942847 518014585 226372359 270531207 418844399 500552507 561285351 616794359 397631143 769491137 580802239 934973887 742024537 77753683 334588291 568029583 612791033 120976455 564852333 254595737 804731467 582433523 322563589 39513501 335863767 630246845 884592405 587351265 39788267 216360717 542489007 467164981 43061921 349904981 202713653 334790895 79177945 646914321 152590405 711490283 194105659 858482627 728778703 451741071 565726263 554285301 995347975 782634957 652578309 995491383 989599337 17439257 457643943 429988647 619786169 874472815 94502885 502754403 447765251 561903705 92521547 590661787 450853019 779594213 290637879 678206331 510333213 181556903 942083527 855804097 121145967 920788925 30849763 619202863 207960765 751918033 102063161 484657037 723468153 666309133 400978503 947281329 220472417 224068905 650886215 801916787 789476985 747179107 915093317 936976307 779003149 456777347 945089297 688024927 722782899 563454165 560706371 649646697 861272133 196717615 649172537 419544777 53343207 802693105 460448287 183474563 555694087 406500097 516598241 850011041 268085847 411843789 668165691 108784435 246215381 48606281 13446827 60034647 548993223 676656375 826158203 716051501 293512117 273656795 681123259 991945695 511343735 435297413 410623041 509034911 88608295 45442569 691303087 415551401 431913 233969669 390202735 974444863 400697901 268989347 95932845 643888555 494017825 443060365 533648997 609575741 933505607 459223547 548173653 177728595 278869281 672192429 188134919 508674125 508513657 657307877 279751369 49653397 835055719 796162421 996550069 447834015 55386439 545199795 970784171 989756899 278444729 881938043 20710227 47049445 375141807 670358581 319526429 75687469 354775641 384163789 374476611 27544657 452009781 283699389 192471747 36049897 996316679 710977281 645510757 780797591 257552091 863976991 907069627 127191557 103186181 404418599 523507741 308129509 478307873 513785005 449707435 214909429 233208087 955544015 147193421 160003827 359698189 968615735 200876467 359803817 378425469 713659663 500562773 862047981 319500319 302088463 212957045 981906839 453128185 507871607 842737177 102341001 746908247 314587145 414596627 454432941 504586959 692539673 641735675 68451829 969215291 280475255 8624943 882592351 600074943 393612421 768467163 926122473 775558345 602175273 807680237 172148381 687917581 316730065 341672733 355988881 814860677 70030707 235233771 777359325 507192697 283049869 612586913 226711971 910612081 306714917 447863631 680089869 41580613 129953483 710849995 955684687 958198543 886883987 79817913 724272545 170406965 310409499 510898045 194959431 228387169 148016781 265251915 237443467 389304713 436511635 145127191 48535741 214234089 8408167 639786151 767059259 102907651 230157251 123221885 999498085 197496231 91443697 762874607 823268261 68540903 879352765 114864145 684740975 3552289 936764799 853662405 550121019 720153591 291462163 465441971 771973773 691885397 618190305 974185549 543492847 731889521 556083671 791885767 458270451 3958727 31722091 989770789 705802803 760185627 996517019 968021551 416901457 785503355 716120813 558867315 321425143 346867255 119493745 422679371 840718553 735970031 425964987 710940631 551401647 945694341 979825641 838787327 172071741 840207655 676755877 745439603 333406029 295485511 61423129 542453165 194828465 146842531 985437695 287977705 527955779 824226881 599629457 591048757 504304101 869183337 297030297 252153181 181992833 502224819 833174371 617865211 353910283 198627833 124037063 680491117 630324091 155309151 812094241 245647071 498440405 100744531 265013849 237033023 845650723 130363529 623836381 974704965 390762615 85103101 962824611 4833139 674562283 948500721 536477737 679376911 917322657 493174005 957666167 429826347 958921155 879448795 607262999 308239005 185345925 881756607 342702117 81515273 930503455 101353991 362422331 527720659 387122135 150459485 429467263 339526959 866972913 366628535 841825955 350741779 277475525 746320209 164417497 185617471 542195627 981767087 80853475 354459709 636604677 501048221 157757445 832711517 515324479 72087087 662035981 413026229 532442057 621647043 268372307 651615271 109573661 734108667 302706099 93300573 505021631 965658307 97682581 643734211 705658169 171284307 252620775 883440021 442352157 507211811 74151199 818005457 900445189 80156409 95301691 217657665 420027539 648079841 320892099 629647475 439328113 985525297 322481345 785518017 603147603 725600131 830030289 527750731 585223923 243060411 854171149 961292537 552607249 67041543 745696539 924729725 630859897 779726041 815261997 91255627 436592893 538236657 929844213 387626151 610127479 675531599 874079157 281285529 99479753 759198787 156629553 1532655 496066013 125170015 625520567 488040771 511831719 892020351 651812383 344150515 221777441 80999111 35877317 926978091 45453899 572486567 812900499 399564761 286052145 662800333 642847987 229580983 33584101 908075579 536582877 68746561 522253697 359497011 607411407 642350021 711598119 803480385 46765263 592465231 396353027 311885881 742223213 135328439 962163779 202811447 342116543 446478241 475924519 196333217 588749153 336674675 894828525 481263905 151301497 412234843 10866145 545360047 543747001 831443029 884932949 778491011 620600405 738098721 176039843 207598883 484773385 306030661 143124269 320573275 516299039 858454547 605408351 520949567 455135845 310197409 164976809 765958957 264191023 945442259 850979717 934555335 304533851 565034829 159994233 166123515 477795921 140623235 722735371 47541755 944874495 620340905 109337551 888747589 870731997 785624005 454740319 975758239 327852517 326722459 664794717 687108369 460918687 283577787 63326069 253698803 130380059 176278911 71918167 378313695 846330607 583273223 473768637 761963961 528603191 7852093 547455341 227244719 716751257 652370381 977522477 631018037 393741895 731256883 318635985 960466949 851215093 269005485 337884979 145186087 755319521 454660163 874058293 890814693 367571153 612086985 544569283 480153043 464341523 454389715 989926861 404395725 142470015 227525571 89730637 759188985 928215667 161345217 464873033 765289409 200995283 950467517 25008327 440345051 419356431 422536559 108147675 160960067 226913565 942558041 895762847 167018045 334310781 674975937 249167157 48212821 22539569 343850937 34652617 778340959 938136011 262448153 717242763 83339383 172506209 6915201 509025463 941760515 376145039 12979033 920099981 975029679 1460093 160793553 515805785 809910637 267478743 478894305 29382765 579497339 82283479 833876555 900066595 408700765 545129017 82394517 394393055 328473825 601234243 885121809 723872775 827691799 81930437 956277461 828271633 445973855 862831123 134733253 460930679 414096987 679778571 381958277 313886393 457564921 472846615 726564489 698441317 323427693 48958497 289944327 962891785 140757553 347554721 372142079 19333697 436903179 464533397 464592699 241292463 30921225 526012805 986737483 132706559 490236029 567545213 856817285 207609313 311118851 905173269 424623117 102325777 882880895 853722729 809604807 940012367 106523167 401274145 414763109 616787303 742998103 505118057 656359009 411549485 529439971 899550971 54260985 571183479 515560903 540295187 815030839 664824361 940043599 267648119 260651753 784966959 560068367 748160631 180417963 286705017 453949667 529311719 6427609 988694019 388043761 888065319 740183197 407979725 427190691 887707675 563928039 234841059 499759791 587241779 916601713 391923801 465576977 436213351 243558841 635530565 379305997 782194737 185672455 525834443 501525295 901536923 492494445 363327255 708981069 157972017 598233283 967749977 691783807 921726219 548505001 125226701 256333357 383732165 230170759 462831539 93101059 129843847 77645709 237029465 988714229 311450623 184238771 157826061 88300605 676836451 345401019 606751787 258181217 386834031 989820459 164543255 558085677 349359215 376247381 11575609 541438391 270041899 864015953 958869507 492637529 916970749 395692031 378016497 383956663 717876931 670816005 326503555 917476799 73216739 822969815 421460805 351947173 719018057 34480811 20264651 739749349 658707823 206984323 849519787 774586689 882206543 194374181 515333001 153721033 315226227 985585443 82199057 482970319 829023719 445812947 658847731 989597167 216253507 351428441 692093163 569199119 239933603 277488281 991861179 628851545 171108271 64104775 300159275 444731203 990679701 199761881 424708367 402174345 745424395 581280655 228994371 246392109 978806095 666080115 440567461 93574527 8820519 400985939 948119587 276225809 168822499 542738123 573660077 131108545 160150871 983538743 616208703 715501745 269187555 358756289 48544219 950078285 499946347 812623449 273283721 145416269 294244705 798013625 638485343 9403305 294433463 888692319 395754611 124728999 384584431 909421717 381973737 924147411 139670797 579084649 328162285 216167171 302184607 686541493 248512433 305483855 436818621 220462361 698616941 133067041 988329219 670170365 910726499 257347103 866903193 668203409 628264417 495376195 883842349 758884303 457144885 853820613 4886517 590617461 97844411 55743533 258932399 194724363 629072087 864070467 241389729 120490467 451617265 348762399 711688603 677928725 166741627 950345499 74626289 894144129 382760177 122762717 761599619 781869775 861993685 347656783 374522807 198970735 513064367 535569061 814978681 740476313 194355219 38536543 135063619 128849231 375326365 689290303 784503569 836890711 777750765 977122129 165505129 459715907 722357933 833596393 248302681 379162729 831597711 206371747 69027961 365503213 533828943 247601509 937965797 729725875 262014637 367192665 359613253 665631855 869038711 347954933 271854023 414859927 256597883 794876405 972856865 882163309 621042839 991969629 582031505 902277111 508177321 458838393 155300575 312417285 623080607 845202397 242062679 519602995 542514795 658408039 27508687 831102173 931295749 356836409 430475943 136802861 774301041 180783297 458317765 928487189 111622327 802565297 627094933 627944779 503966955 664302343 548500497 785142607 787220265 942229513 22718387 457302891 184966033 281973823 290557573 425133741 400511053 85416321 361465621 789918703 550543 798180327 254722423 143548113 379384211 117762779 129570377 723795645 919679387 587714053 372937651 602716639 921596655 397076057 415358563 663018033 873065189 34935575 277123727 351929461 835207379 316733119 722618103 885462323 834272031 693106721 721064413 343101881 537603121 852526927 901891603 575325473 72606589 435794085 77751277 282080587 348458619 387501513 120573003 726964191 795456429 822851237 628830099 4557133 168911265 906235503 72490163 338238413 560946661 943538851 974866975 628913249 571178007 534316549 475085529 858423249 885551319 77133215 781746021 138906539 690917071 394849227 57188051 39522631 426994097 482134815 2658743 562837193 613050169 277496195 228669743 983442967 598765097 203609377 920889827 548834785 982348619 790283633 82971395 24915103 115317871 563836971 866310977 335974289 176322419 3052117 305855453 179708865 366800695 755483963 785094047 671701247 782878885 471280497 528666065 11923683 438359471 100932053 607707983 806942667 425941585 425880201 566012275 936097251 675342221 337614331 610124581 683091991 454312557 574132703 177344977 262633763 468737281 987410991 851877489 720642695 234469735 542090289 494982785 785035143 685481663 907857779 835572487 345097785 447752755 862767301 254951827 27291761 281517047 691230023 500732217 511610579 895871043 838690141 345169303 159024067 704224345 482234801 910468565 974470259 938563975 235585593 946967971 226764765 271063069 990416689 118130739 78394303 130611827 550979099 720525125 990920099 75932143 382488775 725714465 986447319 323970553 433305159 470212243 875207285 659518213 497718775 292806129 30282845 320397707 583461501 259298845 843889207 126464783 252689091 134073463 207756147 587190555 664969471 624458483 894359883 690443839 767164333 622436613 596533693 296671513 301613201 222962859 90981009 800631625 468136887 627898219 395621977 540155513 612166771 257149779 318241645 14088541 724872291 695434237 681353965 455151789 822361705 703539585 954526657 286414893 558573491 249910667 956757401 507637159 723741875 378761797 242300397 988013035 316010535 973511527 346045695 193935831 84690453 987158321 684996821 545160523 444032709 919028581 801292865 599511601 295233485 652542549 612186075 436578685 937284363 842797527 178707713 434509351 664566689 54879815 402626271 253668915 965168381 278805389 106239331 918848939 154240979 23294487 973002309 938940319 870439199 936282587 653035525 487408941 514598691 37556055 166751469 811384949 680593007 45269649 643807757 673927585 716200659 120673303 6079547 165837285 264184945 151833089 172482331 513285241 758315175 274375405 973374993 105937825 79195941 521539329 682735953 988614567 496699103 392350953 350700751 215206365 629628689 933384413 743779665 435298203 595419199 429996957 643929 631215943 980257589 155693933 489736253 836941643 217128967 370546459 78668561 630829333 787725585 871664381 446398391 846702629 303840761 106565621 122092503 6178553 238851243 592908389 525342179 660984347 941753433 830214461 219728911 417677089 956323969 689837297 812779871 997089699 294286311 345961091 852805787 760611395 699293079 715730553 972641105 590166955 361896421 107715037 182082779 388700559 759546223 435086665 391359321 570736039 877747735 453620187 366290099 769003703 580760075 421754425 977594265 111899529 443279039 624803215 649770117 581508079 17025517 713455767 910948021 253160387 748983451 496572555 75931953 593405415 76579351 382173749 121588683 407792965 805278449 241362145 724955163 274962385 27337225 208954727 200653951 653496195 732491651 991733027 495384355 806143329 389585353 923159293 117183221 547371631 324753041 29476451 103879853 163029701 641211349 689129547 830778317 279644795 690672349 444913203 249225627 915118771 906183985 528027427 538141737 808643735 26460585 725618853 318736717 745596507 683447137 491955155 245028267 724288569 551114425 325348939 822938023 414456689 973952611 649901363 638867573 680200015 62475343 145909815 113863947 258603045 121194171 430787729 186451753 810293835 631288107 819882491 204961881 256979753 347629419 234118079 548013291 783187491 389150863 520499115 220484853 333638575 520683507 599744273 707192153 697814597 490653245 667709397 484977345 640940905 859050073 675532121 423724185 225652389 206482041 924813197 288632349 841902219 663403291 716758503 678947659 901346229 786712069 219758693 597671405 928132549 66659647 944719501 606130321 186169447 283032607 338588783 466240401 942193739 848739395 639436703 346755597 69647915 712704653 60469309 441835757 977795531 939177515 422689263 912579555 689719029 80300433 779445987 88993379 390710395 83687801 837693133 454546097 762093367 283480555 107258863 71409365 450998539 715895087 172617229 297657245 211823075 426123485 506564469 248425891 373322927 184090319 605906431 796085317 151458409 917351979 6041095 907251375 331985173 682396763 727280501 474303183 355311805 48663061 17488569 286124127 85038195 740966485 775713733 732690395 601745233 652578653 908032281 218803601 415740793 35548093 750693051 926828685 968497431 95719239 756184379 217041319 387849563 352969241 886915245 322228355 549370239 366022549 7785905 901868679 417805255 562365799 329921133 809364961 810196093 436295813 313852303 156705933 574625011 824590891 740286795 921355595 207823491 696611549 281759843 736273057 931575697 134894951 548152603 472783841 71360131 68889055 880599105 895339041 134829775 852538525 527232557 476481861 105724911 573308745 421390781 909519601 927402083 642928591 226666325 698955161 811447479 28840803 130500581 92025201 446417533 525103999 138263011 736316799 3909967 22762217 47690831 966098055 621942735 802099375 564216235 461935129 869336745 95665953 237019401 892415887 574110093 923738847 95627517 14210313 987574839 760091597 665447591 92075121 201736551 150654485 439733933 728228979 395518441 988631851 311888445 361955211 621169551 752756943 190203917 747671287 399968819 950013955 33626457 801241535 539221175 686268433 700698859 613153207 708201479 579219857 174956049 431592563 842532883 463231837 99619231 704083541 60487383 586300315 442844403 584749957 242323283 157956789 232669431 5300467 21980307 86257249 5227285 283865431 473232553 337506459 367726661 597635635 257147823 582066343 747159557 984285389 636242631 476495889 568265053 809551671 804690717 387698093 486435289 278582601 818086625 434899097 650624143 139440035 776080975 204246327 480676129 2640557 762133671 167682611 716262575 924538263 543771957 628385669 893173485 777495385 625170507 958414181 884188431 277707701 207974469 114347353 639861459 826357297 582478977 454819629 358424959 53434143 240233581 964664823 836364001 581408405 275228793 562751759 148953681 825922935 335833887 159201567 633256877 296725609 467582437 24302351 136902233 84742367 181348433 677278483 15564359 784261135 987984631 4106667 368252649 676076025 714104433 388410007 219600447 623558759 495877219 294438373 550373329 469092329 187891315 393113323 910246315 350228181 239928151 661976387 440367459 493286991 558419401 515035091 540690203 745784635 249248649 159849413 41414259 604097867 440477285 837910415 783073695 50200057 266517803 550376429 195792467 653824387 494971575 997987041 985116365 995065331 737959147 583430331 241252563 537038359 774420403 203406605 755057845 155659403 765935615 772036019 299226183 844384427 363201739 683376083 901474791 327017889 272829975 4666073 894141311 556871005 909530609 899597687 96308601 797449113 868899175 292944555 474993615 775222995 24840597 832224441 679044347 353781587 905978527 533478957 583631623 217657899 235796651 167929563 561198719 48797235 147346673 978234593 897468793 325239051 308846245 500161441 773461655 396428315 190951951 392124105 135101435 768956307 275810165 182927179 703253075 656045419 861177899 871862373 315880409 671368805 282031501 483347613 81784137 259504391 299295737 310784699 828333291 994410147 970310621 590510295 157010825 59467857 785250473 772888905 104883581 715251185 995474905 34597819 963064229 909698345 774967789 281794581 803093095 285586029 212330355 109969293 604913327 964503027 298883577 577090461 716002549 380612285 215846171 299376397 354014777 772086161 949811581 278373093 408199935 46569985 895049157 448760189 783818325 256064867 951950251 119139695 619435217 405865947 573150437 225517729 108069781 501474125 774829109 612510525 6044483 163864685 526698087 391538873 93961483 815205297 210898767 104053969 431946147 734173273 766040259 881282185 321969737 245676911 579747753 444498221 361747395 815197889 238668519 183938897 671785313 975329771 558196341 491549137 279586295 431856969 276586569 950663891 968320741 837022469 930825061 464840899 514879759 694331921 813799639 218356051 171544039 890689313 278707373 153780353 83166303 914713529 649436931 627108755 397835769 738239777 90347773 236758545 129494967 334663015 526087107 435354321 632074541 800847973 34011015 859458801 330191723 650578619 579918981 830864083 915578901 362790097 236605949 277791525 622845517 721054167 78010685 247349723 983940547 839537863 533718675 114026799 431438253 751574367 331197021 797975719 996695497 209833255 761016825 348515345 614868317 607580785 153112789 58298493 225652281 951610197 107971937 827003213 428421553 691909299 264110617 403869471 115752869 355561779 266358911 786220771 787578747 243126853 364794907 393916109 210133279 257619745 775306115 956778841 939944459 882221513 467644749 141765193 417762361 869749251 9157407 894722477 121234739 366602337 930944161 409218263 352434439 673586489 769377413 498088803 179015495 477041071 320438151 294293047 399588887 505200807 841871721 240553087 613062937 165919701 172918771 447320749 39311485 167297711 66286587 639205247 919283705 453648247 60419671 889484537 438179787 344669235 875857645 697648999 793632699 480365491 930157989 93403741 901572115 325788819 975227249 134926777 428528815 871062063 278219597 868928669 792586217 131625905 48171835 305030773 272662951 822125835 135139139 671924729 308043867 462073843 63242875 843263009 375768567 946057449 979755513 730891571 26437373 687152183 548618211 992592317 944784241 735485163 866429537 188668815 611732449 673316319 573224101 123315401 392646757 369564851 599706603 128291533 806916507 599732945 8156789 804097353 626648487 623591013 192422029 664833329 866759993 157726569 592456067 613760959 869998727 14970015 465432757 738554747 837641295 172889231 887091841 464090927 47595225 930967687 301245781 456444653 689483505 132198817 398618787 632410903 648818925 80841149 423902691 308597579 232548781 455918723 952460185 633587065 518699415 399480931 853401677 456678613 728085913 341299605 436720533 989510875 983444519 943118107 304144135 392567375 43534915 330279869 993124681 150820413 620976241 921410825 251796739 493157625 529757119 552960599 38430697 209108255 574223045 535119819 825888179 835681429 818145953 761662283 862414627 246785927 812976119 992645511 937445639 7404391 712610807 507830007 224587567 712806387 88416599 103501531 607070579 848395823 959436631 775963197 509312185 332063081 500740793 210974445 550469609 220608049 346284239 555842179 86186743 66910567 880132207 143104349 789596635 597363501 399952629 780819367 168128919 4038129 430302537 174783053 186939705 779491685 848507095 336380427 287708369 517673353 622729881 499884641 138764407 368646557 194834955 634258579 227317073 164131119 788690995 445809847 852755079 919856405 520268959 403855009 56772173 410949737 466856551 698812149 983884507 955494801 347357481 463834135 463753589 99885879 765175817 673070905 58554723 112001359 775050423 397668693 735972091 610390553 290826859 942416937 746150037 150722839 669303519 375709503 287896465 374916627 821016925 250277093 488147295 719476773 699016113 708904757 173864555 798271145 808367409 605790479 559338291 609496639 448647101 274851611 765366585 362792409 410412731 595698377 485274631 703421351 743337497 550160723 977973295 748632103 308315469 637218999 992918601 540445981 203287637 283838653 298701307 339618965 907387063 186679287 719334637 699971043 948785793 3234493 460753875 630673061 620457291 759895087 202742117 358008253 95358771 314065717 684505959 791530071 407227869 59595135 997275555 808852715 211725691 566359685 967332073 291721777 103536063 639513737 643642903 129072175 195369193 913752465 342383885 129007921 81201857 783399535 290600885 712521933 901622675 176187835 729621251 126014173 22080311 68079827 373189103 42879621 941737993 848358115 637853821 26178355 598091249 184810457 716275383 259451803 613342045 301715309 200391599 879985847 701917249 146738719 565757565 355890895 390797087 640236601 737671495 130783851 527147517 44518603 597525045 752767331 246860645 287011499 623270011 181954513 745245041 227508605 857879889 230365979 307237055 550250661 589615355 453358315 897007475 839733335 525501891 200461879 83190335 267573383 592524027 252685883 186183509 940514299 32566781 685694841 869401463 794898743 44461355 510031553 661061863 715947915 579170543 500268069 309105785 930203153 21382333 805530115 265341565 306722473 747024397 64742397 574762965 169249533 521525091 826973695 512480487 891894137 591599433 560771903 596561569 152023639 587645265 980711225 262705529 76883611 208246547 413223089 636380269 945791239 907121973 911920821 628903427 137947951 801306721 31819669 30259531 558682731 596869701 997982193 521403097 715783899 941438625 482193323 504572365 534576231 846500915 864851185 827040973 267733951 867572679 742746421 283063045 603731805 424385325 452330549 230301997 253852799 447839811 417627895 507434117 193334829 369350121 389465283 655977425 919201337 693273355 611317297 356469343 508715579 458350999 282860571 947016967 282749585 954489741 619985061 763299621 550098791 977179115 248533565 1037729 123840427 673707453 370182295 918741993 680484885 284766995 806841775 937341683 747777575 513785867 328781511 719753789 400852263 765673925 707320687 235255501 109905703 660440941 852296825 710670387 363134973 677264179 483286273 759432579 378695757 592649553 552237933 986567261 471560827 829059339 80101991 112487399 69748667 700070827 315901413 107559885 54251779 419670915 760655395 401082697 579946003 245929709 740897445 348962837 249132661 67323211 419286839 838465403 596561529 189407751 847337197 478952263 877736501 1759637 339545893 651822289 673616523 446790255 891905665 56729589 881311781 889483285 562281965 201057309 576285807 718212115 633476513 744277299 739901093 318602489 18174485 242004655 736500933 988046693 800065807 799250063 68062873 835222775 613184667 921528921 333191855 913145691 793119247 665095197 622011233 551630657 343593733 71226223 498557903 509473123 172834401 818682479 602784993 73605509 303747921 755603139 151057481 342303601 84380233 106437271 269248379 555871737 671862275 836730277 213280443 587464183 927356037 9429545 571504657 793933645 17596957 818533351 437881931 592680423 527768157 783989555 558739459 175481013 650107169 401331679 672931481 171825841 592447373 565827657 807782707 159135711 371905297 110090329 742892485 503732809 158314587 576685181 961506823 719000833 841193069 610764971 924203637 501011745 394301833 434478947 188482397 473997005 545787963 786333351 524302283 776071723 895589975 538147593 41449623 281222769 309003769 210291869 67605861 257809113 475144327 735681539 70772123 893594019 525892525 442387809 450911591 808203035 668411997 174943589 915339973 984656531 572276181 101040195 278806133 696114021 638951065 760193725 887551229 189028339 64681333 945836823 846450095 656576681 56343165 731323935 4147617 656648949 556435983 634462765 102608055 239239767 394925517 785703967 224885909 371813709 529685413 497139801 907883951 543020643 805941449 390073291 701428281 888276779 788343481 288704235 129789753 785979711 870589493 735869623 188297587 555431747 816150091 31020471 281597047 84455901 368494417 232463095 353778079 339095235 299480033 443340045 717267723 392687023 856936927 720200985 797044901 278763873 526691705 966273473 497890073 714508453 193776675 832903219 692284643 170250573 315902873 212436259 449086785 500428083 545458909 268896211 365646651 850320699 257409855 137408775 514194597 294356555 727728977 482267151 23148307 995821145 343865839 777009087 290921703 335070047 621051711 5317493 294224969 29943389 791272363 652062233 332625449 913700447 750069993 347176731 656292159 763690359 160050933 740541293 347712269 841278911 599692051 346043023 491488985 920209499 904424655 801589129 289069237 614619761 172695805 196820967 527308409 53994039 530977977 429227711 992110277 749400551 865783401 605421489 747033601 804208321 673957049 747330019 176489821 674329619 112621979 674631939 117645777 232671787 417921869 744960071 328825119 353108837 277856595 339822955 590786253 371115299 717932923 710526907 76808493 828900049 90963157 322501887 346087509 838823647 296085185 854236305 807735593 788712905 517005281 388615247 648288845 852871951 82717987 287724957 792905013 498190909 481467067 83580011 818722583 527684581 942977315 142724145 610966515 479598753 885296675 539026665 799802259 46095893 658530243 639488029 913878151 242198503 136300379 839908313 929703205 458286799 432665221 351311795 784691345 343539585 5698085 373114827 364928431 433116101 38321003 913404359 241193009 504815457 465359045 493139925 142400913 145474345 372047093 628886955 590229005 33473015 635990525 485212039 313100719 793235887 965128745 72750383 310254919 703832119 105908493 181287153 751685483 416717447 91713157 162471 908390781 697125779 96225719 913728169 166966949 77927267 375519757 359584995 732375251 985277949 622745149 905109951 622632385 945983605 515120963 372065589 690164717 541683685 393728867 362533317 24144287 287859825 127017769 461213553 769856489 814172225 853802091 280608973 814042531 520619655 258630465 386327529 573354605 901358719 382873363 346249575 889802159 347513449 917580173 529764717 613626777 260978833 977751971 347095209 567718435 729171531 835869327 812761937 938433551 626746093 711892183 5505571 979999205 976487643 813748041 292339557 625871601 4853377 10146293 653232615 321132625 154494799 209913147 797781501 361435619 461221057 329005757 375782535 942971215 170655577 760496745 726837737 518423811 119959967 513845107 661104917 839355195 962464039 60468055 370067581 854988023 2460555 945530583 908007203 172564733 279874415 896281347 9112457 623567583 158589819 786184749 405929155 274320883 865192801 508560113 947321185 345475165 91546845 211947317 219803269 302069249 626250415 933784867 842033365 587219347 443365285 37503025 241822591 968203145 489240973 366432795 151381305 768399139 134533187 48007139 380787521 493721451 78698667 507654873 478881375 624840239 368809901 322675089 176728541 875603723 515996987 44670691 710902935 113674331 362310993 104900855 86861797 366875209 544984303 636495417 331734195 389519815 233816355 530284123 172891243 842553737 875459579 24933211 508483591 443718931 875321235 234735741 180529921 725743533 15130895 974639949 402838627 451343717 957487511 962121889 54565305 571494933 293091165 69129617 981697051 544805981 544876189 990533767 169902373 76787365 979339417 98077225 993336833 13780511 170457753 417428081 133002329 221026751 738202353 665829783 427566949 599763785 236271101 980781859 849353955 237012035 778451739 806991069 524540441 627316991 205537721 830420957 267840727 999270293 50676809 112462205 4384881 624365285 895418691 490724963 975221447 424273815 895645737 263620985 382261567 899104027 187216009 865695989 5511109 144613545 712361201 752169297 474287571 976281155 831631357 252559445 940725603 182422447 316242257 939753995 128876031 653867391 903343253 779480007 885922739 198672393 212886139 781410597 103570967 566582385 794636223 743929611 175082825 471779227 365689379 436575907 318452973 757316923 828662129 483125347 703185203 888678599 997331065 216123143 494445009 872321153 930176023 227033747 70636293 517897839 72687663 463079763 793208469 663193441 957633193 625074907 417329873 338234867 565116023 716065545 425132941 103015809 258357397 403398911 966801705 688318773 536275205 490663467 931600779 461907713 558023121 928406847 688328993 12251803 797024265 400787771 488505823 31408771 200529099 982572639 464087623 333351171 666185269 593398073 823079005 901089065 83602037 912613791 481105071 847421391 991134909 606363049 634507605 363205781 868141637 333437633 586709741 792540901 63969103 105541263 761474971 101770987 82918441 828785159 75930127 894826657 384196129 16697449 793763967 251330761 622182549 459508791 644406697 625839083 610016229 793983035 23548885 172058453 262045307 295698573 384798671 522889249 995056585 390575495 960539629 63851567 62855499 798656207 657188623 589764903 662544771 128459855 969190811 549570937 523553529 488851773 695516797 781752669 31865155 206254357 706692655 400975317 150367737 618295963 391921581 960361897 909500347 117028057 567831933 70535783 760203575 769194025 944698029 732043623 731908127 260645153 121838549 589534925 766773803 120177065 491527187 356776575 406058527 258268651 298613259 545611565 407956675 170309471 164178157 411411791 646484973 658134973 687080303 814985765 997974899 762822155 662234833 476226233 820944443 671012245 326670293 506453211 260173101 657924847 966169037 55896099 835115069 650680055 791856013 641051887 394607459 205311439 180632695 8478059 799953315 617955301 580195691 886260867 230036997 531405037 356361693 63623411 608986271 490612961 890004161 226247227 279336329 617225479 103820181 468279199 161361379 196871405 16252255 188632373 678792411 392364901 263068589 366089425 919512227 802096011 343248279 558382871 227432819 941668803 848798907 41604715 123297423 569431739 278419005 827508223 747320129 784064103 410616269 63303885 429924313 418417923 477532833 567593107 852841653 748623377 347197561 809361627 466320693 283192673 79245975 718311411 967327939 296376837 426409165 866658293 208758739 473714521 334041713 255572929 225799901 799136259 370403167 441939967 787324261 43826925 548175615 303514655 955096819 734421581 656769343 911099227 89189917 624895135 445048211 474025393 565818747 346567591 604757501 123602153 619354797 521156977 681199619 530803605 720478051 650337107 556335535 748938253 188091977 435489509 553606811 437022577 690972189 655141647 253885669 298419881 850627745 940182269 341129777 411510629 156087711 860390689 971245231 704816925 440759785 78607417 339113495 266415635 914267223 481854539 895784099 921434701 510253263 712821151 92906013 283372701 16109883 242654155 769579729 926927771 150402185 687199405 335867029 280196261 783686583 402658153 310244811 808876775 136342727 281900391 893255253 857529935 195801539 372394337 748544161 702099605 94140349 6592593 455583913 31609401 19266511 589506681 239226601 138656133 154987547 23935081 956162919 74402185 473492683 779694065 160395955 759361819 571475729 996475699 27388641 271973855 455640619 676938637 987133073 487091001 665999959 406332591 40303591 273488733 220663263 500042125 902847381 403206719 156880921 319419235 698180045 627215525 228582493 945728693 47428431 53297939 710731021 682742351 875245667 519733977 624842387 219152965 489122773 377133841 224028771 894211315 800145917 13988763 500947445 115832319 895759799 336353313 710429133 893156693 695065963 983493903 62228085 823109159 391154183 478564513 206395775 344766451 123399169 321519061 270819461 130687869 39613527 586687859 871169065 222288337 934839183 694327053 441747221 730753347 934010041 923001339 684617981 20669553 739671657 295200861 115834265 664403261 285692351 805232155 690918829 861531093 283696479 437526501 367985667 579301293 4891771 846409781 975237741 904791679 213053893 459620425 656069315 336764241 955302527 416141097 108702701 149982065 679600493 699114663 368062159 256800111 178683357 551170139 846576479 676801067 706024101 90041507 528868757 685503945 2912551 304036779 449152629 740578995 391680069 630949473 715326729 554155167 871964015 339130237 380159843 705922439 817198491 340457089 182889373 930747059 987205703 168455347 657567961 680422829 953552505 649977381 276600897 605431623 663527361 976762029 475126281 126050979 364697907 659337967 263296617 294519839 723258479 809533263 681064101 674109037 142916249 148326657 89147911 87191933 620150115 598913787 296879841 419236749 455906303 83900157 438367629 151949345 146951215 184026769 799454061 333546757 277661495 676641287 39512557 58490189 402902757 643217781 45139323 355671125 837595793 399602621 935974039 910134467 920756759 281104265 954601151 652963203 552226015 160814661 479073663 955792071 626981591 225569581 781061481 689428237 633984885 440611391 942349591 574101019 104143545 7705925 416356395 756944377 700394021 890562765 487098959 569327101 309719499 874637105 21751863 920260037 99703103 273569681 788178077 388116533 371311777 235338965 276135745 641339509 875196823 260873903 26561519 18598143 845378125 94293139 513466745 443257485 472365693 204772549 190123705 133963041 35347041 404198221 213817233 36571401 257522115 874345209 698906091 916305883 898174705 731645027 830680251 441865585 145566141 808340203 248317691 362977009 741098635 911795639 215794859 374389701 594038589 429534395 200895447 489254051 751025731 749633967 427989905 131725959 711282579 907337999 517362931 502842291 672252331 307186985 96034847 378361015 58014355 150067465 910976319 801191269 670703319 353876871 577252231 595117531 962963597 658473543 708890673 153685371 119491157 218493103 862847357 546919409 613434965 412839661 837837239 171867699 520838457 614806783 690392113 257560445 643273019 908189599 900563525 25714771 539637015 247811929 788006485 886239617 866470675 476780925 696711373 475982621 612495357 265961249 286970141 885728127 678296621 941895209 800871615 991734865 638468223 609350201 475579449 24063865 137058141 976548293 722672657 271345201 199369649 466999555 783715291 245598193 865959411 86376691 912364849 122866559 494937889 333031007 180511413 357330921 870213571 202233557 195586321 36235135 703201509 640439215 466648569 904097505 234673949 713497359 772653863 897619955 785621387 874796249 193547611 805817055 466292437 22255551 983463265 32893721 173747239 864830523 697011979 110976609 604027451 806628747 242702901 87424441 654675021 210693815 554238909 56959083 290074403 617606547 812531855 202774287 216518155 852369843 631526047 158928511 312243677 971434361 429687271 551288545 832528887 483502861 265338215 788478111 52718397 416966495 130585133 249856879 426563359 174426919 894154823 291241805 874198165 606582759 744508369 919037821 416391961 291037413 981123565 235454859 477096885 38990901 107110855 262191179 580468213 14271401 329807759 216352987 718842607 870400999 447142783 465980317 537627715 282616149 626140381 869885757 659587351 842870051 429779695 222904755 205741849 225840201 217255945 53328695 335650685 294963337 104603269 920451919 363104261 423436649 201672645 624760775 964402165 764109115 454624053 878683061 65075997 389134357 617324869 333476465 331416273 228371675 988975729 819515045 876199151 905765937 482231353 90804025 384179425 619999627 944705065 239517793 528712337 252997151 969955541 185851549 184746871 917208045 747806419 81960365 624777107 363159231 885596103 481907105 413261927 322497829 812656989 115001801 125016069 65180533 761502789 581554117 603272707 170144979 170333499 820050553 892983933 388944931 927713279 522010895 217293083 818104087 308001885 211715069 504589835 344907049 48912167 614304767 906038019 985314967 123193 845797143 554702913 571633003 308176497 696639893 224771979 793205877 43535549 35186443 306321199 451103819 630780173 265289557 158701829 92350031 665455709 814881689 899472747 824664489 401581741 821774659 437391941 434259529 913587721 756635909 324616709 937270761 687553923 396739549 677358237 132818695 501445175 392060431 69890703 781729771 940511299 326302759 857714141 94140839 10485205 754750457 258531609 408209171 792341533 638070691 919402585 568200655 710927447 115352711 209916985 597007171 841944771 955123795 190295265 388135839 256569263 764627449 235767039 956401885 216667241 806269623 269686985 133755321 209071693 875547411 537438973 348803265 547998655 613086677 488431585 288603969 750343461 451354389 23116869 527507537 425193463 230890285 678014077 503534037 375816617 629313473 257278825 200588659 556169411 961318591 872161645 730621849 179763659 977608027 13556601 788065925 548713045 867593487 703526917 459996977 550974461 607124131 835639819 436033641 349426017 626478367 597163541 757145021 650172207 630126299 323135791 120262275 28032791 607633009 494790129 610411231 400121045 253990855 548275063 850411701 832480555 803901191 549511273 266415801 859897569 878616487 702438389 981209953 110484939 171027299 8948433 66120685 998165445 13049663 118609467 993676647 204946861 753840263 792726777 893074333 958620273 89145295 863708763 226611243 209693185 202590197 52097333 132002157 279011417 216758555 30611687 543074701 439206011 716938669 262643799 682197373 904385391 120432481 348934897 988730865 352413513 645248563 689160623 231166061 579825189 356304233 529704459 487028281 36378913 921630347 124352271 844051299 393689451 916289135 541224519 644389829 810978613 608441907 311411915 798554111 560432821 810909241 8863799 267723385 700667699 504302383 4581811 62538853 939513333 905644297 514850029 920294071 836992849 775369217 194007323 571575091 632527261 215319965 355129339 794333535 352943679 985678763 567716565 527283597 393774751 687039293 192154485 189924821 341396783 683131823 445701937 240740119 957699179 185653669 219136489 765647867 822582741 827784205 36539137 406167025 45867765 224236827 937211499 311453233 444698719 183759691 832767385 441871037 728444591 525883487 605685389 84494171 674577283 761375335 278651595 802269341 985752713 58175669 105645665 465647833 522221171 365406437 987829991 214987571 498238969 300925917 105921145 420659855 868538589 265016521 615579839 761047713 965692653 451805211 13131241 410051295 41186551 357603473 234713001 260022155 514064857 609750063 533129279 155168939 935040369 666117953 616658289 184384783 245129645 327445339 939266447 99800915 823527807 553619035 723771501 830932179 606950879 747508579 389049451 850870969 577687247 310152671 58802031 191651575 140302941 231304327 959304165 242701123 787763607 200482387 256772039 356462621 456402331 726027657 531608977 750672847 687083143 538617527 69004105 148406631 254508169 817261997 612426109 817436095 898803411 771525771 229994565 160585847 873235613 302935731 217032765 137720057 208665643 607756243 303178127 164435825 477250501 229156063 436686565 570686939 625705153 650589971 450111607 928554741 693763701 539982577 711261955 40782663 175055687 749538633 105530577 264215587 465206687 773024811 122704555 275193505 58717423 257084921 695262957 49700001 395561139 150520401 45552753 687111627 198508909 325270309 768781215 663965839 804715431 476153253 450559843 498177831 404732145 861415245 568898103 721791119 691581673 515642597 282019095 797930901 179096623 655040887 32222857 106203589 232722797 657326935 298566555 776462455 487584341 26267939 760514789 977330639 818741923 36355259 581692803 410241459 935155481 458322001 128620575 849531603 272021121 844281685 124952035 117479847 351377067 510194053 938352007 313869167 952475509 381589989 147403849 863960885 578261949 303379395 294359281 211233481 131038323 769876399 577414859 135398339 918093187 674422921 190035117 754497153 997304043 536541811 32442871 333450543 478737837 661458907 952834959 191470265 83310803 528329331 452071139 608655323 305915501 158812731 302158057 894422037 112276121 227091059 28013853 722323117 676194423 139730601 443672713 659321267 167508273 639346099 575422651 39257857 834832121 119511211 810750663 916442425 593460235 585979895 586413131 518728383 732989865 105111617 476402801 354966213 637740317 622124413 37487843 290940485 939447481 270573035 520132313 500891389 851044053 836221709 343643155 749697143 172192471 563049645 568029651 848713985 255946791 435074019 107833323 86259893 161955641 681868811 692883889 409241203 61049477 295480261 484594945 864599267 495262607 343719427 134881603 989572983 292393441 279570165 990274149 896208739 1992203 103790873 666029531 377029803 977044139 583926835 168057767 910817557 46688097 721274447 449623885 609266995 871707607 38338753 677452509 66580317 975303361 268521767 870214635 122765491 51592407 888494179 900976791 647573533 169664477 793640865 182375045 693466443 63170459 832615769 296397285 959038389 809816807 817164867 396485231 648077725 990075545 439646309 713102941 970931977 876103827 687356427 716257657 505078987 536820415 722532555 766082575 347900795 560968721 993793151 301701109 238642807 991178113 111173195 724982155 668947179 447062803 714871197 736753847 49113285 407904463 879988521 859488743 129339837 693601227 643547625 576380177 161633875 204610335 534649381 239176883 77035217 102169837 575039077 56774867 309732935 923413343 946926209 923225089 859929995 945423273 821885587 828850257 401357889 303637763 27506177 491174499 910732237 46575537 53829237 546478683 170546275 607562749 616047333 184887529 624800761 824417079 135132301 880104005 261360975 881969853 965590511 293191465 374367471 442297071 155080155 434719711 578291239 908582969 716267619 815268659 647771153 16462857 489987045 559454589 985757837 828650463 938860547 319588761 721620293 836651577 215966889 877927407 308766373 288153505 861388045 509900141 79220969 622728621 7611563 225887369 846889231 66027509 579989575 496416321 935336415 377040155 659493615 932868379 742597355 998391241 533327603 446746151 586195851 272364979 97513715 794836473 851175903 186509457 859432145 779158961 469012943 307202343 371961019 842026483 838322187 482240063 568553507 108791793 280268045 315011499 604397255 176995421 90282515 421924165 781913005 794489977 636337701 438728175 409822237 355864839 533527829 872366739 18820783 837733723 236397691 271559973 31341117 623580229 605924021 491814301 497276651 895214377 250417135 540051711 937749287 98696425 712968983 692580437 754997413 401070837 484229861 262300593 761867617 986195521 13573851 144073517 666029213 874362449 577195583 590473707 899777513 967185957 64243491 718897941 525301271 726588751 215590749 924408543 986200643 988594403 212560785 993622403 898465491 143687297 283378723 660866625 670726769 186495821 381720135 180825189 147725075 637306617 414092531 135982143 764105461 146693815 715600359 745788461 65536411 862648393 347847853 185191311 435562705 559082227 246416277 247039441 575089067 996951683 715113141 690701155 855533959 928905297 443416305 555932351 697477383 360080441 443921133 848770921 59403543 607006115 245744155 864225515 685990895 779342973 125950901 497626071 675450375 816542269 660328377 214320327 33018661 566600417 827725809 434984797 386331477 491154417 929832683 954740547 306346989 238891385 403607809 72393005 537107079 980582159 953165139 857643989 832769543 721624275 181023435 850653435 741063067 972481129 913953557 711010411 418110903 243355651 745876907 433932535 648950037 981485395 482459855 973441913 789844923 408683675 21285513 948049875 93871095 260737951 880203687 9871343 539218267 68340397 950264003 841229505 411674051 356153245 506280253 535278915 827295315 916566733 323531835 208927605 792003707 332478497 758430641 69135715 820391147 501667849 76007767 566830623 536423071 456364155 287807915 16511171 407982559 98702837 929690357 969990513 876914485 999746687 449688647 626017877 201702517 805732003 770104439 450140831 676148155 694106237 541011753 899685257 851763309 507157159 42839491 815890775 561287735 309458759 762076275 972170323 757205003 214784783 541409591 718550991 476195623 358612019 266983625 799413541 198700559 418633583 834684341 729689273 67352975 766659341 442000715 66137841 868236219 318205403 978380449 213552963 806315249 921980461 343501211 911826729 716831955 999519969 621521373 862198563 314696015 45477471 823638491 667228093 548637079 34166679 29374411 481533065 445924651 533549307 906280621 323649313 322967755 915837835 670718283 820441639 44674437 851443661 495494963 809247815 643835823 626827473 823435199 475648305 588393443 884124973 553633553 699417247 787512837 604653565 726663437 831415639 88677955 510740969 413441637 559877663 780817425 643885085 90580883 392979147 658414891 751606611 91880405 940672309 22262419 265779399 338949171 47157311 735581081 300751679 166419585 891841749 520683727 677382665 962560595 982596327 30088465 73123325 908885003 938875503 433632389 528224377 866960849 787140211 451797909 507538017 931754645 343172089 343439351 953260325 132104463 276690709 265072551 297537979 830218433 943571425 128667113 635626915 818156787 537247103 543873609 349373407 93858227 873620763 476517275 250093569 274799833 200557285 754904315 918901535 780301065 836251929 194632399 65428693 64949417 208773879 499390403 479239243 550414569 143516107 219005385 859232557 989479617 225702887 481474847 27826357 432642547 50834853 883487563 819785887 201232389 36166249 211932693 606782001 172472137 551587737 419024019 348696891 97640405 436628395 781531171 532203281 816928397 138281753 979634535 896811921 718144021 538968419 96487245 13785125 395225569 757262359 763479049 907191479 296566567 813340611 440566805 298546879 574429159 189951235 560939321 258826301 204110315 469305209 533344637 140899507 655065027 466622673 443011641 261681715 797569989 680504763 408674567 871068243 59676949 281130739 63534795 103564591 19098263 297793593 211122869 673773679 835924479 578432857 81565491 235341889 779215553 428678951 929253639 392786521 721688353 268609657 813436467 947831033 452653863 538257203 859782403 689630181 18926499 982453569 657311499 109259117 267091755 910432659 854625319 463219045 59082017 643694885 865839485 294635565 533007021 121589751 486873719 760270761 66594751 454488599 140431819 735089739 705586705 996193427 340126325 608175621 939095585 260799623 86170297 817187159 792404023 492704277 945298723 958872137 536589157 617149801 550402441 377043303 678162051 187929523 521140739 156448969 166022961 204940335 207081979 361705739 524375255 795795231 638541079 711744085 929214373 155783883 183264337 693796181 569678741 571015 489394401 507450945 705773923 998212013 495093069 6697943 793611165 425073313 424855651 463149149 240700815 850958283 726936115 401531041 727033937 453368477 373579549 718379261 729938375 399188115 758046403 747006537 720514967 785204781 662826771 667803377 11701807 897473015 753497921 487858655 870373837 927075205 957588681 841181069 914945387 443120749 67652717 137920245 542464469 882753877 797548349 282776737 257672859 976316131 64252811 52638621 265952531 950310607 105367027 786916993 332305249 301011149 565544539 785215593 787957097 108016037 862227181 998914557 262355935 483602973 599779103 503862891 585858361 975707659 688460973 981211241 540070071 71843653 932313243 430382901 227464035 824991407 534233139 44311957 692099339 47279413 700191247 982072537 241599819 761654473 967359237 30708181 521449087 731803489 52410173 795305961 568391377 111347205 879739683 610704889 527206195 665988539 396809321 810575735 503438425 813109913 429102861 564103509 801428935 219039413 879863891 491556117 637189317 453250869 382213063 48620987 308093281 596981055 596657215 363993301 905561461 672385291 22686419 9217403 827877281 464878287 592365037 750279497 142887501 869828045 830323253 691822951 374447787 317543763 663245727 202726787 423713199 195459503 118850155 282194643 504425245 528333117 932878873 513522965 578852475 207273825 511142519 51258769 825896475 622323587 18839195 633904657 910665237 608082965 927028191 3568625 988720457 260621715 281054953 528684297 668932703 999394175 355805859 328893125 524225223 535972705 392166211 981455121 147489721 889965007 599649091 128133985 258619703 829308255 185424491 443775415 756893447 787361719 948492997 249831319 181987259 805780607 59613093 609256719 174647209 776069225 70752423 446358455 823247861 844407345 430462641 895884715 73751429 316200345 86844653 695454355 849036807 381696617 8134097 797133469 724258039 658738549 683499033 266394495 900384917 445652377 444821449 330741625 888147175 940437685 918264621 855267405 736199357 391635635 627352027 156919885 964439731 714051205 20540331 653080909 897500197 938737447 268528581 444042157 782889021 989952155 26558357 226723155 235559149 623931625 787667917 611809451 998027243 509903143 635635053 667675055 775205303 113087595 990011573 175782107 634665627 589896411 881449523 577849907 952170917 291179167 531026877 777193035 968945583 411067625 194220397 129311029 327502427 432189685 786389671 464931215 582237453 752702725 785303833 496995713 417232887 747976033 556871095 812277177 992255251 242160991 940359099 249771631 42839839 239314517 372101037 777386077 426311331 164286121 107064917 40593867 884635889 264458947 659048395 577676169 387225889 837613079 188801641 825786861 806647571 142198301 956519381 306898387 546689135 123599703 131239929 474864033 541738917 723263571 661785099 939309641 550313711 314186913 273853831 472815679 34937161 629135833 107337009 244517503 173659009 825687201 674339861 792834963 658915619 327088545 232186503 979020937 518018951 515813515 955751203 724878325 719558865 963799835 438373839 172362997 93194983 445612563 306444471 882986033 665821305 348413501 644930893 613948633 588750335 821237609 660765519 48991647 171221177 484965237 791312833 360218051 301471665 109043521 690922479 135798285 397514423 483655607 302986861 420330441 666820963 217369289 250769945 852535245 56769043 251587701 159282965 241567097 138376435 342601143 487987151 150802867 464356079 638457247 938151419 366153193 145693891 822812219 706452883 858349839 379483631 434449833 436106205 423678119 721037241 891106057 656930407 184388533 772801073 302349189 900236291 360496073 539585329 7060817 207972301 208544247 249297243 330321573 418998825 919305693 51280147 273674949 22706117 103921317 472115083 353657593 876915861 609291257 627204029 800742295 22930133 790191377 50046311 578293493 434741255 897375659 124854291 17713785 131500027 423398671 339769871 968055179 807664579 977572105 266407797 379995807 529339579 127052017 514481957 703925293 960217993 951764131 371685831 311723449 319434519 338946951 413782733 733535949 833353627 130137993 775223147 795820025 3735953 245803043 505729957 487753179 535575741 325349713 715834689 684928019 768999211 191415961 211351763 219734603 97387057 158949387 886491309 763382071 839866727 945612603 269329397 988212111 703115701 560543815 673370001 847518487 533006407 301843673 217648945 336340889 481843087 15165723 851548749 5706213 57956939 521575109 77171495 684503257 8607873 701053975 864740293 935533141 254049401 542542035 550843641 861786179 518741961 220930891 912676699 993312151 796562511 616995157 477584457 900849481 356713775 801746253 951914223 558389597 887636947 342192411 803893051 283444189 151078639 87202605 727527653 772702681 774073731 742889849 672209005 137688175 810008527 867998333 270539293 839213503 837294691 843890751 405113093 559832051 583390993 178190671 983339003 81109055 643666421 518936513 241710243 320613851 432700019 37761587 938085473 640770827 100606011 1545935 487253865 939141145 760047163 562362431 38789553 921337943 226287029 953778365 539662329 81549599 377526571 995169027 554578123 710656209 523482985 906668379 370871669 894700509 232554627 782149265 679977233 365285809 720551125 234654971 981252991 680508359 126156293 967627643 293724777 422150307 702625791 250569331 657747003 894724303 268623861 779277011 143273777 894995419 236892517 814587665 962234953 234968421 364754707 759524395 621895243 149022733 552120843 622835367 733391049 598403197 703079587 94706067 738919195 759371881 908485491 912486281 54060385 15854475 331503203 368178593 338205571 871127715 736022431 252850311 521985073 567830651 566234267 212751717 946350565 234204393 422284561 499717877 297805277 588965829 789360647 629495409 326808353 55094257 349333195 126312611 665471363 544853079 233838061 342845655 77131931 85867243 459111501 477551077 694174407 138376615 641607183 785753897 103617075 208125835 893996445 494473099 153909197 96137121 610913453 36066425 110132301 444795391 227260217 554070249 642202421 322859197 652873865 777234009 242168267 393232637 789485095 210610129 857563169 459171819 261407461 162757851 675201549 819374517 268250597 620489363 454418483 151598747 383038853 205931665 229041399 219628507 385735799 568916993 106216333 778814145 167337643 52403343 627310315 233057183 779990623 374693743 611949777 347391183 622499095 375938659 497902793 785522611 43374751 468945069 363022627 707450293 488333323 665326625 822176757 165368649 227150519 629188623 833640995 406783207 876389705 654859355 437852753 874917395 838567597 533813863 360787441 468890199 797914901 416816163 420330557 966839365 555423489 363706629 255663411 756593271 989553201 738398987 727127197 285783183 440953011 682631613 530732297 413996089 228552155 221095717 130216145 892820005 485128519 918363871 827756309 131031821 783067099 702055683 641102527 532743349 484532927 358083901 901838203 243663591 818075245 870156729 575692995 248472181 10334111 729630251 287799513 622199353 970452055 883681493 335841733 593770517 501510885 530045307 898558037 124564469 532893913 513707115 518222115 889306825 651075091 140571005 190337423 228343691 482215351 417579789 146345663 187161663 657611055 188314885 363848361 757903087 119542577 29003215 323953919 217975469 158124217 943696739 39216709 885700755 377711627 550031935 51027137 706559683 795161009 216372329 359178629 22134633 896368515 586076273 616352615 775492533 776811933 763988589 870952459 48421601 258729825 527145209 918919383 182797619 633493627 895313979 565548537 275236081 234965985 360151781 612675439 284759407 173746895 588497193 51899891 71419399 158043593 426810825 845666833 6218011 512983451 513073417 939950873 409033493 866036315 453639097 369715745 804026217 35825761 457929259 126014221 411900817 811845463 819405635 641026433 804469773 898737955 959660387 829124593 711587177 291084543 430493563 936684691 519437111 357482595 544929281 18359399 772397329 954902549 400604661 711900727 489958297 377596195 384620505 330602897 873622907 574450653 990858943 513409487 567410791 340862691 916768061 378345235 735881241 380773401 159476335 763905857 487761233 125221289 320755963 723312395 312853211 643092233 921557523 512121067 749163657 649485811 751354475 747256351 838925365 95810927 475624769 633361839 246789313 54520005 200917339 223795055 92110617 308364429 404655623 806202099 820700973 959397281 26420765 967050909 797946617 725732391 788653305 237303957 392692605 844221579 430196613 771579339 562774469 438825599 79457579 44317943 825931747 804443647 659018467 722862491 5137905 997012563 460010029 508073215 468635923 553267461 702686219 9744689 266372207 593830633 707834383 535697929 161019963 991408925 419799375 847416363 575148209 531983363 967033191 891257341 892691217 639017543 831462781 986111151 79642791 162750433 109374787 724993337 323895749 917285641 372922349 49597277 781067975 368056133 427958585 262377121 966153483 285881953 645042285 820313431 15252991 794147699 877965655 541135253 625199123 507620821 160035151 841223231 525656001 969632299 610995251 84223481 736073359 156732259 344958311 887530039 830571523 257388975 605303517 518650927 846831281 995857295 887322631 32575969 366677811 366051523 771794149 742818583 790870829 872066907 921661183 982272609 550293061 464320167 617362529 407902741 404558641 34188871 649647267 905492823 89092267 500817695 717675489 576269579 449773173 475664473 593473987 376644325 933925463 361795179 674286197 497533529 515463973 286559761 625504689 211637677 352881593 135003469 178717107 40069859 661513719 895225967 828414017 670638801 290405829 509699849 150984107 733471243 748945945 532159737 431257541 992938483 196253677 377135967 834629871 266694065 525813059 293101485 601191693 83778869 649419811 801314451 737948303 592316473 586465697 208887055 124512109 262467899 236673751 684682597 141137953 710426243 204433897 447269921 617801397 751803683 75879677 860133655 48790453 719037939 291651915 492295269 757221689 402936467 131308551 877982573 490333661 337462891 348689785 124831709 569545161 953088939 741245927 334653095 354234283 744179277 407088293 900098825 637297591 60752653 143239951 211813257 621891759 281725049 779722115 606258927 783676633 680003549 291650671 487899475 933267711 516798545 127293251 484264207 831422843 859236793 71645051 307533767 385446699 822124987 831074199 481794409 141473909 160736965 119595045 605361449 500423237 95690517 695509683 68417153 446550803 810484645 89800925 280556089 216883679 592333121 784014663 729037657 734058797 345587065 914372761 43577401 461451275 680886179 612184197 981219187 58328335 361377763 237504199 221924589 664531803 396422685 448763935 439606481 821445521 806772997 842807643 286918293 434916065 404089105 746752073 729618933 274929665 281961345 848428741 21953525 689523247 667967327 395265971 891488225 846010417 555394171 443770875 253037645 121941847 373938283 823932815 460646423 724087413 274447249 545419883 299701089 505335019 37585429 109591951 606991511 849845149 127659753 889677321 596591471 129106941 311734977 181220327 739658215 662152957 619516705 709446981 564809535 342477855 611452753 274457415 619582213 49846887 749356383 30164245 593362957 836101987 650216741 252471521 456126325 175060009 48829763 515605223 344827295 762292827 858354721 57599081 972817209 380751131 576242929 158587567 950003767 260837913 748227239 460382221 441767635 773246603 116114183 333083871 744616595 324036143 108641687 672233603 309432645 871963723 870740137 325366375 668748283 937953967 590759509 838424829 840177681 791488175 707982715 784687291 989318699 773958187 783115459 420480809 775995703 727225993 621198237 4481487 462943081 473313717 102326081 537665341 297609533 865127209 885511089 685829135 685065845 826904801 99138739 699457513 740200225 261292641 453648601 230269043 418230931 473764797 426832505 505358943 326134889 324805765 852606647 955853929 307272067 847726813 461486713 624128595 211815699 159152743 342508397 685453285 498361737 343568211 473440527 781190133 265017251 655544151 514221983 179522905 627829093 517201585 39973155 224738807 891272987 390769449 761737835 577036215 891379801 510669067 954366483 748032907 268624125 919511597 16754039 279407215 44168745 157641455 417783233 941314661 32482633 59034933 698215139 478489461 326080277 136684913 652518035 396595893 99533957 501340055 713482065 467894587 922896351 703126051 49654119 584293165 956503473 373561631 838329315 105646259 434049995 327800089 858366367 163410175 279032397 992212003 429752893 242587983 114300057 618095329 841976609 835705311 513773149 928940917 397406845 308942079 32537741 896005775 137310795 739638269 822532197 705015397 862756681 638104119 306699879 632285111 509605887 878372875 462999907 105474759 222122943 414558695 356505451 354898535 907427745 818989373 493288667 854591723 443730821 552628101 398916951 682220339 17554707 360802627 324935375 986495397 392028859 904546559 588435571 637543215 238020279 468767823 821795263 133180485 520999427 604127945 697519483 271386601 837321581 393690387 913574577 20343967 949107841 350334421 577440693 153448311 806590615 565670083 139131173 129938691 247336915 354786197 461801187 725071975 867223579 2626831 423928091 483360325 926727711 455021049 248119107 9922509 806015063 146050601 280472855 414666167 119904771 139519349 208146331 213700413 910941743 929087683 594885661 882464039 418905765 656690939 944415533 94075589 153859843 35182097 791838123 626512109 821710245 733919229 830670265 522330363 248212151 939727299 579633093 58092503 599507749 215313515 758814081 849770221 899283883 972768779 386116333 617102647 795740617 231630521 3665737 378298929 70479045 395703707 472057379 463302369 914313903 564192729 824537169 539529429 522017121 921937831 31873261 397341477 383067005 285344061 40586333 293947759 385269607 726196703 527416651 67562199 105176657 348082903 918789037 28438287 319233845 669626485 941628861 967800137 941895633 854050583 385536259 187765573 751504815 964899869 205042505 123046475 949128989 888535793 496310177 910170663 144894005 80764933 703629165 759087151 420009431 125890519 886122317 282265667 381103275 710462947 608833581 209170889 644577315 283812281 207820355 222525615 817876339 208450537 493847563 117249643 130202783 359104267 535780681 457580283 557789037 288488133 843172361 706350053 288133745 691653311 162434463 418610487 669571581 220949421 979238313 463656585 696808759 153226311 914000137 715209209 987138821 969587793 57968875 539845931 955469079 883864469 223612359 825992273 144106725 788799717 752574037 70886173 436303025 272265497 784834203 263178703 865748097 806324759 733952741 624324143 43636519 650247623 578763977 643793545 873666875 530638109 758908961 328975029 199448603 247942417 636092945 35829007 521898227 527988647 893313543 982541183 355108785 693028585 853995191 742656627 691081741 174663145 372355866 753313761 117834887 765109183 384086907 611191879 954324329 404955281 435759711 521324971 766873027 594266249 778781599 516920987 625753195 811960533 465376085 637785391 178959109 93573813 761741031 794967557 764389621 570135143 781990399 581453123 290538607 99563061 751621523 548706709 562700137 313456501 8766175 620381491 910559395 386460031 411868263 473436893 602521255 807435957 154192629 747696855 403840707 337951617 990880929 55201775 352249361 928574807 952831431 28741243 528614001 486251439 970562569 569264477 551910797 550817037 550803283 259805943 539060689 908316667 467887835 94165047 739499385 141799947 61021215 562058647 497441667 649823445 669506527 949562387 387101879 740572927 579454761 373360691 776564903 908555059 134770257 616248577 111431851 355992865 142593525 626733847 805289187 97483395 46240759 385630611 113630519 387639837 994110597 87118107 420762199 383279801 786925841 575909083 747121341 804724775 579404123 406056845 815051687 820886597 625589859 833734251 669988381 105710579 891552631 612355135 568172017 5597725 298562861 934327893 346872507 941550259 381267039 234709381 928121563 703353775 46462257 149622059 57369207 951232021 211030545 702237231 327714947 587496687 469659315 758309375 441382325 261381199 815962899 49663377 221034383 576364621 770292851 553110115 68917079 835321361 193636451 968092539 115692319 79841471 172803509 713406057 711053501 715053709 166791045 770394689 681348309 584552883 228483641 56976547 682979275 937166197 143954555 436001461 418868435 566321949 396763201 938683427 195258083 594623229 313928647 161658919 310879163 711935855 254126225 985809531 391498469 503098325 92071019 424691305 425259185 924217241 290450025 693525437 52013877 977475887 56481769 590669263 718477141 58962193 589971341 375700605 671764917 36479167 738895939 210617131 864826311 939504581 333808701 865435081 797545669 507375285 686484473 618424269 906758829 240392231 777971003 650672949 886839113 432716739 399136273 374086023 473506087 150810925 679932875 162510035 865175713 843130139 193010697 758697645 759614167 141119557 533358509 905807669 517354163 647924849 480990693 752698385 126648801 122721123 684357925 263316845 106266075 649054707 607654951 543620867 913463011 249317625 202589427 264909583 790624513 466707545 530216401 827560791 612630275 222870521 84048473 144971305 499023747 297351887 302825573 16362845 583583713 772305363 575391003 619812687 595057989 438358795 474393061 375153127 179540895 538833021 64076665 114320275 858722471 625670459 800182993 842826315 587409631 20326499 210588213 862441097 846101133 703430167 348092975 612219477 832625859 412385405 384947859 82719807 517440599 17958603 191115133 593131611 914606829 442618427 414637139 536435529 433961451 204734221 519509185 777144623 189669761 759853965 825758137 700570299 405355943 365409549 346993785 34106913 720416029 976233191 65672581 243095587 888323181 89089405 460717993 143214853 638790375 480154939 701287673 803850645 78343073 24991121 112018899 678044203 997443199 730824185 339422169 707896229 645577509 464612599 973859577 488214631 501631495 771546901 870544485 564641121 889817947 827124197 238880157 554582281 132881441 609258243 741914465 950245983 915905315 32965901 975128767 428299237 808376303 644530863 423354381 662309549 311080415 790496669 841476069 558191947 499132693 384697745 992839211 303613663 387857781 859005259 955842317 595942415 12769713 890333079 115710975 325266953 101205059 846511687 664878269 699451777 625236585 490575157 454935625 708840889 456236333 729185605 646365171 22048117 152380509 922835805 842910285 407562245 827625363 558657907 649420339 420319293 129326383 301950849 115433931 909037435 189292377 330693255 28738943 722762921 310385409 100191633 464668421 35672881 426060511 765035697 152900185 667349515 689271925 325046275 223216831 276513461 455237387 313683109 637409731 591106615 821191855 637587907 844529721 746276381 631780153 825590163 61092157 31034237 658632525 220710473 17641781 859743735 327680337 958222637 143268045 152528049 896312437 350395269 433528311 619346265 380034481 757586853 97218289 571673381 282730695 704697831 104932673 7254483 364177725 663201197 592789679 805148329 645152101 759157347 86215761 638006645 286579541 700408953 379116933 867135375 149970417 422047851 232094445 128076501 772608477 196601785 199848823 555153067 156308621 741779439 713165143 958120193 419180343 278522271 260074247 345234767 980828637 820555109 61759567 826038159 648606275 604706527 266849591 315199819 383851263 981724603 984197399 379646607 596313189 63565481 997362569 793697009 527687065 836547683 896566129 268266129 491919231 657957039 325904895 757339413 231805387 983258963 6664099 239341227 972058609 830404899 698065689 260181769 457386039 827140345 107106921 711154797 85162655 223870649 55620573 342987933 380350463 266894411 369001737 300016105 102653675 837535905 859752905 999463973 146673861 459401397 956163395 314233775 848556725 192561805 153704673 464208497 590396587 548858415 997548891 593836245 271234145 241337007 977206697 204437715 118715477 974649129 335969295 57813739 231344847 644219323 867339551 729792289 675797219 708771475 483188903 395083779 796804963 979112673 485802181 561344935 664869365 367485409 697789153 772911791 443629567 281402323 188043425 349711675 407069617 426802435 29335807 550646783 56655109 421649093 265358643 590601519 66234551 32462447 16805315 122199433 60970325 723703397 53220733 376936787 984222763 426149651 146018417 753194333 936204881 114082793 220320511 169811963 779307435 703300707 49973963 482884109 124279775 745417987 906339775 791201783 626100059 941795921 785438479 937092779 823240797 22947297 168238651 892708507 575472607 302944079 729843715 363986121 275162797 307178297 399717239 651367863 941837399 361310285 61833449 537091705 496351283 933559355 496057077 534612895 709642853 122317503 598820737 578467917 26815697 329986715 875920567 7157541 831914027 216678551 436026893 694483287 47917801 804050567 695320895 166153623 614592075 342313541 368584017 210081063 617238875 192335029 5952911 929812685 195419625 998367423 734329997 242214867 546425739 569224789 385017127 799521557 545222307 125490035 6215043 36817387 674071897 161993499 371749389 582647105 258530463 886251093 348945527 415429249 647203113 500033333 180198079 102084261 979607163 207652311 529387049 469441833 914334685 89605977 348286529 292680465 553082717 54499561 385076701 468725745 653805269 345500855 573669399 609400025 467400421 970006271 368670547 482337133 160134645 535273219 146023487 217188047 893632311 565842443 537296589 771464367 251554719 287578733 830392125 628663875 423928049 105474175 791373583 914825033 670690483 299772839 818206225 336693511 889782071 287785803 958162265 338585933 847495317 789028323 400531009 752132463 256278957 809883109 43479407 645182285 816548135 167609043 435766733 519571021 46930035 636551227 119960977 20231771 214612681 595894443 856823605 746431729 293135915 559165633 418438785 196272649 301196895 284895259 135468927 343005997 807563255 596377703 358402435 656561769 332403529 599870039 371333161 297989973 704055161 194525347 216665687 203948559 366026605 877721357 599871799 846985275 203835603 494779747 167196479 360802313 668516647 519613555 533103915 528468783 94718633 529111833 635250943 906116075 233273695 205213497 316261127 805411845 124091417 161085627 186627289 519220679 423533939 128295571 569282125 211438349 202214089 13501369 501952139 384877617 20701511 609057327 480406271 418642201 453120729 625798659 574236763 905153591 50778939 341387331 926102431 325771645 615213803 587049485 553436939 240290669 751438899 939306367 577744173 650915851 871549473 729557703 625062363 916127717 580835215 919968535 29519663 59349267 733648415 702528423 386083981 65756723 983521589 349026489 438557091 894578537 581950211 823154843 176249701 141054821 821839235 795042971 482795789 346189917 854820723 278439447 215259427 904558863 78099291 9971055 474033775 227096003 483555981 670262541 516403977 838398277 13782561 379512931 7791435 464027115 668958711 867673837 599724763 301934229 188886967 592981805 223643555 921320873 423974353 964875181 729502937 311485971 210970751 226312701 353782265 42681933 839031997 608356283 299881927 354596179 239207769 368159621 581712207 142735275 487664607 498914825 348616421 808479331 413727143 207246585 974968101 910836243 991782101 904418317 610981877 203922905 493399887 721722377 40075137 629348441 873021893 120169909 338746171 340927683 432503983 278107367 189239009 721490893 422465357 169764727 668376951 72228535 225506987 845528645 656896073 146730051 638055059 860155455 90873325 249024451 459949219 253779799 718782267 699896845 212584247 798713733 717904475 981047421 336045691 477524941 109965753 277286393 90487131 475379511 808390921 133439987 854736019 739708889 731796549 987640159 608202147 360936395 817819317 647624635 394781649 378567213 839267809 265195533 989746477 895196207 660722849 315173859 102778257 143530493 615860239 596705877 623226783 125985749 520920719 429183233 317920699 30109945 704827599 932250379 641652503 843830963 818608323 239517219 323720877 492366163 711912103 415486849 13856315 506813751 718867965 453548255 327590731 634990527 829344405 273321351 614310443 742019157 592210305 191126853 99772149 371569517 311343133 351791983 154407049 316483967 865592591 526062053 942866319 413509135 79974209 452689933 921221497 709276325 86363883 662760917 533136251 559444951 221710979 554912947 409946009 843217981 747976659 586845347 27675033 611782009 413083365 563116849 329409039 154305845 937209615 132417125 46665549 998551075 635967465 380575193 276512377 378899201 986328155 727091115 490657913 160877963 28984209 497458047 398982397 844202897 883528701 727692167 608396157 740487139 221382751 290342261 376994875 566797659 954354871 964812169 75937597 914786265 909398867 82571659 495848277 82089805 269183431 774535623 354627867 274227875 152244209 305884693 228848621 407960283 316581621 872195281 132440311 53787123 884381757 290508771 217410599 387648501 785723517 607139257 454542133 83476471 721103029 867132487 933394593 922903313 585125669 946107919 713359541 948811109 133184605 103984919 279811201 468429597 811698223 471679465 942561499 653843309 982048439 435086495 949733223 730167181 755195225 170099671 746677129 384358849 273057733 881251253 766944629 581003347 281695467 177999595 72770337 916912787 18069511 930905003 669736269 945774047 410413473 826025143 134798467 24263831 524030083 294793297 336319505 172962085 112572097 958200651 593411857 313192701 494390967 393866747 216232803 486702999 354856971 955428669 115039409 974805879 359196841 214758777 871397735 125110567 411933635 511238045 688402369 711942201 558736599 413231647 52198589 721494087 927040169 348948477 399834915 636744179 180658757 474737085 502620293 526328807 672833537 947677295 774769723 162002903 249612405 453616295 655596645 3338107 788512649 394590597 846808811 262711191 76041577 104687021 895041661 687109877 307517833 935869521 654334357 996939623 836314019 43407395 323670385 242658503 806242493 11705445 958892313 756562423 396697125 536945115 194211935 764098017 310219883 501788627 438736091 11305593 970690671 143238437 171542765 122057655 519304277 512236845 14957755 27105951 541776007 195916499 128975673 126757947 29691579 858569605 882393885 285916317 361455339 830984249 634182121 180811231 667101791 187935341 501705955 335515939 135304353 694732071 44003869 933129619 379308677 461567479 619240813 926354275 996916519 238770673 908376951 840325835 555305197 415665845 91715743 564127503 501284993 2860905 655963673 356097913 496800729 249772985 65588955 286563419 641097009 298258655 428647079 719135247 862024205 640547989 486455553 428588535 199177785 913052197 190775871 202867583 953021641 965131099 953509493 353946389 731543833 645439887 647152775 732204345 699911631 392697501 675027737 55484265 107801559 985701359 227321757 161739569 567000419 221037423 757526349 857898275 938264307 265304213 773112359 106744793 151641671 85396831 906893813 450329845 840749933 125170515 948463941 673176097 945114555 840657025 189003889 163803665 780915913 595504765 868319387 839788415 438245249 755250535 130659495 461465131 980826891 946307813 679413319 666513889 22433243 61912867 638962419 105603443 871858353 959829467 242056429 129511867 791903629 435264839 418326077 283616923 902067903 35018033 244362673 365057533 849715159 480839655 914884067 37991125 928785589 800558397 109604915 423050269 4662909 258678673 432247753 959932373 694316697 755898059 429709973 642271753 842968511 538907481 4274255 273395659 206588139 832336689 966242169 307632693 456011873 333411537 250582105 571297641 298460843 501681729 326687745 598222225 946040737 758636045 320233287 522573281 314605407 670458955 118155215 480373651 649985863 163493787 13400831 551895271 693895941 720833059 410918663 379478569 340123535 749474959 136464351 466576043 420856865 926301977 960205895 192610247 212171071 316218493 570217161 269930975 216546231 703623425 155463861 743810399 914419097 52352883 991797537 944590263 291243333 494871083 426563057 339616353 301956701 905986565 125380809 396836323 557861581 68916587 460363293 583035075 221694925 502320967 257036835 762432149 828080853 226029073 669666779 236095731 107760811 146666183 23469583 464200319 866370141 392389617 439699533 189771237 624915515 867931291 827091439 885829845 240521957 342509403 757178647 328387849 768316479 309692753 539461033 129961797 390740083 668016419 513546839 170456661 644339447 353384959 59783067 945838599 515477381 282013849 287852723 29631543 845474597 578964531 690521769 591041479 691463967 666965905 314823499 713645475 50714635 516345859 839050291 258584507 221826245 622619227 259488705 95751689 359872365 824860157 736789533 158364051 897508469 269230027 332183095 745578335 838013837 752937783 280718535 898057089 204174001 671502643 904007503 700162579 105394985 960502591 675772183 722248247 981166719 179285091 314469421 689303833 776574855 987173931 798888553 920128745 47965023 843514797 630003823 611228129 832365161 111703689 710162597 976146759 577081683 477677541 788137019 690195041 282072591 402137967 30911017 473042307 407029467 55897693 140291121 769839879 345536827 326978667 964454873 679259217 759219963 564793571 395600243 978248903 976362289 333420947 292923669 598733023 322755895 305727439 652136355 346678547 278897073 309111159 551903169 813413091 683829133 803747823 440826083 565464029 625294077 642375975 456795711 957657231 761185921 305677973 159581655 812741525 401433049 743140409 632084847 305487505 186982165 360523671 640045469 807628591 535540613 925029053 284094133 137239583 17330377 379063105 677951451 646209565 65774021 357576003 847694323 58957545 302683043 5680233 303528625 934185039 772487385 509331681 674101129 894639393 714334243 123638369 341539521 205335099 445458819 349713191 731203675 702849915 901252937 695982329 651414317 271673551 72119559 236855333 728591819 79538983 279647899 736596099 294574487 937296255 800248613 58795121 543742905 409697751 990967831 41394645 49883681 903795259 577334817 433855259 757776521 554866623 47411265 346667067 62338415 182100857 769299131 94891957 709932827 21728653 848641051 199173003 364199585 17791015 279065141 708952655 707113683 724000887 667012903 99918871 398002007 311568825 407067731 137391999 798880147 544650797 293699943 347808431 247504311 465394209 197471573 95954517 314054077 840776419 600029021 68541095 479183457 335597007 371484159 537248355 918779953 18962249 122945033 519665615 351199865 590108599 453842321 245337531 753171025 900982929 368666865 945578619 69504413 474726221 978723789 989865199 835774979 262314605 244711955 165342587 668144115 109041277 536931063 333896465 352884645 848122641 216175091 714520099 330243097 673320895 19142095 990300593 400981017 167494443 958302099 513903683 685963061 923648513 83071895 856125157 82869955 543893489 937861751 450397231 517769447 117327543 849877011 680034109 260339589 747591445 211564699 187252919 689129297 672262099 31490947 789973963 369481409 929063109 576321159 751063855 689928469 507638727 897911979 236816929 838610775 373146039 399637307 207578473 735589207 630631811 300657867 223461969 143141035 419386139 562653753 624810931 317168565 997260411 39666599 214657261 261517981 706156709 237003137 522272485 883697749 855930017 480982909 420705031 675022737 343407237 994267545 532355149 277419477 810007655 652608277 328710193 271509609 727538027 942099327 360875453 334710619 961957565 100655531 754964093 553196677 146764431 399961783 711670153 969961095 666370841 563241733 928742525 965068233 182153117 845591875 236376193 534248317 701870953 385409381 618942275 70255767 623315147 149835685 519498745 274321627 144320031 675270025 985904739 13267919 411645129 32803551 42758595 640672199 713567793 149111993 120411115 700075221 267713737 714693747 837211183 252127199 26261773 715291825 712963695 528797067 354796671 383045729 934596623 40685385 317852839 585333687 846701825 104783953 213382169 95707951 157170359 51057317 701438321 318782093 573974835 253548555 528284751 672878555 63662073 23975701 711583835 754687601 584469783 702073881 608606797 916444139 750280741 548388411 734348507 743441193 267303231 928383073 172301767 551730525 719766543 934111801 717941471 11074807 837725887 652141887 395146481 328770229 831606023 234032563 598302939 293378203 481923365 910806427 68935291 275047669 451245791 385977799 152837567 469613911 802822789 504736467 647596441 765784991 875573227 467400731 986840833 368888047 681294705 124026571 272004089 463445173 348318973 724477647 415822479 670785443 228186365 267611619 708140497 747862711 49749861 735414405 486451421 209874485 913925815 624475391 923968979 618501291 143409399 697395807 895075549 903308777 415214771 402320255 975449901 431164431 170347011 865238529 509595135 522176641 224260483 722755913 842356629 914600167 569856349 46827913 593882167 499062843 351307323 733171387 743618363 456649655 985052757 296640413 599841783 208494045 973647977 730317495 30577361 916473725 562576575 917990747 495878705 361610921 43425827 754731681 767195531 398724029 626890987 241554537 217579607 322103389 476324855 328846427 973318935 204903545 417630637 846714087 529598041 508058433 206718713 307745351 926583723 427909169 916055125 759555447 462787755 107985425 495153853 419541317 12102649 297785323 510553783 324190525 550180927 518802451 751762769 779240631 770514223 83867943 2711331 93563351 765534853 431549705 70449995 253441155 898292483 305860069 952152685 146502507 102382451 113318705 285204921 449008903 417971109 659228841 56608741 820803735 9197431 148038995 540301359 547219751 254547913 928646263 960073055 537226881 953359749 369267371 664206017 507888195 405597341 434681549 390162731 212785353 741021453 808317183 212426237 116254271 794626519 151012783 401929245 482070417 549585413 835665551 668838649 955184507 576986535 876459423 327971719 811559805 38336731 577709599 618627395 599488733 360014017 182662047 353690937 384340907 467713155 49257199 899118321 988028353 576681555 924327215 906583941 676279233 280470639 519227587 292127891 834477071 986389523 289822805 904059711 537446877 985388687 6976475 965070649 67673637 334844467 599919503 103790007 283214501 416295767 626791161 993711225 951194343 169870177 621932003 881599169 853730105 22939577 297143649 524154465 619675061 179846867 690170575 327193775 96071483 555692839 111018707 894022023 945196147 654496825 550586967 827854929 303110863 665402771 92125585 247195387 481185155 296132037 65995005 782122233 204971155 500738925 745664095 684026445 614945735 768074283 717825475 82135163 106384301 235300265 226982525 478919571 307842205 985966747 999506475 80738089 469683643 258260921 394318255 889904989 214360045 447422151 46256181 84280275 168899299 305490829 346562101 308127931 116754965 312616161 425011303 416829389 662236101 261918107 933395665 508982083 638580217 567608221 101440449 850232551 521410947 517066961 136454343 602181381 898419451 717352491 238942147 894436211 408473535 645827235 885955031 746772115 417464571 714095165 253443697 410410565 435131037 417780995 905042501 659197 982131293 572557317 803537997 762929839 853257403 908380257 22776529 298882521 423062529 329748535 264178777 25881217 589492031 675250097 292478653 984794935 839993675 661343235 298782743 151491599 419316169 748108901 282283469 40782761 420962333 163702043 919714697 786439721 872819835 267626607 391007297 382778945 776975577 938295219 730331953 586527267 905894391 677481023 843614941 783074959 749935711 652767353 929947151 824693709 785252703 803787979 359215327 276200105 410616849 656572067 481961385 823474043 623463511 641275777 880406543 556022047 541719509 547812323 104317949 852690429 444793597 409688659 454542507 976590595 828562953 954222183 168515985 31627431 746839543 381526455 561112949 488372711 981728655 271375589 154634595 115715913 422441571 58244251 571768751 426323421 979837901 216924813 909512951 517180983 326548455 415939699 472728861 607433591 298813087 561538833 312659023 346824769 757453477 246881073 812910079 961835975 400509549 592308901 294347757 337118907 856010555 407394631 708380441 117721183 145759253 874148857 916459217 350662517 316304077 269599141 195202475 414191441 745839355 477754943 869695617 579976387 997766911 569921471 407203191 459268399 571142911 454249257 359288059 697710455 931636207 965355399 818635457 198588683 247646341 561689323 287151813 307256545 687430211 232551279 581163593 838485623 736526959 183937589 389289693 863703251 437805339 80810599 949527891 738548101 455736351 238501945 432572615 835115425 722390041 176310245 852785055 839049927 962026357 901487275 312227973 115830811 34172255 182049751 247866223 289111375 383900883 784826297 557317785 156059029 383567249 317104815 176968071 929589935 650660125 934961177 290745349 360506849 187026381 447901027 567247655 405903097 913755061 341834493 239325259 26620751 767868345 176814433 709048851 925756607 155993213 815754259 763015021 147099825 397090163 901649053 300500619 219722515 159941077 46633873 138217451 117610331 714735521 26874761 204710225 663638919 276744353 802587687 603859659 965855519 496616291 557485335 368087465 922480175 732545091 223975687 198175115 795079245 606077533 520582327 312721235 193399193 502413467 828565989 874693679 240502199 342635693 483821149 478037139 734190297 516437515 310087409 114273081 634245299 694906103 956600443 685190185 370147713 141059449 162282205 528052651 324599053 826790495 39534595 846665559 961691043 119755843 613533403 910946055 591597851 482435205 855567973 796526561 308825043 102932045 30706335 521077071 783389103 158688139 819210133 723521031 32838943 655541751 114948697 890244867 710428697 721176595 703266309 971906187 209210139 969056293 178167483 861257001 19283501 786414911 542003367 199022769 146088411 829419065 293595385 560906047 706939963 756946609 688440043 244062265 465813997 484587539 884550337 502560587 731495703 476091533 556994757 468987239 319786597 502369303 504398921 631349707 76839953 938298737 288726695 939336955 316068567 498912549 250435651 556775363 471035133 149092483 544691075 428811319 504844625 329351841 640004061 410744501 351525419 941513571 557428427 701843679 723961447 417886829 353295053 618217635 310373999 504393267 762362479 486196531 599693101 158332139 964609347 793758223 112211225 818339221 944194275 536451063 801965873 784368891 516986865 559773689 875708413 684242603 876629785 852736619 415372935 132478465 722101771 346626023 675178347 293152025 10238593 612577361 450340803 910498269 715641153 999992279 706900535 157890813 911746321 673756141 94217715 239992051 238669765 72420431 295735217 66940157 110748983 132882943 150887085 638270501 49556553 121891917 987278253 774285369 384102375 148619211 30680063 934107347 683111937 789245781 309644923 520801363 465361553 216183057 900633215 373014241 783627421 624099177 372694255 201879405 980565291 598093843 691966267 533350575 38088271 30978827 790253147 652209193 996642851 992876437 659715529 323493155 933238217 77928765 221806733 584371115 73228909 320878295 223112759 333117339 178647103 386739071 966225373 366491537 4093819 585052059 750280987 365610489 526280033 956752855 252219161 887292929 441473853 479761445 291758981 985014433 527107425 822410437 26330003 178284955 155693095 171344183 745483525 820515445 105884915 702185289 820774687 898597761 166961963 136683535 548305329 818604245 8374599 505395431 478735375 25603925 750366651 483336307 434257943 411870117 889432079 255572385 858131251 629646649 358127561 215889573 223338829 242006343 912461693 668309497 43195869 258015185 724012485 138441573 904047843 763604125 656665155 991174897 497668577 402444859 775230115 624133621 261228777 461828359 985678229 624320011 790115217 646698013 50855893 354005017 99451381 485120615 397397283 425305929 529507261 682842007 865800525 784356369 132372247 596503329 229305121 586442027 461798329 396003659 890835835 506920095 148120543 190754327 533796925 394324663 658551637 696734811 194179923 695189767 590787683 923949227 866684845 293452651 288852195 509525609 946076743 157045513 443988787 704766141 644951841 837754699 956420919 156759447 235024969 858302185 219162977 665465521 960207565 283106523 110166947 118154377 524227529 133044071 157864061 731159399 16060257 435335449 169505783 471613023 615483323 986755013 402156189 15418437 452247567 150064521 861867143 48514745 370694545 285104583 51333713 529163559 158443145 87194155 919652387 541320125 450737469 529985453 733788331 613772405 990675713 310954885 2490911 217469451 321333553 856881721 75647805 462717709 256612395 830973079 548851275 559673031 846808157 532696751 305330713 435241553 625426231 697258721 541586171 847902095 995521077 105215697 626740175 634836519 64628183 763870825 761924863 325176457 647707307 623685853 696293749 453912301 409256511 69807021 874992555 264419923 243056687 982273945 378245275 710525317 987709215 194656177 330548431 498913811 369700789 62305863 816134995 871216469 833409961 977566199 801073855 806809449 896017585 811175591 942371375 738449977 116588431 786420353 941719627 319703671 959042831 150200059 620787265 930468505 792670469 653822417 245458119 890132959 487451975 936672263 383267611 814004563 795160251 833785577 530915331 948615877 89295431 938666763 315029711 36556235 726982627 405673289 337559635 454063303 575398277 686873545 444655599 104235489 470134831 385359607 442135177 607302667 280344813 801739397 85003661 448907257 344565203 434449521 481806323 807131441 202799863 292840447 307255099 597559029 248178559 4990139 769782889 479482201 514826387 790628731 26123019 302822455 510777957 198883673 692396089 92183083 452026161 348532409 359073167 839295903 39334967 686789193 54454837 714761155 600580805 454627323 56383961 571086735 533474601 776817167 997186481 975029445 568568257 836632581 545814395 73550059 969865707 220050349 186441855 231760981 908239637 213179927 868413575 355721493 791852975 350551203 169265391 774437905 824389685 37276661 556947345 688466415 114137129 965245687 679439315 371411487 404374803 63099359 159140775 512004057 418354057 431651623 739775615 908707615 263226401 660109975 340958301 966291383 423273601 231783993 333614277 53961779 562346577 890824545 804815301 697257707 62497859 680602539 757523701 77046013 646821651 242200061 861188721 230203221 883716227 437399425 327358433 734944159 963717723 914966701 192257395 426196311 458609009 202579005 921458909 54003901 551232155 788240437 408930911 404749783 541697983 379133665 329621947 820553589 612560069 577242071 990761283 261478451 407216799 249161455 190225611 645965165 464349769 542817105 311988403 292392527 517502917 424528489 291866849 616870597 9617179 2646249 776492481 566724747 340073825 718868945 232241485 688836127 702644141 142122337 440615937 14498763 747949093 703832615 566463459 251881117 394614001 648930809 246745473 708406641 785467715 298617585 984960243 620516835 70923863 272181875 962193621 6646621 796983407 527043117 549825359 858967055 394709461 401453843 860328721 558638067 672335833 860490335 852464717 294992839 871001049 637239449 288283075 792413715 231819315 386757769 858970041 142371881 945650005 133068871 114773759 718324001 879348401 683201069 845663723 399209691 151692735 748316641 164976473 936677119 74098947 166899021 383518639 749769725 924577541 286921127 499532255 58400271 397736283 422401131 236951645 121493041 39603611 955652701 394581029 8480561 930189931 680826505 842233281 559504539 930783347 982759747 620116031 264615369 645696359 974970151 700442675 274246361 30722303 538428443 818438843 678223799 827730429 441547339 322209409 89482001 869732655 256736553 152218799 228311391 236522597 800813683 525238269 466886113 722537335 803035949 581268905 579159971 423672139 290997411 754997371 940348527 445801161 176308587 519676863 690793443 253265893 941587549 894278731 686090843 676023447 850005923 331819391 492122115 448253921 295446435 34603585 968333255 228085969 257683991 156801535 6070883 588142455 533967607 637255597 810570583 830501355 342217611 157634765 939957225 828110163 166461787 483373667 123600937 573714135 238614335 194527743 832712691 596551339 212116561 717370549 958278627 6191367 806199029 901111843 732162659 636131631 77538265 957980531 479547555 414674027 793991921 919490639 618362269 843841297 51659897 994210287 886873359 350742905 950660083 807755795 739360899 420974851 508855599 554228221 835103303 45862175 753524031 424947583 732843125 142585913 476399487 627964399 683651565 234083535 774538389 316491049 566762327 96089187 68598637 93016725 739061797 738376319 908499001 831545375 470477195 788400053 435050871 312655169 494906765 583787677 392791785 651602423 500530163 912806109 756370591 422030279 878659403 690899485 794846701 834612929 74908143 903032081 309634667 238963321 87379197 853771889 833347329 805890317 940406113 914618369 479792347 892351015 928106697 876507531 19214443 915928049 150418605 445427679 904984689 286205987 413866831 341893595 18565357 999743741 5471413 661415775 691382317 928657475 812584369 493915221 247675335 977175107 38863579 661807025 461245843 82490579 632226705 816402027 661157051 634206803 360708351 796774535 853493927 94572201 822406419 4734479 700413451 465270851 938585477 895189525 303397351 648972055 893203157 497317809 264514683 616296355 147757901 107248905 872903255 781276653 640966141 536824389 909788493 348409477 653307837 889046169 119650681 856821119 554532907 905235261 83571775 625417081 324146865 739265653 196522831 763414685 965539713 52635275 189585305 77506965 671170705 593230033 501184089 988940443 375997601 721616033 103597591 442616425 944917563 565470813 627606429 554769225 119313069 635372655 552649983 913871367 262371089 736407115 692535961 829081339 167866697 780727657 950633489 501460225 511064313 722504269 504481107 72657025 767873171 668810113 668085137 85616745 100102737 286729877 448453705 560122159 300670769 331270439 936117311 240187857 71465467 188885463 240031871 415758549 466016323 751970129 444926303 449770315 277027677 500916547 811303799 453082055 548748137 188640621 414326961 536908137 50846803 399646861 863975219 94033109 769413323 812077935 98581623 91927867 16765765 491909603 63876661 964268883 555000581 859170247 967262579 175383639 53286161 315931131 203045247 956329233 288058171 552243051 50735337 911845069 661298971 52315141 789885073 793106531 270571281 572191689 167808155 405555503 928695107 969753013 256238961 981032985 109641381 833191637 294826185 17922191 232002029 12371769 136083613 306807175 264891037 298254591 271873077 11350143 508092411 389296967 559562011 630618751 502469657 994724157 703794211 336933651 645289167 95947025 318536297 539758417 359572667 20730109 540914771 875141337 869089353 888800325 72433291 100602063 650547365 87122995 200179463 420390117 908939979 625612569 98534403 286495309 22094459 505174353 630246659 672567497 701671225 702820925 112954835 244748701 462109019 572855111 796186503 779807383 182149365 518764259 566814589 506052367 228824299 193424265 999716951 306250977 173713889 739830975 692210945 453163381 433527113 53941771 37833649 657841849 923823197 563087359 865526501 569503267 891126043 252902713 460350045 347242929 707002189 183651673 858268711 644700907 308273025 21281291 763159449 5632987 366765075 93295103 454371403 631211549 972852255 15765487 912415527 993324491 243945615 245578143 942664021 775078027 916895507 372329177 106970953 928263823 40057635 313326703 415144387 812792201 675262721 954084155 947974339 362520507 401582261 298814751 190503065 877523689 743649549 426186759 491811541 687128929 66564259 825773795 691550041 796445435 134698199 634268845 79018819 206178837 660138193 708346217 466893315 200914067 180611713 530190625 254447693 318038245 666168223 813678823 834375965 616965889 996647597 34219477 847278263 95842149 356296689 373969423 499745703 368839193 566923389 925563835 823521729 537218983 310966057 496189967 915499297 182460459 687226771 935233091 347497773 551217215 93087527 213669533 120578447 284566537 981797907 356436323 552573757 975266875 771298383 865335785 864672627 7030025 351406235 114169225 828202165 110479663 692038529 202613925 248674769 782438135 706938449 47618983 485406935 655931695 918288929 598478339 487637031 750487595 301518037 915532083 712309091 121405129 542984209 777618871 163690615 830232433 133308489 934877723 547512987 632020753 952928691 261811185 984454983 158060065 818849615 964586195 41677123 806573467 128247783 906575205 674371991 348417543 343338249 21177933 121195675 761582709 187698193 680497985 900011239 191852923 418553115 531874299 80293477 878567989 31845905 782781755 3863357 463414089 297151907 762145229 760206053 866267625 904034379 805951363 36013335 136282825 626071879 577488951 754474715 747696935 71852449 90846925 399406969 484779465 183862055 263834667 823783305 789846013 976230771 254095943 473347559 430093467 896658661 235513115 372211379 182419201 812343717 515433383 50342495 635738131 2970787 5372663 161954459 963659073 468753559 928931613 937111909 962507137 928568579 310839347 123524095 470676051 474775343 536260445 822113785 712490681 536783657 551651265 965148197 195464261 999990987 976305557 512125857 900140045 685177523 127017747 695694031 793805741 159650637 649718651 316651613 502357581 991347143 937625627 696431677 891134873 138783513 584637761 199435437 34405579 404960517 331017545 22681393 732587935 509797137 614645141 287483797 999570779 492691343 49927057 469471983 978223055 541161109 96005037 315051673 568065103 819601159 963426405 177419063 193740985 420599689 257265977 543902135 6336631 542931855 125057973 467831371 967677811 763135567 821347947 218964851 80603941 606458315 986357749 956864751 740921739 352747977 232783863 148717263 65129005 460331737 640792087 782873699 935572247 940229463 148847885 357597005 402185185 535431775 763133837 355094635 215748775 84817627 699309407 54743277 938934545 451735677 745735753 568389959 927408973 980379321 705352991 754372661 631164687 212936149 748292283 536885179 30562969 206058451 124943617 146336803 223008687 729216393 223336407 886207749 101678241 342164875 811861557 514241597 344607043 685430587 399966479 933432557 205228021 666064321 886699629 906798209 362640539 254842637 942837845 389164463 620468645 309224153 231288283 778094451 694165771 960280483 118469657 455959057 603576135 820628915 76116275 551966741 126015587 523984925 653113681 465755475 186826987 397752757 988242341 629990889 558159095 301821979 652512107 551821113 383323939 991512251 313618659 623984368 70359959 774547395 276034649 247484931 678096641 652178733 557290785 933636015 913760151 918439349 668427409 233899125 656445975 710412777 248925965 594760995 331164359 406456085 941967105 324038095 317200501 381558353 184723933 232248531 50249595 993340801 216060189 492096467 293728433 491025995 605026627 891682493 719238787 276653343 943908567 477811909 850762203 255352373 525466477 458060133 37646643 617953933 893370527 522351973 229341573 483253489 483072273 146915279 571464027 490546417 725090155 783717109 164517825 641978341 311949151 184562041 530820943 127497195 140908713 397126457 527527713 922733293 612753929 111200359 21376991 476015005 434515533 6736499 394846391 342894705 706015043 328644377 206796895 127937705 816790727 290067809 723362325 716817743 513783741 360090261 221748383 496633395 874817805 625964361 406526285 849984235 844580009 506061915 15119603 238787033 265533069 995419629 501389553 985891621 292560313 179294827 55396907 213355457 60229435 257943437 330318867 544101985 828206369 505055051 69213083 443817611 952698759 858777835 861338693 917643649 70303633 730863097 632838933 782704983 655263335 703470409 955171225 899290599 752449595 216239609 130879721 429989837 105009481 614851691 620827809 589079411 497728211 284882253 116731881 250813449 595365921 705235603 797294191 1186951 554257799 456831607 262461801 773533871 907231073 177067649 713672341 249105415 595674381 476828281 894736185 600567523 785338873 471761783 277269285 543188309 998434967 304129749 391480749 561346115 603871071 221823799 858319537 593842771 628938195 520741771 503412119 688438517 72236417 245689349 163965515 304979297 290249975 263968033 178856519 546229145 616267473 605857443 228870535 809261411 724275379 170895509 431104913 797382993 255629381 51438671 624803443 367902651 680491577 903587693 704088517 170374591 345105739 228449999 587844515 122050633 747549501 147530663 561285557 98388229 849925591 704477285 413286953 812690799 341717999 696055239 523306677 727687111 311914075 305867217 90680215 747795987 750322945 539506383 493105303 170405669 729176009 696227413 763536385 886806419 900427685 862682177 502107563 871044799 531083153 451262389 422437365 689405907 743994767 875875359 172442821 174632123 158173609 459308081 450977415 83172147 831246575 531895529 961895733 440044473 472685181 387973259 947010889 626095255 680279671 476871589 123892429 300186843 730138885 260145671 112927311 474614113 874925403 36464593 453392355 745149893 194677937 25965159 567246375 251591025 762597193 801661811 10433347 265163925 8259953 223647209 181553637 814738731 976690807 819752201 350117955 187738609 180737977 953872723 227904797 862913903 195772823 251127703 282433205 525372151 355229819 242551783 16478173 842421665 263469527 99495583 512246505 901147469 620388135 376163 259070649 340791715 809269485 16851491 547209651 641766163 475676081 419872271 546086597 591964119 698121993 656118437 258826851 45178603 279387787 446510247 335295887 285483293 547222749 119672101 607935693 824108025 998970023 174856817 340804909 719728857 761736605 918180137 648722243 794117083 442753911 375710511 490320429 459530475 395364089 86504623 490337939 762862263 590808299 854927135 39313317 332100023 805670179 904234045 214522389 733837101 333215095 550037257 500143907 273566751 579138765 855894225 562979735 329684573 367621645 618259497 945166525 162547587 808575787 771234287 169979755 205829613 709862943 600106053 634448641 947830215 927226349 76574105 768854117 42837503 411615133 593033629 177659653 181612875 106913605 657417809 264463317 480309041 423717117 819523829 241553495 100572405 72976869 694122777 758642063 182703271 745291051 58165133 3025677 872673315 107982593 503874417 539077605 65148421 261054367 281181993 103633845 987183287 858638921 93306207 180469669 214307177 456043081 20322825 235385189 112346901 974660591 452889953 167865383 132567417 309484953 720735983 14800299 89658911 701020327 936810109 888518969 966266709 305221251 872681759 427275933 936946997 777158561 118298161 196775725 535665311 161325689 999251545 132992715 157065789 861341839 101039233 536208599 698535291 523419499 347532511 392031557 471260051 834278307 27678191 540672393 729698951 473139663 323112309 690651041 703563807 929045903 177877373 912258835 537058025 858263187 625941339 686571503 527353151 229461383 986000557 931096521 599880255 758462249 888213077 298444991 929425109 657789755 630310273 360952955 887249583 585135495 326063267 489655591 342490949 249993951 801800313 554461307 514493145 210094107 285314311 362170551 380134769 613478689 700790939 789514653 992338399 543220187 969431237 298606463 438437051 900348727 320763237 498170419 733759333 414805043 60672925 380491797 186030339 769556177 77134555 795833101 723055497 19116827 439139283 611431305 578575533 705684515 84286847 665122687 436900591 406128899 330057255 794803053 53311641 320148955 482874451 205209433 370246331 974221531 52807131 94786513 408350765 922107695 439172313 271082223 810601613 248943639 318729395 981496651 881665861 831571409 39323411 407227153 531134599 718652583 368354543 784656107 553265737 448044015 746508675 69519121 366692171 56420609 541197139 834276931 737373207 652974143 93828905 61242053 716211195 242603539 805163807 955754853 907554833 159560689 613546891 383486585 138348091 215171921 337736213 512093411 991748125 361615031 347290791 902369541 49775145 818271917 356015737 374345679 632050329 468330693 776774915 63264181 313381483 272075929 715044619 195336121 50044519 113561291 645817757 443999329 263845921 153774085 537767693 4648631 626795757 523818491 515338745 966263639 282995435 713513573 48361539 95903065 34813959 772942343 130123801 396617577 572719857 560326059 960011501 4385969 825557533 546491683 426103423 21038059 102289103 31481415 319689167 609322577 43777549 238856701 317185579 385421997 771607977 950695727 863463977 704488523 988297019 258383309 852927651 159467011 973350179 953600977 488964541 346833713 502505351 292632639 65422311 49494205 147515227 502345761 46141135 349143061 658978133 151569801 741730423 469056047 241639159 183825041 917728289 43174025 730983815 430622299 840025431 169166891 443369751 847223825 600133361 578992287 4638079 223663079 200098313 862711553 834951517 451108885 510003461 542270185 840324893 797359071 987102351 701968771 550927851 994646159 834670239 716852345 966173379 345122935 530886507 480236805 352477029 701776881 952635005 57888995 926478167 164500575 873267103 881677655 534439657 173705515 260720103 902024245 735718453 341855433 401514157 266527949 878734877 301255091 194371225 643507971 906859333 421087593 123185303 901476921 165831967 375633783 291561689 340784735 379158757 975091823 947645917 844312299 572360853 456052459 192575335 277921755 447886329 578131597 492369797 491163317 873230239 230892287 645152135 167124361 432059875 122821365 969153293 179747307 830914529 157602089 711546617 807592955 436903043 97385819 494493305 450597727 714379129 940817239 333812225 693275717 552478267 226393583 615483467 732356193 74770187 696164347 527051615 806886901 822521329 119522147 330088837 566487749 917395899 114964491 391859285 576887583 58935043 757917929 122906025 752775387 480941865 305487607 929849511 625901141 557921109 100844597 274180793 42209141 839299447 996521647 163443861 944710315 871721287 853066103 492521781 879831529 107921223 606839719 580313313 230536623 578169277 197540193 138470947 975321603 194160571 780551887 909230799 464291189 440907801 655260453 82456833 526579225 55689845 448019357 599317023 817972879 85354043 739129975 82763221 846441725 174834073 380557311 110976789 109733393 288919687 474564487 66390813 127602175 58033605 577889385 279929457 429592969 937028061 708541703 368037853 384886003 436908575 896771533 495979893 299706123 157750689 666997291 359166359 793210409 34716231 82891675 524654565 989499179 829085621 361709731 580857421 766782069 675864671 725929417 939294721 655977719 530621051 592772257 958265473 27096359 390504201 468938949 166813325 263037957 615974611 66804439 709580595 409333779 356011879 101280641 445557961 423760995 423524897 279896695 110330857 316066697 393667869 447161203 786388599 277066917 65604165 345366325 32683169 98441821 573128777 590754953 998654427 757840863 143281059 609012545 917655009 600351201 126251921 683478329 456087989 614154655 455113501 281925455 584739495 130694115 606714901 212152943 592534857 204096507 298285075 24616077 686248567 241185979 660903287 820873635 285606487 145309057 18314345 440686257 469424467 831775543 929532889 950930627 458248481 729243975 910444671 264062445 166118333 606526121 847394269 499870277 727050347 559197915 573882683 719894767 297046711 106435813 266500775 596410647 589969781 867645523 104641531 577685229 268902339 634626107 891536853 168102571 755113987 730038335 599058593 36858263 742362337 853269887 146138509 332175095 772751443 264470959 679992721 172796191 513795735 41625091 137090159 885077609 731864877 236578873 960438189 518255671 791866339 288426903 525465501 822092277 245796301 326887915 129096277 549827603 858330185 867089037 71749305 445714189 693152249 338036571 756761455 390670947 725400011 6714809 958666725 692561313 585157619 321043865 870814039 473307481 812465387 632193645 594604997 271001127 729689211 284895797 819679477 428518825 428384939 913006201 294464375 31922573 227096275 554750789 709880231 405949059 107127437 180539439 104882337 205242183 345316543 239417689 598890319 640026521 381133459 245103717 811816803 542508357 479875711 482304385 228636753 904172829 460164925 347978855 495073887 1205245 421897429 460834131 100256655 381952963 358725009 861021707 842146487 299794013 610730757 869130463 46743147 486667963 33557261 130955683 245875213 734720985 146867407 787477685 701823173 422802871 120382901 482696703 678914179 838476897 547803767 358808555 293536513 31458025 225149453 666668147 784365757 91305579 66285245 499313169 92993023 51826437 661799187 203226831 816179163 803479269 634928355 55620921 649767205 266954043 810863691 677718373 894552445 145054019 177979565 360800757 791230543 850316093 968566709 385944331 604047817 14357367 980642907 741800277 817117669 46696255 3572183 503527181 398421855 235503089 604212911 778700527 739746501 57334257 839915441 203593027 969773411 639379877 760284909 185618131 299787345 66121861 631012547 743853049 623894899 266587653 371956951 471058835 253400687 626626221 996648211 945378311 441265077 562741507 162642091 683144257 577709437 374721179 468711199 737348281 110151367 855294737 653068079 134531695 229706845 787936515 24046571 835467239 991876047 937999135 801291173 828539439 116378229 489351445 427727097 565741021 910949997 423942817 632718797 699092499 103944609 121415813 226299979 177044339 578703555 857202569 567410665 200457517 228700745 400229761 301092963 269981175 84991347 458833481 455664829 571151631 968719691 206608575 440309315 12068155 843830689 26378705 118112649 157363659 446859275 304613231 805619051 615225747 535117035 482332053 833019407 430921715 629901417 90393413 91864033 554574799 246632311 215934855 769210003 326916249 484637897 796330095 928984611 233481539 182169573 865608217 349049301 87484751 547372557 193586083 604070709 405142463 560331095 965687355 78616857 283480103 407611799 246939665 15395995 938160535 99949423 362068833 671611935 262018995 780559175 616504685 845072467 748898205 170168399 319106429 318677801 94785285 377499519 751547879 395766497 157208353 277055641 749572865 657546491 198531503 58006821 20890161 549318471 944821237 205255537 830261983 887402197 171196355 460660117 285214589 143314693 626398317 752014453 345206919 351780987 487173587 594427063 321741695 807012385 293520731 350648267 506594797 526048813 486696177 744405737 97416805 590943001 287676943 123119635 21719939 310421677 490003631 612687119 305320677 549437171 856421979 804287599 358788153 760389439 591760673 815170699 353254961 295496493 435624595 400196737 131782533 56792483 980220117 976020797 508424183 581814219 441727369 405920363 284830549 495660061 619246815 753253255 44966509 249182543 984614541 86473937 574167069 672549739 101544145 682188879 402528323 358629051 353111923 828307667 982056653 363986133 280116413 264355571 219472557 177245073 89528459 156160017 332348123 120719383 277737271 128859991 599079769 440284115 92185767 631001777 202417205 607560057 32929613 11372507 24877181 751062019 207744797 304305491 111959887 156051383 449181331 104486243 690507465 272227617 950220729 787363609 163494681 56842775 135958301 787041617 187829617 819094707 525846737 385831847 868889865 114027097 856791417 943276421 630551077 213017783 837179703 161514267 848380685 776185025 477716155 898355811 282374935 630700977 708873275 81654811 207807897 158529039 540729975 549381835 333682425 96983715 280533425 744188357 197964191 562226053 183780027 645783585 706290941 203442447 299951081 985059263 224227471 961059559 418705435 680695879 571246295 533327607 936414647 141907497 508756063 868703349 531710379 848558495 766475447 97220829 525584491 130301351 173938557 474632947 437923065 51539209 596526417 53485507 406477785 458053975 960233181 169723809 71291417 796513769 619437523 602506537 953521745 554610397 213833199 78964289 358721951 948368415 7165939 571575573 207357607 688824925 623104169 412921111 675056281 142194191 215397857 771337221 520128045 663043703 205436793 955011811 260276381 633006235 817643087 204711677 5431473 178461771 467552595 312989417 60479417 965566755 654289009 925673343 465449099 45844351 856179623 45949161 936180355 907307403 788765687 677002637 497711753 660424757 991869035 599535909 952892937 646103091 707158291 969710505 37921789 405401355 384653837 598191713 326645729 926625793 812876409 839932117 584267963 587151653 983966081 267990493 126235673 814069843 255939415 994190995 361072403 122494503 302452279 64681819 857771847 705286923 634755427 542328035 136452057 838778929 152441381 346768159 866380411 87215245 673568463 779300939 176190559 677844451 411468729 539139049 913832261 639778235 460415049 421780425 371202677 295318627 585899495 36264701 516263867 370806261 481319687 21958369 746103405 320957777 608368673 236782107 674900075 14393121 663244985 576218519 915781403 540413137 256903769 613264263 254687851 872884635 112179089 671331433 578923985 188462465 780653823 639808513 122754379 114527307 972234819 50607707 582791263 152273031 364999431 534574283 812317979 586470031 915286527 558831853 131441943 989074817 924213219 203965351 909556337 553512521 352268919 867817509 672059085 128318101 399892355 553106137 377939037 634599901 947966429 956469379 48415955 85955171 551300189 850382115 649103471 804300333 260169957 331101959 15051513 273577485 853904735 138624453 596788925 810831003 115155645 730054965 437860755 436143415 466726397 820549761 730078167 637933831 620815645 957229329 547929457 361279999 101339687 499102105 229466831 866323925 906625585 249046297 438751205 799615753 171357267 248159185 781183285 204048357 408313007 428701777 800980165 132448633 599986543 631358571 986385695 841408157 635244487 772512315 874160733 633702639 357201135 437873957 626907933 860617177 571206443 922677977 893824901 406335373 149843141 968053319 538305601 12289 948559629 762571435 649058697 155586549 241033057 36931725 927431709 845445619 17997857 925052599 501231167 483340105 979209655 468278589 7035587 993581841 943848343 902370429 869553145 413748013 314086713 933530135 418851011 492052801 908774689 830416893 779604359 499638207 192974297 521415007 609002803 954461921 437759219 2022331 84957245 315370917 605806601 971838933 165918115 616914131 539494333 981987001 670600171 36366335 331455673 113830077 368924709 160430205 325153457 300561017 291352293 20659823 373593437 519438807 907746123 131404219 456173953 861051645 5397501 698592535 549634023 483127141 308161063 28835061 238028897 72296135 612644993 530225305 399113417 741694507 502505035 290630921 928527873 900507353 660379721 240180247 85033715 789977961 41468361 880716123 517815187 932220085 517175715 269367093 709713369 717742305 697941811 965661643 860493001 789575771 95611233 419202577 182075757 710784727 21741467 744081599 672758743 647123535 912778455 22431569 746380833 927423499 210350227 11258643 127717229 484836245 353549781 116065301 110149349 279009217 437178925 69111343 706362045 521008043 903921327 25860607 314773807 180042681 217617659 801611761 907493755 261436565 946135607 122815281 648078573 992006709 661806607 913319611 119819733 240130773 698784189 520655951 546503825 336187897 24803579 603032435 641753729 207284077 979183379 51089015 753924369 402748485 356650449 643991925 28993713 149515743 480915597 446697295 361190875 35083997 388517669 644678313 282065939 693799467 130774269 892634359 231751395 44564481 594585093 974663533 481704157 83375319 635684275 37554703 77351579 974886515 306939909 748728485 629861823 745256161 64895617 732498365 694309363 537924983 894028599 98881459 161044971 982300109 115504571 180228003 469832289 704977613 528892461 751980151 829125397 891151263 748520499 996945887 627233235 795259063 976826873 474682709 100108141 436684501 228795705 186099989 167107773 138134009 867554351 26503469 631608741 798432371 392841889 560933993 474659855 733524437 260252893 579475811 741443311 296556539 747934907 543724411 373382463 605710345 12956823 250335705 675932415 856186221 469665369 939849837 798362683 298709211 754395759 766105839 887421957 548418895 647926991 729114593 897418615 840915213 219298809 399512457 208361139 531145377 42545135 142859513 9960933 674498015 579185475 604829449 885644861 346747107 99565065 137684823 214831349 970282259 33126625 578298191 1584209 264704025 422237681 831678751 992877723 535635181 56751591 212881599 718542629 942835399 369930999 644313327 128446281 645354541 661886947 661575737 478949739 921368043 734983919 306648045 846905329 623144981 631287529 875020065 33320529 272643337 263584809 319434681 360582661 841788521 988341645 604603737 19515277 588032547 438182265 401452661 42276725 794164585 737275613 660699459 425909583 563732409 682327087 123954371 499377845 985803737 462815341 587259327 611382857 284432081 648236063 814044613 133523127 208977657 149304401 30611505 30138287 726845675 264370585 529996575 267789035 345786507 89296151 422145145 980198705 306716167 191971697 337171695 345004871 885094099 377888213 929486075 728799489 597520553 374055671 710408667 562726969 573495441 773862425 689078425 959608785 609965013 708227071 824594691 738554549 962163975 112712697 63190707 356275925 720448777 709695195 267247113 917520939 602924537 494589955 234985773 638139837 653886537 374482009 936407311 897842321 424666537 219238733 373417065 847535291 560515607 361730001 44526775 259060309 221187285 602701669 645975879 893879425 687593843 347134225 269343781 260243563 494144197 280514145 283938603 178077251 441593315 269630059 401623799 864096325 662658869 766215887 540423157 557963697 148638055 40712371 149234003 138385363 189650539 374431173 214632457 67017469 211500159 838657851 331707865 346885513 209538855 137340625 339810889 497321179 662027823 703756755 224887723 807060569 137752749 289863177 430780949 896252025 892023291 37068493 211659371 297348021 293252797 676985853 889473363 302123405 18824161 737233661 816629819 766439311 789982105 498891709 783561311 956817993 336517733 281032629 672401343 309418583 261498885 907879135 705066017 187190619 188888201 960691397 565470229 695846657 950978371 776670067 991559671 817592825 112690639 689416831 636423907 430603519 918506257 763659785 588341187 135002579 414745655 468194231 964692553 394580033 464035765 26069943 172324331 466519325 553867847 387847103 134060777 813710653 228369393 423372301 205527371 722094725 232924925 454324327 77598181 552223457 816240387 222944029 940282187 914057537 413259743 455889923 913931487 334881441 515321523 976478071 455004617 720992513 92269291 290073443 362727417 672932975 122167613 104891953 232811817 544710649 368260261 816837081 554975703 988316859 103356775 330576091 304052299 982027479 279311375 314505531 754526105 217845369 874415217 840287623 217299093 223351505 97268395 931514325 392503519 366035227 742352415 570940613 925612515 779505561 286978683 632287869 96748495 379038867 429422257 668530091 514509469 785097565 996898305 293101189 695791371 282212689 908593387 61973449 687965089 263913171 333705789 442873277 737914801 813420107 372828173 105703217 418239057 287435563 910665397 415325305 618404709 396964591 397378521 648885365 959924883 282608663 695541095 578633609 728664139 830068527 331443859 439020711 259563717 776138187 650816727 56721473 631149825 1010561 379076347 615467865 519791561 45692661 555661833 11823217 223338669 734564563 9789011 154568861 374489861 585008845 207163003 29881453 178219759 828668569 482689631 439244547 213987925 458611967 181152305 979671815 200277993 805757125 927187809 646571425 609967649 776391617 552884651 992471437 904222269 547590089 8470039 761330695 512911687 150199233 135173103 813734359 832210703 283671701 93233095 448112199 630363435 878751287 596844669 805164595 916382205 340976285 776939059 597763827 220959661 702266575 485543253 943278963 730377517 238129619 52071323 185696541 84994355 454018495 949783293 802938603 136495935 798646441 112984257 322338391 101841049 216671159 998386291 21147755 497088853 106845199 155504359 94083763 824394055 78960105 731578171 813157447 287919889 471559035 819187665 480846021 40127771 367470599 982626647 96775505 578917013 105196251 845173697 312548763 296977015 481676357 929051465 52992217 622497923 863839905 69096311 589827785 86729793 497976659 654019603 463689905 273792511 67125699 611552821 5636705 136377301 109311587 675225399 235793197 384064167 148515247 759155133 843285237 278954267 76369193 761405109 918695199 126987937 473503833 227832915 223170455 458868337 458014677 650096403 460397527 499390605 321638963 826658489 865042905 626787515 561084697 246763855 468704551 375564685 918534191 643077677 833022925 619579227 90184743 695080687 746567011 56924483 479377853 312025207 451648007 343191089 892887219 810771441 159694685 859147729 877211857 763419603 167803285 950277537 909623019 113037529 560344165 423035867 31809501 74317575 545577995 411452043 284360071 517292713 381310029 707677825 841535443 836523859 640104827 236471891 166146483 155737827 589648747 805279587 833582627 260121723 23366775 295005915 481198885 740553097 435532427 910695079 492311233 816246463 603123731 85352067 515024909 479208219 468503299 836119277 968104991 115373283 893907933 34640943 706890013 553164959 830159525 358975831 786581807 898519077 488363497 911657281 69214599 990841235 41947585 108360073 210247009 175392333 289350347 968417689 360600831 226634749 616077611 495328161 458460841 630375319 843147665 86754715 86425013 648967259 330422835 134732869 391732089 712623305 187096015 639250471 997427803 179988401 899810477 517306517 228609731 384248613 51032985 126524065 395572261 593053057 891127017 700616753 443268089 812630635 954165629 54606059 513211073 743165901 749675963 339715391 529549067 457513181 992432783 777342823 541531237 713868055 700745331 796681313 244736621 882881341 574815331 885592309 502902211 691233887 237703909 152095925 112568593 760580303 389028103 54399225 327611913 178237739 268570977 806974431 607378023 553561941 277167377 606324051 728333037 527090041 463321787 218720259 716104805 897028877 318585231 740927079 537613983 162681295 538235971 397434305 182763897 464311487 585782295 720296727 296132563 269525291 805305293 439262265 255091351 366760871 294831287 843668163 322840503 517535505 457011113 668884753 451312943 944670603 712105477 444669263 760925185 279338883 114207403 724722283 58488631 565581995 413532943 163693853 432165089 885222147 306602533 990604517 228767005 437616075 209949035 913595661 158060811 908373139 954070503 602571171 932410325 826116139 697518887 602295939 654816175 178030003 274263619 426754121 977712337 466110863 190893785 33510751 415642751 330318953 442066957 569633015 17132033 143678519 586233231 209209861 407475629 587480883 690238103 429411405 485192665 256261349 743587039 437474135 832005611 171227415 248889263 759778161 441696075 796752093 276895447 122026165 712189037 284947859 338236333 897281029 564751305 810099167 341988877 727479301 505237219 952128683 109703007 794408487 234565445 398125613 634968977 64701859 530710911 474875617 812532761 312105595 817815599 557529739 499690739 393705079 335506677 433785655 592252843 804035109 257819515 984352825 698926665 763486175 440221813 166366511 514817639 955440323 874764955 475981051 642491427 253166525 143706033 792517835 145335073 143367803 698473857 996265745 49023889 918046327 590165211 919554699 424059179 420924397 478433437 429480765 785615913 11174121 677983911 664134005 897067093 279271483 605853923 412288195 791456763 108970619 338219077 891242759 529684209 453413129 57221061 419524963 759154585 889063179 347966311 706511173 393635285 371347061 702907701 659211617 501693459 355987709 622641727 71346865 109721165 826297125 509415843 766164861 471890687 175899443 940260225 583714893 873944623 692754487 146281475 334108409 384639085 757168397 553359965 593546139 206194637 700212561 47208903 600674713 439275759 857267309 457534085 312110237 228324343 7882387 128830177 98709917 971507095 527909817 481234477 84872149 838802945 20289183 954208705 572860873 290428405 65605583 841590275 487519301 502173115 199437975 599947613 73385309 332123167 748762643 696132925 405289837 379695993 112140831 608743715 141437467 660672677 31866981 226716557 852043089 723034635 206984021 699676423 296905799 555813529 905917737 433236257 443056245 408339141 915366111 743363961 839809185 33324429 42494271 720654511 56479191 924574071 4013533 771917677 657809003 119163795 68583949 175527783 966558459 363488373 423054833 31270487 331903337 184812349 912783217 855314173 387602403 491323023 318512445 418907171 643276763 391045533 888800717 946953631 412312337 116680985 400840803 284983113 269565061 220195909 575254021 422275075 525347717 932296165 526740101 874819767 697305767 393289543 970907003 712858969 798730437 653136193 142016327 365775331 140959237 454615349 152158223 521004373 381109969 122994181 118779079 874656953 926961373 897458977 490698791 319740965 36443177 585918335 191894443 501377457 769905143 609402525 203246239 489292415 927132625 818735489 485807891 545788859 398961295 353378747 374037215 99073427 236621643 763334239 656878241 569631303 630248555 509448461 909024965 499534613 40385179 158793451 403010679 500431177 42539469 738561445 707069619 905006901 791893055 903638131 235393337 167339827 921745779 872298773 548893071 986016421 151635257 443100367 350603781 218011381 124564133 659380079 354313399 986971799 259087631 161177165 790463617 772835843 374506783 761186629 455261197 215625405 571597249 138640319 143647437 208479311 210431783 335211433 450388981 291019083 681065935 448359033 317550473 78472267 261166973 986075695 670840657 323452145 496282687 285289037 666321883 577860841 665851237 263354597 878457219 678642403 503394959 113301387 302166885 793758105 468468383 390686303 151207019 757278415 732841667 509156615 556137541 339842639 146085231 238124975 509064813 746056427 138861917 658613777 131092255 889901437 787381909 648578151 276417129 961895911 437230943 298571899 477102871 795737109 473326419 357472923 341877699 39424759 355258443 299467417 737593805 863643527 4441965 803272921 961240669 131536841 425642531 816505149 245184867 157022151 337612067 767617077 83348119 179068051 694841705 710415287 295110779 912817479 906110775 709423169 405295445 965913605 721930013 175351771 58584631 944925433 89399533 763978513 68699129 942442835 232572613 851621369 969326649 343318605 620062725 825144115 827411043 311488557 311793759 897453797 609193637 386086201 346642627 338793915 350131959 623989445 499823727 135708655 387853849 735043627 676340711 956606013 653114517 796427725 855803895 399916267 214512059 362328597 287713973 845795527 298407587 475142263 364799609 323315753 854644523 818596973 666105579 547834349 9044221 433899639 562755063 42975357 638828171 628885281 885007057 531560643 762640907 879826941 888632563 778235191 858123389 356225189 512340259 816978647 82325675 665625531 727510639 663941163 886658083 485191147 596664103 455413311 29666881 432025317 729012715 980942761 378273569 437044837 13672605 417051529 503690413 401775403 276423021 665654405 821013909 723165187 95387081 404650443 515813971 775940799 467391859 553576975 530508325 759310137 783245163 771067027 57723925 810526803 236327681 667958299 661428721 172667641 739446983 875620341 655026515 71958811 988065177 903935224 289019035 469804725 122590109 755679877 835959793 665016007 76783933 165926269 46838341 327738461 169730607 475254097 552533073 312573321 534680175 56445689 753891729 795340901 895012161 356935663 596598611 947308053 606762545 119881021 41133987 844158399 216593939 217618031 82248283 862193561 644779525 605612187 101810201 873419229 838320233 150864737 909623113 83299787 551773163 90889703 516790041 99715759 616965761 635034075 750608001 623633115 88370793 677452913 997061955 134874283 476926755 263543147 405222117 343912829 234083965 723253773 109373881 80163007 466737035 741693991 943885783 173294817 513698731 302085901 216700445 618445917 300689793 71644319 107984183 114678969 481139189 366309441 885768337 531849083 355632961 767890403 471625063 60870967 19603933 941926139 118962105 712581767 655476624 341519241 848173901 603988239 189964901 366809871 353079987 679275637 828192689 917573023 775850567 513680239 802972943 833831631 830533925 331734199 129779045 911359163 723864631 39439375 585839581 799216907 881773871 99637055 636923629 326437357 43518339 143726363 466427215 868038423 242699123 819374717 492143883 612167367 674179847 272190281 89989227 465546947 229372691 750444389 569835267 382339417 496351787 776208327 616236719 136439393 523250609 926651753 646187157 397063225 670111949 359578701 154807329 117993157 240035695 616300155 789624325 460138103 201851729 614264583 600715071 413190977 416545009 636495627 715545619 984780709 817617561 725686955 158215949 765207461 403693399 389139981 983460865 12838355 425681413 322085993 474687245 979301957 361472579 312526067 455823251 582844311 760728439 941325811 524099391 404441585 29128149 33085359 694813449 381786113 251815765 638307707 149627945 923408381 216811189 606928563 428586277 894743203 752566909 570355637 32308427 266376249 88590847 389675759 273955627 751930767 145093203 275658705 19031717 157081337 565262167 848014295 280307421 187819863 519908023 965389697 296610237 117033229 818306785 832517981 347036281 405261579 950588429 378003705 742340241 830118345 600769339 861036529 313041095 843989057 573600565 151459561 310466597 100376317 234538891 592651401 262682371 650768649 77283733 809275523 972644347 619148541 180554609 627541651 442345715 900994037 244132107 108642681 186983957 189116569 162406159 637673987 291612375 821494295 518701561 735577599 784325365 479486245 327531271 37201225 394835315 317501697 351959875 861241541 667205533 358737521 755131005 865745755 957074439 237670085 383547979 680325885 701921165 842157265 536808207 357674407 694893141 47978485 371902193 155719257 953004747 704474903 328984291 907930657 145759393 358335907 749585307 554111757 400930773 6938771 652188825 557717305 568314795 482554209 615247653 848783305 927844785 774160151 498864979 62183397 993700023 418801985 984451831 213605823 29693917 846779127 239124147 391386515 67505029 474620885 284626159 920376995 202232413 195606275 513860315 697094711 544494679 44472367 366497135 280843939 433405363 629903503 937726061 958913603 133454321 126296545 373991773 947659893 947178209 827494253 743697549 109981351 76188563 604808447 768524311 167967051 596402023 342206445 126340313 584231639 946784513 87196183 416028543 315362515 251977547 846837985 547170679 739017413 43473019 519553085 598483961 870586691 900993805 210795933 535053575 187248355 428582083 16345859 391342695 545467211 331137453 597409267 351710891 152410147 522849053 195402875 1907243 730733597 222502575 892630579 951614469 980921845 869394249 903853879 424825637 875757421 494858261 25815345 839546681 834821197 623809419 218677835 345391545 276956011 419079779 187895357 739596005 968594333 688162465 886575429 797446343 232191177 746615447 220199209 611355183 496535255 591004627 873815097 807294899 943272121 240403507 409432649 241989301 9262443 375320285 104290745 121253983 387765487 989415229 894556271 647979165 359743309 873314823 182082265 559781675 734842779 579939893 312175851 470368903 176636655 474563085 468092711 352229115 869805423 124610587 907271057 960074133 622010691 704036405 531574967 653149489 214815133 306990197 652412081 778018155 907295673 710505535 92361243 213729709 733520345 778353985 122047263 43084327 671450695 955611247 620451431 7014099 664719443 760751363 265758251 633619055 240434523 307766661 915219753 89896835 708832701 506645181 6934953 812371811 902436839 949562051 993225845 512953635 468746059 344806897 497806313 465380515 997688673 257997805 405932255 422158735 968214701 424933025 535349183 444328533 393599927 668737859 814096245 97280303 551958549 764668239 447830139 173690139 193131869 855778697 866597325 408763105 290123829 361501437 880300017 356866067 122748229 602953215 990197237 34738697 207193153 34896171 580224625 691878113 605395681 953147495 227835521 784404615 84454889 702994911 598984399 284795305 47435809 402215685 177823365 869856447 853264735 598702999 945923675 88975115 689654649 823774361 200777615 538004371 171554645 820617047 703629545 765181991 170445275 766219367 648409525 10099299 56216831 668489377 93362889 49307299 89799353 163984943 607259013 992882451 682337293 246058871 621951183 310188705 733366275 18797107 610228245 479574533 915157169 656535643 659598413 530096319 513688621 45977399 57277171 86642713 767427485 692322383 442765585 143886369 652398121 552875131 997854261 242997427 380286981 139402453 498214771 393981547 125123945 965712833 351525993 127929779 191182745 551901165 542622273 42642877 323256797 481918285 758635173 725470077 21106827 862158877 81574093 105068215 239538171 773709281 392986745 60184307 966714255 940370019 888692971 878061183 947942065 475539643 113398261 739491703 577073107 184703557 796229357 583666871 421039987 161788833 414417839 825694441 289215757 285734337 995941283 118889341 402327601 385510101 739291831 615931819 878865263 316979547 883931231 89294709 205521759 68879639 852593821 80877219 703985063 206766101 680165621 152971715 694013935 960416169 123920247 528339759 344233707 99598191 336938423 250668549 331802451 708161101 680386517 810548017 58134251 774418799 91408757 433492065 739846013 310315847 31407815 945551119 697727963 822515861 927314819 521623927 676274397 969405785 114997219 332934565 104321129 841070561 967481777 102707817 987990631 977138115 281699641 105911899 242679243 546055897 471053393 918705883 41147789 704224839 502620505 564304655 999635889 67395451 186817591 97075435 583849537 887284519 927989081 122368549 636699215 534411339 886298805 541762367 76465395 424436007 523257545 443254911 355854931 462392395 148561819 577111285 115072153 250749833 342454715 651795837 791292147 297821437 106808125 165863347 597447841 376866317 816869569 357303553 22169057 733396067 467056235 52889497 839264509 451249397 298209003 764036977 732012363 539358973 570126457 127829321 284768291 909885699 662446031 406444459 295761895 958563793 349841719 541701605 859574017 142837115 775436669 51594515 664426213 839933535 186199289 522432273 648490251 853273629 649384583 939603337 887725559 609839271 820623503 380951275 783857715 806073133 990041087 16473969 393496401 307270445 457696589 524149273 616294121 623095659 28758903 367008683 791394721 898392307 864989955 96775099 671614499 133755419 652949249 261386653 3885085 133937019 998195205 220783987 189196623 141968125 849915695 909827365 265756279 49657543 195148067 245109603 755836513 936453203 562503955 266629285 164277469 17803097 338878385 446998573 634193353 239073505 955941439 891175169 287111173 22240819 523096447 814065907 359233661 802289127 428401861 822817691 786015007 805210839 225597153 155588953 746519531 207226663 322141495 16493651 592154591 842762565 734225577 910637949 79795719 512744677 796747943 114336655 196057205 982403075 307764775 35167749 715998529 923157473 397106855 982294059 994376081 232163855 438926125 998091793 215916687 789360479 539280713 35640719 606126187 610819309 421279759 835534659 943391583 801257247 974812959 489470873 213550255 289915551 195315613 207156669 475032485 356619107 191191355 894048939 646950547 42247591 355785515 232564771 144511443 440083695 599875887 631946155 339173063 332884743 631505035 370503059 991110873 927431939 343982861 654801911 143227005 836835393 70115341 758748083 217204781 535608675 511991143 508239729 925718377 684888405 383939715 277752995 191488445 592174159 769080655 195686013 192028091 149069001 104638273 401014531 600955899 394720905 636911191 532844541 652550181 514225051 891865625 574562299 628771805 133687125 343073427 991566163 745262553 362151761 847955803 597722407 123437265 66172019 704765585 185661023 36532873 689058281 223003097 413692075 457228491 211895845 715219301 998280069 215058537 673606119 148117223 612483883 139260477 771404079 733368993 674244517 596943401 918237773 985542231 178293189 327371289 849195219 677702743 299065891 154171133 860871837 625430137 85108255 160811983 553567439 672010523 383924961 516285589 605348055 646147105 560403033 943107925 349510505 655083515 8828991 492895009 325078401 155945631 121175829 198617879 906196323 486784139 650805025 98968921 234341275 508265927 176834933 898504205 543114749 251447517 227139817 650044009 434967205 622372329 226991899 240616871 478131449 551005573 949603703 89878535 399107747 738486233 693922859 854412757 884223643 400005009 217170223 646652515 392472601 65861351 156198211 666371339 603219363 283125397 39852785 722406959 956690437 306605797 828659593 787732539 601974611 36808357 827055139 138932895 882946027 175397417 228737693 767047893 650187119 149093455 131585697 57530721 813274061 728489343 7195297 102065869 865089591 215123625 665987795 183707307 952340011 158210623 893214263 851410069 879731823 616983873 551462807 82474799 657848843 636162615 965119617 582935327 282219863 679418923 491726929 303922203 497316589 170727353 70129955 757066717 524587697 293726203 711574241 896451877 871619793 809029529 256388667 954075839 314433217 276246975 293121963 882596989 928088635 525544231 849096303 526854713 711558215 620332813 632906129 991626967 925585455 732840503 299995359 254185789 620580999 502044659 586526195 233782113 140448811 81127193 9099565 883354429 901224767 403669767 835099829 240330193 980975667 90101409 96050555 680073257 340682935 317742423 681375289 292399703 221577929 629579295 150049899 265316469 217471405 319451257 340332383 409535911 239419117 188299111 206347553 990826259 757521251 10263163 196692363 834363121 252920357 42005195 117701947 633333109 471893403 21932019 563247261 653962725 755941489 158661403 175028447 849046413 595879065 479261167 834544889 378843835 481873 818997161 569541805 658439115 674869021 623725573 614492545 609980447 134598859 72883273 236060103 255450915 665611371 916663877 807230359 197814087 120410461 913337165 106418127 159312647 757021763 212236095 360767259 541327843 270851083 62358405 105860839 635227495 495186153 393821705 623842415 703112741 860009815 428138051 204364211 792863417 775571227 847146035 319352953 442363073 909942339 861845851 129014097 789686763 433813025 635365325 753849495 273411815 998650449 459433247 669100391 561029231 384063415 514951533 488135339 789435465 733853057 258351199 465181717 266458683 353826851 22483491 544612635 636800793 149433433 154093677 413146621 592398781 689698855 901078399 709737667 108733963 122315735 75909407 399795265 844145643 127521025 258013079 437680907 865877583 93769089 570530497 967735939 604124721 856408185 424908027 391134673 446554007 230281557 9229865 825489127 180335239 209466571 95256253 284495737 723599893 615288279 954444457 393891339 871871837 521541309 597614701 910133989 722669181 342673929 169212433 528862485 648497571 360282513 626181153 720751477 857864703 356743533 480836277 948153765 972559053 7743749 103305321 302910219 116550733 145452549 288418661 767600091 860661451 817554783 805068375 896236557 222980507 997260883 386075509 409921119 68275219 155288929 426254205 831564121 977840791 942226775 950837941 219642957 721875859 524740683 558654445 888529491 287840887 982263959 950956921 872990025 348953279 723652063 278530103 962276571 888403181 767329297 588288145 748500343 725120905 512873569 126933873 360708949 708986919 531572299 131125073 558446965 956853347 759102609 632195883 961040033 838562523 847241283 289877897 416744041 708714045 925049779 953956215 655534117 851861049 703628157 97851277 238492659 93017739 246227845 347930343 425767359 648311795 703293435 846646317 115924533 401923903 926480975 633663117 456338897 8920637 686683199 937785533 617463761 181293769 351560909 903528443 848168767 436430791 216753993 969002765 35491307 212808223 37057605 296028483 509594987 891071427 122900127 94004081 679275553 956131503 233437817 436525815 387040821 699449317 557238335 431707321 997294233 536137325 577899433 665286697 993403907 380019803 825458351 374322745 544070643 709490635 884501143 614328939 283584433 89595355 466733293 819792323 70518609 192962489 431612549 939641295 824140967 855205781 524323965 258589095 830896213 148747691 606359353 851608295 490260163 846002493 700053345 371081399 371537697 428195731 888532719 953733829 243264615 505382147 184005659 549956679 659129431 324572131 401526381 106925307 677099641 921889689 115610541 744123945 133386523 324608395 133274867 133705115 325089367 269001265 774216089 588823725 707940107 51960321 416620099 900092727 884833251 341646461 386908641 955916965 380143693 368675635 656362657 651550947 971706753 184376497 581155077 352136037 509223297 769127317 570075855 274532397 156571667 422947197 742165001 101675199 923036105 517192727 803945995 986105641 833120507 745578005 297410673 377801987 425893063 878744109 723762717 680880233 12123161 192619559 353895483 769820419 368855199 766437835 22051649 18957567 230923729 258037737 17358315 293061139 328825839 778853725 648899645 519040127 52733187 363805195 828929667 871130117 871861213 426427355 583947857 490916087 459432211 233027521 112719237 57385769 308978183 414760117 704931137 596697851 61659107 367407289 920248051 502993491 67055763 384872923 156647245 611345821 329593811 868324649 446545229 228439251 761554465 864033217 381992761 828067953 351771591 157838273 449828761 376331901 756867539 180784983 153022531 318500741 858383137 508385717 881678677 316481441 242014029 547040787 939288115 23831917 464385985 879896755 462354055 761232657 871709869 30739427 433780037 314024253 825820171 53015281 801039277 686375459 745342617 483884859 474663999 514607235 159071455 349459233 24092619 639408803 827225649 163109133 10715747 504964435 512738211 413058161 475818595 682721513 687873301 17733321 188976497 203907137 181056563 918607511 665719671 800500673 374437227 487023205 625962411 643309147 38940919 446043587 987584905 711770243 441913813 130539599 706503123 595687221 370826957 972927143 854152089 624558843 481707377 707871097 960379693 263344355 808568089 247377015 741873453 542212481 820307939 180855641 293672315 183867379 473878971 841242339 610003011 655613155 247438159 854974941 723960573 981338491 140997911 833230877 61118817 548923507 211541 99352955 479752309 469639945 448433679 199829207 900641669 22329349 809316887 842728735 248851237 370560691 157463043 617049157 671034931 50828777 640823863 997399105 981672145 387180295 916510935 170476055 460283245 213460211 790768855 806656719 417516475 773496603 357897453 430506623 707065269 44853363 779334297 635257151 11839137 315854461 890030885 879883311 786711565 394872893 116983967 726348415 807320777 750537539 91633379 116036187 133150709 432358563 620100237 2079745 983479285 777101819 204871175 301957811 522855283 54257269 755889283 994144187 501641829 285998011 173583605 451690345 40305925 611185413 961335073 904031259 112706267 681663505 145598607 886808369 346734513 597475879 527434637 308623381 44209819 140438803 601256503 183278395 597634805 71792173 228829545 166773531 443988837 462794065 837521357 129198393 385728213 623295463 93895891 475029789 728241531 193176539 436570035 715437405 725611475 358111399 80555119 16023697 918189985 373503559 246393551 721504347 18707697 876500033 679841121 19780197 576558359 873859237 332006015 696971105 17409457 802304775 694853959 819065869 836003745 795425157 776734373 549727781 294107157 521421769 790232647 961956729 841506175 203401725 18480551 381726937 515401885 795068889 689763073 548193055 416065395 271872413 802273891 854909995 824113231 338225419 965828759 180199917 969562817 217448053 985663547 929817425 956868265 489063345 435476653 973879127 692107049 516019995 356947219 983303163 953128879 979288219 933498209 375539021 270754543 589128351 309558093 312661085 211397091 327450909 210063193 289432645 440634579 412634259 471466955 403485479 108895305 538197767 260252083 828455213 590593047 511713033 851510765 403626891 119092317 226718381 767283733 124605305 686883967 47379601 537889173 575567675 190779431 615136991 557069471 584413979 66410059 151462977 635845929 736650345 131849255 954273009 465367027 672233091 218972735 123439017 655395207 82205641 943661919 372187315 998420787 512845477 28155803 772217051 950518803 865656459 863677775 911160441 122435075 563570419 251302433 644057193 543674541 35945569 600961531 330278163 59847297 361315167 941418517 857780069 645355449 957788031 323590631 896550357 861026643 105816155 925324855 913995105 930167319 946320021 417207313 611309199 235600793 628028119 206234057 427229293 630005037 430644949 730939389 199903125 554516213 290658887 453977743 405879583 233422553 392958961 767995309 406412215 129220489 318944413 167173321 919880327 765298557 261394973 589074339 264838729 640795639 409922635 916702523 613726775 420829693 389535241 442879201 335602459 165319009 568417345 321769765 27375681 949181883 269718247 303526119 81714305 653217643 557061619 203362379 5807415 111251609 92445289 117906363 112784715 288341043 398739795 175629035 761219115 199278327 405248195 198865883 607158477 256494687 136783059 496388557 849856175 603759031 52706469 602871883 498389209 387972367 882820963 919839277 958301909 879698495 303194433 368760975 507386815 166791141 983895671 472798673 742620463 878893677 730898505 924780709 971327569 452437251 605790209 5110011 32687313 712359075 582365169 77464849 246923235 340549389 135685747 792808041 335691081 609498567 22977257 257979603 210110535 39268129 157591743 543700323 395583147 94342455 715645027 579299185 39822795 790199525 273771093 380079013 511024521 162152661 544438291 90637547 44126535 944281209 126701865 762605941 411133685 420036357 43012649 596249537 579579401 848472191 546222509 59627923 340907137 806117545 781634903 157793529 743764453 818360857 774136529 174843715 739876415 728277283 490806479 687770641 985248043 118072553 530368011 313082437 174911171 236475475 222604357 350967053 200687789 840506641 827404105 518809821 876355355 953246365 88504297 361283695 62846911 222432565 728620287 866164683 986748123 72808673 663572589 972570937 215869491 688502387 78616093 946305105 960807445 694413955 297542915 895901421 432273497 120432753 221287961 450413619 64134491 32695653 357274463 137718157 881748229 938874703 497545441 131389873 718728129 576060903 611869105 3248539 372653447 471361455 581811945 468899213 608741589 20496621 876560043 813053975 655167409 553240243 501317921 364570891 223155371 157212633 763548031 538385543 772086745 775964157 775141631 925316075 719559639 421525643 946696673 471525097 540385995 42214321 590546033 309620849 343754087 381710183 941905921 207496129 451502047 646058093 601184747 238105949 680110319 498644301 78197393 101876241 321723105 646418263 287939167 327514099 510024835 878180259 912965829 844197211 211730983 850236943 275927357 736175601 691451057 539874885 43590221 426680225 393780355 66393271 497232507 977614239 323993741 140030363 105453915 612435301 776222533 238981617 276216967 982053305 965380011 633866883 757049505 694479273 744613953 269865183 674424405 520144261 48073241 557117537 847145299 610186733 768864713 635655461 790758741 83390149 812078189 286224661 948528415 542767159 663364779 814777057 796259197 567907767 371432373 933677827 958882877 449720581 976072767 998007993 819501371 514338081 695075207 7125773 369408345 319365467 233836627 812493773 792092547 343052357 822228977 550292627 784246185 940417211 199006009 401845183 863285701 686926051 254425993 836203897 921304283 488816423 159655365 287157425 496729591 746559293 907931485 335189025 471451943 754174753 909457735 218655045 355273863 76614679 955548419 602851691 349525817 258823083 597421971 30609567 582152297 715213489 340456073 581702331 230512199 401241159 789334779 865353309 101744397 573304527 346533509 307557361 79965185 666858229 270232143 741647013 129836649 906806449 321131013 952816497 688981145 513459259 344408289 66433559 865695467 704972057 798285983 134994461 146960067 690650391 640404101 653044693 348003207 945192267 159635553 398868311 187695533 699147021 514007947 29012865 660327855 215414023 268340705 646622975 945246989 624793631 302320839 545340733 671797075 712166031 62457903 920012663 732786965 856021199 433315211 968488365 520973545 555021479 156407003 538766245 507055731 408044575 493845415 571975663 133156191 291698831 417121275 676017895 866950237 128409489 651105135 622404521 241201193 436988427 757573151 91455263 359809667 510204199 856738739 626074875 803310391 850415963 172388439 907683507 167394071 452935521 782385093 647626375 236666623 126680897 394160697 763996289 478164173 420760901 577210745 331452783 252446319 26713857 368671701 998605291 284346581 518296145 985258273 81038677 33252091 274021467 94911933 491230933 749135585 642004107 236753805 753354845 654749331 879193491 911151873 915283873 527028005 95716465 409629713 622411557 521437613 79781225 876624695 235860785 541493327 586397959 250979453 946429139 18528567 495600927 332196463 308225253 175721877 438471119 386320677 17830663 564362917 728614521 940658491 918228127 145319079 625599691 169718489 259474403 174072809 907674551 161363117 374336709 344676793 836062843 612477163 681384457 335970163 140050845 625881685 652137525 658379131 839768037 952863537 918847131 684394039 647536489 781246025 696989267 571993887 47672967 290394615 830494011 550670247 379993827 880600345 615443199 734513239 415947367 421136917 899214861 13608885 541588039 669749207 738570909 938018647 456990211 93579991 984254895 570707667 141018205 280582165 192651277 351933645 374953055 50489877 110007111 389786097 191138401 521079781 770211509 162353647 199702269 580999197 893730421 608131715 739456025 61718489 49648755 792115823 360410591 822697409 693593947 566580859 917721029 291001091 265978793 907563131 960264071 523802197 105855131 584195147 214419497 944040693 4104507 152331465 416407799 496137641 975687001 953973475 729893509 393178561 692069515 633357449 801580975 518439953 27692339 532939191 190997659 108954617 340491131 130799983 361233845 727558749 758551631 433548985 55985839 977328303 110284907 555927977 236714887 442969057 106319181 820636251 949592961 514700149 841563709 418135533 817993771 331732591 297805647 851405197 819257429 978869853 468724311 788985709 299479327 28916823 488328183 641296837 975359211 459307001 172843159 305060311 800907879 59470955 778684775 221827823 256676229 643258715 174418783 930725729 446992005 364587007 794956353 908930947 783956711 240766997 163425685 852998843 606011515 529478883 910060969 154226801 874011217 416544825 244378263 869533975 306235337 98186091 576550205 942267689 381051783 161106009 573589575 748594217 43293813 4282985 275237155 777831839 390157001 55777159 839232777 427609631 979314431 278578477 982425083 19910213 124126425 712025431 52189119 707816879 658687591 900893577 579336423 939976203 411255547 452971479 163166667 384236043 49005105 748244435 590303113 175940199 639797487 564835739 356674829 168992993 458404449 573682903 298867205 110009671 903368441 318298549 958567401 374005863 859463541 232344555 902500089 276023071 423969241 316831159 210004799 174799693 375736433 625901793 292034955 511610591 532638929 120693685 206061171 648300743 35058901 530406921 10728793 425579005 745767333 834973757 869762407 127089283 164887719 184001079 101678217 908625511 924508821 321502307 428300923 578819767 242116199 485811899 614876603 976903825 976996451 870287289 618237587 310339093 162915093 662314855 874275859 775963501 164339283 501021267 921981201 945147339 820005943 984359055 365631279 877393515 901792293 601648831 8128981 639868815 624541643 479385349 946590515 839594879 474396189 266469393 170251587 937256337 176675925 352817689 858091203 920455451 434608891 23923677 274468923 91317891 38320345 253837215 939578623 465897009 689035265 490919985 54702115 715754393 523847381 948352999 537383815 872880179 78278899 478505889 761253591 508533377 363709515 554765765 399432321 955812113 401557521 545783105 150456511 982651761 751805377 344993417 440275599 348244287 568363551 463606431 341690041 275599643 497770039 69297159 558148815 764905391 317555293 854324689 815699497 778134701 159009581 670571663 733960421 606213585 600125581 187693925 426781935 943388125 408126633 213196021 739409653 827954587 358256371 287754351 996423023 968523995 959786281 152967819 873044383 545868667 408279631 886289027 334533771 648482907 390460337 783843615 463996933 892018277 810339813 350892975 969324451 537772427 56906181 868040457 255997385 178714057 454353781 987352713 349035163 363460129 985001827 892344599 650986765 179093917 169748289 645462559 843338197 21502029 280356109 511852699 963206259 570207823 804147725 201821703 109686833 674970307 155248585 94659945 497040669 335652563 418823961 937061455 964942611 347803313 183920919 458052049 811612847 276037787 238887975 494989197 120923739 28298189 567999737 131831463 234566473 953122711 93844347 232527057 989596781 294791753 807164911 770255165 305946507 307170363 114606551 908604843 271154731 33658579 25922813 972548451 106697371 538818937 465307257 112945201 384860407 158756001 621309351 577914219 100586523 602583747 689219879 177341681 1881777 627596131 838757355 288836649 557665321 209688075 289582627 322657025 685771195 368139083 699057229 167954159 445384553 809966017 678961197 563871217 789772539 791777549 347937743 929815949 754822399 743109337 877283463 426780113 934871503 858531289 519318001 876183125 449753739 767791813 84568309 461191991 122793497 755098977 242235065 925871133 705645101 563519861 714928055 93503283 778976319 983430615 949803175 273245233 328592523 788007775 955489167 479913815 41818911 227403247 943352507 190517863 72500933 952301425 926978497 288240051 230833179 892904665 796119163 272088849 537890431 350535455 580498445 474514141 670718743 757661255 166378981 505297151 933985751 128453211 298082999 667427301 462675573 424455787 786040701 231378309 846979443 684861333 373197949 215456349 135953175 753212409 576422469 758273651 858058865 198461889 623200423 475004501 981132381 615781409 632775615 525166619 489374327 727293009 510527731 8430691 114907689 847289493 440232429 848514387 57666981 437350199 344668579 44703639 9649377 172054409 278225745 803000167 609996957 504910051 191733113 721110403 359769443 902614443 860269803 25815087 476988545 323556427 841629113 576948793 153201427 326677041 613254209 698208759 251382005 484228317 628366885 945937483 573520849 13465293 313528145 450540951 504025111 57397387 236592379 745386697 801973761 483948973 340559519 798486619 935752845 433924555 350123265 911199049 592324739 29334919 411825965 813562907 640926583 828575115 659426681 369269723 305727165 445003147 198302335 723883299 436265591 27216191 412538403 476031761 405407373 302119275 2114193 456831563 22709167 747136217 182130497 482190845 425852501 199635291 517907947 682218721 14581185 635601611 928673175 557929521 936587513 596046347 368637837 110842551 943146959 541550597 362010213 439557567 213433819 106469037 586176249 888774177 147979133 613096443 476436333 920451897 501509853 279612147 569017391 561767919 26860777 912092319 784015091 551072689 979106399 870985489 818797493 132557173 320884409 509382755 958544823 534491833 162091843 963442615 224123017 461261443 31653901 428406839 799637757 61365347 261669615 804672535 474840623 301471085 476767367 888284049 544219781 369921345 113751361 631395813 970312873 513033989 355522633 415005279 538231953 336292453 307597979 306816335 762656889 727458971 876119543 140192531 940890085 70207841 648922595 179313419 972587169 836479489 593904303 621953699 4316609 518782025 230857847 341214795 164943523 773737355 323466775 862783613 940438505 969155499 235931193 554579133 836771455 287617035 912179279 899790485 874550941 578366619 282594701 863160471 910314171 806063313 229486585 535168861 9257631 829711019 980112725 875185289 776660565 760376751 767896631 60666311 714208051 120707053 9883379 104540101 190348499 319613177 264208555 898028867 554763289 633558771 325045319 760629247 798127155 872455553 439215991 418887109 541731731 950544593 306553781 237344615 162522873 930137239 963161407 642247615 897954917 512770837 684671005 878539439 391600679 871287311 110055713 639421987 293034449 6904275 951164643 561783561 501562687 348120121 746508483 319033441 532568981 535188893 891290089 583514153 235485761 386213351 185698373 460746349 941515255 928746373 560359311 79722559 712574899 209953903 660933705 778812601 622974393 390852383 270170809 328485885 801715349 810832797 833364977 536742967 233395739 501813881 723858121 397792919 477095527 430837191 643320543 293776471 600641247 208431143 438415775 12530107 814700333 188652479 720995127 368071437 783189577 913671997 360251295 887169439 480394091 924519125 15424919 918752971 991201049 236553033 157697449 326257909 367154719 901873373 865629477 216677507 696237201 529854559 90158883 583973099 85798605 225245223 307534209 475479463 277166197 245957907 613538793 844746039 10708855 186176391 854729421 610565159 474820869 863630451 74563171 173735945 947657373 705857101 315245483 152126583 132482821 632978453 770789231 413637139 516686661 998177357 260564797 656626569 385067445 18324487 886809201 871021193 328490735 180812759 496929575 101024973 825648343 715052253 619938121 954939675 100064155 389544895 608295303 136892473 301476527 898129835 289618523 966127611 663303629 531025751 940302595 651642939 637936637 899279359 243201161 690752987 888463497 483833965 432916667 636660679 893506565 725781487 630918451 785468399 620218189 924858201 220453969 524779597 176577159 312721929 913387581 205795303 433099805 438450409 104682983 618189251 914984901 476339043 858136073 662822389 256398715 715370095 663950367 161565335 581650051 823030667 8289655 886567627 969457769 341068735 829872157 150228413 910003713 641044119 54017003 494203805 353622119 417865001 231136127 536045735 562545153 732933909 589076805 701889563 190238587 760330625 442353771 685545797 210546887 3690523 703262697 919414391 423125027 215186969 615602561 866552331 998524691 855128377 484800697 276605285 537840485 741716161 178229731 561805803 97193001 815471743 567170839 959797269 527345343 406508491 542750515 581347927 828004297 331209859 144220899 569109049 581855797 655640587 853538195 287994689 699003959 99832915 339421311 468567555 936633929 471235283 91476903 858584345 387458609 940697477 756632785 322283557 563626493 993292787 743619725 98057939 446354175 749915177 302742327 953878995 722477779 83665341 91437547 84897249 172837981 881725135 255733139 956464317 814582987 84876549 916761057 438588469 362361489 5163661 783910475 795364119 98327659 169667869 768492305 326379583 509764189 255721715 459582525 977619855 6891185 731567573 408081053 215483635 454129409 445142547 961218763 934951771 442640163 778549121 295782439 68892611 215970879 192815229 894773209 426530347 902194111 14170353 367451603 670916257 766621785 398665031 169017801 277832755 905605385 747778935 366157375 831288317 299403283 247946753 379767165 211958307 993801219 324902121 721061009 1198795 787633327 602895549 514323029 30757163 4838447 535379347 426749033 794559613 77591019 152397837 313527859 158217987 310447503 814223437 400846825 217222405 656097807 484749569 373447037 329602007 81916581 13343331 898744243 678703315 263390167 651907887 292168465 194046557 381622385 199375787 264427753 912369885 874247817 443993767 38904403 324915141 342952569 37613175 555848493 583409297 80895973 714380795 798782755 956387777 739620539 643290519 898692259 433909731 446185519 910512189 733847525 953506437 247519677 81517663 417630185 523566403 62414375 781117695 137826681 185664193 803082877 391094433 534764069 293601701 204868369 869339731 271193413 191228839 90510463 884115627 466806007 334760061 827402411 895882443 867811111 655578857 669048261 987706197 546250881 779588023 889980221 692907385 338478465 392834235 886270673 273464811 285447013 729728459 369510787 343023599 882585399 226143181 326897315 142450245 109196999 598738855 432293059 898083901 623574443 259749713 910846657 372686001 335256645 921867969 504577215 540355833 775798975 408020729 847084329 595639297 157532677 680768773 29316023 695809845 734838483 894928633 758628449 442232201 214008999 226740459 462732909 520312959 314346185 543628289 456940903 64566041 386099021 329482083 396070949 329073387 154043911 809209155 199936959 557195013 507857305 596744157 654748319 845729547 188963947 877366897 709997419 595503647 951971757 240553549 660424733 947056113 416136791 503140799 787990253 684594615 72044587 121385253 472800099 937388335 470659761 182357981 754496839 780869535 592136759 84233045 380559281 28386519 724575447 376357885 769382907 822003243 281398639 945206353 573114057 671039355 541350059 488430035 858994443 570417709 890819065 903371275 236773615 537621037 599450769 278698383 913888503 503900917 413642869 320372469 125513957 830276223 259124075 43910627 969097925 264268885 562136069 287602689 688767979 912243333 383656091 306291201 597448179 507944609 25705035 824391327 902810051 498735309 839613953 950527901 588458117 466620075 241255275 953671363 494392495 764815467 350333441 85745895 85892861 371286467 872907267 854434527 319017843 794069233 122084219 82444433 887957597 537079229 375229241 120877029 743410511 272816753 401134547 470242253 859730983 166170345 369799339 187026245 215800327 75176319 290067179 236083791 816450141 920100889 976048255 861861107 674398683 863643945 511601443 529677383 180071807 172943009 404966229 821596001 997880719 831979779 87296863 66658407 308030611 678585939 777994321 139708289 417614435 431530783 220491009 570648033 826043671 196182911 5115665 66255555 987883545 703436817 450263017 794210409 500244241 982135545 26129337 401284893 528263411 101800679 206994555 344161839 603030271 547160081 848445677 109284605 238950837 2478901 633587607 815970789 206018533 716890779 637720525 865043285 806359969 35632911 136959651 334398143 35690309 267498727 131986427 864204699 748430455 650592515 610779515 789632621 836189473 655024073 78265753 724801469 939239033 997295143 662397063 870321441 795293179 1982609 588595529 777792047 916331625 881427977 11762853 161662861 210874067 984163091 225729581 661136867 339044747 91431613 827682617 599754981 795444015 499414943 283056103 264504395 316599713 32586967 293606947 917369047 617116429 22552329 291929243 614317911 280451307 945255781 108399559 331052441 276421875 25068705 970019049 273790843 705894955 934719485 198870791 794080221 991952351 19649083 672766451 656979881 838358179 239780525 248865603 470438609 828154709 331901481 638988123 338859859 740192791 292932619 954505311 989342763 482176855 441056059 264787267 631794793 973949129 166195493 49862333 201749533 799822439 68792515 256272973 304313695 11466615 752337809 480322877 571464533 521520007 596198037 19111835 712916263 455989607 109890397 287674179 160300297 666172471 393831169 393611473 785287475 802117211 573845279 981835439 761113321 892535933 801549531 506437647 943651699 808745619 551848421 650845157 556929319 138427097 400666997 976319479 747771485 399605969 192929093 664477127 249663093 5526603 739875999 262920107 312832223 949648473 555649359 229122999 260111879 943229527 667332779 928035021 708971627 49619691 428154003 317576085 377782157 863579903 451429485 979658623 971328759 462478537 984336935 872503235 916410171 936116421 417171767 753346147 318824689 104562871 975475099 712074023 189862847 954194091 870083801 158160029 730843469 266833909 868729599 258229023 368880719 135551539 113774501 96228301 701720445 98904647 629739753 399802765 939515035 407913311 25450095 261719571 342221683 576317421 50340969 109301463 143593685 856151727 898216073 739821589 260368287 773706665 903428879 904392667 238043057 91700009 277437891 644666611 193731829 155717823 54071537 854598139 634249823 745285707 457290353 128888401 316423911 497435887 293385375 189870363 29675153 449561113 217683811 322739789 893069159 817469565 552184619 895756701 934918777 532013335 267626987 716562829 398267621 241843241 999008805 90972771 324255435 199583299 542286303 135713071 846675029 566919989 654013347 597077197 72276151 252494625 242804619 769277657 812646697 887849829 627974709 744877759 548818415 896951729 642622405 621609131 991789395 985987833 721561837 43095705 553336999 94884985 646654943 839327559 42451269 589067957 825863005 777317695 108867983 544059513 476881833 346077647 627360239 114648025 43976085 768335891 935761369 105777457 468927863 557917159 241221829 396927015 984927275 537424117 503148855 235657383 619188249 341726637 488415161 234282979 488376367 836515913 90583003 445953881 997857507 168147911 891903803 731313613 201247539 163508465 764726905 740514891 600250277 832674645 179261505 457384231 705822537 847982157 367893057 814969087 984631475 716252665 482417209 452704693 982298883 707499073 399209703 262727031 216842463 157308885 337654551 426103225 337741683 740689709 589627033 214161461 995723127 540452235 666398539 251019761 282469419 441014773 63591949 321526843 580807251 510197309 788130763 310683555 255069501 128307195 67936371 74316041 604511681 794099087 919225861 594676881 942193467 90552609 771129215 88254117 264654483 209693599 340718061 36359417 858106167 669327815 927006047 85742989 883119133 43159315 280850419 787610531 727406787 502584015 726257353 708924613 962510895 143547147 324514061 488323019 521439729 486686111 845459183 183900625 14058269 241769769 384266921 836539703 404728147 640567317 75755391 221648047 385359801 723017615 166781627 317297705 936015867 327932563 416756911 953897955 869472595 386243809 387557813 675357025 641133947 498487295 959103791 803785325 227539389 82509885 288696455 271825441 588124645 382149559 426729009 179729363 163316555 326881097 554677925 359787051 526281163 267983261 660093289 971216917 872762063 420711973 695911425 491785667 76168769 693356565 450500869 319744947 588316057 703555443 349597965 697493419 655101141 474993153 217297339 259218867 800841595 493862485 936100027 566087969 382705051 6836419 527457469 819216275 406252233 616990829 468749435 385050091 503078693 173279291 676640697 511125335 719765589 890782685 489756225 396715083 816097925 179699405 892268773 909297025 705463663 546445129 573960831 642738945 894847821 362654553 138469105 196893459 123977705 655857615 959477799 675071311 35213713 842373955 620033297 640743311 70382617 87435029 299869353 116977401 640717791 773501549 312035059 701318391 492764875 354244411 993766905 268347967 186043723 105815863 379935437 735766477 166561621 354971875 445780617 627373027 250214761 164665989 133844815 834421009 409272713 671811375 156044619 128703273 379565127 423240633 77682093 6383177 78509495 813961665 784553903 364290003 834992761 587502771 7900567 663960947 859233459 797192381 379677611 705406495 512614161 139610583 177424703 806918419 305707981 841393345 768148909 434498771 982080931 924062213 877833047 938898475 494623961 564517619 319666343 410366257 821099581 631936675 699452689 564612669 78158887 9152243 85882895 874525943 882777461 321251725 24245281 643412811 304219787 281856227 477477843 411004525 660511321 828811051 617736375 106035159 491018069 251377509 180488807 335674447 551496829 721043035 195628423 563634403 696183385 627971995 665744061 251105763 98335221 150810241 5007295 341237231 760815079 504172841 190517319 195454699 984827215 543077245 220116757 293457665 747427027 517976111 495263989 421197733 345673121 562894259 95856569 439975063 166966893 537497933 106074939 938771161 477705849 343698437 941776989 154889653 223860873 353080233 707452939 968140739 991731181 361939 60332085 711585757 925970297 148834019 572951767 118275625 984358539 490579713 52052721 996432657 58751499 332637469 834606991 664033355 64575849 244564977 20378819 971794899 576157079 361010427 140281511 90944749 907842581 572769155 610268767 445610277 173824491 399442843 516707601 590366031 294547621 738899227 171429619 544774793 266776409 631104673 484078143 329924405 848762791 93563033 680449077 950387199 945609909 784267313 29436961 766871775 830379057 272770657 716923479 355357197 102385489 943886571 669377325 286301967 153492433 771031381 431248903 473564593 854512893 330031089 91806801 784672009 408904349 809808599 142070395 891480175 353641483 86279909 902873857 106668685 450806053 912613575 416352611 498488395 889706319 389335017 79042861 78841309 601784441 501615495 998932209 869937603 55675931 442379169 656788809 897597373 931664943 803181053 111890393 214753753 99710015 133742379 150206535 712086893 300690519 555315591 774678347 790438419 722380301 357573677 744512409 586475185 890674561 481719303 844666617 16996977 663457881 368016071 670492977 834885577 408157891 346004963 442876181 165855093 91548277 547771291 974459263 24978295 470199725 829188601 733922387 962525215 830778929 142070731 742311286 956221695 715683919 509530027 320002019 437699059 177498079 206384377 266418827 289648673 223834943 55816413 595768695 43715317 204384341 772364105 159696045 130016545 339084173 189789169 169045825 557860259 476644575 239881049 517836877 209162431 248296139 507719113 712648693 728661761 995822419 207874127 328670305 326072893 970541835 963864005 427229379 289599633 578729475 31154635 941630039 734987103 256409821 974496713 55638365 435323477 227049919 438513647 703443489 992983653 588148567 880384565 744082933 680387277 810496987 929543517 955099189 806852627 54604809 888903149 286535999 754162431 377176103 753712439 280177025 326200233 511821061 971754067 914233451 124451433 515223799 227379999 876900729 290032873 901249245 840707911 997656877 636532497 162842907 126902585 602334223 879933463 975186595 466529581 753549747 700489077 57945063 158775843 226331059 426403827 125772265 237817575 474107059 930532505 491405099 621002499 736232283 40869823 626515647 220477909 97626461 585705983 122210107 208967545 176582261 954159423 712983995 350878683 884794723 379153321 682426599 435311015 439729397 399503539 936725997 756171097 665297145 865522713 462823299 78009391 461455179 443055839 294023399 76112179 54047439 409980497 349482721 798668853 706928749 361097987 691314875 807805643 832365591 871851985 24542543 285876567 998864841 751442657 666212859 536883715 378781827 778293407 518914469 388313019 588596051 914935997 990996921 861413179 140824135 643781945 900952881 861831681 374856059 192353623 907560327 906961749 294915091 697095845 892494789 831220043 569350455 290910195 22071671 295810999 461867801 360922209 643883957 605024059 562930677 534835793 738757659 754949695 133700877 42588785 5384147 518134259 108215209 529493683 578630789 916071759 49276445 583719255 121666925 627297301 790433477 548644829 615393865 466687949 231720703 68013589 95606363 817646789 19126841 444632335 493962101 494435095 707872485 150647341 583330027 560620449 41277307 144944653 770303645 77363471 804713853 471871903 131261423 576733391 640002681 109802263 312537299 42739225 637213437 92714737 431301819 363401967 401990053 566842095 240427945 147212567 5772821 493386017 282023713 70782755 897231861 511043289 841957681 665040747 281906167 781491635 502551921 603407629 347837655 687532693 785332221 182849269 212556887 344260267 450735743 807691985 906202175 629766759 126240033 408101913 794778469 127592071 417090459 122653453 797841055 459822863 414548011 591467447 213560787 977094219 486396055 334348519 434111721 753678799 687150383 476932915 302702291 259174777 662088647 210803197 83643021 252104811 582401215 785666159 991290393 907799057 215346685 24946805 705122177 365095715 958807023 142690251 785274325 4400793 378481801 456127215 754784305 362821305 28702285 463535659 285763769 638887951 140566335 122625167 783022997 592475761 701657581 729432305 328894457 774694905 201642607 16712947 221276445 947165707 206820707 737755133 593125699 264537173 864534253 15459903 79329465 466175947 43004349 153062323 139544781 16629671 910328841 994014487 438679261 58656369 419648143 664122099 754793289 533690611 955492247 299361947 824856187 824790847 453839853 877242147 936104421 148079031 732573671 470138477 361185027 971629561 449555045 818812959 435731543 571277813 180200909 970776751 110815849 781695199 943939851 3277391 167404239 205825075 756323993 887590403 710467359 482688693 20990835 890699409 706104831 902945137 788104223 875717003 413150743 878319803 910968747 164712521 111499035 801465135 724648623 488646889 137735363 168597683 171042889 646519639 297812435 567816051 954118429 366926401 981625107 465893601 222018139 568298527 190669401 121396923 671472313 443101747 716615547 758697989 108851061 403749251 682989407 996044299 51670871 388207585 167755501 79430499 406186923 979137763 357548057 97411303 400146759 953059565 113662171 826520763 718758795 866401827 366111799 244994381 563718493 125732217 65493301 417109071 676792363 262266789 955172843 278813121 355092715 653226023 104758383 42490083 363412763 617034313 748908007 250261315 64137665 59401753 859661691 149216183 831413867 705735539 48304479 715130713 210987569 72598771 787221451 793672333 921420977 874391299 730406403 582048259 508719375 267528405 299125073 897079209 667018491 994402653 13537797 300232129 592576427 579674721 574977661 860273101 423558367 313068899 275678745 391465367 377151961 44201145 884976195 459778103 633544811 622677111 364456301 149356297 582205931 149823871 65410581 967774381 486351925 433591417 212363705 927225877 989041841 889588949 936071139 870070641 863101261 257462219 338149161 554691903 200438653 154899805 854085153 349392195 399327555 682620243 559594609 905738633 436825635 550481467 29693891 559517541 87809581 822343791 707733701 405375605 309513973 334755087 153629749 583427483 74139291 210053889 317916117 972242435 250403523 79166457 436523887 71410213 952225693 771214703 263736789 895589561 616419041 635224991 308392415 577392069 526855881 902042775 894033779 360012181 899822367 886192417 683348603 373066175 794415151 330528219 955647973 7376925 742080463 452187171 726403247 460377043 467925601 728195359 258037979 15408207 569287623 734027459 530956915 907310149 545333359 813145285 88296073 851641007 114780755 433565607 666709047 494428629 239754735 912457135 685133725 911959615 375460681 558909933 795705067 912472517 930816241 794481981 7566157 254179969 629321979 882342715 78250499 688071129 963505671 553748307 700162379 146078071 583474233 324860849 620289391 851236945 994958403 432553553 377534917 416812963 177377879 20901873 562584485 581943791 185913653 455351579 522276209 532104197 53337893 692950301 487537555 608799735 778483955 503588115 479641471 298109987 786050295 869666521 323646125 509050411 301507597 694507033 239074721 394187771 744314013 72538947 570165477 707374793 382656917 357365905 126490123 778764817 867735403 978031873 890655405 672522391 305792797 623690077 56652653 73521001 441533233 441346355 38335221 264671447 355115703 618254301 598575865 81041281 88119363 825594747 518652209 889914185 248522485 790191093 389688929 889715293 736750449 764752891 319339347 754822703 865287401 561947141 572568537 959037565 993008655 370374997 354912715 509963341 861275685 176798961 68736527 472855783 477487085 810014379 47851407 803734755 432809659 487946267 677517371 581090075 596727135 164906401 291144717 844901811 895936317 11860325 995563529 849185561 234092343 321363543 465733945 349708033 262650557 153711919 976336815 423116647 917367493 7945581 547538309 212410765 995442381 120713819 239282141 892329731 696470491 509921801 213813729 644434587 190475647 371486799 150527941 230138737 335029453 697983435 310133697 249105387 754791781 205351145 524176665 704118451 503930475 1788629 964316951 422209471 254913937 29539979 917817869 327393099 344016393 469105099 415831637 717946075 518288277 214985755 495194961 378138171 989638521 724014539 62319723 608257663 718277507 46775543 300652567 721224453 501932811 829025915 39506639 269617775 102821869 547557633 993074195 721769897 797146513 238826491 272080751 16293099 230574053 811476637 773894517 412762285 209919071 421138669 131051199 578218677 848211199 70660269 792580847 374244111 895129415 785540723 627018159 134725905 183776073 59532435 838245299 284470869 919983257 167345199 894924723 670151103 487251799 401544751 116288885 680099965 762797353 97327683 538211519 909364993 300999227 685142501 335180387 751141387 805581383 965469011 508026687 516742555 527482759 909255317 279734581 940585473 274777541 248364157 928220203 219766479 665983823 971153827 914348823 285368801 996987383 566798183 838785265 101479515 235751457 543450353 711081919 678658989 64307631 258649137 27467143 489770117 391525649 996783839 466305373 346494437 921060413 467714429 119259739 810336271 603926961 579399761 211856547 664883599 465394549 124209261 151637087 79934521 98224149 410749097 677932227 940899369 845176231 725030051 534992649 366893765 767317707 644922311 833198961 374251449 847693735 637219395 689398343 66682871 994790631 227249679 839390941 833148093 706312389 111123435 828127885 38451855 305172477 405302369 494867897 293928505 856066261 1176257 660186317 941040079 767786523 560992803 627033401 707819439 683017767 543482981 767064183 931677051 502129109 461743921 145335051 633041185 185686927 326716153 833898369 38405075 10544191 941868019 205358439 346176783 85674589 937515295 882784345 24423323 12391143 806262599 818273017 53327487 488663141 2588155 60024817 82310163 924922851 770857105 639326965 807752433 204777975 968885547 631177663 918312189 175440833 37873073 919835919 43725925 307961319 655935701 689260977 611971229 332050837 905128203 18950519 471002977 159946117 112391575 487638587 752614323 864022259 80987521 569876193 409570531 775842469 806977175 753200719 4955011 970965993 572384371 970440827 96954479 40460183 940183413 943114079 568643021 274109197 60999109 188129787 532253191 383907119 515797075 447744347 751526099 612711277 898889689 417465745 922749997 439762623 604013013 498353849 483510617 776825503 210871695 119274481 890222563 850274325 654246169 794578535 405802143 931758769 171677259 56453195 229541545 906333065 780799429 903748055 655172199 11836473 388043757 116104785 853019269 681443305 573992439 614521087 347159285 464374343 687321305 36812341 105977845 377569927 179150933 393117261 589527305 923075691 511759345 291495593 543490047 815338807 985715711 842505909 578184167 934095547 265601175 551373025 889119265 486985803 217866903 844640681 715151695 847035845 540535979 679323277 413580383 993065107 502575167 511509273 125006213 304411807 446132879 2293215 593965883 170732385 171655067 287324539 667976007 681087705 167864105 630289803 351360439 271208585 103484873 327275453 83074013 77166211 133872087 988931777 162005333 361685085 882056303 923656019 553146115 326408755 21004923 760001331 828229141 22727597 352278445 407289389 794107135 900830969 945660283 400871699 257294973 674333133 508331045 685817025 268418195 150687845 315572149 943183125 608715661 47026829 446840057 602748925 779958527 270861453 126146699 421161577 56295109 879517759 65598923 420437333 332643333 683262977 967135713 425095361 569749033 841131959 21462719 401761977 577456103 932800979 342848025 854978639 796469819 146155591 789044851 417113247 487113065 893743509 94106645 953746375 425075197 997237183 43395085 212460533 320229837 17725783 33395509 410686553 458106097 885677683 396844845 822775343 621237969 830833071 668232541 558101943 294919961 584145715 148953589 115873087 839453373 915704749 821714157 504259605 637292279 644864339 350876935 954492309 231853133 111871715 520222921 116895779 553826187 703635619 464925573 842058277 345877703 419081571 784100947 417129235 519863387 585445239 424442641 91071073 138453995 880145343 770145131 721053847 894287717 118084255 912601551 853782587 316230141 578783495 946028661 447714529 954889519 267279727 627511901 371313701 57771453 606001873 431306323 770718373 906016951 240687031 170055137 315159823 483324527 609294125 767428709 972283667 254680449 239460811 141266939 295474797 255295443 195715757 541334671 185222111 830607247 477808763 763338957 665265713 421639211 331921507 371193649 976729399 298839907 768955163 156153083 913385165 881406521 871856609 177185583 792991697 426901501 29094779 226880931 788040497 143215427 321704249 108197355 883640029 617358563 440782319 342301801 519372497 209373957 961616637 577356615 831388687 636954133 99966793 534389105 528082335 530919365 374817855 594936739 867472789 896486419 347971801 744992603 951269901 17466947 892583057 644571105 141986341 502166497 980169329 27448649 862980875 973407683 440385029 539933031 70907631 46315265 798995557 486331101 87697421 44651013 806020909 607772179 824710055 413948789 734420357 583263289 38589701 994999627 500646683 810783815 344567421 879160255 286604069 879028223 35022437 92966489 573771105 618368745 562074659 2294497 80037655 114044755 572959519 328261231 748068881 351114071 800552907 966699613 34389931 262929875 339636387 248681297 678805439 420551539 350183719 49470005 256257971 511992741 44228325 582057279 697522041 37804449 80025707 624658153 155455619 700751721 346052183 782377211 144445651 256234691 997116487 239561599 52531181 586034753 106023401 42202569 208544223 467333691 851047407 302194549 116436033 604785103 467964177 988828521 957575983 707261929 460468497 206397647 25564753 559522871 465802173 65806365 221518293 64462897 31279075 825572367 615680369 653961751 90509409 493693609 572771173 470977523 174325525 135030327 475202931 91848853 460368365 819449421 463298029 86895251 657027547 684671177 535705255 436681553 670801879 761559245 801613313 990483443 851402211 61732807 761811937 891678827 779334157 494099049 277700787 506948211 718511459 228008369 661395057 313821833 492881667 31283173 697683863 272558327 527136523 669965709 371687467 134629581 728518057 607785089 14496443 133876449 744790031 420358361 61520735 265706709 749591925 409625599 449817779 406619665 637519391 682430363 592977633 742275269 66417237 628358305 714094227 515916523 649610605 432329297 963633153 461826881 168291517 765205805 433713641 333374543 430496427 567447551 946891409 412792681 510157727 746036447 590847177 614439331 298567435 988707367 435992807 20614879 784513643 220588413 406836679 644476613 369815617 356579019 978138063 705207237 149269271 992258887 571045873 403667479 513148541 2775149 741855905 356052669 667750929 391705857 113498843 668910205 752830065 193015821 541217067 557715689 388232781 240206827 760846489 427507545 233272657 456016177 700516287 72298475 489324347 471557063 166137273 956144267 80625357 10172375 49162033 905685991 269295313 640772313 547123025 638322295 439414039 545717893 188359377 435220861 538035069 902461409 362995951 832118271 882223329 744877113 611899507 383033295 343907891 810650657 440234153 253771395 141601119 576279159 919932007 882119807 917788259 760921437 961080589 389036519 461054529 926378817 752335233 889177007 910605827 778581463 698219313 115161741 444677561 550807833 199080209 148756993 187511169 956099149 901374115 955047253 27104379 834862849 372680939 712704151 8494545 37426183 843003257 515220899 686462389 184610427 838636385 854563605 719101539 232517313 914897473 494273879 327086877 481999751 459414851 845088155 62488365 549326528 11018769 37212373 721462499 968785067 888380899 662980811 267474077 876682439 249293433 854619903 843524539 339985637 191238421 678507975 339619751 377344023 880401289 12866359 210319573 627705785 445074731 324218929 472532413 476204657 51197399 348728157 314648547 667556649 249959157 765955115 169455311 315369495 635684465 239036883 242478359 253583287 630504901 638711895 27606355 696501197 336879853 531639679 5199653 552243813 378601327 122096601 566754871 799838419 750963547 498181567 124608315 748438709 838733381 617539665 845204719 593252077 557536331 644231797 146531601 535426217 381676823 120358879 754691947 615746139 507524307 586726919 394680019 798548673 383329591 478305577 506281505 82257377 343670915 767975251 331234615 479407107 110236283 899403601 181933567 655159997 949649773 971286971 239790955 793552365 943488815 111241717 366042233 85751991 323482657 389048099 850228519 187232387 303396393 92564281 682528127 774655499 317582773 699708397 897750167 9557065 571040443 663067073 916150151 40092031 124596153 365244667 275711601 48160829 281742005 252569259 957583231 648009811 358321215 719697837 937517029 171071971 344473707 274749853 631753947 352271435 823358423 488486375 611777701 952621371 676186285 234349239 207014797 101658535 599486359 805101577 450208995 540275403 155712207 441366171 735027205 161457963 890254607 291883255 15363411 540458899 331405473 5896299 179489591 436371991 394695249 697847827 796263717 608394003 152056439 176049611 912959637 607393325 735645679 133948221 503079435 567685969 254656801 495535321 748127761 189518257 254705915 124776153 940470329 367404235 242472435 375159355 361725469 666796899 986608391 893476297 859595871 448980101 526163133 507508497 541998505 155918469 73583653 457383277 766508975 745779713 388590547 485857533 638573097 458707675 556367591 935200681 458371035 513408833 587505669 726073889 450712975 844150951 802433629 391061213 459602199 443804359 369228455 647277855 236181581 561921191 198333469 966637037 358362131 173803413 122807177 914797337 359892307 638902305 853348407 874374715 6367233 108549931 242258687 423664563 963651093 274694871 486967613 219931561 91033747 513773967 363112411 616198413 897425541 173358345 875606593 177448087 113480701 553818943 354077547 90317767 175602453 762144121 734608597 631576551 502189807 617541951 16697735 926085383 397314229 797857129 220797197 681596159 684973723 158845715 73882749 31266413 632828633 381777565 198321015 24430013 957503669 32990905 894950687 887861277 790304627 403187031 246612775 249494147 936134507 158319797 702525633 90775221 814278389 209497687 760537007 666304055 408826739 31761417 10535733 464975193 667454033 44560607 184813345 533499447 899460607 656800309 151361227 388167085 187191543 633161393 748740111 663389285 326764221 546422591 699504213 716366801 813455579 472242193 137420171 436371237 41436131 708296613 594715431 661351015 21069935 344550849 191015719 247529305 954421793 761857133 672183059 294520977 290711203 174177535 130611445 329385571 567832233 604733205 355755113 77028849 60033261 413967249 188317577 202068003 644327215 605768609 602627067 850392745 643349819 554586041 454390769 354445565 736516579 340160147 6096669 521942365 557366785 116060727 164917697 886847953 489409399 473411821 76765601 271311147 435085871 113835597 827986699 221139459 896711965 587233841 64581079 27286969 200705339 33215423 175320163 364743029 888647305 269661281 134577811 233693479 842520339 43915981 206863575 77868679 412247019 228495359 562099493 963726871 515662891 781515833 767545851 398827549 421488629 627712523 593078113 126571435 965234037 946586439 710698977 601651097 493250523 694267403 980526999 771491717 763321441 67607993 113227037 796875483 619012427 411095549 219401881 607489481 10566883 27374029 173122237 319537223 559011963 564900453 357193149 701196053 367379821 554923593 355072085 499430079 468989979 798486597 433767631 612680847 283442417 400546415 855483385 285506979 563512671 942598943 12619815 199432151 759846625 340434943 644493879 764455639 840552439 186301685 439185553 18578703 595623725 190159163 629627427 943790267 755719701 516624969 153347429 913095897 840746057 392290533 187500369 195326515 14896235 595760669 914181231 14914649 745474855 953310785 134904783 237088929 993372205 818072561 866945031 851867437 96489271 199079185 158492723 275463653 759555851 391264203 112415483 373524347 837144175 79341459 355634571 808718947 406290231 456693289 716723357 756697569 280156989 935883407 491896173 927952125 731998051 464964622 572283073 986423685 864298133 589567297 32449511 440616211 278425795 897992959 465296823 107578887 49933799 625590127 297326479 339022985 812397319 52336891 947209811 967854473 538204457 585471321 632673651 455720385 187820129 753836677 825989605 88163503 922069193 287658947 825989417 657309595 823323011 898226335 945134145 979524247 694915003 595748333 336225471 878641531 524434849 252699339 547060665 976657639 232317297 487962523 889784523 568341825 768542315 693270793 883456285 557881789 364126683 621246221 969881691 5146961 226374675 941126623 11278783 757785023 976849773 809807109 172417285 993973901 230313293 484760139 401373555 963185677 427954457 909704391 676543193 612088407 115142471 797699537 39661707 256543305 866504785 994498067 970889319 787554447 481076663 794161781 203423191 851626645 70037255 350060843 303552709 92006807 977193679 107004597 629668521 558419349 891732907 562543315 920613249 621545557 41960765 922091413 118655701 852194919 966424369 313371211 626668721 549639207 195970615 966378645 257294509 365362865 754078475 247583063 363026149 135106287 438053229 798156219 533565697 661089939 266794793 484734519 660980015 285270291 540301587 632761735 564973859 541815471 744205825 946758061 162007327 421742961 22671831 437346553 441914087 954396711 686233217 402503933 850540235 524759915 441253103 380933013 512730783 467843229 146572829 832730087 306512579 313869541 792306699 222710623 386290459 329911349 507843271 367205551 841486873 11520065 409045855 23760085 674129839 867635085 766174959 42393109 11452509 604281953 913835929 426688763 814371371 591777739 855049097 159283547 285748645 587858085 745266159 325008723 876744931 970000015 426028039 195499077 872909441 230235889 206261267 944695263 61458599 599093755 57265243 185918227 870273539 64635813 526272051 658962719 397492939 559969969 245058805 709358217 143784381 23887781 267201797 437303833 165041951 886356947 532639435 584288231 720633279 114320979 81614265 546303051 340692471 974662403 757192011 859637487 481998495 906469263 989312001 530686907 297491491 525180005 394500199 597250021 547780461 61252029 983773201 269329127 193173239 543144601 779481237 159116169 453010363 279161279 970616983 118372563 938270787 941078207 397670083 496283421 385202587 863464693 924013259 657787649 341839451 284756093 664407141 55285861 497087903 619354947 91488345 944188275 14092815 701815795 744401773 392127905 146669273 975430921 117628789 57359531 997592755 552227269 39659085 130914709 860004059 838558507 599923411 899670443 733407767 816732945 881253877 355225473 789439415 627417867 356073381 448904181 160037007 769337211 487992793 336020263 951985151 971333259 314025369 75990921 42920171 370733351 630157803 215984331 17538245 459440139 998546149 888941803 611615871 157669557 932717213 646253359 692409243 851821165 683487289 476122399 82174749 281699143 562596063 392551313 615833235 892055831 601423559 211472291 712410901 567832703 727923239 185082295 955270207 502478823 230724673 209148027 398751545 765056639 313856611 607162339 477822897 47926079 155410651 470135337 730841309 383243753 264547333 126988499 632152187 263905797 596714821 474352047 630960083 649045985 650230787 942776271 845121199 364141975 642088625 965294223 998237803 946592773 991615947 207293075 847534815 988817879 308147411 930163913 593178999 525796475 181588305 977193829 497964575 494641961 497668059 978322147 899691595 695769059 174483207 935554309 393593853 956026479 472868987 257810907 666013881 828771679 251136991 686488247 900104845 832332043 792915429 297794869 425442577 320249489 7997257 451747387 617706081 614116061 249978317 425260789 612314149 808934301 480484665 637154261 39540363 330334281 127478369 850013593 742662473 588672289 845361185 965510725 142597789 982213679 852325977 563201573 855551055 860634691 849849587 298269389 221507755 764843507 215396065 218724891 894498183 702627 93809951 342518065 698422083 768639351 694215599 200535931 473615813 680829025 545039513 200056753 421744505 928336155 693251827 13986507 520397401 302353955 871918035 921442063 735378143 629016515 709996383 154976523 857174293 288740619 888224703 262787215 371741065 510884561 163368997 288123835 205376079 189239479 929682893 55577073 370305029 113375269 357464825 809382111 762516691 983054155 246712817 115800953 748121959 462243363 790499339 966525691 408251385 939556715 37128861 349696487 304499011 889170349 493558797 194175757 618011021 184891959 155059907 511553149 625575 646151715 909033011 984755353 60105701 191938385 794117077 437449471 841760039 305603945 804431403 799828385 366994899 71592667 226276291 814132141 405604567 932343775 855326763 863854757 322612905 704250743 641441025 127392587 621239365 916301417 145743077 290053291 961935413 192675399 593930369 978691353 637620615 517159529 884981639 139581747 242541263 174679791 1792435 789187289 580945707 974515647 741070279 44832829 477605699 430389645 654954125 669856463 778680391 400804047 38615509 889952333 561331433 807894215 282124669 873985467 421270121 375964795 258281061 589629543 22260111 720404925 634682231 138281185 591268775 55817763 4332197 197519881 669122951 999497745 46288363 719633409 614605967 485945771 583120971 708937015 711030181 758235109 828632271 595029341 101255735 902381941 64252807 568903283 539661113 617940443 418728081 930791865 633577005 879260769 774502669 989873341 276412951 594457367 750871589 779159125 518141063 781140947 449934349 209836955 667172497 625877815 948899581 598895861 282156499 689034155 541036601 866881805 509009271 874890337 567135497 725772759 288316199 376226893 46072771 889580947 788301339 533972277 584469181 820757955 259570193 746950811 385533277 67586097 198549073 803873493 162159371 203611125 161726119 68192759 914046011 775331947 198611049 9486051 919875941 427562035 983745913 831590465 107178509 833012799 932280119 848021889 377283005 71703231 397924247 907091931 8323845 560758833 802044941 645690705 510612099 779642457 860554903 209865131 101222359 782102339 135446715 653249911 499316907 392038979 165396617 916586767 799732659 883875575 256633749 474228115 300185511 823755329 562553341 543862249 580049483 647341389 729897835 176838597 495439721 274164371 414678537 557718175 647495633 106554059 316216719 630137523 248367713 944649723 637798461 834368527 437232889 642282607 320095701 717335423 998026627 949480893 628416681 430313371 399053043 956120511 570021007 939703239 270068801 792045977 825666019 866604839 264939889 887318201 43680909 41655215 688708237 968219091 470352123 400051477 86882469 998022113 895886627 19819483 383648471 847336235 79669123 34304583 775087427 71451193 575523873 682386281 654406163 863225059 178343307 877926941 626266235 168522051 628911579 212810239 461189555 49157823 85157801 264975483 123803135 372039937 276575521 417001405 764785065 676449535 357104365 27939777 687499267 521416693 163219269 378328901 528983141 489539173 258961641 74345683 478729525 815748383 648072733 72691641 817711325 718690357 737916335 58780947 82425547 592464389 949809653 655392957 678126719 344537137 478009297 303777377 918662263 363887269 477413797 229919855 638612799 633467031 580300385 387392289 360679015 9200515 495140985 369284981 296912269 248473645 474898159 22128693 787264849 75859363 563535945 721914607 647471709 804727861 788492177 325825789 552364133 489155203 1054563 837709951 584953123 184074351 869937367 194048861 481546071 584268327 109862041 853901895 729531851 719763229 228448723 780682677 212057173 368767759 211525439 523127017 863318221 152731395 358534167 762768105 89416213 65996865 838692645 588221319 344330007 811869537 176097717 372185179 167817671 778364221 678710431 844216261 231795231 161836025 711022911 848246765 85079327 255588355 835193981 407890883 826975185 334421775 858202055 214240255 91277899 11843353 722090003 284967457 261395109 555056483 982064351 179949939 334784001 548782973 788356915 606448645 398069643 897578553 464354969 722146223 832994673 643967155 321526829 777289999 780575731 244482385 53132167 954392721 246001231 473718973 3728339 588867939 38390737 31608557 394420923 354551421 528552139 293714461 145735033 139885471 111910293 761169873 727119817 490132051 841883543 861536725 426261743 54003943 478916661 133213501 410922687 999216503 210842597 93062503 524591241 323336415 738112287 782424821 555287601 854399945 74667367 912205011 987485465 101635495 795641415 552064313 532806449 547325871 212948561 504119967 846417391 403821025 220560415 330756299 304582993 835828741 97495379 609936841 691655389 801047727 563825049 379133679 590668451 156791859 495418785 10744791 268768825 756070835 35573285 782192997 258842553 895730199 586275049 137494215 968985807 651071247 662222263 328814705 454069671 890002453 27480417 706271517 244409333 628153703 226892481 327236817 30824955 918059277 714445753 586742747 121227133 467285465 549380661 313798093 551535817 494928995 889562405 628843139 371603895 653253131 351067523 690408737 715481763 580855289 483293523 917254423 455901047 213130781 549655711 658480917 542000797 313292847 171558009 775057431 58711053 568340657 291150843 108386917 507982917 268170729 732287815 366041225 987099979 623948521 799315081 237455447 988487087 432746121 159119601 251969515 434765191 160292967 936928185 506484907 340280173 459759599 85862695 949568579 970436493 304612175 125806465 158788005 971109011 103804031 842362395 418058255 360556211 290247233 654594639 975011333 691089583 403943707 322023039 49010771 974781643 58152541 354256661 200659213 108478423 504107299 876519301 635879057 449828389 975457097 83895113 872998017 149839001 267351163 792761569 201377995 382875029 746451749 968899289 339665057 343351305 963606403 207554755 765408643 947491947 768770707 875340857 443930161 718093755 518393119 90682333 109452729 622768763 885387447 789893723 238223985 655546813 450597553 567945571 941589235 452260373 174170415 448842417 292941091 17703077 786725401 854800645 975440175 630198285 312540705 107501355 89105035 504730497 15224251 449401077 797865715 643030965 793213483 917126205 234416489 16153573 887158393 594127845 611998525 644659419 424898675 199541977 229267713 65789925 477529523 987039497 936883601 338084311 865498265 888974961 46252307 229615119 988701517 191628817 500056561 701942647 62754495 306207477 564839393 294728569 789788585 665178927 77376223 563164941 688536457 568031961 442653743 682427825 518140327 611507989 663525725 931578477 161546773 569939727 399640893 719636685 95634091 189768951 578642155 588391911 44798985 427692297 18090701 201450845 731167381 379371653 496473999 407022159 422923139 431778487 130314531 949826673 662293963 950466033 16363975 545909495 397588777 129456271 207598847 311083935 145813289 928306671 223425177 919479215 780856859 453165951 511581093 630409461 218286103 760816047 903695747 954341065 580705787 879677177 558125269 222142217 251441779 825051363 748411529 919393049 786333421 811129075 667594963 925241067 999419553 122690493 107853357 646775793 52618127 141237723 325631071 321636907 293940097 340550897 986170737 510228257 920882949 114364581 507734715 675506399 383134327 696527277 33272279 203643643 798419187 178623171 724901289 72196503 255483747 144089513 817430369 916665429 205609337 558302247 663082861 627168099 605949099 382303505 953397391 718945915 60513081 433378625 75196105 378017241 719113517 689144473 769470567 7753539 458541909 352518405 79863549 263875337 187977291 292650869 42762855 74035967 136189295 760076517 516918219 358679429 498858473 275712855 95715987 984175231 341014955 459126995 176633205 675598941 211242089 674465901 504364397 909982487 901496999 811117375 903757503 497876775 93531821 41819501 68111863 291301015 199100297 988598045 522861803 938097651 413864469 716637575 294892979 502134609 606865905 978654687 437570487 780908371 487856773 80376429 30042275 254039579 445795841 472036727 962537323 905037399 526676573 795550289 870832969 290205761 903721051 496516183 930979011 68503701 367199873 139660775 881416359 388831643 395717153 516742511 333588741 141278237 960528467 403972191 160632893 283445877 47327989 314031667 395725809 127672705 877579187 955613035 923269135 548906407 113524475 840797845 547091915 468533715 411545861 300460351 911453857 858884733 615942355 562248965 34578259 728057509 591409963 97576587 887145713 473421519 25852829 410413689 444825037 61376009 469042565 163169409 783522435 373524201 309786367 666414175 669568249 306833 46525943 540135635 760291673 981845923 81447193 325080747 466187033 938705743 720506081 869455285 661518325 654982219 418198159 273773005 57035505 162450901 472862503 631790039 999596887 673767603 981199487 16710843 213969857 634315317 988780075 311783019 359502597 678761775 149349517 609841379 188003147 222988545 912546255 563782947 978524415 130226319 271290589 684977209 497756115 30058827 149785715 286884403 915907525 630791207 564871695 715036461 957724697 223693477 254386425 919090763 513381467 662647751 107868485 729970357 967646561 930936609 297573063 138127517 890077251 484076483 35386913 432476735 445411179 264200529 756938171 222009563 43453313 263816429 879156933 28175807 256977017 2505799 883675705 197876025 913232529 825944725 738126803 717572007 201616719 389010837 980736801 786049639 290619515 755749517 821449327 736337127 250722093 839533389 870283223 390113177 953550527 246714153 640192569 216951027 172917719 556650497 951794235 691081341 350787423 549674811 677540177 347818941 397708685 629833411 162341043 697207625 211357403 947591187 498913885 678123959 710453009 650230053 837582363 896995501 505816633 101227907 638602877 559153107 848142759 2686267 220048859 758055899 708585719 104389599 150792019 680584065 600834831 289634195 334872017 256418951 20156697 521611769 646954243 328832693 279994763 588159297 667988577 724131041 622823713 505240353 99839531 857756129 52265951 698400727 558895723 793486747 582660625 799622443 323928049 491992055 556723533 300617063 643572051 471078887 893513579 256010855 796769781 257853031 542121363 8240773 754057979 747340153 647520561 333280167 146281559 43677477 510150391 361133631 481655747 962779265 336520165 634072641 676737469 838502563 352501307 798117417 477617807 222993329 317950599 150654465 410391881 464622547 416979103 895589463 24883393 109534779 132390045 292963645 772211865 698367525 925072357 486168919 864353849 63418323 410402341 258650823 223826897 402839439 448597585 68587581 918607707 137575593 625036195 175558127 303784853 963180671 752898723 190286493 529007881 286822255 890696217 545073289 274780933 624898535 53759517 357650053 901203619 204419929 802637065 397841125 102183363 110174013 984345731 405385353 702466573 132881943 979078773 964416983 988623345 906933359 909620245 162627005 778587047 13056475 47672031 461601967 651490865 42439153 2926999 365350831 673096789 489514327 223155527 810869569 180901285 936249525 638721097 399266931 214255993 456849343 721039667 55667677 47038961 537529901 497178093 807712413 762192627 394671297 951426723 400334167 1939251 606675529 639073479 465388859 7366951 488323221 315685911 287596801 3536401 492959613 358856087 947537379 618751735 968110055 291545747 14743209 53418411 959641275 389743007 39347363 778393539 649007597 442540441 904940711 468456867 724922741 671912611 614818321 991123823 759850583 775275819 632320457 217430555 549475227 196133093 287250747 138920541 447121751 756513739 85545313 55467957 65592737 195393315 16283575 234966381 930523551 388552315 939984195 380351893 259146361 14878885 307750291 500103683 243563107 165269693 206607807 631764313 734008213 13313319 861658981 914233343 3286355 582157457 282679721 334371111 856012005 677151471 752023101 28389319 694400673 448376445 834735187 449169311 234844383 423274685 872993195 157433911 52627201 491279231 885815181 648265187 86263409 311189461 592185797 986840759 633269153 759092507 84972969 704526229 88455949 153853431 273707801 351296293 183326775 660428115 93841787 314801879 205991081 591381861 5536957 830847461 143266549 235270313 237874261 44885579 564260787 872830179 1486401 856049111 901562505 244472863 446883847 684951829 164539679 449913267 288500661 658076767 863007785 222296887 648098531 946960597 650322527 749155731 212074415 110209375 934951301 198640115 315246013 569829803 567032677 273297609 82569023 625816375 773517521 960103123 780621287 853709885 527955617 691374103 94190581 543980235 638336187 529429725 171900209 142826925 901447431 622613691 271094759 651494779 525677689 47903631 438706671 541026713 634117129 896202877 829505957 845116715 89520059 148529391 72149233 805501989 309525913 865883033 683388481 707565629 429621429 381155707 887520137 758836725 905233959 534850773 351240523 974923667 401967125 196823095 391330701 793411623 97691305 177493875 982510809 355268237 778586385 471246501 322259785 561807457 674206861 809744689 266790267 69416719 127591769 759278277 680206741 948782275 366671813 487693397 292853827 318081401 475863329 725792541 131273661 879202287 922693831 506957729 979999427 820368047 485412633 654924461 160458647 681112329 396193409 917855829 362117901 994567187 705755763 78528757 571211125 425770927 159456871 22362675 299275697 813817733 758621921 459816955 721706535 784317445 456903787 402040191 954834373 436036457 26364567 834106941 280224001 670677167 397565693 21179129 53080281 570515617 264460867 983256767 613748181 134169293 661788435 756047331 17041663 184038541 295150363 590110979 330969329 431886337 40313371 210620417 60831433 327808273 403906769 613006603 883807533 799073389 384635913 246428565 51769673 2051725 910879635 15130457 915566549 559954099 70846285 728745821 254900753 858206693 658080279 611194095 357134017 492420085 630278877 940505759 60469555 683018363 753668493 2649933 974396479 589824983 321337383 263460637 572875585 970921521 705753513 556721785 363498785 660320377 334986015 531354903 321337677 898698599 594165915 930155761 259797179 476007035 191716917 179711311 543885033 560798465 105513747 580470715 885650141 37795075 627667551 3165959 303669287 429492831 379816521 120214613 67328987 822426033 540450059 137594371 876275609 211566437 140317161 880803523 976085127 150647465 452034605 267759237 62029905 352617077 650374697 538436999 815014449 172442249 427674167 103737677 476902881 554355823 355353017 23710627 603930795 309002869 640441369 435733405 962626651 103390903 691918283 307447959 974360137
RLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRRLRLLLLRRLRLLRLRLRLRLRLLLLLLLRRRLRLLLRRLLRRRRLLRLLRRLRRLLLLRRRRRLLLLLRRRLLLRLLRRLRRLRRLRLRLLLLRRLRLLRLRRRLLLRRRRRRLRLRRLRLLRRLRRRLRRRLRLLRLLRLLRLRLLLLLLRLLLLRLLRLRRLLRRLRLLLLRRRLLRRRRRLRLRRLRRLRLRRRLLRRRRLLRLLLRLRLLRRRLLRLLLLLRLRRRRRLLRLLLLLRRRLRLRRRRRLRRRLLLLLRRRLLRLRLRLRRLLRRLRLRRRRRRRRRRRLLRRRRLRRRRRLRRLRRLLLRRLRRRRRRLRLLLLRLRRLRLRLLRRLRLRLRRRLLRLRRRRRRRRRLLLRRLLRLLRRRRRRRRLLLRRRLLLRRLRRRRLRLRLRLRRLLRRRRLRLLLRRLLRLRLRRRLLLLLLRLLLRRRLLLRLRLRRLRRLRLRRLRLRRRLRLLRLLLLRRLRRRLLRRLLRLLRLLLLRLLRRLLRRRRLLRLLLLRRRRLLRLLRLLLLLRRLRRLRLLRRRLRLLLLRLLRRLLRLRLRLRRRLLLLRLLRLRRRRRLLRRLRRRLRLLLLRRRRRLLRRRRRLLLLLRRLRLRRLRLLLLLLLLLLRRRRLRLRRRRLLRLRRRLRRLRLLRLRRLRRRRRLRRRLRRRLRLRLLRLLRLLLLLLLLLRRRRRRRLLLLLRRLLLRRRRRRRRRRRRRLLRRRLRRRLRLRLRRRLLRLRLRRLLRLLRLRRRRRLRLLLLRRLRRLRRLRLRRRLLRLRRLLLLRRLRRRLRRRRLLRRLLRLLLLLLLRLLLLRLLRRRLLLRLRRRLLLLLRRLRLLLLRRLLRLRLLRRRLRLRRLLRRLRRLLLLLLLRLRRLRRLLLLLLRLRRLRRLRLRRRLRRRRLRRLRRRLLRLRRRRLLLLLRRLRRRRRRRRRLRRLRLLRRRLLLLRLRLLLRLLRRRRRLRLRLLLLLRLLRLLRRLLRRLRLRRLRRRRRLRLLLLLRLLRLRRLLRRLLRRRRRLRRRLRLLRLLRLLRLLLLLLLRLRRRLRLLLRRRRRLLRLRRLRRRRLLLLRLLRRLRLLRLRRRRRLRRRLLLRRRRRRRLLLRLRLLLRRRLLLLRLRLLRLRRLLRRLLRRLRRRLLRLRRLLRRLRLLRLRRLLLLRLRLRLLLRLLLRLRLLLLRRLLRRRRRLRLLRRLLLRRLRRLRRRLLLRRLRLRLRRLLRLLRRRRLLLLLRLRLLRLLLRLLRLRLRRRRLRLRRLLRRLLLRRRLLLLRLRRRLLLRRLRRRRRRRLRRLLRLRLLLLRRRLLRLLLRRLLLLRLLLLRLLLLRRRRRLLRRLLLRLLRLRRRLLRRRLLLLRRLLRLRRRLLLRLRRLLLLLLLRLLRLRRLRRRRRRLLLRRRLRRLLLLLLLRLLRRLLRLRLLRLRLLRLRLLLLLLLLLRRLRRLRRLLRLLRLRRLLLLLRRRRLRRRRLRLLRRRLLLLLRRLLLLLRLRLRLRRLLRLRLLLLRRLRRLLLLLRRRLLLLLLLLRRRLRLRRRLRRLRRRLRLRLLRRRRRLRLRLRLRRRRRRRLLLLLLLLLRLLRLRLRLLLLRRRLLLLRRLLLRRRLLLLRRLRRRLLRRRLLLLLRRLRRRRRRLLLLLLLLLLLLRRRRLRRRLLRRRRRLRRRRRRLRLLRLLLLRLLRRRRLLRLRRLRRLRLLRLRRRLLRLLLLRLRRLRRLRLLRLLRLRLRLLRRRLLLRLRLLLLRLRRRRLLRLLLRRLLRRLRRRLLLLLRLRLRRLLRRRLRRRLRRLLLLLRLLLLLLLRRLRRRRRRRRLRLLLLRRRRRLLLLLLRRRRLLRLLRRLLLRRLRRLLLRRRRRRRLRRRLRLRLRRLRLLRLLRLLRRLRRLRLLLLRLLRRRRLRLRLRRRLLLLRRLRLRLRLRLRRRLLRLLLLRRLLLLRLRLRRLLRLLRRLLRLLLRRRLLRRRRRLRRRRRLRRRLLRLLLRRLRRRRLLLRLLLLLRLRLRLLLLRRLRLRLLLRLRRRRRLLRLLRRRRLLRRLLLLRRRRRLLRLRLLLLRLRRRLLLRRRRLLLRRLLLRRLRRLRRRRLLLRLLRRRRRRRLLRLLLLRLRLRRRLLLRLRLLRRRRRRLRRLLRLRLLRRRRRRLRRRRLRLLRRLRLLRLRRLRLRRRRRLLRRLRLLRLLLLLLLRLLLLRRLLRLLRLRRRRRLLLLLLRLRRRLLRLRLRRRRRRRLRLRRLLLLLLLRLRLLRLRRLLLRRRLRRLLRRRRRRLLLRLLRLRLLRRLLRLLRRLLRLLRLRRRRRLLRRRLLRLLRLLRLRLRRRLLLRRLLRRRRRLLRLLRRRLLRLLLRLLRLLLRRRLLRRRRRRLLLLLLRRRLRRLLRLLRRLLRLLRLRLRRLRLLRLLRLLRRLLLLRRLLRRLLLLRLRLRLLLLLRRLLRLRLLLLRLLRLRLRLRLRLLLRRRRLLLLLLRRLRRRRRLLRRRLLLRRRLLRRLLRRRLRRLLRLLLRLLRLRLLRLRRRRLRRLRLRRRLLRLLRLLLRRLLLLLLLRRLLLLRLLRRLLLRLRLLLRRRLLLRLLRLRRRLRRRRLLLLRRRRRLRLLRLLLLRRRRRLLLLRLRRLLLRLLRRLLLLLLLLRRLRRRLRLLRLLLRLRRLRLLLLRLRRLLLRLLLRLRRLLLRRLLLRLRLLRRLRRRLLLLLRLLLRRLLLLRLLRLRRRRLLLRLRLRLRLLRLLRRRRLRRLRRRRLLLRLLLRRRLLRRLRLRRRRLLRRLLRLLLRLRLLLRRRLRLLLRRRLRRRRRRRRRLRLRRLLRLRRRRLLLRRLRLRRRRLLLRRRRRRLRLLLRRRRRLRRRLRRRLLRRRLLLLLLLRRRRRRLRRLRLRLLRLLLLLLLRRLRLLRRRRRRLRLRRRLLLRRLLRRRRLRRRLRLRRLLRLRLRLLLLRLLRLRRRLRLRRRRRLRLLLRRLLRRRRRRRRRLRLRRLLLRRRRLLLLRLLRRLRRRRLLLLLRRRLLRRRLLLLLRLRRRLRLLLLLLRRRLRRLRLLLLRRLRRRRRLRRRLLRRLLLRLLLLRLLLLLRLRLRRLRLRLLLLLRRLLRLLLRLLRRLLLLRLRRRRRLRLLRRLRLLLLRLRRLLLRLRLRLRLRRLRRLRRRLLRLLLLLRLLLLLRRRLRRLLLRLRRLLLLLRRLRLLRLLLRLRLRLLRRLRLRRRRLRRRLLLRLRRRLRLLLRLRRRLLRLLLLRLLLRRLRRRRRLRRLRRLLLLLLLRLLLRLRLRLLLLRLRLLRLLLRRLRRRRRLRRRLRLLLLLLRLRLRLLRRLLRLLLRRLRLRRRLRRLLLRRRRLRRLRRRLRLRLLRRRRLLLLLLRRRLLLLRLRLLRRLRLRRLRRRRLLRLLRLRRLLLRLLLRRLLLLLRRLRLRLRRLRRRRRRRLLLRLRRRLLLRRRRLLRRLRRLRLRLLRLLRLRRRLRLRRRRLRRRLLRRLRRLRLLRLRLLRLLRLLRRLLLRLLLRRRLRRRRRRLLRLLLRLRRRRLLLLRLLRLLLLRLLLRLLLRLLLLRLRRLLRRLRLLLRRLRLLRLRLRRRLLRLRRRRRLRLLRLLRLRRLRLRRLRRLRRRLLRLRLLLRLLRRLLRRLLLRRLRLLRRRLLRLLRLLLRLLLRLLRLRLLLLRRRRRRLLLLRRLRRLRRRLRRRLRRRLRLLLRRLLLLRRRLRRLLRLRRLRLRLRLLLRRRLRRRRRLLRLLRLLLRRLLRLLRRRRRLRLLRLRRRLLLRLLLRLRLRRLLLLLRLLRLLLRLRRRLRRRRRLRLLLLRLRRLLRLLLRRLRLLLLRRLRLRLRLRLRRRRLLRRRRLRRLRRRLRRLRRLLRLLLRRLLRLRLLRRLLRRRRRRLRLRRLLLLRRLLRLRRLRRRRLLRRRLRLRRRLLLLLRRLLRLRLLRLLLRRLLRRRLLLLRLRLRRLRLLLLLRLRLRRLRRRLRRRLRLRRLLLLRRRLRLLLLRLRRLLRRRRRRLLLRLLLRLRLRLRLRLRRLLRLLLLLRRRLRLRLLLRRLRLRLLLRRRLRLRRLLRRRRLLRLLRRLLRLRLRRLLRRRRLRLRRLLLLLRLRLLRRRLLLRRLRLLRRRRRRLLLLRLLLLLLRLLRRLRLRLLLRRRRRRLLRLLRLRRRRRRLLLRRRRRRLRRLRRRLRLRLLRLLRLRRRLLLLRRRLLRLRRRRRLLRRRLRRRRRLRLRRLRLRRLRRLRRLLLRLLLRLRRLRRRRLRRLRRRLLLRLLLRLRRLRRLLLLRRRLLRRRLRLRRRLLLLRRLLLLRLRRRRLLLRLRLLRRLLRRLRRRLRLRLRRLLRRRRRLRRLRLLLRRLRLRRRRRRLRRLRLRLRLLRRRRLRLRRRRLRRRRRLRRRRRRLRLLRLRRRLRLRRRLLLRLRRRLRRRLLLRRLLRRLRRLRLLRRRRRLRRRLLRLRLRLRLRLLRRLLRLLLRRRLRLLLRLLRRRLRRRLRRRLRLRRRLLRRRRLRLRLLRLLRLRRLRRLLLRLLLRLLLRRLRLLRLRRRLRRLLRRLRRLRRRRRRRRLLLRRLLLLRLLRRLRRRRLLRLLLLRRLRRRRLLLLLLLLLLRRRLRLRRLRRLLRRRLLRRLRLRLRLRLLLRLRRRLRRRLRLLLLLLRLLRRLLLRLRRLRRLLRRRLRLLRLRLRRRRRLLLLRLRLLLLLRRLLRRRRRLRLLLLRLRLLLRLRRLLLRLRLLRRRRLLLRLLRLRLLLLLLRLLLRRRRRLRRRLLRRLLLRRRLRRLRRRRLLLRRRLLRRLLLLLLLLLLRLLRLLRLRRRRRRRRLRRRRLRLRLRRLLRLRRLRRRRRLRLRRLLLLLLRLLRLLLLRLRRLRLLRLLRRRLLLLLRRRLLLLRRRLRLRRLLLLRLRLLLRLLRLRLLRLLRLLLRRRLRRRLLLLRRLRRRRRLLRRLLLRLLLLLRLLLRRRRLLRRRLRLLRRLLLLLLLLLLRLRRRLLRRRLRRLRLLLLRRRLRLLRRLRLRRRRRRRLLRRLLRLRRRRRRRRLLRLRRLLLRRLRRLRLLRRRRLRLRRRRLRRLLRLRLLRLRRRLLLRRRLRRLRLRLLLLRLRLRRRLLLRRLRLLLLRRLLRLLRRLRRRRRLRRRLLLLLLRLRRLLRLRLLLRRLLRRRRRLRRRRLRRRLRRRRLLLRRLRRLRLLLRRLLRLLLLRRLLRRLRLRRLLLRLRRRLLLLRLLLRLLLRRLRLLRRRLLLRLRRRRLLRRRLRRLLRRRRRRLLRRRLRRLLLLRLLLLLLRRLRLRLLRLLLRRRRRLRRRRLRLLRLLLRRRRRLLRLLLLLRRLLRLLLRRLLLRLLRLRLLRRLRRLLLRRRLLRLLRRLLRLRRRLRRLLLRRRRLRRLRRRLRLLLLLLRLRRRLRRRRLRRLRLLRRLLRLLRRLLLRRLLLRLLRRRLRRLRLRRLLLRRLLRLRRLLLRRRRRLRRRLRLLLLRRRLRLLRLLRLLRLRLRRLRRLRLLRRRRRRLLLLLLRRLRLLLLLLRRLRLLRLLRRLRLLRRLLLRRLLRRRRRLRRRRRLLRLLLRLLRLRLLLRRRLLLLLRRRLLLRRRRLLRLRLLLLLLRRRLLRLLRRRLLRRRLLRRRRRRRRLLRRLRLLRLRRLLLLRLLLRLRLRRLRRLRLRRRLLLRRLRLRLLRLLRLLRRLRLRRRLRLRLRLRRRLRRRLLRRLRLLRRLLLLLLRLRLRRLLLRLRRLRRLRRLRLLLRLLRRLRLLLRRRLRRLLRLLLLLLLLRLLRRLLRLRRLLLRLRLRLRRRLRLLLLLLRLRRRLRRRLRRLRRRLRRLLLLRLRRRRLRRRLRRLLRLRLLRRRLRLLLRRLRLLLRRLLLRLRLRRRLRLLLRRLLLRLRRRLLLRLRRLLRRRLRRRRRLRRRLRRRLRRRRLRLLLLLLLRLLRLRRLLLRLRLRLLLLLRRRRRRRLLLLLLLLRRLRLRRLRLLLLLLRRRRRRLLRLLLRLLLRLRLRLRLRRRRRLLRRRLRLLRLLLLRRRLLLRRLRRLRRLRRRLRRLLLRRRRRRLLRRRRLLLLLLRRLLRLRRLLLRLLRRRLRLRLLLRLRRLLLLLRLLLLLLRLRLLLRRLLRLLRLLLRLRRRLLRLRLRLLRLLRRLLRLLLLLRRLLLRRRRLLRRLRRLRRRRLLLLLLRRLLRRRRLRLLLRLLRLRRRRRLRLLRRLLRLLRRLLLRLLLLLLRRLLLLRLLLRRRRLLLLLLLLLLLRLRLLRLRRRLLLRLRRRLRLLLRLRRRRLLRRLLRLLLRRLRRRRRRRLRRLRRRRRLLLLRRRLRRLLRRLRRLLRLLRRRLRLLLRRRLRLRRRRLRRRLLLLLLLRLRRLLLLRRRRLLLLRLLRRRRLRLRRRRRRRRLLRLRLLLRLLRLRRRLRRRRRRLRRLRRLLRRRRLLRRLLLRLLRRRLLRLLLLLRRLLLRLLRRRRRLLRRRLRRRLLRLRRRLLRLLRLRLRRRRRRRLRLLLLRLRLLRRRRRLRRRRLLRRLRRLRLRRRLRLRLRRRLLLRLRLLLLLLLLLLLRRLRLRLRLRLRLLLRRLRLLLLRRRRRRRRRLLRRRLRRRLRLLLLRLRLLRRRRRRRLRRLRRRLLRRRRLRLRLLRLRLLLLLRLRLRRLLRLLRRRRRLLLLLLLRRRLLRRLRRRRRRLLLLLRRRLRLLLRLLRLRRRRRLLRLLRRRRLRLLLRRRRRRRRRLLLRLRLLRLLRLLRLLRLLRLLRRRRLRLLRLLLLRLLLLRLRLRLLLRLLRRLRLRRLLLRLLRRRLRLRRLRLLLRLRRLRRRLRRLRLLRRLRLLLLRRLRLLLLLLRLLRLRLLRLLRRRLRLLLRLLRRLLRRLRRLRLLLLRLLRRLRRLLLRRRLLRLRRRRLLLRRLLLLRLLRRRRRLLRRLLRRLLRRRLLLLRRRRLRLRRRRLLRRRRRRLRLLLLLRLRRRRLLRRLRRLRRRLRLLLLLRLLRRRLRLRLRLLLLLLRLLRRLLRRRLRLRRLRRRLLRRRRLLRLLLLRRRRLRLLLRRLRRRRRLLRLLLRLRRLLLLLRLLLRRRLLLLRRLLRLLLLRRRRLLRRLLRRRRLRLLRRLLLLLRRRLLLLRRRRRRRLRRLRLLLRLRRRRLRLRRLRLRRLRLRLRLRRLLLLRRLLRLLRRRRLRLRRRRRLLLRLRRRRRRLRRLLLRRLLLRRLLLRLRLRLLLRLLLRLLLLLRLRRRLLLRLLLRRLRLRLRRRLLLLRLLLRLLRLLLRRRRRLRRLRRRRLLLRRLLRRLLLRLLLRLLLRLLRLRLLRLRLRRLLLLRLLRLLLLLLLRLLLLLLLRLLLLLRRLRRRLRRLRLLRLRRLLLRLRLLLLLLLRLLRLRLRLLLLLRRRLRRLLLRLRRLRLLLLLLRLLLLRRLRRRLLLLLRLRRRRRRRLRLRRLRRLLRLRRLLRRRRRLRRLRLLLLLRLLLRRRRRLLRRRRRRLLLLRLLRRLLLRLRLLRLRLLRRRRRLRLRRRRRLRRRRLRRLLLLRRLLRRRRRRLRLRLRLLLLLLLLRRRRLLLLRLRRRLLRRLLRLRRRLRRRLRRRRLLLLRLLLRLRRLRLRLLLLRLRLLLLLLLLLLRRLLRLLRRRRLLRRLRLLLRRRRRLRLLLLLRRLRLLLLRRRRRLLRLLRRLRRLLLLRLRLLLLLLRLLLLRLLRRLRRRRLRRRLLLRRLLRLLLRRLLRLRRLLLRRRLRRLLLLRRLLRLLRRRLRLLLLRRRLLLRLRLLLRRLLLRRLLRRLLLRLRLLRRLRLLLRLRLRLRRRRLRLLLRRRRLRRRLRLLLLLLRRRRLRRRLLRRLRLLRRLLRRRLLLRRLLLRRRRRLLLLRLRRLLLLLRLLLRLRRRLRRLLLRRRRRLLLRRLRRLRLLRLLRRRRLLRLRLLRRRLLLLRRLLLLLLLLRRRLLRLLLLLRLLRLRLLLRLRLLLLLLLRLLRLLRRRLLLLLLLRLRLRLLLRLRLLRRLLLLRLRLRRRRLLRLLRRRRLLLLRRLRLRLRRRRLRRRLRLLLLRRLLLRLLLLLLRLLLRRLLRRLLRRLLLRRLRLRLLLLRLLLRRRRLLLRRLRLLLLRLRRRRLRRRRLRLLLRRLLRLRLLLRLRRLRLRLLRLRLRRRRRRLRLRLLLRLLLLRLRRRLLRLLLRRLRRRLRLRLRLRRRRRRLLLRLRLRRRRLLLRRRLLLLLRRLRLRLRRRLLRLLRLLLLRRRLRLRLLRLLRLLLLRRRLLLLLRLLRRRLRRLLLLRLRLRRRLRRRRRRRLRRRLRRRLLRRLLLLRRRLLLLRLLRRRRLRLLLLRLRRLLLRRRLRRLRRLLLRLLLRRLRLRRRRLRRLRLLRRRRLRLLRRRLRLRRLRLRLRRRLRLLLLLRRLRLLLLLRLLLRRRRLRRLLLLLLRLLRRLLRLLRRLLLLRRRLLRLLLRLLRLLRRRLLLLRLLLLLRLRRRLRLRRLLLRRLRLLRRLRLRLLLRRLRRLRRLLLRLLLLLLLLLRRRRLRRLLRLRLRLRLRRRLRLLRRRRLLLRRRLLRLRRRLLLLLLLLLRLLRLLRRLRLRLLLLLRRRRRRRRRRLLRRLRRLLRLRLRLLLRRRRLLLRLLLRLRRRLLRRLRRLLLLRLLLLRRRRLRRLLRRLLLRRLRRLRRLLLRRLLLLRRRLLLRRLRLRLLRLRRRRRLLRRRLLLLRLRLLLLLLRRLRLLRLLLLLRLRLLRRRRLLRLLLRLLLRRLLLRRRRRLLRRRRRRRLLRRLRRRRRRRLRRLRRLRRRLRRRRLLRLRRLLLRLRRLRRRRLLLRLRRLRRLRLRRRRRRRLRLLLRLLRLLRLLLRLRRLRRLLLLRRLRLLLRLRRRRRLRRLLLLLRRRRRRRRLLLLLLRRLLLLLRLRLRRRRLRLLLRRLLRRLLRLLLLRRLLLRLRLRLLRRRRRRLRRRRRLRRLLLLRLLLRLLRLRLLLLLLRLLRRLLRLLLRRRLRRLRRLLRRRRLLLRRLLLRRLRRRLLLLLRRRRRLRRLLLLRRRRLRLLRLRLLRRRRLLRLLLLLLLLLRLLRLRRRLRRRRLRRRRLRRLLRLRRLLLLLRRRRRLLLLRRRRLLRLLLRLRLLRRRRLLRLLLLLLRRRLRRLLRLLRRRRRRRLRLRLLRLLRLRLLRRLLLLLRLRRRLRRLRLLLLRLRLLRRRLLLLLLRLRRLLLLRRRLLLLRRLLLLRRLLLLRRLLRLRLLRRRRRRLRRLRLRRLRRLRRLRLRLLLRLLRLLLLLLRLLLRRLLRRLLLRRRLRLLRRRLRRRRRLRLRRRLRLLRRLRLRLLLRRRLRRLRLLRLLLLRRLLRRRLLRLRLLLLLLLLLLLLLRRRLRRLLLRRRLRLRRRLLLRLLRLRRRRLRLRLRLRRLLRLRLLRLLRRLRRRLRLLRRRLLRLLLRLLRLRLRLRLRRRLRRRRLLRRLLLLLRLRRRLLRRRRRRRRLLLRLRLLRRRLRLLLLLRLLLLRRRRRRRLLLRLLRLRRRLRLRLLLLRLRRLRRLLLRRLLLRRLRLLLRRRLRLRRLLRLRLLRLLRRLRLRRRRLLLRRLRRLLRRRRRLLRRRLRRRRLLLLLRRLLLLRLLRRLLLRRRLLRRRRRLLRRRRLLLRRRLRRLRLRRRRRLRLLRLLRLLLLLLRRRLRLLLLRRRLRRRRRRLLRLRRLRRLRLRRLRLRRRRRRRRRLRRLLRLLRRLRRRRRLRRLLRLRLLLLLLLRLRRLRLRLRLRLLLRRRLLLRLLLRRRRLRLRLLRLLRLLLRLRRLLLRRRRRLLLLLLRLRLLLRRRRLLLLRRLLLLRRLRRRRLRRRLRRLRLLRRRRRRRRRLRRLLRRLLRRLLLRRLRRLRLLRRLRLRRRLLLLLLLRLLLRRRLLLLRLLLLLLLRRRRRRRRRLLLLLLLLRRRRLRLLRRRLLRLRRLLLLRLLRLRLRLLLRRRRLLRLRRLLRLRLLLLLRRRLRLLLLLLRRLRRRRLLLLRLRRLLRRRRLRLRRRRRRLLRLRRLRRRRLRLLRRLLLRLLRRRRLRLLRLLLLRLLLRLRRRRRRLRRRRRRRLLRLRLLRRLLLRRRRLLLLLLRRRRRRLRLLRRLLRLLRRRLLRRLRLLRLRLLLRRLRLRRRLRLLRLRRLRRLRLLLRLLLLRRRLLRRLRLRRLLLRLLLRRRLLLRLRLLLRLRRLLRRLRRLRRLLRLRLRLRLRRLLRRLLRLLLRLLLLRRLRLLLRLLLLLLLLLRRLLRRRRRLLLLRLRLLRRRLLLLRLRLRRLLRLRLLRRRRLLLLLRRLRLLRLLLRLLRRRRLRLLLRRLLLLLRRLRRLLRLRLRLLRLRRLLLRRLLLLRLLLLRRRLLLRLLLRLLRRRRRRRLRRLLLRRRRLLLRRRLLLLRRRRRRRRLRRLLLLLLRLLLLRRRRLLRLRRLRLRLLRRLRLLRRLLRLRRLLRRRRRRLRRLRLLLRLRRLRLLLRLRRLRRRLRLLLRRLRRRRRLLLLLRRRLRLRRLRRRLLRLRLRLRLRRLLLRLLRRRRLRRLLRRLRRLRLLRLRRRLLRRLRLRRRLRLLRLRRRLLRRLLRRLRRLRLLLLLRRRLLRRRLLLLLLLRLRLRRLLRLRLRRRRRRLLLRLLLRRLRLLLLLRLLLRLLRLLRLLRRLLRRRRLRRLRRRRLLRRLRRLRRLRLRRRLRLRRRLLLLLLRLRRLRRRLRLRRRRLRLLRLRRLLRLLRRLLRLRRRRRLLLRLRLRLRLRRLRRRLLLRRLLRRLLLLLLRRLLRRLRRLRLRRLRLLLRRLLRLRRLLRRRLRLRRRLRRRRRRRRLRRRRRRRRLRRRLLRLLRRLLLRLRRRRLRRLLRLLLRLRLRLLLLRRRLRLRRRLLLLLRLLRRLLRLLRLLRRLLLRRRLRRRRLRLLLRLLLLRRRRRLLLLLRRLLRRRRLRLLRLLLLRRRRLLRRLLRRRRLLLLLLRLRLRLLRLLRRLRRLRRLRLLLLRLRLRLRLRLRRLLRLRLRRLLRLLRRLLRLRRRLLLRLLLRLRLRLLRLLLLRLRRLLLRLLRLLLRLRRRLLRRLRLLRLRRLRLRLLRRRRLLRLRRLRLRLLLLRLRRLLLLLLLRRRRLLLLRLRLRLRLLRRRLRLRRLRRRLLRLLLRLRLRLRLRRLRLRRRRLLLRLRRLLLLRLRLRRLLRRRLLRRRLRLRLLLRLRLLRRLRLLRRRRLRRLLRRLLRLLRLRLLLLRLRLLRRLLLLLRLLLRRRLRLRRLRLLLRRLLRRLLRLLLLLRRLLLLLRRLLLLLLRRLRLLLRLLRRRRLLRLRLLRLRLRRRLRLLLLLRLLLRRLLLRRLRRRRLLLRLLLRLLLLRLRRRRRRLLLLLLRLRRLRLRLLRRRRRLLLLRLRRLLRLRRRRLLRRRRRLRRRLLLLRLLLLRLLRLLLRLLRLLLRRRLLLLRLLRRRLLLLLRRRRRLRLRRRRRRLRRRRRRLRRRRRLLLRLLLRRRRRLLLRLRRRRRRLLRRLLRRRLLRLLLLLLRLLRLLRRLRRRRRRRLRRRLLRRRLRRRRRLRRLRRRRLRLLRLRRLLRRLRLLRRRLLLRRLRRLRRLRRRLRLLLRLLRLRRRLLLLLRLRLLRLRLRLRRLLLLLLRLRRRLRRRRRLRLRRLLRLRLLRLLLRRRLRRLRLLRRRLRRRLLLRRLRLRRLRLRLRRLLLLLRLRRRLLLLLLRRRLLLRRLLRLRRLRLLLRRRLLLLLRRRLRLLRLLLRRLLLRLRLLRLRLLRRRRRLRLRRRLLRRRLRLRLLRLLLRLLRRRLRLRLLRRLRRRLLLRRRRRLRLLRRRRRRRLRLLLRLLRLRRRLLRLRRLRLLRLRRRLRLLLRRRLRRLRRLLRLLLRLLRLLLLLLRRLRLRLRLLRLLRRLLRLRRRRRRRLRRRLLLLLLRRLLLRLRLLRLRRLLRLLLRRRRRLLLLLRLLLLRLLLRRLRRLRRRLRRLRRLLRRLRRRRRLLRLRRRLRRRLLLRLLRRLLRLRRLRRRLLRRLRLLLLLLLRLRRRLLLLRRLRRLLRLRLLRRRRRLRLLRRLRRLLLRLLLLRRLRRRRLRLLRRLRLRRRRLLRRRRLRLRLLLRRRLLRLLRLLLLRLLRRLLRLLRLLRRLLRRLLRLLLLRRLLRRLLRLLRLLRLLRRLRLLRRLRLRRLRLRRLRLLRLRRLLLRRRRLLRRLRRLLRRLLRLRRLLLLRRRLRLRLLRRLRLLRLRLRLLRRLLRLLLRLRLLLLRRRLLRLLLRRLRLLRRLRLRLRRLRLLRRLRLRLRLRRRRLRLLRLRRRLLRRLLRRRLLRRLLLRRLLLLRRLLRLRRRLRRLRRRRLLRLLLLLLLRRLRRRLLLLRRRRRRRLRLLLLRLRLLRRRRLRLRLLRRRRLRRRRLRLLRLRRLRLLLRLLLLLRLRLRRLRLLLLLLLRRLLLLLLLLLRRLLRLRLRLLRRRLLLLRLLRLLLLLLRRLLLRRRLLLLLLRLLRLLLLRLRLLRLLRRLRLRLLLLLRRRRLLRRRLLRRLRRRRLLRRRRLLLLLRRRLRRRLRLLLRLRRLLRRRLLLRLRRLRLLLLRRLLLLLRRRLLLLLRLLRRLLLLRRRLLRLRRLLRLLRRRLRLRLLLLRLRLLLLRLRLLRLLLLRRRRLLLRLLRLRLLLLLRLRRRRRRLLLRLRLLLRLRLRLRLRLLRRLRLLLRLRRLLRLRRLLLLLRRLRLRLLLLRLLRRRLLLLRLRRLLLLLLLRRLRRLLLRLLLRLLRLRRLLRRRLLRLRLRLRRLRRLRRLRRLLLRLRRRRRRRRLLLRRLRLLLLLLRRRLRLLLLRLLRLRLRRRLRRRRRLRRLLRRLLLRRRRRLLLLRRLLLLRRRLRLLRRLLLRLRRRLLLRRRLRLLLRRLLLRLRLLRRRRRLLRLLLRLRRRRLRLRRLLLRRRRLLRLLRLRLRRLRLRRLLLLLLLLRRLLLRRRLRLLLRRLLLRLLLRLRLLRLRRRRLRRRLRLRLRRLRLLRRRLRRLRLRLRLRRRRRRLRLLLRLLLRRLLRLRLLLRRLRLLLLRRRLLLRRRLRRRLRRRRRRLLLLRRLRLRLLLLRLRLLLLRLRLRLLLRLLRLRLLLLLRLRLLRRRRRRLRRLRRRRLRRLLLLRLRRLLLRRRRRRLLRRRRRLLRRRLLRRRRLRLRRRLRRRRLRLLRRRLRRRLRLLRLRLRRRLRLRLRLRRRLRLRRLRRLRRRRLRRLRLRRLLLLRRRRLRRRRRRLLRLRLLLRRLLRRRLRRLRLRLLLLRRRLLRLRLLRRLLLLRLRRRLRLLLLLLLRRRLRRLLRRRLRLLRLRRLLLLRLLLLLLLLRRRRLLRLLRLRRRRRLLRRLLRLRLLRLLLRLRLLLRRRLLRRLRRRRRRLLLRLLLLLLRLRLLLRRRRLRLRLLRRLRLRRRLRRRRLLLRRRLLLRLRLRLLLLRLLLLRLLRLRLRRRRRLLRRLRRLRLLLRRLLRLRRRRLRLRRRLRRRLRRRLRRRRLRRRRRLRRLLRLRRLLLRRLRRLLRRLLRRLLLRLLRRRRLLRRLRLLLRRRLLRLRRRLLRRLRLLLRRRRRLRRRRRLLLLRLLLLRRLLRLLRRRLLRRLLRRLRRRRRRRLLRRRLLLLRRLRLLRRRRLLLRLLRRRLRRLLRLLLLLRLRRRRRRLLRRLRLLLLRLLRLLRRLLRLRLRRRLLLLRRRLRRLRLLRLRLRRLRRRRLRLLRLLRRRRLRLRRLLLRLRRRLLLLRLLRRLRLLRLLLRLLLLLLLRLLLLRLLRRRRRRRLLLLRRRLRLRLLRLLRRLLRRRRLRLRRRLLRRLLLLLRLLRRRLLRLRLRRRLRRLRLLLLLRRLLLLRRRLLRLRRLRLRRRLRLLLLRRLRRLLLRRLLRRRLLLLLLLLRRLLLLLRLRLLRLRRLRRRRLRRLLLRLRLLRLLLRLRLRLRRRRRRRRRRLLRLRLLLLLLLRLRLRLRLLRRRLLLRLRLRRRRRRRLRLRLLRRLLRLLRLLRLLRLRRRLRRLLRLLRRLLLRRLLLRLRLRRRRLLRRLRLRLLRLRRRLRRRLRLRLLLRRRRRRLRLLLRLRRRLLRLRRLLLRRRRLLLLLRRRLLRLLRRLRRRRLLLRLRRLLLRLRRRRRRLRLLRLLLLRRLRRRRRRRLRLRLRRLLRLLLRRLLRLRLLLLLLRRLLRLLLRLLLRRLRRRRRRRLRLRRLLLRLRLRLRRRLLRLLRLRLLRRRLRRLRLRLRRLRRRRRRLLLRRLRRLRLRLRRRLRRRLRLRLLLLRRRLLLRRLLLRRRRLRLLLRLLRLLLLLRLLLRRLRRRLLLLLLLRLLRLRRRRLRLLRRLRLLRRLLRRLLLRLLLRRRLRRLRRLLRLRLLLRLRLLLRLLRRRLRRLLLRLRLLLRRLRLRRRRRRRLRLLRRRRRRLLRRRLRLRRRLLRLLRLLRRRLRLRRLRLRRLLLLLRRRLRRLRRLLLLRLLRLLRRLRRLLLRRLLRLLRRLLRRRRLRLRRLLLRLRRRRRRLRRLRRRRLLLRLRRRRRLLRRRRRRLRLLLRRRLRRLLLRRLLLLRRRRLLLLLRLRLLLRLLLLRRRLLRRLRRRLRRLRRLLLRRRRLLLRRLRLLLLLLRLLRRRRRRLRLRLRRRRLLLRLRLLRRLLLRRRRLLLLLRLLRRLRLRLRLRRLRLRLLLLLLRLRRRRLLRRLLLRRRRLRRRRRLLLLRRRLLRRRRLRRLRRLLRLLRRRRLRRLLLRRLRRLLLRLLLRRLLRLLRRLLRLRLRRLRLRLLRLLLRRLLLRRLLRLRLLLLLLRRRLRLLRRRRLRRLRLLRRLLRRLLLRLLLRLRLRLLRRLLRLRRRRLLLLLLLLLLLLLLLLRLRLLRLRLLRRRLRLLRLLRLLRLLLRRLLLLRLRRRRLLRRRLRRRLLRLLRRRRLRLLLLRRRRLRRLLLRRRLRRLLLLRLRLRRRLLLLLRRLRRLLLLLLLRRLLRLLLRRRRLRRLLLLLRLRRLRLRRRRLRLRLRRRRLRRLRLLLLRRLRRLLLRRLRLRRRRLRRRLRRRRLLLRRLLLRRRRRRLLLLRRLRLRLRLRRLLRLLRRLRRRRRLLRRRLRRLRLRRRLRRLRRLRRRRLRLRLRRLRRRRRRRLRRLLRRLRLRLRRLRRLLRLLRRLLRLLRRLLLLLRRRRLLRRLLLRLLLLLRRLRLLLLRRLLLLLRRRLRLRLLLLLLRLLLLRLRRLRRLLLLLRLRRLRLLRLRLLLLRLLRLRLLRRLLLRLRLRLRRLRRRLRRLRLRLLLRRRLRRLLLRRLLLLRRRRRLRLLRLRLRRRLLRLLLLLRRLRLLLRLLLLRRRLLLLLLLRLRRRLLRLRLLLLLLLRLLLLRLLRRLLRLRLRLRRLLLLRRRRRLRLLRLRRLLLRRRLRLLLLRLRLLRLRLLRLRLRRRRLRRRRLRLRLLRLLLRRLRLLLLRRRLRRLLRLRLRLRRLRRRLRRLLRLRLLLLLLRRLRRRLRLRRLLRRRLRRRLRRRLRLLRLRLLLLLLRLLLRLRRRRRRLLRLLRLLLLLLLRRRLLLRLLRRRLRLRRRRRLRRLRLRLLRLRLLRRLRLRRLLRLRRRRRRRRRRRLLRRRRRLRLLLRLLRLLLRLLLLLRLLLLRRRRRRRLLLLRLLRRRLRLRRLLLLRRLRLRLRRRLRRRRLRRLRLLRLLLRRLRRLLLRLRLLLRLLLLRLRLRRRRRRRLLRRLLLRRLRRRRRLRRRLLLLLRLRRRLLLRLLRLRLRRLRRLRLRLRRLRRLRLLLLLRLLLLLLRRRLRLLRRRLLLLRRLRLRLRLLLRLRLLRRRRRRRLLLRRRLRLLRLLLLRLLRLLRLRRLLLLRLRLRLLRRRLLLLRLRLLLRLRRRRRRLRRRRRRLLRRLRRLLLLRRLLRRLRRRLLRLRRRRRLRLLRRRLRRLRLRLLRLRRLLLLRRRRRLRRRRRRRLRLLLLRRLLLRLRLRRLLLRRRRRRRLRRLLLRRLRLLRLRRLLLLLRRRRRLLLLRRLLRRLRLLRLLLRRLLRRLRRLLRRRLLLRLLRRRLLLRRLLRLLLRRRRRLRLLRLRLRRLRLLLRRLLLRLLRRLRLRLLLLRLRRRLRLLRLLLRRLLLLRRLRRRLLLRLLRRRLRLLRLLLRRRRRRRLRRRLLRRRLLLLRRRRLRRLRRRLRRRRRRLLRRRRLLRLRLRRRRLLRRRRRRRRLLRRLLLRRRLLRLLRRRRRRLLRRRRRRRRRRLRRLLLRLRLLLRRRLRRRLLLRRLLLLLLRRLRLRLRRLRRRLRLRLLRLLRRLRLLRRLLLLRRRLRLRRRLRRRRRLRRLRLRRRRRRRRRLLLRLLRRRLLRLRLRRRRRRLRLLRLRLLLLLLRRRRRRRLRRRLLLLRLRRLLRRRLRLLLLLRLLRLRLRRLRRRLRLRLRRRRRRRRLRRRRLRLLRLRLRRRRLRRLLRLLLRLLRLLLLLRRLLRLRRLLLRRRLRRRRRRLLRRLRLLLLLRRLRLRRRRRLLRLLRLLRRRRLLRLRLRRLRLLLRLRLLLRLLRRRRLRLRRLRLRLLRRRLRLLRLRLRRRRRRRRRLLLRRRLRRRLRRLLLRRRRLRRLRLRRLLRRLRLRLRRLLRLLLRLRLLLLLLLRLRRLLRLRLRRLLLRLLLLRLRLRLLLRRRRRRLRLRLRRRRLLRRRLRLLRLLRRLRRRRRLRRLRLLRLLRLRLLLLRRLRRRRRLLRRLLLRRLRRRRRRRLLLRLRLRRRLRLLRLLRRRRRLRLRLRLLRLRRRRRLRRLRRRRRRRRLLLLRLLRRLRLRRRRRLLLRLRLLLLLLRLLLLRRLRRLLRLLRRLLRRRRLLRRRLRLRRRLRRLLLLLLLLLLLRRLLRLLRRRLLRLRLRLRLLRRLLRRLLRLLLLRLLRRRLRLLLRLLRRRLLLLLRRLLRLRLRLLLRLLRRRRLLLRRLLLRRLLLRRLLLRLRLRLRRRRRLLRRRRLRLRRRRRLLRRRRRLRRRRLRLLRLLLRLRLRRRRRRRRLLRRRLLRLLRRLLLLLLLLLLRRLLLLLLLRLLRLLLLLRRRLLLRLLRLLLLLRRLLRLLLLRRRLRLLRLRRLRLLLLLLLRLLRRLRRLRRLLRRLRRRRRLRRRRLLRLLLLLRRLRLLRLLLRRRRLLRLLLLLRRRRRRLLLRLLRLLLRLLLLLLRRRLRLLLLLRLRRRLLRRRLRLRLRRRLLLLLRRLLLRLRLLLRLRRRRRLRLLRLRRLLRRLRLLLLLRRLRLRLLLRRRLRLLLLRRRRLLLRRLLRLRLRRLRRLRLLRRLLLRRRLLLLLLRRLRLRRRRLLRLLRRLRRLRRRLRRLRLLRRLLLLRRLLLRLRRRLRLRRRLRRLRLLRRLRRRRLLRRLRLRLRLRLLLLRLLRRLRRRRLLLRLLRRRRRRLLLLRLRLRLRRRRLLRRLLLLRLRLRLRLLLRLLRLRRLLLRRRRLLRRRRRRRLRLLLRRLLLLLRRRRLRRLRLLRRRLLLRLLRLRRRLRRLLRLRRLLLLRLRRLLRRRLLRRRLRLRRRRRRLRLRLLLRLRRRRLLRLLRRLLLLRLLLRLLRLLRRRLRLLRLLRRRLLLLRLLRRLRLRLRRLLRRLLLLLLRLRRRRLRRLRRLLRLLLRLLRRRRLLRLRRLLRLRLRRLLRLLLRRLLRLRLRRLLRLLLLRLRLRLRLRLRRLLLLRLRRRLRRLRLRRRLRLLLLRLRLRRLLLRRLLLRLRLRRLLLLRLLLRLRRRLLRLLRRLRLRRLRRLRRLLLRLLLRRRRRRRRLLLRLRLRRRRLRRLRLLRLRLRRRRLRRLRRLLLLRRRLLRRLLLRRLLRLLRLLRRRLLRLLLRRRRRLLLLLRRLLLLLRLRRRRRRLRRRRRLRRLLRRRLLRRRLLLLLRRRRLLRRRRRLLRLRLRLLLLLLLRRRRLLLRRLRRRRLLLRRRLLLRRLLRLLLRLLRLLLLLRLRLLRLRLRRRLLLLLRLLRRLRLRLLLLLRLLLLRRLLLLLRLRLRRRRRRLLRRLRRLLRLLRRLRLRLRLLRLLLLLRRRRRLRRRRRLRRRRRLLLLRRRRRRLRLRRLLLLLLRRRLLLRRRLLRLRLLRLLLLLLRLRLRLLLRLLLLRRLLRLRLRLRRRRLLRLLLLRRLLRLRLRRLRRRLRRLRRRRRLRRRLLRRRLRRRLRLLLRRLLRRRRLLRLLLLLRLRRLLLLRLRLLRRRLRRRLRRRLLLRLLLRRRRLLLLRLRRRLRRRLLRRRRRLLRLLLLLLLLRRRLRRLLRLLLLLRRLLLLRLLRRLRRLRLRRLRLRRLLRRLRRRLRLRRLRRLRLRRRLRLLRLRLLLLRLLLLRRLLRLRLLLLLRLRLLRLRLRLRRLLLRLRRLLLLLRRRRLLLLRLRLRLRRLLLRLLLLLLLLLLLLRLRLRLRRLLLRRRLLLRRLLLRRLRRLRLRRRLLLRRLLRRRRLLRRRLLRLLRLLLLRLRRLLRRRRLLRLRLLRRLRRRRRLRRRRLLRLRLLRRLRRRRRRRRRLLRRRLLLLRLLLLRLLRRRRRRRLLLLRLLRRLLLRRRLLRLLRLRRLLLRRLLLRLRRLLLLLLRRLLLLRRRRLRRLLLLLRLRLLLLRRLLRRRLRRRLLRRRRLRLLRRLRLLLRRLLLLRLRLRLRRRLLRRRRLLLLRRLRLLLLLLLLRRLLLLRRRRLLRRLLLRLRRRLLRLRLRRRLLLRLRLLRLRRLRRRLLRLLRLRRLRLRLLLRRRRRRLRLRRRLLLLRRLLLLRLRLLRRRRLRLLRLRRLRLLLRRLRLLLLLRLRLRLLRRLLLLRLLLRRLRLRRRRRLRLLLRRLLLLRLRLLRRLLRLLLRRLRRLLLRLRLLRRLRRRLLRLRLLRRLRRRRLRLLLLRLLRRRLLLLLLRRRLRRLLLRLRRRRRLLRRRRLLRLLRRLLRRLLLLLRLLLLLLRRLLRLLLLLRLRLRLRLRLLRRRRRRRLRLRRLRRRLLLLLRRLRLLLRLRRLRRLLLRLRLLLLRRRRRLLRLRLRLLRRLRLRRLLRRRRRRRRLLLLLRLRLLLRLRLLLLLRRLLRRLLRLRRLRLRRRLLRRLRLRLLRLRLLRLLLLRLLLRRRRLRLLRLLLRLLLLRLLRRLRRRLRLRLLRLRLLLRRRLLLRRRRLLRRRLLRLRRRRLLLRLRLLLRLLLLLLLRLLRRRRLLLLRRLRRRLLRRLLLLRRRRLRRRRLLLLRLLLRRRLLLRRRRRRLRRRLRRLRLLLRLRRRLRLRRLRRRRLLRLLLRLLRRLRLLLLRLLRRLLRRLLLLLRRRLRRRLLRLLRLLRRRRLRLRRRRLRRLRRRLLLLLLRLLRLRRLRLLLLLRLRLLLRRRLRRLRLRLRRRRLRLLRRLLLRRLLRRRRRRLRRRLLRRRLLLRLLRLRLRRRLLRRRLRLLLLLRRLLRRLLLLRRRLLLLRRRRLLLRRLLRRRLRLLRLRLRLRLLRRLRLRRRLRRLRRLRLLRRLLLRLRRLRLLRRRLRLLRLLLLRRLLRLRLLLRLRLLRLRLRLLRRLLLRRLRLLRLRRRRRLLLLLRRRRRRRRRLLLLRRLLLRRLLRLRLRRRLRLRLLRRRRLRLRLLLRRLRRLLRLLRRLRRRRRRRLRRRLRRRLRLRRRRLRLLRRRLRRLLLLLLRRLLRLRRRLRRLLLLRLLRLRLLLRRRRRLLRLLRRLLRRLLRRLRRRLRRRLLLLLRRLRRRRRRLRLLLLLRLLLRLLLRLRLRLLLLLRLRRRLLRRLLLLLRRRRLLRLLLLLRLLRRLLLRRLRRRRLRLRRLRRRLLLLLLLLRRRLRLRLLLRLLRLLRRLLRLRLLLRRLRLRRLLLLRRRLLLRRRLLRRLRLRRLLLLLRRRLLRLRLRLRLLRRLRLRLLRLRLRLLRRRRRRLRLLLRLLLLLRRRLRRLRLLRRLRLLLLRLLLLRRLLRLRLLRRRRRLRLRLRLRLLRLRRLRRRLLRLLRRRLRRRLLRRRLLRRLRLLRLRRRLRRRRLRRLLLRLRRLRRLLLRLRLRLLRLLLRRRLLLLRRLLLLRRLLLRLRLLRLRRRRRRRLLLLRLRLLLRRLLRRRLLRLRRLRRLLLRLLLRLRRRLLRRRLRLLRRLLLRLRRLLLRLLRRLRLLLRLRRLRRRLRRLLRLLRRRLLRLLLLRLRRLRRLRRRRRLRRLLLLLLRLLRRRRRRRRLRRRRRLRRRRRRRRLRLLLLRLLRLRRRLRRRRLRLRLLRLRRLLRRLLRRLRLLLRLLRLLRLLRRLRRLLLRRLRLLLLRRLRLRRLLRRRRLRRRRRRRLRLRLLRLRRRRLRLLRRRRLRRLRLLLLLRRLLRLRRLRLLRRRLRLLRLLRLRRLLRRRLLLLRRLLLLLRRRRRRLLRRRLLRLLRRRLRRLLRLLLRLLLLLRRLLRLRRRRRRLRRLRRRLLRLRRLRLLRRRRRRLRRLLLRLLLLRLRRLLLLLLRLRLLRRLRRLLRRLLRRLLLLLRRRRRLLRLLRRLLRLRRLRLRLLLRLRRLRRRLRLRLRRRRLRRLLRRRLRLRRLRLLLLLLRRRRRRLRLRLLLRLLRLLLRRLRLRLRRLLLRLLRRRLRRRRRRRRRLLLRRLRLLLLLLRLRRLRRLRRLRLRRLLLLLLRRRRLRLLLLRRRRLRRRRRRLLLRLRLRLRRLLRLRLLLLRLRRLLLLLRRRRRRRRRRLRLRLRRRRRRRLRRLLRRLRLLRLLLLRRRLLRLRRRRLRLLRLRRLRRLRRRLLLRRLLLRLRRLLLLLRLRRRLLLLRLLRLLLLRLLRRRRRLLLLLLLLRLLLRLRLLRRRLLLLRRRRRRLRLLLRRRRLRLLLRRLLRRRLLRLLRLLRRLRRRRRRRLLLRRLRRLRLLLRLRRLLLRLLLLLRRLRRLLLLRRLLLLLLRLLRRRLLLRRLRRRRRLRLRLRLRRLRLRRLLLLLLLLLLRRLLLRRLRRLRLLRLLRLRRLRRLRRRLRLRRRLLLRRLRRLLLRLRLRRLRLRLLLRRLLRRRLLRRRRRRRLRRLRLLRLRLRLLLLRLLRRLLLRRLRLLLRLLRLLLLLRLLLRRLRRLLLRLLLLRLLLRLRLRRLLRLLRRRRRRLRRLRLRLLLRLRRLLLLLLLLLRLRLLLLLRRRRRLRRRRLLLRLRRLLLRLLLRLLRRLRLLRLRRRLRRRLLRLRRLLLRLRLLLLLRRRLLLRLRLLLRRLLLLRRLRRRRLLLRLRRLLRRRLLLRRRRRLRLLLRRRRLRLRRLLRRRLRRRRLLLLRLRLLRRLRLRRRRLRLLRRLLRLRLLRLRLRLRRLRLRLLRRLRLRRRRRLLRLLLLRRRRRLLRRLLLLLRLLLRLLLLLLLRRLLLRLRLRLRLLRLRLRLLRRLLLRRLRRLRLRLLLRRLLRRRLRLLRRRLLLLLLLRLRRLRRLLLLLRRLLRRLRLRRLRLRRLLLRLRLLLLLRLLRRRRLLRLRRLLLRLLLRLRRLLRRLRLRRRLRLLLRLRRRLLRRRRLLRLRLLRLRLLRLRRLRLLRRLLRLLRRLLRLRRLLRRLLLRRLRLRLRRRRLLRLRLRLRLLLLRRRLLLLLRRLLRLRLLLLRRLLRRRRLRLLRLLRLLRRLRLRLRLRRRLLLLRLLRRLRLLRLRRLLRLRLRLRRRRRLLRLRLRLRLRRLLRRRLLLRRRRRRLRRRLLRLLRLLLRLRRLLRRLLRLLLLLLLRRLRRRLRLRRRRRLRRRRLLLRRRRLLRRLLRRLLLLRRRLRLLRLRLRLLRRRRRLLLRLRLRLRLRRLRRLRLRLLRLLLLLRLLRLLLLRRRLRLLLLRRLLRRRLRLRLRRLLLRRRLRRRRLLRLLRRLLLRRLLLLRLLLRLRLLLRLRRLLRRLRLRRRRLLRRLRRRLLRRRLRRRRRLLLLLLLRLLLLRRLRLLRLRLLRLRRRLLRLRLLLLLLRLRRRRRLLRRLLRLLRLLRLRRLRRLRLRRRLLRRRLRLLLRRLLLLLRLRRLRRLLLRLLRRLRLLLRLRRRLRLLRLRLLRRLRRLLLRLLRLRRLLRLLRLRRLLRRRRLRRLRRRRLLLLRLRLLLRRRRLLLRLRLRRLRRLRRRLLRLRLRLRLRRLLRRRRRLLLLLRRRRRLRLRLRLRRRLLRRRLLRRRLRLRRRLRRRRRRLRLRLRRRRLLRLLLLRLLRLLRLRRLLLRRRLLRRRRRRRLLRRRLLRLRLLRLLRLRLLRLRLRRRRRLRRRRLLRLRLLLRRRRLLLRRRRRLRRLLLLLRRLRLRLRLRRRLLLLLLRRLLRLRRRRLLLLLRLLRLLRLLRRRLRLLLRLLRLLRLRRRLRLRLRRLRLRLRLRRRRLRLLLRLLRRLRLLRRLRLRRLLLLRRLLLLLRLLRLLRRRRLLLRRRRLLLLRLRLRRLLLLRLRRRRLLLRLRRLLLLLLRRLLRLRRRRRLRLLLLRRRRLLLRLRRRRLRRRLRRRRLRRRRRRLLLRLRRRLRRRRLRLRLLLRLRLRLLRRRRRLRLRLLRLRLLRLRLRRLRLRLLRLRRLLRRRLLRLLRRRLLLRRRLRLRLLLLLLLLLLLRRRRLLLRRRLLRRRLRLLRLLRRLLRLRRRRRRRLRRLRRLRRRRRRRRRRLLRRLLLRRRRLLRLRRRRRRLLRRRLLRRLLRRRLRLLRRRRLRRRLRLRLRLRRLLRRLRRRRLRLLLLLLRLRRLLLLLLLLRRLLLLLLRLLLLRLRLLRRRLLLLRLLLRRLRLLLLRLLRRRRLLRLLLLRLLRLLRLRRLRLLLLLLRRRLLLRLRRLRRRRRRLRRRLLRLRLRLLLLLLRRLRLLRLLRLLRLRRLRLRLLLLLRRLRLRLLLRLRRRRLLRRRRLLLLRRRRRLLLRRLLRRRRLLLRLRLRLLLRLRRLRRRRLLLLRLRLLRRRLRRRRLRRLLLRLRRLRLRLLRLLLRLRLRLRRLLLLLLLRRLRRLRRRLLRLRRRLLLRLLLRRRRLLLRRLLRRRLLRLRLLLLRRRLLRRLLRLLLRRRLLLLRLRLLRLLRRLLRLRLRRRRLLRLLRRRLRRRLLLRLLRLLRRLRRRRLRLLLRRLRRRLLLRRLLLRLLLRLRRRRLLLLRRRLLRRLLLRLRRRLRRRLRLRRLRRRRLLLRRLLRRRRRLRLLLRRRRRLRRRRLLRRLLLLRLRLRRLLLLLRLLRLLRRLRRLRRLLRRLLRLLLRRLLLRLLLRRRRRLLLLRLLRRLLLLRRLLRLLLLLRLLRRLRLRLRRRLRLRLRLLRRLLRRRRLRRLRRLRLRLLLLRLLLRLRRLLLLRLRRLRLRRRLRRLRLRLRRLRRLLLLRRLLRRLLRLRRRLRRLLLRLLLRLRRLRRRRLRLRRLLRRRRLRLLLRRLRLLRLRRLLRRLLLLRRLLLRLLRLRLLRRLLRRRRLLLRRRRLRLLRLLLLLLLLLRRLLLLLRRRLLLRLRRRRRRLRRLRRLLRRRRRLRLLLRLLRRRLRRLRLRRRLRRRRLRRLRRRLRLLLRRRRRRRLLRRRRLRLLRRLRRRLRLLLLRLLRLRLRRLRLLRLRLRRRLRRRLLRLLRLLRRRLRRLLLRLLRRLLLLLLRRRLRLRLLRLLLLRRLRLLLLLLLRLLRLLRRLLRLRRRLRRRRRLLRRRRLLRLRLLLRRRLLRRRLLLLLRRRRRRRLLRRLRLRLRLRRRRRRLRLLRLRRLRRLLRRLLLRLRLLRLLRLRRLLRLLRLRLLLLRLLLRRLRLRRRRRRLLLLRLRLLLLRLRLLLRLLRRLRRLLLRLRRLRRLLRRRRRLLLLRLRLRRLRLRLLLLLLRRRLRLRRRLLRLRRRRLLRRRRLRLLRRLRLRRRRRRRRRLLLLRRRLLLLLLLLRLLRRLRLLRLLLRRLRRRRLRRLRLRRRRRLLLRLLLLLRLRRRLLLLRLRRRLRRLRLRRLRRRRLRRRLLRRLLRRLRRLLRRLRLRLRLLLRRLLLRLRLRLLLRLLLRLRLRLRLRRRLLLRLRRRRLLLLRRLRRRRLRLRLLLLLLLRLLLRRRLRRLRLLRRLLLLRLLRLRLLLRRRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLRLLRLLLRRRRLLRLLLRLLRRLRLRRLLLLLLLLRRLRLRRRRLRRLRLRLLRRLRLLRRLLLLRRRRLRLLRRLRLRRRRRRRLLLRLLRRLRRRRRRLLLLLRLRLLLRRRLRRLLRLLRLLLRRRLRRLLLRLLLLRLRRLLLRLLRRLRLLLLLLLRLRLRLRRRRLLRRLLLLRLLRRRRLLLLRLRRLRRRRLRLLRRRLLLRRRLLRLLLRRRLLLRLLRRRRRLRRLLLRRLLRRLRRLLRLRRRLRRLRLRRLRRLLRRRRLLLLRLLRLRLRLLRLLRLRLRLRLRRRLRRLLRRRRLRRRLRLRRLRRRRLRRRRLLLLRLLLRLLRLLLRRRLRRRRLLLRLLRRLLLLRLRLRRRRLLLLRLLRLLLRLLLLLLRRLRLRRRRLLRLLLLRLLLRLRLLLLRLRRRRLLRRRLRLLLLRRLRLLLLLLRLLRLLRRRRLLRLRRRLLRRLLLRRRLLRRRLRRLLRRLRRLLRRLLRRRLLLRRRLLRRRRLLRRRRRLLRLRRLRRLLLLLRLRRLRLLRRLLLLLRLRRLRLLRRLRRLRLLLLLLRRRRLRRRRRRRRLLLRLLLRLLLLLRRLRLRRLLLLRLRRRRLLRRRRLRLLLLLRRLLLLLLLLLLLRRRLLLLLRLLRLLLRLLRRLLRRRRRLLRLRRLRRLLRRLRRLLRRLRRLLLRLRLRLLLRLLRRLRLLRLRLLLLLLRLRRLRRLLLLRRLRLRLLRLRRRLRLLLLRRRLLLLLLLLLRLRLLLLLLRRRRLRLRLLRLLRLRLRRRLLRRLLLLLLRRRLRRLRLLLLRRLRRRLLLRLRLLRRLRLRLRLRRRLRLLLLLRRRLLLRRLRRLRLRRLLLLRRRRRLLLRLLRLLLRLLLLRRRLLRLLRRRRLLRLLLLLRLLRLRRLLLLRRRRLRLLRLLLLLRLRRRRLRLRLLLLLLLRRLLRRRLLLRRRLLRLLLLLLRLRRRRRLRLLLLLRRRLRLLRLRRLRRRLLLRRRLRLLLLRLRLRRLRRRRRLRRRRRRRRRRRLRRRRRLRRRLLLRRRRLLRLRLLRRRRRRRRRRRRRLRLLRRLLLRLLRLRLLRLLLRRLRRRLRRRLRLLRRLLRLLRLRRRRRRLLLRRRRLLLRLLRRRLRRRLRRLRLLRRRRLRRRLLRLLLLRRRRRLRLLLLRLLRRLRLLLRRLLRRLRRLLLRRLRLLLRLRRLRLRLRLRLLRLLLLRLLRLLRLLLRLLRRRLRRRRRLLRLRRLRRRLRRRRLRLRLLLRRLRRLLLLRRRLLLRLLRRRLLLLLLRLRLLRLRRRRRLLLRRLLRRLRRRRRRRRLLLLLRLRRLRRLRRRRRLLLLRRLRRRLLLLLRLRLRRRLRRLRLRRRLRRLLRRLRRLRRRLLLRLRRLRRLRRLRRRLRRRLRLRLLLLRRLLLLRLRLRLRRRLRLLLLLLLRRLLRRRRRLRLRRRRRLLRLRLRRRLLLRLRRRLLLLLRRRLLRLLRLRLRRLLRLRRLRRLRRLLRLRRRRRLRRRLRLLLRRRLRLRLRRLLLLLLLLRRLLLRLRLLRRLLLLRLRLRLRLRLLLLLRLRRLRLLRRLLRLRLRLLLRRRRLRRLLRRLLRRRLLRLLRLLRLRRLLLLLRLLLRLLRRRLRRRRLRLRLRRLRRRLLLRLLRRRLLLLRRLRLLLLLRLRLRRLRRLRRRLLLLRLRLLRRLLRRRRRRLLRLLLLLRLLRLLRRLRLRLRLRLLLRRLRLRLRLLLRLLRLRLRRRRLLRRRRRLRRLLRRLRLRRLLRLLLLLLLRLRRLRRLLLRRRRRRLRLRRLLRLLLRLLRLLRRLLRLRLRRRLRLRRRLRRRLRRRLRLRLRLRLLLRRLRLLRRLRRLLLRRLLLRLLRRLRRRLLRLRRRLRRRRLRRRRRLLLLRLLRRRLLLRLLRLRLLLRLRLLRLRRRLLLLRRLLRRRLRRLLRRLLRRRRRLRRRRLLRLLRLLRRRLLRRLLLLRLLLRRLRRRRLRRRRRLRRRRLRLRLLLRRLLLRLRRRLLLRRRLRRRRRLLRLRRLLRLLLRRLRRLLLLLLRRLRLLLRRRRLLRLLRRRLLLRLLLLRLRRLRRRRLRRRRLLLLLLLRLRLRLLLRLRLRLLRLRLRLLLLRRLRLRRRRLLRRRLLRRLRLLRLLRLLLRRLRLRRLLRLRRLLLRLLLRRRLRLRRLRLLRLRRLRRLRRLRLLRRRRRLRLRRLRLLRRRLLRLLRRLLRLLRLRLRLRRLLRRRLLLLLRRLRLLLRLRRRLLRRRLLLLRRLLRLRRRRRLRLRLRLRLLRRRRRLRLRLRRRRRRRRRLLRLLRLRRLLLRLRLRLLLLLLRRLLRRRLLLRRRLLLLRLLLRRLLLRRLLRLLRRRRRRRRRLRLLRRLLLLLLRRRRLRRRLRRRRLRRRRLRLRLLLLRLLLRRLLRRRLLRRLLRLRRLRLRRLLRLLLRRLLLLLRRLRRRRLRRLLLLRLRLRLRRRLRRLRRLRLRLLLRLLLLRLLRLLLLRRLLRLLLRLRLRLRLLLRLRLRLRRRRLLLRLRLRLLLLRRRRRRRRRRRRLRRLRLRRRRLLLRLRLRRRRRRLLLLRLRLRRLRRRLLRRRLRRRLRRRRRRRRRRLRLLRLLRLLLRRRRLRLLRLRRLLRRRLRLRRRLRRLLLRLLRLRLRLLLRLRRLRLRLLRRLLLLRRLRRRLLRLLLRLLRLLLLRRLRLRRRLLLRRLLLLRLLLRLLLRRRLRRRRLRRLLLLLRLRRRLLRRLRLRLRLLRRLRRLRRLRRLLLRRRLLRLRLLLRRLRRLLRLRLLRLLLRRRLLRLRRRLLLRRLLLRRLLRLLRRLRLRRLLRLRRRRRLLRLLRLRLRLRLRLLLLLRRRRLRRLRRRRLRRRRLRRRRLRLLRRRLLRRLRRLLLLRRLRLLLRRRLRLRRRLLLRLLLRRLLLRLLLRRRLLRLLLLRLLRRLLLLRLRRRLRLLRLRLRRRRRLRLRLLRLLLLRRRLLRLRRRRRLRLRLRLLRRRRRRRRRLLLLLLRLRLRLRRLRLLRRLLRLRRLRRRLRLRRLRLLRRLRRLRRLLRRRLLRRRLLRLRRLLLRLLRRRRLRRLLRRRRRLRLRLRLRRRRRRLLLLLRRRRLRRRLRLLRRLLLRLRLRLRRLRRRRLRRLRRRLRLLLRLLLRLLRLLLRLLLLLLLRRLLRRRRLRLLRLRLRLRLLRRLRLRLRRRRLRLLLLLRRLRLRLRRRLLLRLLRRLRLLLLLLRRRLRLLLRRRRRRLLRRRRLRLRLLRLRLRLLRLLRLLLRRLRLLLLRLRRLRRRLLRRRLLRLRLRLLRRRLLRLLRRRRRLLRLRLRLLRRRRRLRLLLLRLLRLRRRLLLRRLRRLLLRRRLRLLLLLRLRRRLRRRRRLLRRLRRLLRLRLRLLRLRRRLLLLLLLLRRLRLRRLLLRLRRLLRLRRRLLLLLRLRLRRRLLLLLRRRRRRRLLLRLLLRRLLRRLLRRRRRRRLLLRRLLLRRLLRRRRLRLLRLRRLRLLLRLLRLLLRLRLLRRLRRRLLRRLRRLRLRRRRRRRRLRLLLRLRRRRLLLRRRLLRLRLRRLLRRRRLLRLLLLRRRRLLRRLRRRRRRRRLLLRLLLRRRRRRLRRLRRLLLRLLRRLRLLRLRLRLLRRRRRRLRRLLLRLRLLRRRRRRRRLRLLRLLRRLLRLLRLRRLRRRRLLRLRLRRRLRRLLRRLLRRLLRRLRLLRLRRLRLLRLRLLLLRRLRRLRRRRLRLLLLLRRRRRLLLLLLRLLRRLRLLRLLLRRRLRRLLLLRLRRLRLLLLRLRRRRRLLRLLLLLRRLLLLLRLRLRRLLLRLLLRLRRLLLRLLRLLLRLLLLRRRRRLRLRRLLLLLLLRLRLRRLRLRRRLLLRLRRLRRLRRRLLRLLLLLLLRLLLRRRRRLLLLLLRRLLLLLRRLLLLRLRRRLRLRLRRRLRLRRLRLRLLLRRRRLLLLRRLRRLRRLRLRLRRRLLLLRRLRLRRRRLRLRRLRRRLLLRLRLRLRRRLLLLRRRLRRLRLRRRRRRLRLRRRRRLLLLRLLLRRRLLRRRLRLLRRRLRLRRRLRRLRLRRRLLRRLRRLLLLLLLLLRLLLLLLRRRRLLLLRLLLLLRLRLLRRRRRRLLRLLRLRRRLRLLLLLLLLLLLRRLRLRRLRLLRLRRRRLRLLLRRRLLLRLRRRLLLRLRRLRLLLRLLLLRRRRRRLRLRLLLRLLLRLRLRRLLRRRLLRLRRLLRRLLLRRLRLRRRRLRRRRLLRLRLRRLRRRRLLLRRLLLRRLRLLLLLRLRLLRLRRRLLRRLLLLLLRRLRRLRLRLRRRLLRLLRRRRLLLLRRLLLRRLRLRRLLLLRRLRRRRLLLLRLLRLLLRRRLLRRLRRLRRRLLRLLLLLRRLLLRRLRLRLLLLRRRRRRLRRLRLLLRLRLLLLRRRRRRLRLRLLRRLLLRRRLRRRLRRLRLLLRLLRLRLLRLRRRRLLLLLLLLRLRLLLLLLRRLRRLRLLRLRRLLLLRLLLLLRLLRLLRLRRRLLLLLRLRRLLRLRLRLRRLRRRLLRLRLLLRRRLRLRLRRRLRLRLRLRLLLRRLRRRRRRRRRRRRLRLLRRRLRLRLRRLLLLLLLRRRLLLRRRRLLLRRLLLLRRLLRLRRLRRRRRLRLRRRLRRRLLLRLLLRLLRRLLRRLLRRLRRLLLLLLRLRRRRRRLLLLRLLRLRRLRLLLRRRRRRLRLLLLRLLLRLLLLRLRLLLRRRRRRLLLRLLRLLLRRLRRRLRRRLRLLLLRRRRRRLRRLLRRLLLLLLLLLRLRLRRLRRRRRLLRLLRLLLRLRLRRLLRRRRRRLRRLLLLLRLRLLRRLLLLRRRRLLLRLRRLRRLLRLLRLLRLLLRRLRLLLLLRRLRLRLRRRLLLRRRLRRLRLLLRLRRLRRLRRLLRRRLLRLLRLRRRRLLRLLRLLLRRRRRRLLRRRLRRRRRLRLRLRRRRLLRLRRRRLLRLLLLLRRRRRRRLRRRRLRLLRLLLLRLRRLLRLLLLRRRLLRRRLRRRRLLLLLLRRLLLLLRLRRLLLRLLLLRRLLRLLRRRLRLRLRRLRLRRRRLRLRLLLLRRLRRRRRRRRRRLLLLRLRLRLRLRLRLRLRLLRLRRRLLRRRRRLRRRRLRRRRRLRLRRLRRLRRLLLLRLLLRRLRLRLLLRRRLRRRRRRRLRLRRLRLRLRLRLLRRLLLRRLRRLLLLLLLRLRRLLRRLRRRRLRLLLRRLRRRLRRRRLLRLLRLRLLRRLLRLLLRRLLLRRLRLLRRLRRLRRLLRLLLRLRRRRRRRRRRLRRLLRLRRRRRLRLRRLLRLRLLLRLRLRLLLLRLLLLRLRLRLRLRRLLRLLRLRLLRRLRLRLRLLLLRRLRLRLRRRLLLRRRLRRRLRLLLRRRLRRLLLLRRRLRLLRLLLLRRRRLLLLRLRLRLLLRRLLLRRRLLLRLLLRLRRLLRLRRLLLLRRLLRRLRLLLRLLRLRRLRLRLRLLRLRLRRLLRLRLLRLLLRLRLRRLRRRLLRLRRRRLRRLRRLLLLLLRRLLRLRLLRRLRLRRRLRRLRRRLRRRRLLLLRLRLRRRRLRRRRLRLLLLLLLRRLLLRLRLLRLLRRLRRLLLRLLRRRLLLLRLLLRLLRLLRLRLRRLLLLLRLLRLLRRRLRLRLRLRRRLLLLRRLLRLRRRLRLLLRRLLLLLRLLLRRLRLRRLRLRLLRRLLLRLLLLLLRLRLLRRRLRLRLLRLLLRRLRLRLLRLRLRRRRRRLLLLRRRRRLRRRRLRRRRLRRRLLLLRLLRRRRLLRLLRLRLRRRRLRRLLRLRRLRLRRRLLLLRRLRRLRRLLLLLRLLRRRLLLRRRRRLLLRRRLLRLLRRLRRRRRLRLRLLLLLLRLLLRRLRRLLLRRLLRLLRRLRRRLLLRLLLLRRLLLLRLRLLRLLLRRLLLLLRLRRLLRRLRRRLLLLRLRLRLRLRRRLLRLLLRRLRLLRRRRRLRRLRRRLLRRRLRRRRRRRRRLLLRRRRLLLRLLLLLLLLLRRLRLLLLRLLLRRRRRLRRRRLRLRLRLLRRLLRLLLLLLRLLRRLRLLLRLLRLRLLRRRLRRRRRRLLLRLRLLRLLLRLLRLLLRRRRLRRRRRRLRLLLRRRRLLRLLRRLRRRLLLRLLRLLRLLRRLLLLLRRRLLRRRRLRLLLRLLRRLRLRRLRLRRLLRLRLRLLRLRLRRRLRLRRRLLRRLRRLLRLLRLRLLRRLRLLRLRRLLLRRRRRLRLRLRRLRLLRLLRRRLLLLLLLRLLRLRRRLRLRLLRRRRLLLRRRRRLLLLLLLRLRLRLLLRRLLLLRLLLRLLLRLRRLLRLLRLRLRLLLRLRRRRRRRRRRRRLRRLRRRRRRLRLLLRLLRLRLLLRLRLLLRLRRLRLRRLRLRLLLLLRRLRLRLLRLLRLLRLLRRRRRLLLRLLLRRRRLLRLRRRLRLLRRRLLRRLLRRLRRLLLRLRRLLRRRRRLLLLRLRLRRRLRRRRRLRLLLRLLLRLLRLRLRLRLLRLRLLLLRLRLLLLRRLRLLLLLRRLRLRLRRRRRRLRRRLRLLRRRRLLRRRRRLRLRRLRRLRLLLRRLRLRLRLLRLLRRRLLRRLRLLRLLRLRLRRLLLLRRRRRLLLLRRLLRLRLRRLRLLLLRRRLRLRRRLLLLLLRLRRRLRLLLRLLLLLRLRLLLLLRRRRLRLRLLRLLLRRRRLLRRLRLRRLRRLLRRRRLLRLLLRLRRRRRLRLRRRRRRRRLLRLLRLLLLLRRLRRLLRRRRRLLRLLLRLLRRLRLLRRLRLLLLRRLLRLRLLRRRLLLRRLLLLLRRLLRRLLLLLRLRRLLLLLLRLLLRLRLRLRLLRRLRRLRLLRRRRRRRLLRRLRLRRLRRRLLRRLRRLLRLRRLRRRRLLLLRRRRRRRLLRLRRRRLRRLRRLRLLRRRLLRRRRRRRRLLRRLLRRLLRLRRRLRLLLLLRLLLLLLLRRLRLLLRRRLLRLLRLRRLRRLRRLRLLRLRLRLRRLLLRRRLRRLRRLLRLLLLRLLRRRRRRLLRLRRRRRRLLLLRRLLRLRLRRRLLLLLLLLLRRRRLRRRRLLRRLRLLRRLRRRLRLRRLRLLLLRRRRLLLLRLLRRRRRRRRRRLLRLLLRRLRLLLRLLLRRRRLRLRRRRLRRLLRLRRRRRLRRLLLLRLLRRLLRRLLLLLRRLRLRLLRRLRRLLRLRLRLLLLRLRRRLLRLLRLRLRRLRRRLRRLLLLRLRLLRRLRLRRRLLLRRLLRRLRLRLRLRLRLLRRLLLRLRLLLLLRLLLLLRLLRLRLRRRRLLLLRLLLLRLLRRRLLRLRRLLLRRLLRRRRLRLRRLRRRRRRRRRRLLLRRLRLLRRLRLRLRLLRLRLLLRLRLLLLLRLRLLRRLLRRRRLLRRLRRRRRLRRRRRRRLLLLLRLRLRLLRRLRRLLLRRLLLRLLLRLRRRLLRRRLRRRRRRRLLLLRLLRLLRLLRLRLLLRLLRRRRLLLRRLLLLLRLLLRLRLRRLLRRLRLLRLRRLRLRLLRRLLRLRRLRLLLRLRRLRLLRRLLRLLRLLRLRLRRRLRRRLLLLRLLLLRRLLLLRLRLRLLRRRLRRRLLRRRRLRLLLRRLLRRLLLLRLLRLLLRLLLLRLLLRRLRLLLLLRLRRRLLLRLLLLRLLRRLLLLRRRRLLLRRRRRLRLLRRRRLLLLLLRLRRRRLLRRLRRLLRLRRLRLLLLLLRLLRRLRRRLLLLLLRLLRRLRRRRLRRRRLLLLLLRLRRLRRLRLLRLRRRRRRLRRLLRRRLLLLLLLLRLLLLLLLLLLLRRRRLLLRRLLRRLLLRRRRRLRLLLLLRRLRLLRRLLLLLRLLLLLRRRRRRRLLRRLLRRLLRRRRRLRLRLLRRRRLRLLLRRRLLRRLRRLRRLLRRLRRRRRRLRRRRLRLRRRLRRLLRLLLRRLRLRRLLLRLRLRLLLRRLLLLLLLLRLRRRRLLRLLLRRLRLRRLRLLLLLRLLLRRLRRLLRLRLRLRRLRLRRRLRRRLLRRLLRRLLLRLLLLLLLRRLLRRRLRLRLLRLRLRLLLRLLLRRRLLLLLRLRLLLLRLLLRLLRLRLLRLRRLLLRLRRLLRRLLRLLRRRLRLRLLLRRRLRRRRLRLRLRRRLLLLLRLLLRRRLLLRLRLLLLLLRRRRLLLRLRLLRRLRRLRRLLRRRRRLLRLRLLRLLLRRRRLRRRLLRRRRRLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRRRRLRLRLLLLLRLRRRLLRLRRLLLLLRRRRRRRLLLLRLLLRRLLRLLLRRLRRLRRLLRRRRLLLLRLLRLLRLRLLRLLLLRRRLLRLLLLLLLRRRRRRLLRLRLLLLLRLLRRLRRRRRLLLLRLRLRRLRLRRRRLLRRLLRRLRRLRLLRRRLLRLRLRLLLLRLLLRRRRRRRLLRLRRRRLLRLLLLLLLLLRLLLLRRLLRRRLRRRRLLRLRRRRLRLLLLRRRRRLRLRLLLLRLRLRLLLRLLRLRLRLLLRLRLLLRRRLRLRRRRLRLLLRRLRLRRRLRLLLLLLRRRLLLRLLLRRLLLLRLLLRLRLLRRRLLRRRLRRLRLRLLRRLLLLLRRLRRLRRRLRLRLRLRRRRLRLLRLRRRRLLRLRRRLLLLRLLLLRRLLLLRRRRLLRLLLRRLRLLLLRRLLLLLRLRRLLRLRLLRRRLRRLLRLLLRRLLRLLLRRLLRRRLLLRRLLRRLLLRRLRLLRRLLLRLLRRRRLLLRRRLLLRRLLRRLRRRRRLLLLRRLRLRLLLLLRRLLRRRLLRRLLRRLRLLRLRRRRLRRRRLLRRRRLLLLLLLLLLLRRRLRRRRRRRLRRLLRRLLRLLLLLRRLRLLLLLRRRRLLRRRRRLRRRLRLRLLRRRRLRRLLRRLLRLLRRRLRLRLRLRRLRRLLLLRLLLRRRRRLLRRRLRLLLRRLLLRLLRLRRRRLRLRRLRLRLRLLLRRLLLLLLLLRRLRLLLRLRRRRLLRLRRLRLRLRLRLRRRRRRRLLLRLRRRLLRRLLLLRRLRRLLRLLRRRRLLLLLRRRRRLLLRRRLRRLLRLLRLLRLRLRRRRLLRLRRLRLLLRRRLLLLLLRLRLLRLRRLLRLLLRLLLRLRRLRRLRRLRLRRRRRRLRRRRLRRLRLLRRLLRLRRRRLLLRRLLLLLRLRLLRLLRLRLLLRRLLLLRRLRRRLRLRRLLLRRLRRRRRLRLLLLLRRLRRRRRLLLRLRLLLLLRLLLRRRRRLLLRRLRLRLRLLRRLLRLRLLLLLLLLLLLRRLLLLRLLLLLRLLRLLRRRLLRLLLLLLRLRRRRLRLLRLRLRRLLRLRLRLLLRRLRLLLLLLLLLRRRLLRRLRRLLLLLLLLRRRLLLRRRLLRLLLLRLRLRLRLLRRLLLLRLRRRLLRRLRLRLLLRRRRRRLRRRLLLRRRLRLRLLRLLRLRLLRLRLLLRLRRLRRRRLLRLLLRRLLRRLRRLRRRRLRRLLRRLLLLRRLRRRRLLLLRRLRRLRRRRRLLRLLRLRRLLLRLRRRRLRRLLRRLRLRLRLLLRRRRLRRLRLLLLLRRLLRLLLRLRRRRLLLLLRRLLLLLRRRRRLLRLRLLRLRRRRRRRRRRLLLLRLRLLLLRRLRLLLRLLRLRRLRLLRLLLLLRLLLRLLLRLRLRRLRRLRRRRRRRRRLLLLLLLRRRRRLLRRRLLLLLLLLLLLLLRRLLLRLLLRLRLRLLLRRLRLRLLRRLRRLRLLLLLRLRRRRLLRLLRLLRLRLLLRRLRLLRRRRLLRLLLRLLLLRRLLRRLRRRRRRRLRRRRLRRLLLRRRLRLLLRRRRRLLRLRRRRLLRRLRLRRLLLRLRLLRRLLRLLRRRRRRRLRLLRLLRRRRRRLRLLRLLRLRLLLRLLLLRLLRLLLRRLRLLLLRRRRRLLRLLLLLLLLLRLLRLRRLLLRRRRLRLRRRLRRLLLLLRLRLRRRRRLRRLRRLLRRLLRLRLLRLLLLLRLRRRRRLRRLRLLRRLLRRLLLLLRLLLRLRRLRRLRRLRRRRRRRLRLLLRLRRRLLLLLRRLRLLRLLLLRRRRLRRLLRLRRLRLLLLLRLLLRRRLLLLLLLRRRLRLRRRLLLRRRRLRLRRLRLLRRLLRRLLRLLLRRLRLLRRLLRLRRLRLLRRRRLRLRLRRRLRRRLRLRRRRLLRRLLLLLRLRRLLRRRLLRLLRLLLRRRLLRLRLRLLRRLRRLLLLRRRRRLRLRRLRRRLRRLRLRLLLLRLRLLRRLLRRRLLLRRRRLRLLLRRRLLRLLLLLLLRLLRRLRLRRRRLLLRRLRRRLLRRRRLRRRRLRRRRLLLLLRRLLRRRLRRLRLLLRRLLLRRRRLLRRLRLLLRRRLRLLRRRRRRRLRRLRLLRLLLLLLRRRLLLRLLRRRRRRRLRRLLRRLRLRRLRLRRLRLRRRRRRRRRLLRLLRLLRRLRRLRLLRRRRRLLLLRLLLLRLRRLLLRRRRRLLRRRRRLRLRLRLLRRLRLRRRRLLRLLRRRRRLLLRRRRRRRRLLLRLRLLLRLLRLLLRLRLRRLLLLLRLRLRLRLLLLLLLRRRRRRRRRLRRLRLRLRRRRLLLRRRRLLRRRLLLRRRRLLRLLLRRLLLRRRRRLLRLLLLLLRRRRRRRRRRRRLLLLRLLLRRLLLLLRLLLLLLRLRRLRRRRLRRLLLLRRLRLLRLLRLRRLRLLLRRLRRRRLRLLRLLRLRRLRRLRLRLRRLLLRRRLRLRRRRLRLLLLRRLRRRLLRRLLRLLLRRRRRLRLRLLRRLLLRLLLRLLRRRRRLRRRRRRRLLRLLLLLLLLRLRRRRLLLLLRRRRRRLLLLRRLRRLLRRRLLRLLRRRLLLLLLLRLLLRLRLRLLRLRRLRRLRRLLRLLRLRRRRLRRLLLLRLRLRLLLRRRRLLRLRLRLRLRLLLRRLRRRRLLRRRRLRLRLLRRLRRLLRRLRRRLLLRRLLLLLRLLLLLRLLLRRLRRRLLRLLLLRRRLRRRRRLRLRLRRRRLLRLRLRRRLRLLLLLRRLRRLLLLRRLLRRRRLLLLLRRLRLRRRRLRLLLRRRLLLLRRRLLRRRLLRLLRLLLLRRRLRRLLLLLLLRRLRRRRLRLRLLLRRRLRLRRLLLLLLRLLRRLRLRRLLLLLLRLLLLRLRRLLRLRRLRLLRLRLLLLLRRLLRLRRLRRRRRRRLRRRRLLRRLRRLRLLLLLRRRRRRLRLLLRRLRLRLLLLLLLRLRLLRRRRRRRLRLRRLRLLRRRLLLRLLRRLLLLLLRRRLRRLRLRRLLRRLRRLLRRLRRLRLLLLLRRLLLRRLRRLRRLRLRLLLRRRLLRRLLLLLRRLRRLLLRRLRRRLRRLRRRLLLRRLLLLLLRRRRRRLLLRLLRRLRRLLRRLRRLRLRLLRLRRLRRLRRLLRRRRLLRRLLRRRRLRLRLRRRRRLLRRLRLRRRRLRRLRLRLRLRLRRRLLLLRRRRRRLLRLLLLLRRLLLRRRLLLRRLLRRLLLRLLRRLRRRLRRLRLRRLRLLLLRLLRLRLLLRRLRRLRRRLLRRRRRRRLLRRRRLRRLLRRRLRLRRRLLLRRRLRRLRLLLRLLLLRRRRLLLLLRLRRLRRRRLLLLLRRRRLRLLRRRLRRLLRRRRRRRRLLRLLLRLRRLRRRLRLLRLRRRRLRLLRRRLRRRLRLLRRRLLRRRLRLRRLLRLLLRRRRRLRRRLLRRRRLRRLRLLLLRRRLRLRLRLRRLRRLLLLRLLRLLLLRRRLRRRLLLRRLLRLRLLLLRRLLRRLRRRLRLRRRLLLRLRRRLLLRLLLLLLLLLRLRLLRRLRLLLLRRRLLRLRLLLLRRRLLLLLLRLRRRLLLLLRLLLRLLLRRLLLRRRRRRRLLLLLLRLLRLRLRRLRRRRRRRLLRLRRLLLLLLRLRLLLRRRLLRRLLLLRLLLRLRLLRRLRLRLRRRRLRRLRLLLRLRLLLLLRLRRRLLRRLLLLLLLLLRLRLLRRRLLLLRRRRLRRLLRLLLLRRRRRLLLRRLLLRRRRRLRLLLRLRRRRRRLLLRLLRLRRRRLLRLLLLLRLLLRRLLRRRLRRRRLRRRRRLRLRLLRLRLRRRRRLLRRLRRRLRRLLRRRRLRLLLLLRLRRLLRLRRRRLRLLRRRLRLRLRLRLLRLLRLLLRRLRRRRRLRRRRRLLLRLLRRRLRLLRRRRRLLRLRRLRRRLRLRLRRLLRLRLLLLRLLLRRRLRLLLRLRRRLRLLLRRLRRRRLRRRLLRLLLLLRLLRLLRRRRRRRLRRRLRLRLRRRRLRLRRLRRRLLRLLLLLRLLLRLRRRRRRLRLRLRRLLRRLRRRLLRLRLLLRLLRRRLLLLRLLRLLLRLRLRRLLLLRRRRRRLLLRRRRLRLRRLLRLRLLRLLLLRRLRRLRLLRRRLRRRLLRRRRRLLRLRLRLLRLLLLLLLRRRLRLLLRRRLLLLRRLLRLLRLRLRRLRRLRLLLRLRLLLLRLLLRRLLRLLRLRRLRLRRLRRLRRLLRRRLRRRLLLRLLLLLLRRLRRRLRLLLLRRRRLRRLRRRRLRRRLRRRLRRRRLRLLRRLLRLRRRLLRLRRLRLRLLLRRLRLLLLLRLRRLRRLRLLRLRLLRLLRLLLRRLRLRRRLRRLLRRLLRRRLLRLRRLLLRRLRRLRRRLRRRLRRLRLRRRRLLLLLLRRRRLLRLLRLLLRLLLRLLLRLRRRLLRRRRLLLRLLRRLRLLRLRLRLRRRLLLRLLLLLRRLRRLRRRLLRRLRRLLLLLRLRRLRLLLRRRLRRRLRLRLLRRRRRLRRLRRRLRLLLRLLLLLRLRRRRLRLLRRLRRRLLRLRRRRLLRLRLRLRLRLLLLRRLLLLRLLRLLLRLLRLLRRLRRRLLRRLRLRRLLRRLLLLLLRLRLLRRRRLLRRLRLLRLLLLRRLLLRLRLLLRRRRRLLRRLRLRRLRRRLLRRLLLRRRRLRLRLLRLRRRRRLRLRLLRLLLRLLLRLRLLRRRRLLLRLRRRRLRLLRRLLLLLLRRRLRRRLRLRLRLRLRLLRRLRRRRRLLLRLRLRRRLLRLRLRRRLLLRLRLLRRLLLLRRLRRLLRRLRLRLLRRLLLLRLRLLRRRRRLRLRRLLLRRRLLRLRRLLLLLLRRRRLRRRRRRLRRLLRLRLRRRLLLLLLRRLRRLRLLLLLLRRRLLLLLLRLLRLLLRLRLRRLRRLRLLLRRRRLLLRRLRLLLLLRRLLLRLLLLLRLRLLRLRLLRLLRLLRRRLRRRLRLLRLLLLRLLRLLLRRRLRRRLRLLRLLRRRRLLLRRLLLRLRLLLRRRRLLRRRRLRLLLLRRRLRLRRLLRRLLRLLLRLRLRLLRRLLLLLRLLRLRRRLLRLRLLLLLLRLLRLRLRLRRLLLLRLRLLLLRLLLLLRLLLLLLRLRRLRLLLRLRLLLRRRLRLLLRLLLRRRLLRRLLRLLRLRRLLLLLRLLLRRLRLRLRLRLRRLLRRLRRRLLLRLRRRLRRLLLRLLLRLLLRLRLLLRRLLLLRLRLRRLRRLRLLRLLRRRLRRRLRRRLLRLRRLRLLLRLLRRLLRLLRLLLLLLLLRRRLLRRRRLRRLLRLLLLRRLRRRRLLRLLLLRRRRRRRRRRLLLRLRLLRLLRRLLLRRLLRLRLRLRLRRRLRLLLRLLLRLRRRRRRLRRLLRRRLRLLRLLRRLLLRLRRLRLRLLLLLRRRRLRLRRRRRLLRRLLLLLRLRRRRLRLRRRLRLLRRRLRLRRLLLLRRRLRRLRLRRRRRRLRRRLLLLLRLLLRRLLRRRLLLRLLRLLLLRRRLLLRRLLRRRRRRRRRRLRRLRRLRLLLLLLLLRLLLLRLRLRLLRRLRLLRLLLLLRLRLLRRRRRRLRRLRRRRLRLLRLRRLRRLLLRRRRRLLLRRRRLLLRLRLLRRRRLRLRRRLRRLRLRRLRRLRRRLLLRLLLRRRRLLRLLLLLRRLLRRRLRRRRRLRRRLLLLRRLLLRLRRLLRRRRRRRRRRLRLLLRRLLLRLLRLRRRRLLLRLRRLLRLRLLLLLLLRRLLRRLRLLLLLLLLRRLRLLRRRLLRLLRLRRLLLLRLRLLLLRLLRRLRLRRLRLLLRRRLLLRLLRLRLRRRRLRLRLLLRRRLLRLRRRRLLRRLRRLLRLLLLLRLLLRRRRRRLRLLRRLRLRRRLLRRLLLLLRLLLLRLLLRLLLLRRRLLRLLRLRRRLLRRLRRRRLLRRLLRLRLLRRRLRLLLRRRRLRRRLRRRLLRLRRLLLRRRLRLLLLRRLLLRLLRRLLLLLLRRLLLRLLRRRRLRRRRRRLLRLRLRRLRRRLLLLLRLLLLRLRRLRRRLLLLLRRLRRRRRLLRRLRRRLLRRRLRRLRLRRLLRLLRRRLLLRRLRRLLRRLRLLLRLLRRRLLLLRLLRLLLRLRRRRRRLRLLLRLLLLRLLRLRRLLRRLRRLLRRRLLRRRLRRLLLRLLRLRLLRRRLLRRLRLLRRRLLLLLRLLLRLRRRRLLLRLRRLRRLRRLRLRLLRLLRLRRLLLLLLRRRRRRLLRLRRRRRRLLRLRRLRRLLRLRRLLRRRLLRRLLLLLRLLLLLRRLRRRLRRLRLRRRLLLRRRRRLLLRRRLLLLRRLRLRRRRRRLLLRRLRRLLLRRLLLRRLLLLLLLLRRLLRLRRLRLLRRRRLRRRLRLRLLRLLRLRLLLRRRLLRLRLRRLRRLRRLLRLRLLLRLRLRLRLLLRLLLRRLLRLRRLLRRRRRRLRLRLLRRRLRLLRLLRLLRLRRRLRRLLRLRRRLLLRLLRRLRRRRRRRRLRRLLRRLRLLRRRLRLRLRLLLRLRRRRRRLRLLLRLLLRLLRLLLRLLRRRRLRLLLLRLLLRLLRRLRLRRLLLRLRRRLLRLRRRLLRRRLRLRLLLRLRRRLLRRRLRLLLRRRLRLLRRLLLRLLLLLRLLLRLLLRLLLLRLRRRRRRRLRRLRLLRRRLRLRLRRRRRLLLLLLLRRRRRRRRLLRLRLLRLRRRRRRLLLLLLRRLRRRLRRRLRLRLRLRLLLLLRRLLLRLRRLRRRRLLLRRRLLRLLRLLRLLLRLLRRRLLLLLLRRLLLLRRRRRRLLRRLRLLRRRLRRLLLRLRLRRRLRLLRRRRRLRRRRRRLRLRRRLLRRLRRLRRRLRLLLRRLRLRLRRLRRLLRRLRRRRRLLRRRLLLLRRLLRLLRLLLLRRRRRRLLRRLLLLRLRRRLRRLRLLLLLRLRRLLRRLRRLLRRRLRRRRRRLLRRRRLRRRLLLLRRRRRRRRRRRLRLRRLRLLLRRRLRLLLRLRRRLRLLLLRRLLRRLRRRLLRLLLLLLLRLLRLLLLLRRRRLLLRLLRRLLRLLRRLRRLLLRLRRRLLLRLRLLLLRLLLRRRRRRRLRLLRRRRLLLLRRRRLRRLLLLRLRLLLLLLLLRRLRLRRRLRRLRLLLRLLLLLLRLLRLLRRLLLLRRLLRRRLRRLLLRRLRRRRRLLRRRLRRLLLLLRRLLLRLLLRRLRLLLRRLRRLRLRLLLLLLLRLRRRRLRLRRLLLLLRLLLLRRLLRLLRLRLLLRLRLRLLLRRRLRLRRRRRRRRRRRLLRLRLRLRLRLRRRLLRLRRRRLLLLLLLLLRRLLLRLLLRLRRRRLRLRRLLLLLLLRLLRLLLRRLLLLRLRLRRLRLRRRRRLRLRLLRRLRRLLLLLRRRRRRRLLLRRLLRLLLLLLRRRRRLLLRLRRRLRRLRLLLLLRRLRRLLLLRLRRRLLLLLLLLLRRRLRLRRLRRLRRLRRLRRLRRLLLLRLRRLRRRRLRRRRLRLRLRRRLRRLLRLRLLRRRLRRLLLRLRLLRLRRRLRLLRLLLRLLRLRRLLRLRRRRLLRLRRRRRRLRRLRLRRLRRLLLRLRRRLRRLLRRLLRLLRLRRRRLRRLLRLLRRRLLLRRLRLLLLRRRLLRRRRLRRLLLLLRRLLRRLLRRLLLRRRRLLLLRLRLLLLRRLLLLLLRLRRRRRLRLLLLRRLLRLLRLLLRLRRRRRLRRLLLRLRLRLRRRRRRLRRLLRRLLLRLRLLRLLLRRLLLLRRLRRRRLLLLRLRRRLLRLLLLLRRLRRRLRLLRRRRRLRRRLLLRRRRLLRRLRRRRLLLLRRLLRRLLLLRLRRLLRRRRRLLLRRRRLLLLLLLRLLRLRRRLRLLLLRLRLLRLRLLRLRLRLRLLRRRRLLRRLRRLLLLRLRLLLLLRRRLRLLLLLLRLLRRRLLRRRLLRRRLRLRLRRRLRRRLRRRRRLRLLLRRRLRRRLLRLRLRLLLRRRRLRRRLRRLRRRLLLLLRLLRLLLLRRRLLRRLLRRRLRRRLRRRLRRLRLRRLRLRLLRRRRLRRLRRRRRRRLRRRRRRRLRRRRRLLRLLLRLLRLRRLRLLRRRLRLRRRRRRRLRRLRLRLRRRRRLLLRLLRRRLRLLRLRRRRRRLRRRRLLRLLLRRRRRLRLLLLLLLRLRLLRLLRRLRLLRRLLLLLRLLRLRRRRRLRRRLLLLLRRLLLLLLRRRRLRRLLRRRLRLRRLRLRRLLLLLRLRLLLLLRLLLLRLLRRRRLLRRLLLLLLRLRLRLRRRRRRRRLLLLRRRRLRLLLRRLLRRLRLLLRLLLRLLLLRRRRLRRRLRLLRLRLRRRRLRLRRRRRRRRRRLLRRLRRLLLLRRLLRLRRRLLLLLRLRRRRRLLRLRRRRLLLLLRRLRRLLRLLRRRRLRLRRRRRRLRRRRLRRLLRLLLLRLLLRRRLLRRLRRRLLRRLRLLRRRLLLRLLRRRRLLRRLRRLLLRLRRRRLLLRRRLRLRRRLLRRRLLRRLLRRRLRLRRLLRLRRRLRLRLRLLLLRLRRRLLLLRLLLRLRRRRRRLLLLRLLLRRLLRLRRLLRRLLLRRRLLRRRLLLLLRRRRLRLLRRRRRLRRRLRLLLRLLRRRLLLLLRRRLLRLLRLRRLRRLLLLRRLRLRRLLLRRRRLLRRRRRRRRLLLRRLRRRRRLRRLRLRRRLRLRRRRRRRLRRLRRLLLRRRRRRRLRLRLRRRLRLRRLLRRRRLRLRLLLLRRLRRLLLLRRRRLLRLRLRLLLLRLLLRLRRRRLLRRRLRRRRRRLRRRLLRRLLRRLLRRRLLRLRLRRRRLRRRLLLLRRRLLRLRRRRLRLLLLRLLLLRLRRRLLRRLRLRRRLRLLRLRLRRLRLRLLLLLLRLRLRRRLRRRRLRLLLRRLRRRLLRLLLRLRLRLRLLLLLLRRRLRLRLLLLRRRLLLRRRRRLLRLRLRLLLRRLRRLRRRRLLLRLRLRRLRRLRRRRLLLRRRRRLRRLLLRLLRRRRLRLRLLLRLLLLLLLRLLLRLLLRRLLRRRRLLLRRRRLRRLLLLRLRRRRLRLLRRRLLLRLLRLLRRRLRRRLLRLRLLLLRLLRLRRLLLLRLRRLLLRLRLLRLRLRLLLRLRRRRRLLRLRRRRRLRRRLLLLRLLRRRRRRLRRLLRRLRRLLRRRRLLLRRLRRRLRRLRRLLLRRRRLRRRRRLRLLLRLRLLRRRLLRLRRLLRLRLRRRLLRLLRLLRRRLRRRRRRRRRLLLLRLLRRLRLRLRLRLLLRLRRLLLLRRRLLLRRLRLLLRRRRRRRRRLRRLRRLLRLRLRRRRRLLLLLLLLLLRRLLRLLRRLRLRLRRRLLLLRRRLRRRLRLLLRRLLRLLRRRRLRRRRLLLLRLLRRLLRRRLLRLLRLLRRRLLRRRRLLLRRRLLRLRLRRLRLLLLLRRLLLRRRRLRLRRRRRRLLRLRRLRRRRRLRLRRLLLLRRLRRRLRRRLLRRRLLLLLRRLLLLLLLRRLLRLLLLLLLRLLRLLRLLLRLLLLRRLRLLRRRLRLLRLLLLRRRLRLLRLLRLRLLLLLLLRLRRRLRRLRRLRRRLRLLRLLRRRRLLRLRRRLRLLLLLRLLRRRRRLLLLLLLLRRRRRRLLRRRRRLRLRLLLLRLRRRLLRRLLRRLRRRRLLRRRLRLRLRRLLLLLLRLLLLLRLLRRRRLRRRLRRLRLRRRRRRLRRLLRRLRRRLLLRLLRLLRRLLLLRRRLLRRRLLRLLLRRRRRLLLLLRLLRRRRLLLLRLRRLRLRRLLLLRRLRRRRRRRRRLRRLRLLLRLLLLRLLLLRLLRRLRLLRRRRRLLLLLRRRRLLLLRRLRRRLRLRRLLLLRRLRRRRRRLLLRLLRRLRRLLLLLLLRLRLRRLRRLRLRRLLRRRRRLRLLLRLLRLRRRRLRLRRLLLRRRRRRLRLLRRRRLLLRRRRLLRRRRLLRRRRLLRRLRLRRLLLLLLRLLRLRLLRLLRLLRLRLRRRLRRLRRRRRRLRRRLLRRLLRRRLLLRLRRLLLRLLLLLRLRLLLRLRRLLRLRLRRRLLLRLLRLRRLRRRRLLRRLLLRRLRLRRRRRRRRRRRRRLLLRLLRRRLLLRLRLLLRRRLRRLRLLLLRLRLRLRLLRRLRLRRLRRLLRLLLRLRRLLLRRLRRRLRRLRLRLRLRLLLRLLLLRRLLRRRRRLRLLLRRLLLLLLLLRRRLRLRRLLLRLRRRRRLRRRRLLLLLLLRRRLRRLRLLLRLRLRRRRLRLLRLLRRRLLRRRLLRLRRRLLLRLRLLRRLRLRRLRRLLRLRLLLLRRRLLRLLRRLLLLLRRLLLRLLLLRRRRRLLRRRRLRRLLRRRLLLRRLLLLLRRLLLLRRRLLLRLLRLRLLLLLRLRRLRRLRRRRRRLLLRLRRRRLLLRLLLLLLRRLRLLRLLRLRLLRLRLLLLLLLLLRLLRRLRRLLRLLLLLRLLRRLRLRRRRRRRLRLLRLRLRLRLRRRLLLRRRLRRRLLLLRLRLRRLRRLRRRLRLLRRRLLLLLRRRRRRLRLRRRLLLLRRRRLLRRRRLLRLLLLRLLLRLLRLRRLLLLLLLLLRLLRRLLRRLLRRRLLRLLRLRRLLRLRLLLRRRRRRRLRRRLLLRRRRLRRRRRRRLLLLLLLLLRRRRRRRRLLLLRLRRLLLRRLRLLRRRRLRRLRLRLRRRLLLLRRLRLLRRLRLRRRRRLLLRLRRRRRRLLRLLLLRRRRLRLLRRLLLLRLRLLLLLLRRLRLLRLLLLRLRRLLRRRLRRLLLLRLRRLRRRRLRRRLRLLLLLLRLLLLLLLRRLRLRRLLRRRLLLLRRRRRRLLLLLLRLRRLLRRLRRLLLRRLLRLRRLRLRRRLLRLRLLLRLRRLRLLRLLRLRRRLRRRRLLLRRLLRLRLLRRRLRRRLLLRRRLRLRRRLRLLRRLLRLLRLLRRLRLRLRLRLLRRLLRRLRRRLRRRRLLRLRRRLRRRRRRRRRLLRRLLLLLRRRRLRLRRLLLRRRRLRLRLLRRLRLRRLLLLRRRRRLLRLRRLRRRLRRLLLLRLRRRLLRRRRRLLRLLRRLRLRLRRLRLLRRRLLRRRRLRRRRLLLRRRLRRRLRRLLLLLLLRLLRRRLLLLRRRLLLRRRRLLLLLLLLRLLRRRRRRLRRRRLLLLRRLRLLRLRLRRLLRLRRLLRRLRLLRRLLLLLLRLLRLRRRLRLLRLRRRLRLLRLLLRLRRRLLRLLLLLRRRRRLLLRLRLLRLLLRRLRLRLRLRLLRRRLRRLLLLRLLRRLLRLLRLRRLRLLLRRLLRLRLLLRLRRLRLLLRRLLRRLLRLLRLRRRRRLLLRRLLLRRRRRRRLRLRLLRRLRLRLLLLLLRRRLRRRLLRLRRRRRLRRRLRRLRRLRRLLRRLLLLRLLRLLLLRRLLRLLRLLRLRLLLRLRLLLRRRRRRLRLLRLLLRLRLLLLRLRRLRLLRRLRRLLRRLRLLLLLRRRLRLRLRLRLLRLLLRRRLLRRLLRRRRRRLLRRLLRLLRLRLLRLRRRLLRRLRLLRRLLLRLRLLLRLLLLLLLLRLLLLLLLLRLLLRRLRRLLRRRLRLLLLRLLRRLRRRLRLRLRRRRLLLRLRLLLRRRRRLRRLLRRLRRLRRLLRRRLLLRLLLLRLRRRLRRRRLLLLLRRRRRLLRRLLLLRLRRLRRRRLLLLRRLLRRLLLLRRRRRRLRLRLRRLRRLLRLLRLLRLRRRRLRLRLRLRLRLLRRLRLRLLRRLRRLLRRLRLLLRRRLRRRLRLRLRRLRRRRLRLLRRRLRRLRRRLRLLLRRLLRLRRLRLLRLRLRRLLLLRRLRLLRLRLRRRRLRLLRRRRRRRLLLLRRRRLRLRLRLRRLLLRLRLLRLLLRRLRRRLRLRLRLRLLRLRLLLLRRRLRLLRRRRLRLRLLRRLLLRRLLLRLRLRRRLRLRRLLRLRRLLLLRLLRRLLRRLRRLRLRRRRLRLRRLLRRRRRLRRRLLLRLRLLRLRRRLLRRLLRRLRRRRRLLRRRRRLLRRRRRRLLRLRRRLRRLLLLRRLRLRRLRLRLLLRLRRRRRLRRRLLRRRLLRLLLLRRRLRRRLRRRRLRLLLLLLRRRRRRLRLLRLRLRRLLLLLRRRRLRLLRRLRLLLLRRLLLLLRLLLRRRRLRRRRLRRLRRRLRRLRRRLLLRRRRLRRLLLRRRRRLLLLLRLRLLLLLLRLLLLLLRLLLLLRRRLRRRLLLLLRRRLRLLLLLLRRLLRRLLLRRLRRRRRRLRRLRRLLRLLLLLLLRLLLRRLLLRLLLLLRLLRLLLLRLRRLRLLRRLLRLRRLLLRRRLLRLLRLLRLLLRLRRRLRRLRLLLRRRRRLRLRRLRLRLRLLRRRRRRLRLLLRLLLLLRLRLLRRLRLRRLRRRLLLRLLRLRRLLLRLLLRRRLLRLRLLRLRLRLLRRRRRLRLLLRRRRRRLLLRRRLLRRLRLLRLRRRLLLRRRRRLLLRLRRLRRRLLRRRLRLRRLRLRRLLLLLRLRLLLRRLLLRLRLRRLRRRLRRLLLRLRLRRLLRLLLRRRLLLLLRLRRLLLLLLLRLRRRLRRLRLLLRRLRLLRLRRLRLLLRLRRRLLLRLLRLLRRLRRRLRRLRRRRRRLLRLRLRLRRLRRLLRRLRLLLLLLLRLLLRRRRRRLLRRRLRLRRLRLLRRLRRRLLLLLRRRRRLRRRRLRRRLLRLLRLLLRLLRLLRRLLRLLLLLRRLRLLLRLLLRRRLRRLLRRLRLLRLLLRRLLRLRRRRRRRLRLLLRRRRLLRLLRRLRLRRLLLLLRLRRLLRLLRRRLRRRRLLRLLLLRLRRLLRLRLLLLRRLLLLRLRLRRRLLLRRLRRLRRRRLRRLLRRLRRLRRLLRRLLRRLRRRRLLRRLLRRLRRLRRLRRLLRLRRLLRLRLLRLRLLRLRRLRLLRRRLLLLRRLLRLLRRLLRRLRLLRRRRLLLRLRLRRLLRLRRLRLRLRRLLRRLRRRLRLRRRRLLLRRLRRRLLRLRRLLRLRLRLLRLRRLLRLRLRLRLLLLRLRRLRLLLRRLLRRLLLRRLLRRRLLRRRRLLRRLRLLLRLLRLLLLRRLRRRRRRRLLRLLLRRRRLLLLLLLRLRRRRLRLRRLLLLRLRLRRLLLLRLLLLRLRRLRLLRLRRRLRRRRRLRLRLLRLRRRRRRRLLRRRRRRRRRLLRRLRLRLRRLLLRRRRLRRLRRRRRRLLRRRLLLRRRRRRLRRLRRRRLRLRRLRRLLRLRLRRRRRLLLLRRLLLRRLLRLLLLRRLLLLRRRRRLLLRLLLRLRRRLRLLRRLLLRRRLRLLRLRRRRLLRRRRRLLLRRRRRLRRLLRRRRLLLRRLRLLRRLRRLLLRLRLRRRRLRLRRRRLRLRRLRRRRLLLLRRRLRRLRLRRRRRLRLLLLLLRRRLRLRRRLRLRLRLRLRRLLRLRRRLRLLRRLRLLRRRRRLLRLRLRRRRLRRLLLRRRRLRLLRRRRRRRLLRLLRRRLRRRLRRLRLLRRLLLRRLRLRLRLLRLLRLLRLLRRRLRLLLLLLLLRRRLLRLRRRRRRLLLRLRRRRLRRLRLRLLLRLLLLLRLLRRLLRRRLLLLLRRRRLLRRRRLLLRLRRLLRRRLRLLLRRRLLLRLRRRLLRRRLRLRRLLLLLRRLRRRLRLLLLRLRLLRRRLLLLRRLRRLRLRLLRLRLLRRRRRRRRLLRRRLLLRLRRRLLRRRLRRRLRLRRLRLLLLRLLLRLRLRLLRLRRLLLRLLRLRLRLRLLLLLLRLRRRLRRRLLRRLRLRRRLLRLRRRRLLLRRRLLLRLLLRLLLLLLRRRRLLRLRLRRRRLRLRRRRLRLRLRRRLRRLRLRRRRRLRLRRLLLLLLRLLRLLLLRLLRRRRLRLLRRRLLLLLLRRLLLLLRRLLLRRLLLLRLRLLLRLLLLRLRRLLLRLLLRLRRLRLRLLLRLRLRLRLLLRLRLLRLLRLLLLRLLRLRLLRRRRLLLLRLLLLLLRRLRLRRRLLRRLLLRLLRLRLRRRRLLLRRLRLRRLLRRRRLRLLLRLRRRRRRRLLLRLLRRLLLRLRRLRLLRRRRLRRRRRRRRLLLLRRLRRLRLLLLLRRLLRRLRLRRLRRRLRLRRRLLLRRLLRLLLLLLRRRLRRRRRRLRLRRRLLLLRLRLRRLLRLRLLLRLLLLRRRLLLRRRLRLRLRRRRLRRRRLRRLRLRLLLLLRRLLRLLRLRRRLLRRLRLLLLRLRLLLRLLLRLLLRLLLLRLLLLLRLLRRLRLLRRRLLRLLRRLLRRLLRRRLRRLLLLRRLLRLRRRLLLRRLRLLLRRLLRLRRRLLLLLRLLLLLRRRRLRRRRLLRRLRRLLLRRLLRRLLRLLLLLLLRRLLLRRRRLLRLRRLLLLRRRLRRLLLRLLRRLRRRRRLRLLLLLLRRLLRLRRRRLRRLRRLLRRLRLRLLLRRRRLLLRLLRLRRLRLRLLRLLLLRLRRLRRLLLLRLRLLRRRLRLLLRRRRLRRLLRLRRLRRRLRRRRRRRLRRRRLRRLLLLLLLRRRRLLLRLRLRRLRRLLRRLLLLRLRLLLRRLLRRRRRLRRLLLRRLRLRLLLRLLRLRRRRRLLRRRRLLLRRLRLLRLRLLLRLRRRRLLRLLRRRLLRRLLLRRRRRRRRLLRRRRRLRLRRLRLLRLLLLRLLRRRLRLRRLRRRLRLRLRLLLLLLLLLLRRLRLRRRRRRRLRLRLRLRRLLLRRRLRLRLLLLLLLRLRLRRLLRRLRRLRRLRRLRLLLRLLRRLRRLLRRRLLRRRLRLRLLLLRRLLRLRLRRLRLLLRLLLRLRLRRRLLLLLLRLRRRLRLLLRRLRLLRRRLLLLRRRRRLLLRRLRRLLRLLLLRRRLRLLRRRLRLLLLLLRLRRLRRRRLLRLLLLLLLRLRLRLLRRLRRRLLRRLRLRRRRRRLLRRLRRRLRRRLLRLLLLLLLRLRLLRRRLRLRLRLLLRRLRRLRLRRLLLRLLRLRLRLLRLLLLLLRRRLLRLLRLRLRLLLRLLLRLRLRRRRLLLRRRLLRRRLLLLRLRRRLRRLRRRRRLRRRLLRLLLRRRRRRRLRRLRLLLLRLRRLLRLRRLLRRLLRRRLRRRLLLRLLRLLRRLRLRRRLRLRRRLRRLLLRLLRRRLRLRRRLLRLRLLLLLLLRLRRLLLLLLRRLLLRLRLLLRRLRRLRRLLLRLRLLRLRLLRRRRRLLLRLLRLLRRRRLRRLRRLLRLLRRRLLRRLRRLLRRLLLLRLRLLRRRLRLLLLLLRLLRLLLLRRRLRLLLLLRRLLLLLLRLRRRLLLRLLRRRLLRRRRLLLLRRRRRLRLRRRLRRRRLLLRRLLRLLLRLLRLLRRRLLLLRRRLLRLRRRRRRLRRLLLLLLRLRLRLLLLRRRLRLRRLLRRRLLLLRRRRRLRRLLRLRLRLRLLRLRLRRRRRRLRLLLLRRLLRRRLLLLRLLLLLRRRRLLLRRLLLLRLLRLLRRLRRLLLLRLLRRRLLRLLRRRLRRRLLRRLRRLLRRLRLRLLRLRLRRLRRRLLRRRLLRRLRLRRRRRRLLLRLRRLLLLRLLRLRRLLRRLLRRRLRRRLRLRLRRLLRRLRLLLLRRRRRRRRRRRRRRRRLRLRRLRLRRLLLRLRRLRRLRRLRRRLLRRRRLRLLLLRRLLLRLLLRRLRRLLLLRLRRRRLLLLRLLRRRLLLRLLRRRRLRLRLLLRRRRRLLRLLRRRRRRRLLRRLRRRLLLLRLLRRRRRLRLLRLRLLLLRLRLRLLLLRLLRLRRRRLLRLLRRRLLRLRLLLLRLLLRLLLLRRRLLRRRLLLLLLRRRRLLRLRLRLRLLRRLRRLLRLLLLLRRLLLRLLRLRLLLRLLRLLRLLLLRLRLRLLRLLLLLLLRLLRRLLRLRLRLLRLLRRLRRLLRRLRRLLRRRRRLLLLRRLLRRRLRRRRRLLRLRRRRLLRRRRRLLLRLRLRRRRRRLRRRRLRLLRLLRRRRRLRLLRLRRLRLRRRRLRRLRLRRLLRRRLRLRLRLLRLLLRLLRLRLRRRLLLRLLRRRLLRRRRLLLLLRLRRLRLRLLLRRLRRRRRLLRLRRRLRRRRLLLRRRRRRRLRLLLRRLRLRRRRRRRLRRRRLRRLLRRLRLRLRLLRRRRLLLLLRLRRLRLLRRRLLLRLRRRRLRLRRLRLRRLRLRLLLLRLLLLRLRLRRLRRRLLRLRRRRLLLRLLRRLRLRLRLLRLLLRLLRRLRLRRRRRRLLRLLLRLRLLRRLLLRLLLRLLLRLRRLRLRRRRRRLRRRLRLLLLLLRRLRRLRRRRRRRLLLRRRLRRLLLRLRLLLLLRLLRLRLRRLRLRRLLRLRLLRRLRLLLLLLLLLLLRRLLLLLRLRRRLRRLRRRLRRRRRLRRRRLLLLLLLRRRRLRRLLLRLRLLRRRRLLRLRLRLLLRLLLLRLLRLRRLRRRLLRLLRRRLRLRRRLRRRRLRLRLLLLLLLRRLLRRRLLRLLLLLRLLLRRRRRLRLLLRRRLRRLRLRLLRLLRLRLRLLRLLRLRRRRRLRRRRRRLLLRLRRLLLRRRRLLRLRLRLRRRLRLRRLLLLLLLRRRLLLRLRRLRRRRLRRLRRLRLLRRRRLRLRLRRLLLRRRRLRLRRRLRLLLLLLRLLLLLLRRLLRLLRRRRLLRRLLRLLLRRLRLLLLLRLRRLLLRLLRLRLRRLRLLRRRRLLLLLRLLLLLLLRLRRRRLLRRRLRLRLLRRRLLLLLLLRLLRRRLLRLRRLRLLRRRRRLLLLLRRRRLLRRLLRLRRLRRRLLRRLLRLLRRLLLRRRLRRLLLRRRLLRRLRRRLLLLLRLRRLRLRLLRLRRRLLRRRLRRLLRLRLRRRRLRLLLRLRRLRRRLLRRRRLLRLLLRRRLRRLLLRLRRLRRRLLLLLLLRLLLRRLLLRRRRLLLLRLLRLLLRLLLLLLRRLLLLRRLRLRLLLLRRLLLLLLLLRRLLRRRLLLRRLRRLLLLLLRRLLLLLLLLLLRLLRRRLRLRRRLLLRLLLRRRLLRRRRRRLLRLRLRLLRLLLRLRLRRLRRLLRLRRLLRRRRLLLRLRLLLRLLLLLRLLRLRLLLLLLLLLRRRLRRLLLRRLRLRLLLLLLRLRRLRLRRRRRRLLLLLLLRLLLRRRRLRLLRRLLLRLRRRRRLRRLRLRLLRLLLRLRLRLLLLLLLLRLLLLRLRRLRLRLLLLRLLRRLRRRLRRLRRRRRLLRRLRLLRRRLLLRLLLLLLRRLLRLRRRRRLLRLRLLLLLRRLRRLRRLLLLRRLRLRLLRLRRRLRLRRRLRRLLLLRLRLLRLRLRRLLLRLRRLRLRLLLLLLLLLRRRLLLRLLLRLLRRRLLLLRLLRLRLLRRLLRLRLRLLRRLRRRLRLRRRRRRRLRLLRRLRLRLLRRRLRRRRLRLRLRRRLLLLLLRLRLRLLLLRRLLLRLRRLRRLLRLLLLLRLLRLRRLRRLRLRRRRLLRLLLLLRRLLRRRLLRLLLLLLLRRRLRLRLLLRLRRLRRLLLLLRLRLRLRRLRLLLLLRLLRLLLLLLLLRRRRLRRLLRLRLLLLLRRRLRLRRRRRRLRRRRLLRLLRRLRRLLRRLLLLRRLLLRLRLLLRLLRRRRRRRRRRRLLRRLRRLLLRRLRLRLRLRRLLRRLLRRLRRRRLRRLLLRLRRRLRRLLLRRRRRLLRRLRLRLRRRLRRLLLLRRRLLRRRLLRRRLLRRRLRLRLRLLLLLRRLLLLRLRLLLLLRRLLLLLRLLLLRLRRLRRRLRLRLLLLLLLLRRLLLRRLRRLLRRRRRRRRRRLLRRRRRRRLRRLRRRRRLLLRRRLRRLRRRRRLLRRLRRRRLLLRLRRLRLLRLRRRRRRRLRRLLRLLRLLRRLLRLLLLLRLLLLRRLRRRRRLLRLRRLRRRLLLLRRLRRRRRLLLLLLRRRLRRLRRRLRRRRRRLLLRLRRRRRLRLLLRRLLLRLRLRLLLRRRRRLLRRRLRLRRRLRLLLLLRLRRLRLLRRLLRLRRRRRLLRLRLRRRLLLRLRRRRLLLLRRRLLRRLRLRLLRLLRLRRLLRRRLLLRRRRRRLLRLRLLLLRRLRRLLRLLRLLLRLLRLRRLLRRRRLLRRRLRLLLRLRLLLRLLRLRRLLRLLLLRRLLRLRLRLRLRRRRLRRLLRLLLLRRRLRRLLLLLLRRRRLRLRLRLLLLRRLLRRRRLRLRLRLRRRLRRLRLLRRRLLLLRRLLLLLLLRLRRRLLRRRRRLLLLRLLRLRRLLLRRRLRRLRLLLRLLRRLRLLRRRRLRLLRRLLLRRLLLRLRLLLLLLRLRLRRRLRLLLLRRLRRLLRRRRLRRRLRRLRRLLLRLRRLRRLLLRRRRLRRLLRLRLRLLRRLLRRRRRRLRLLLLRLLRLLRRLRRRLRRLLLLRRLRLLRRLRLRLLRRLRRRLLRRLRLRLLRRLRRRRLRLRLRLRLRLLRRRRLRLLLRLLRLRLLLRLRRRRLRLRLLRRRLLRRRLRLRLLRRRRLRRRLRLLLRRLRRLLRLRLLRLLRLLRRRLRRRLLLLLLLLRRRLRLRLLLLRLLRLRRLRLRLLLLRLLRLLRRRRLLLRRLLRRRLLRRLRRLRRLLLRRLRRRLLLLLRRRRRLLRRRRRLRLLLLLLRLLLLLRLLRRLLLRRLLLRRRRRLLLLRRLLLLLRRLRLRLRRRRRRRLLLLRRRLLRLLLLRRRLLLRRRLLRRLRRRLRRLRRRRRLRLRRLRLRLLLRRRRRLRRLLRLRLRRRRRLRRRRLLRRRRRLRLRLLLLLLRRLLRLLRRLRRLLRLRLRLRRLRRRRRLLLLLRLLLLLRLLLLLRRRRLLLLLLRLRLLRRRRRRLLLRRRLLLRRLRLRRLRRRRRRLRLRLRRRLRRRRLLRRLRLRLRLLLLRRLRRRRLLRRLRLRLLRLLLRLLRLLLLLRLLLRRLLLRLLLRLRRRLLRRLLLLRRLRRRRRLRLLRRRRLRLRRLLLRLLLRLLLRRRLRRRLLLLRRRRLRLLLRLLLRRLLLLLRRLRRRRRRRRLLLRLLRRLRRRRRLLRRRRLRRLLRLLRLRLLRLRLLRRLLRLLLRLRLLRLLRLRLLLRLRRLRLRRRRLRRRRLLRRLRLRRRRRLRLRRLRLRLRLLRRRLRLLRRRRRLLLLRRRRLRLRLRLLRRRLRRRRRRRRRRRRLRLRLRLLRRRLLLRRRLLRRRLLRLLRLRLLLRRRLLRRLLLLRRLLLRRLRRLRRRRLRLLRRLLLLRRLRLRRLLRLLLLLRLLLLRRLRLRRLLRLLLLLLLLLRRLLLRRRRLRRRRLRRLLLLLLLRRRRLRRLLRRRLLLRRLRRLRLLRRRLLRRRLRLLRRRRRRLLRRRRLLLLRLLRRRRRLRLRRRRLLRRLLLRLLLRRLLLLRLRRLLRLRRRLLRRRRLRLRLRLLLRRLLLLRRRRLLRLRRRRRRRRLLRRRRLLLLRRLLRRRLRLLLRRLRLRLLLRRRLRLRRLRLLRLLLRRLRRLRLLRLRLRRRLLLLLLRLRLLLRRRRLLRRRRLRLRRLLLLRLRRLRLLRLRRRLLRLRRRRRLRLRLRRLLRRRRLRRRLLRLRLLLLLRLRRRLLRRRRLRLRRLLRRLRRRLLRLLRRRLRLRRLLRLLLRRLRLRRLLRLLLLRLRRRRLRRLLLRRRRRRLLLRLLRRRLRLLLLLRRLLLLRRLRRLLRRLLRRRRRLRRRRRRLLRRLRRRRRLRLRLRLRLRRLLLLLLLRLRLLRLLLRRRRRLLRLRRRLRLLRLLRRRLRLRRRRLLLLLRRLRLRLRRLLRLRLLRRLLLLLLLLRRRRRLRLRRRLRLRRRRRLLRRLLRRLRLLRLRLLLRRLLRLRLRRLRLRRLRRRRLRRRLLLLRLRRLRRRLRRRRLRRLLRLLLRLRLRRLRLRRRLLLRRRLLLLRRLLLRRLRLLLLRRRLRLRRRLRRRRRRRLRRLLLLRRRRLLRLLLRRLLRRRRLLLLRLLLLRRRRLRRRLLLRRRLLLLLLRLLLRLLRLRRRLRLLLRLRLLRLLLLRRLRRRLRRLLRLRRRRLRRLLRRLLRRRRRLLLRLLLRRLRRLRRLLLLRLRLLLLRLLRLLLRRRRRRLRRLRLLRLRRRRRLRLRRRLLLRLLRLRLRLLLLRLRRLLRRRLLRRLLLLLLRLLLRRLLLRRRLRRLRLRLLLRRLLLRLRRRRRLLRRLLRRRRLLLRRRRLLLLRRRLLRRLLLRLRRLRLRLRLRRLLRLRLLLRLLRLLRLRRLLRRRLRLLRLRRLLLRLRRLRRRRLLRRLRLRRRLRLRRLRLRLRRLLRRRLLRLRRLRLLLLLRRRRRLLLLLLLLLRRRRLLRRRLLRRLRLRLLLRLRLRRLLLLRLRLRRRLLRLLRRLRRLLRLLLLLLLRLLLRLLLRLRLLLLRLRRLLLRLLRRRRRRLLRRLRLLLRLLRRRRLRRLRLRRRLLLLLRRLRRLLRRLLRRLLRLLLRLLLRRRRRLLRLLLLLLRLRRRRRLRRRLRRRLRLRLRRRRRLRLLLRRLLRRRRRLLLLRRLRRRRRLRRLLRRRLLRLLLLRLRLLRLLLRRRRRRRRLLLRLRLRRRLRRLRRLLRRLRLRRRLLRLRLLRRRRLLLRRRLLLRRLLRLRLLRRRRRLLLRRLRLRLRLRRLLRLRLRRLRLRLRRLLLLLLRLRRRLRRRRRLLLRLLRLRRLLRLRRRRLRRRRLLRRLRLRRLLLLLRLRLRLRLRRLRLLRLLLRRLRRLLLRLLLRRLLLRRLLRLRRLRLLLRLLLLRLLRRRLRLLRLLRRRLRLRLRRLRRRLLLRRRRLLRRRRLLRRRLRLRRLRLLLLLLLRRRRLRLRRRLLRRLLLRRLRLLRLLRRRLRRRLRLLLRRLLLRLRRLLRRRLRLLRRRLRRLLRLRRRLRLLRLLLRLLRRLRRLLLRRLRRRRLRLLRLLRLLLLLRLLRRRRRRLRRLLLLLLLLRLLLLLRLLLLLLLLRLRRRRLRRLRLLLRLLLLRLRLRRLRLLRRLLRRLLRLRRRLRRLRRLRRLLRLLRRRLLRLRRRRLLRLRLLRRLLLLRLLLLLLLRLRLRRLRLLLLRLRRLLLLRLLRLRRRRRLLRRLRLLRLRRLLLRLRRLRRLRLLRRLLLRRRRLLRRRRRLLLLLLRRLLLRRLRRLLLRLLRRLRRRLRRRRRLLRRLRLLLLLLRLLRLLLRRLRLLRLRRLLLLLLRLLRRRLRRRRLRLLRRRRRRLRLRRLLRLLRRLLRRLLRRRRRLLLLLRRLRRLLRRLRLLRLRLRRRLRLLRLLLRLRLRLLLLRLLRRLLLRLRLLRLRRRRRRLLLLLLRLRLRRRLRRLRRRLLRLRLRLLRRRLRRLLLRLLLLLLLLLRRRLLRLRRRRRRLRLLRLLRLLRLRLLRRRRRRLLLLRLRRRRLLLLRLLLLLLRRRLRLRLRLLRRLRLRRRRLRLLRRRRRLLLLLLLLLLRLRLRLLLLLLLRLLRRLLRLRRLRRRRLLLRRLRLLLLRLRRLRLLRLLRLLLRRRLLRRRLRLLRRRRRLRLLLRRRRLRRLRRRRLRRLLLLLRRRRRRRRLRRRLRLRRLLLRRRRLLLLLLRLRRRLLLLRLRRRLLRRLLLRRLRRLRRLLRLLLLLLLRRRLLRLLRLRRRLRLLRRRLRRRRRLLRLLRRRRLLRRRRRRLRRLLLRRRLLRLLLLLRLRLRLRLLRLRLLRRRRRRRRRRLLRRRLLRLLRLRRLRRLRLLRLLRLLLRLRLLLRRRLLRLLRRRLRLRLLRLRLRRRLLRRLLLRRLLLLLLLRLLRLRRLRLRLRRRRLRRLLRRRLLRLRRRLRRLRRRRRLRRRLLRLLRRRLRRRRLRRRLRLRLLRRLRRLLLLLLRLLRLRLRRRLRLLRRRRRRRRRLRLRRRRRLLLLLRLLLLRRRLRLLRRRLRRRLRRLLRLRRLRLLLRLLLRRLRLLRRRLRLRRRRRLLLRRRLRLRRRLLRRRRLLRLLLLRRRLRLLRRLLLRRRLLLLLRLRRRLLLLRLRLLRRLLLRLLLLRRRRLRLRRLLRLRLLLLRLRRLLRRLRLRRLRLRLRLLRLRLRRLLRLRLLLLLRRLRRRRLLLLLRRLLRRRRRLRRRLRRRRRRRLLRRRLRLRLRLRRLRLRLRRLLRRRLLRLLRLRLRRRLLRRLLLRLRRLLLRRRRRRRLRLLRLLRRRRRLLRRLLRLRLLRLRLLRRRLRLRRRRRLRRLLLLRRLRLLRRRLRRRLRLLRRLLRLRLLLRLRRRLRLLLRRLLLLRRLRLRRLRLRRLRLLRLRRLLRRLRRLLRRLRLLRRLLRRRLLRLRLRLLLLRRLRLRLRLRRRRLLLRRRRRLLRRLRLRRRRLLRRLLLLRLRRLRRLRRLLRLRLRLRLLLRRRRLRRLLRLRRLRLLRRLRLRLRLLLLLRRLRLRLRLRLLRRLLLRRRLLLLLLRLLLRRLRRLRRRLRLLRRLLRRLRRRRRRRLLRLLLRLRLLLLLRLLLLRRRLLLLRRLLRRLLRRRRLLLRLRRLRLRLRRLLLLLRRRLRLRLRLRLLRLLRLRLRRLRRRRRLRRLRRRRLLLRLRRRRLLRRLLLRLRLRLLRRRLLLRLLLLRRLRRLLRRRLLRRRRLRRRLRLRRRLRLLRRLLRLRLLLLRRLLRLLLRRLLLRLLLLLRRRRRRRLRRRRLLRLRRLRLRRLRLLLRRLRLRRRRRRLRLLLLLRRLLRRLRRLRRLRLLRLLRLRLLLRRLLLRLRRRLLRRRRRLRLLRLLRRRLRRLLRLRRRLRLLLRLRRLRLRRLLRLLRRRLRRLRLLRRLRRLRLLRRLLLLRLLRLLLLRRRRLRLRRRLLLLRRRLRLRLLRLLRLLLRRLRLRLRLRLLRRLLLLLRRRRRLLLLLRLRLRLRLLLRRLLLRRLLLRLRLLLRLLLLLLRLRLRLLLLRRLRRRRLRRLRRLRLLRRRLLLRRLLLLLLLRRLLLRRLRLRRLRRLRLRRLRLRLLLLLRLLLLRRLRLRRRLLLLRRRLLLLLRLLRRRRRLLRLRLRLRLLLRRRRRRLLRRLRLLLLRRRRRLRRLRRLRRLLLRLRRRLRRLRRLRLLLRLRLRLLRLRLRLRLLLLRLRRRLRRLLRLRRLLRLRLLRRRRLLRRRRRLRRLRRLLLLRRRLLLLRRRRLRLRLLRRRRLRLLLLRRRLRLLRRRRRRLLRRLRLLLLLRLRRRRLLLLRRRLRLLLLRLLLRLLLLRLLLLLLRRRLRLLLRLLLLRLRLRRRLRLRLRRLLLLLRLRLRRLRLRRLRLRLLRLRLRRLRLLRRLLLRRLRRLLLRRRLLLRLRLRRRRRRRRRRRLLLLRRRLLLRRLLLRLRRLRRLLRRLRLLLLLLLRLLRLLRLLLLLLLLLLRRLLRRRLLLLRRLRLLLLLLRRLLLRRLLRRLLLRLRRLLLLRLLLRLRLRLRLLRRLLRLLLLRLRRRRRRLRLLRRRRRRRRLLRRRRRRLRRRRLRLRRLLLRRRRLRRRLLRLRRRRLRRLLLLRRLRRRRLRRLRRLRLLRLRRRRRRLLLRRRLRLLRLLLLLLRLLLRRLRLRLRRRRRRLLRLRRLRRLRRLRLLRLRLRRRRRLLRLRLRRRLRLLLLRRLLLLRRRRLLLLLRRRLLRRLLLLRRRLRLRLRRRLRLLRLLLLRRRRLRLRRLLLRLLLLRLLRRRLRLLRLRLRRLRRRLRLRLRLLRRRRRRRLLRLLRLLLRRLRLLLRRRLRRRLLLLRRRLLRRLLLRRLRLRRRRLLLRRLLRRLRRRLLLRRRRLRLRRLRRLLRRLRLRLLLLRRLRRLLLRLLLRRRLRRLRRLLRLLLLRLRRRLLRLLLRRRLLRRRLRRRLRLLLLRRRRLLLRRLLRRRLRLLLRLLLRLRLLRLLLLRRRLLRRLLLLLRLRRRLLLLLRLLLLRRLLRRRRLRLRLLRRRRRLRRLRRLLRLLRLLRRLLRRLRRRLLRRRLRRRLLLLLRRRRLRRLLRRRRLLRRLRRRRRLRRLLRLRLRLLLRLRLRLRRLLRRLLLLRLLRLLRLRLRRRRLRRRLRLLRRRRLRLLRLRLLLRLLRLRLRLLRLLRRRRLLRRLLRRLRLLLRLLRRRLRRRLRLLRLLLLRLRLLRRLLLLRLRRRLLRLRRLRLLRRLLRRRRLLRRRLRRLRLRRLLRRLLLLRRRLLLLRLRRLRRRRRRRRRLLRRRRRLLLRRRLRLLLLLLRLLRLLRRLLLLLRLRRRLRRLLLRLLRLRLLLRLLLLRLLRLLLRLRRRLLLLLLLRRLLLLRLRRLLRLLLRLRRRRLRRLRLRLLRLRRLRLRLLLRLLLRRLRRLRRLLLRLLRRRLRRLLRRRRRRLLLRLRLRRLRRRRLLRLRRRRRRRLRRLRRLLRRLRLLLRLLLLLRRLLLLRRLRLRRRLLLRRLLLRRRRRLLLLLLLRRLLRLRLRLRLLLLLLRLRRLRLLRLLRRLLRRRLRLRRLRRLRLLRRLRRLRLRRRRLRRRLLRLRLLLLLLRRRRLRLRRRRLRLRRRLRRLLRLLRRRLRLLRLLRRLLLLLRRRRLRLRLLRLRLRRRRRRLLLRLRLLLRRLRLLLLRRLLLLRLRRLLRLRLLLLLLLLLRRRRLLLRRRRRRRRLRRLLRLRRLRRRLLRLLLLRLLRLRLLLLLRRRLRRRRRLRLLLRRRRLRLLLRLLRLRLLRLLLLRLLLRRLLRRLLRLLRRLLRLRLRLRRRLLRRRLRLRLRRRLRRRLRLRLRLRLLLRRRLRLLLLRRRRLLRLLLLRLRLRRRRRRRLRRRLLLRLLRLRRLLRRRRLRRLRLRRRLLLLLLLLLLRRLRLRLLLLRLLLRLRLLLLLRRLLLLLRRRLRRLRRRLLLLRRLRRRLRRLLRLRLLRRRRRRRRLLRLRLLLLRLLRLRLRRLLRLRRLLRRRRLLLLRLRRLLRLRLLLLLLLRRRLRRLLRLLLLLLRRRRRLRLRRRLLLRLLRRLRRLRRRLLLRLLRRRLRRRRLRLLRRRLRRLLRLRRRRRRRLRLRLRLLLLRRLLRRRRLRRLLLLRRRRLRLLRLLLLRLRRLLLRRRLLLRRLRRRLLLRRRLRRLLLLLRLLRRRLLRRLLRLLRRLRLLLRLLRLRLLRLLRRLLLLRRRRLRRLRLRLRRLRRLRLRLRLRLLLRLLRRLLLLRLLLRLRLLRLLLLRLLLLRRRRLRRRLRRLRRRLLLRLLLLRRRLRRLLRRRRLRLRLLLLRRRRLRRLRRRLRRRRRRLLRLRLLLLRRLRRRRLRRRLRLRRRRLRLLLLRRLLLRLRRRRLLRLRRRRRRLRRLRRLLLLRRLRLLLRRLLRRRLLLRRLLLRLLRRLLRLLRRLLRRLLLRRRLLLRRLLLLRRLLLLLRRLRLLRLLRRRRRLRLLRLRRLLRRRRRLRLLRLRRLLRLLRLRRRRRRLLLLRLLLLLLLLRRRLRRRLRRRRRLLRLRLLRRRRLRLLLLRRLLLLRLRRRRRLLRRRRRRRRRRRLLLRRRRRLRRLRRRLRRLLRRLLLLLRRLRLLRLLRRLLRLLRRLLRLLRRRLRLRLRRRLRRLLRLRRLRLRRRRRRLRLLRLLRRRRLLRLRLRRLRLLLRLRRRRLLLRRRRRRRRRLRLRRRRRRLLLLRLRLRRLRRLRLRLLLRRLLRRRRRRLLLRLLRLRRRRLLRLLLRRRLRLRRLLRLRLRLRLLLRLRRRRRLLLRRRLLRLLRLRLLRRRRLLLLLRRRLRRLRRRLRRRRLLLRRLRRLLLLRRLRRRRRLRRLRLLRRRRLLLLRLRRLRRRRRLRLLLLRLRLRRRRRRRLLRRLLLRRRLLLRRLRRRRRRLRLLLLLRLRRRRRLLLRLRRLRLLRLLLRRRLLLRLRRRRLRLRLLRLLLLLRLLLLLLLLLLLRLLLLLRLLLRRRLLLLRRLRLRRLLLLLLLLLLLLLRLRRLLRRRLRRLRLRRLRRRLLRLLLRLLLRLRRLLRRLRRLRLLLLLLRRRLLLLRRRLRRLLLRLLLRLLRLRRLLLLRLLLRRLRRRRLLLLLRLRRRRLRRLLRLRRRLLRRLLRLLRRRLLRLRRRLRLLRLRLRLRLRRLRRRRLRRLRRLRRRLRRLLLRLLLLLRRLRLLRLLLRLLLLRLRLRRRLLRLLRRRRLLLRRRLRRLLLRRRRRRLRLRRLRLLLLLRRRLLRRLLRLLLLLLLLRRRRRLRLLRLLRLLLLLRRRRLLRLLLRRRRRLRLRLLLRLLRLRLLLRLLRRLLRLLRLLLRRRLRLLRLLRLLRLLLRLLLRLRLRRRRLLRRRRLRLRLRLLLRLRRRRRRRLLRRLLLLLRLRLLLLLRRLRLRLLLRRRLRLLLRRRRRLLLRRLRRLRLRLLRRLRLLRLLRLLRRLRLLLLLRLLLRLRRRLLLRLRLRLLRRRRRRRRLLRRRLRLRRLLRRRRLRLRLRLRLRRRRRLRLLRLRRLLRRLRLRLRRRLLLLRLLRRLLRRLLLRRLRRLRRLRLLRRRRRLRRRLRRLLLRLLLLRLRLRLLRLLLRRRLRRLLLRRRRLLRLRRRRRLRLRLLRLLRLLLRRRRLRLRRLLRRLLLLLLRRLRRRRRLRRLRRLLRLRLRLRLRRRLLRLRLRLRRRLRRLRLRLLLLRRLLLLLRLLRRLLRLRLLRRLRRRRRRRLRLLRLLRRRLLLLLLRLRLLRRLRRRLRRLRRLLRRLRLRLLLRLRLLLRLLLRLLLRLRLRLRLRRRLLRLRRLLRLLRRRLLRRRLRRLLRLLLRRLRLLLRLLLLRLLLLLRRRRLRRLLLRRRLRRLRLRRRLRLRRLRLLLRRRRLLRRLLLRLLRRLLRRLLLLLRLLLLRRLRRLRRLLLRRLLRRRRLRRRLLRLLLLRLLLLLRLLLLRLRLRRRLLRRRLRLLLRRRLLLRLLLLLRRLRLLRRLRRRLLRLLRRRRRRLLRLRRRLLLLRRLRRLLLRRRLRRRRLRLLRLLLLRLLLLRRRRRRRLRLRLRRRLRLRLRRLRLRLRRRRLLRLRLLLLRRLLLRRLLRLRRLRRLRRRLLRLRLLRRLRLLRRRLRRRLLLRLRLLRLRRLRLLRLLRLLRLRRLLLLLRLRLLRLRRLLLRRLRRLLRRLRRLRLRLRLLRRLLLRRRRRLLRLRRRLRLLLRRLLLRRRRLLRRLRLLLLLRLRLRLRLRRLLLLLRLRLRLLLLLLLLLRRLRRLRLLRRRLRLRLRRRRRRLLRRLLLRRRLLLRRRRLRRRLLRRRLLRRLRRLLLLLLLLLRLRRLLRRRRRRLLLLRLLLRLLLLRLLLLRLRLRRRRLRRRLLRRLLLRRLLRRLRLLRLRLLRRLRRRLLRRRRRLLRLLLLRLLRRRRLRLRLRLLLRLLRLLRLRLRRRLRRRRLRRLRRRRLLRRLRRRLRLRLRLRRRLRLRLRLLLLRRRLRLRLRRRRLLLLLLLLLLLLRLLRLRLLLLRRRLRLRLLLLLLRRRRLRLRLLRLLLRRLLLRLLLRLLLLLLLLLLRLRRLRRLRRRLLLLRLRRLRLLRRLLLRLRLLLRLLRRRLRRLRLRLRRRLRLLRLRLRRLLRRRRLLRLLLRRLRRRLRRLRRRRLLRLRLLLRRRLLRRRRLRRRLRRRLLLRLLLLRLLRRRRRLRLLLRRLLRLRLRLRRLLRLLRLLRLLRRRLLLRRLRLRRRLLRLLRRLRLRRLRRRLLLRRLRLLLRRRLLRRRLLRRLRRLLRLRLLRRLRLLLLLRRLRRLRLRLRLRLRRRRRLLLLRLLRLLLLRLLLLRLLLLRLRRLLLRRLLRLLRRRRLLRLRRRLLLRLRLLLRRRLRRRLLRRRLRRRLLLRRLRRRRLRRLLRRRRLRLLLRLRRLRLRLLLLLRLRLRRLRRRRLLLRRLRLLLLLRLRLRLRRLLLLLLLLLRRRRRRLRLRLRLLRLRRLLRRLRLLRLLLRLRLLRLRRLLRLLRLLRRLLLRRLLLRRLRLLRRRLRRLLLLRLLRRLLLLLRLRLRLRLLLLLLRRRRRLLLLRLLLRLRRLLRRRLRLRLRLLRLLLLRLLRLLLRLRRRLRRRLRRLRRRLRRRRRRRLLRRLLLLRLRRLRLRLRLRRLLRLRLRLLLLRLRRRRRLLRLRLRLLLRRRLRRLLRLRRRRRRLLLRLRRRLLLLLLRRLLLLRLRLRRLRLRLRRLRRLRRRLLRLRRRRLRLLRLLLRRLLLRRLRLRLRRLLLRRLRRLLLLLRRLRLRLRRLLLLLRLRRRRLRRLRLLLRRRLLRLLRRRLLLRLRRRRRLRLLLRLLLLLRRLLRLLRRLRLRLRRLRLLLRRRRRRRRLLRLRLLRRRLRLLRRLRLLLRRRRRLRLRLLLRRRRRLLLLLLLRRRLRRRLLRRLLRRLLLLLLLRRRLLRRRLLRRLLLLRLRRLRLLRLRRRLRRLRRRLRLRRLLRLLLRRLLRLLRLRLLLLLLLLRLRRRLRLLLLRRRLLLRRLRLRLLRRLLLLRRLRRRRLLLLRRLLRLLLLLLLLRRRLRRRLLLLLLRLLRLLRRRLRRLLRLRRLRLRLRRLLLLLLRLLRRRLRLRRLLLLLLLLRLRRLRRLLRRLRRLRLLRLLLLRRLRLRLLLRLLRRLLRRLLRRLLRLRRLRLLRLRRLRLRRRRLLRLLRLLLLRLRRRRRLLLLLRRRRRRLRRLLRLRRLRRRLLLRLLRRRRLRLLRLRRRRLRLLLLLRRLRRRRRLLRRRRRLRLRLLRRRLRRRLRLLRRRLRRLRRRLRRRRLLLLLRLRLLRRRRRRRLRLRLLRLRLLLRRRLRLLRLLRLLLRRLRRRRRRRLRRRLLLLLRRRRRRLLRRRRRLLRRRRLRLLLRLRLRLLLRLRLLRLRLRRRLLLLRRRRLLRLLRLLRLRLRLLLRRRRLLRLRLLLLRLRLLRLLLRRRLRLRLRLLLRRRRLLLRLLRLRLLLLLLRLRLLLLLRRRRLRRRLLLRRLLLRLRRLLLRLRLLLRLLRLRLLLRRLLRLLRRRRRRRRRLRRRRRRLLLLRRRRLRRRRRLRLRRLLLLLLRRLRRLRLLLRLRRRRRRRRRRRLLRLRLLRLRRLRLLLLRLRRRLLLRRRLRLLLRRRLRLLRLRRRLRRRRLLLLLLRLRLRRRLRRRLRLRLLRRLLLRRLRLLRRLLRRRLLRLRLLLLRLLLLRRLRLRLLRLLLLRRRLLRRRLLRLRRRRRLRLRRLRLLLRRLLRRRRRRLLRLLRLRLRLLLRRLRRLLLLRRRRLLRRRLLRLRLLRRRRLLRLLLLRRRRLRRLRRRLLLRRLLRLLRLLLRRLRRRRRLLRRRLLRLRLRRRRLLLLLLRLLRLRRRLRLRRRRLLLLLLRLRLRRLLRRRLLLRLLLRLLRLRRRLRRLRLRRLRLLLLRRRRRRRRLRLRRRRRRLLRLLRLRRLRLLRRRRLRRRRRLRRLRRLRLLLRRRRRLRLLRRLRLRLRLLRLLLRRLRLRRRLLLRLRLRLLLRLRLRLRLRRRLLRLLLLLLLLLLLLRLRRLLLRLRLRLLRRRRRRRLLLRRRLLLLRRRLLRRRRLLRRLRLLRLLLLLRLRLLLRLLLRRRLRRRLRRLLRRLLRRLLRLLRRRRRRLRLLLLLLRRRRLRRLRLLRLRRRLLLLLLRLRRRRLRRRLRRRRLRLRRRLLLLLLRRRLRRLRRRLLRLLLRLLLRLRRRRLLLLLLRLLRRLLRRRRRRRRRLRLRLLRLLLLLRRLRRLRRRLRLRLLRRLLLLLLRLLRRRRRLRLRRLLRRRRLLLLRRRLRLLRLLRRLRRLRRLRRRLLRLRRRRRLLRLRLRLLLRRRLLLRLLRLRRRLRLLRLLRLLRRLLLRRLRRLRLLLLRRLRRLRRRLLLLLLRRLLLRLLLLLRLRLRLLLLRRLRLLLLRRLRRRRRLLLLLLLRLLLLRLRRLRRRRLRLLRRLRRRRLLLRRLLLRLLLLRRRRRRLLRRRRRLRLLRRRLRRRRLLRRLRRLLLRLRLRLLRLRLLLLRLRLRRRRLLRLLLLLLLLLLRRRRLRLRLRLRLRLRLRLRRLRLLLRRLLLLLRLLLLRLLLLLRLRLLRLLRLLRRRRLRRRLLRLRLRRRLLLRLLLLLLLRLRLLRLRLRLRLRRLLRRRLLRLLRRRRRRRLRLLRRLLRLLLLRLRRRLLRLLLRLLLLRRLRRLRLRRLLRRLRRRLLRRRLLRLRRLLRLLRLLRRLRRRLRLLLLLLLLLLRLLRRLRLLLLLRLRLLRRLRLRRRLRLRLRRRRLRRRRLRLRLRLRLLRRLRRLRLRRLLRLRLRLRRRRLLRLRLRLLLRRRLLLRLLLRLRRRLLLRLLRRRRLLLRLRRLRRRRLLLLRRRRLRLRLRRRLLRRRLLLRRRLRRRLRLLRRLRLLRRRRLLRRLLRLRRRLRRLRLLRLRLRLRRLRLRLLRRLRLRRLRRRLRLRLLRLLLRRLRLLLLRLLRLLRRRRRRLLRRLRLRRLLRLRLLLRLLRLLLRLLLLRRRRLRLRLLLLRLLLLRLRRRRRRRLLRRRLRLRRLRRLLRLLRRRLRRLLLRRRRLRRRLRRLRRLRLRLLRRRRRLRRLRRLLLRLRLRLRLLLRRRRLLRRLRLLLRLRRRLLRRRRRLRRRLLRLRLLRLRLRRLLRRRLRRRRRRLRLRRLLLRLRLRRLRRRLLRLRLRRLRLRLLLLLLRRRRLLLLLRLLLLRLLLLRLLLRRRRLRRLLLLRRLRRLRLRLLLLRLLRRLRLLRLRLLLRRRRLLRLLRLLRRRRRLRRLLLRRRLLLLLRRRLLLRRLRRLLRLLLLLRLRLRRRRRRLRRRLLRLLRRRLLRRLRRLLRLLLRRRLRRRRLLRRRRLRLRRLRRRLLRRRRRLRLLRRLLRLLLRRRRLRLRLRLRLLLRRLRRRLLRLRRLLLLLRLLRLLLRRLLLRLLLLLLLLLRRRLLLLRRRLRRRRRRRRRLLRLRRRRLRRRLLLLLRLLLLRLRLRLRRLLRRLRRRRRRLRRLLRLRRRLRRLRLRRLLLRLLLLLLRRRLRLRRLRRRLRRLRRRLLLLRLLLLLLRLRRRLLLLRRLRRLLRLLLRRRLRRLRRLRRLLRRRRRLLLRRLLLLRLRRRLRRLLRLRLLRLRLLRRLRLRLRRLRLRLLLRLRLLLRRLLRLLRRLRRLRLRRLLRLRRLRLLRRRLLLLLRLRLRLLRLRRLRRLLLRRRRRRRLRRLRLLLRLRLRRLLLLRRRLLLLLRRRRRRRLRLRLRRRLLRRRRLRRRLRRRLRLLRRLRRLRLRLRRRLRLLLLLLLLLLLLRLLRLLLLLLRLRRRLRRLRLRRRLRLRRRLRLLRLRLLRLRLRRRRRLLRLRLRRLRRLRRLRRLLLLLRRRLRRRLLLLRRLRLLLRLRRLLLRRLLRRLLRLLRRRLRLLRRLLLLLRRRRLRLRLLLRLLLLLRLRRRLRRRLRRLRLRLRLRRLRLRRRRLRLRRRRLLRLRRRRRLLRLRLRLLLLLLRLLLRLRRLLLLRRLLLLLRLRLLRLLRLRRRLLRLRLRLRRLRRLLLRRLLRLRRLRRLRLRLLRRRRLLLLLRRRRLLRRLRLRLLRLRRRRLLLRLRLLLRRRRRRLRLLLRLRRRLRRRRRLRLRRRRRLLLLRLRLRRLRRRLLLLRRLLRLRLLRLLRRLLLLRRLRRRLRLLLLLRLRLLLLLLLLRRLRRLRRRRRLLRLLRRLLLLLRRLRRRLRRLLRLRRLLRLRRRRLLRRLRLRRLLLRRRLLRRRRRLLRRLLRRRRRLRLLRRRRRRLRRRLRLRLRLRRLLRLLRLRRLLLLLLLRRLLRLRLLRLLLRRLLRLLRRLRLLRLLLLRRRRLLLLLLLRRLRLLLLRLLRLLRLRRLLLRRLLLLLLLLRRLLRRLLRRLRLLLRLRRRRRLRRRRRRRLLRLRRRLLLRRLRRLRLLRLLRLLRLRRLRLRLRLLRRRLLLRLLRLLRRLRRRRLRRLLLLLLRRLRLLLLLLRRRRLLRRLRLRLLLRRRRRRRRRLLLLRLLLLRRLLRLRRLLRLLLRLRLLRLRRRRLLLLRRRRLRRLLLLLLLLLLRRLRRRLLRLRRRLRRRLLLLRLRLLLLRLLRRLRLLLLLRLLRRRRLRRLLRRLLRRRRRLLRLRLRRLLRLLRRLRLRLRRRRLRLLLRRLRRLRLRLLRLLLRLLRRRRLRLRRLLRLRLLLRRRLLRRLLRLRLRLRLRLRRLLRRRLRLRRRRRLRRRRRLRRLRLRLLLLRRRRLRRRRLRRLLLRRLRLLRRRLLRRLLLLRLRLLRLLLLLLLLLLRRRLLRLRRLLRLRLRLRRLRLRRRLRLRRRRRLRLRRLLRRLLLLRRLLRLLLLLRLLLLLLLRRRRRLRLRLRRLLRLLRRRLLRRRLRRRLRLLLRRLLLRLLLLLLLRRRRLRRLRRLRRLRLRRRLRRLLLLRRRLLRRRRRLRRRLRLRLLRRLLRLRRLRLLRLRLRRLLRRLRLLRLRRRLRLLRLRRLLRRLRRLRRLRLRLLLRLLLRRRRLRRRRLLRRRRLRLRLRRLLLRLLLRRLLLLRLRRRLLRRLLRRRRLRRLRRRLRRRRLRRRLLRLRRRRRLRLLLRRRLRRRRLRRLLRRRRLLLLRRRLLLLLRLRRLLLLRRRRRRLRLLLLRRLLRLLRRLRLLRLRRRRRRLRRLLRLLLRRRRRRLRRLLRLLLLRLLLLRRRRRRLRLLRLLRLRRLRLLLLLLRLLRRLLLRRRRRRRRLRRRRRRRRRRRLLLLRRRLLRRLLRRRLLLLLRLRRRRRLLRLRRLLRRRRRLRRRRRLLLLLLLRRLLRRLLRRLLLLLRLRLRRLLLLRLRRRLLLRRLLRLLRLLRRLLRLLLLLLRLLLLRLRLLLRLLRRLRRRLLRLRLLRRRLRLRLRRRLLRRRRRRRRLRLLLLRRLRRRLLRLRLLRLRRRRRLRRRLLRLLRRLRLRLRLLRLRLLLRLLLRRLLRRLLRRRLRRRRRRRLLRRLLLRLRLRRLRLRLRRRLRRRLLLRRRRRLRLRRRRLRRRLRRLRLRRLRLLRRRLRLLRRLLRRLRRLLLRLRLRRRLLLRLLLLRLRLRLLLRRRRRLRRRLLLRRRLRLRRRRRRLLLLRRRLRLRRLLRLLRLLRRLLLLLRRLRLRRLRRRLLLLRLLLRRLLLLLRRRRRRRRLLRLRLRRRRLRRRLRLRRRRRLLRRRRRLLLLLLRLRLRRRRRLRLLLRRLRLLRRRRRLLLLLLLRRRRLRRRLLRRLRRRLLRLLRLLRRLLLLRRRRLRRLRRLRLRRLRRRRLLLRRLRRRRRRRLLLLLLRRLRLRRRRRLRRLLRLLLLLRRRRLRLRLLRLRLLLLRRLLRRLLRLLRLRRLLLRRLRLRLRRRRLRRRLLLLLLLRRLRLLLLRRLRRRRRRRRRLRRRRLLRRLLLRLLLLRRLRLLLLRLRRRRLLLLLRLRLRRRRLRLRLRRRLRRLRLRLRRRLRLRRRLLLRLRLLLLRLRRRLLRLRLLLRLRRRRRRLLLRRRLRRRLLRRRRLRRRLRLRRLLLRRLLLRLLRLRLRRLLRRRRRLLRLLRLLLRLRLRLRLLLLRLRRLRLLLLRRLRLLLRRRRLRRRRLLRRRRLLLLRRLRRRLLRLRRRRLLRRRRRLRLLRRLRLRRLLLRLLRRLRRRLLRRLRRRLLRRLLLRRRLLRRLLRRRLLRLRRLLRRRLRRLLLLRRRLLLRRRLLRRLLRLLLLLRRRRLLRLRLRRRRRLLRRLLLRRLLRRLLRLRRLRLLLLRLLLLRRLLLLRRRRRRRRRRRLLLRLLLLLLLRLLRRLLRRLRRRRRLLRLRRRRRLLLLRRLLLLLRLLLRLRLRRLLLLRLLRRLLRRLRRLLLRLRLRLRLLRLLRRRRLRRRLLLLLRRLLLRLRRRLLRRRLRRLRLLLLRLRLLRLRLRLRRRLLRRRRRRRRLLRLRRR
