796614880985987270418829597164289572088769749160768977475366115831918511637710528371436712566560900453021964625056972749686178205085584118808388440256161684462184629565101175977405524420819884847890125359226081186860241591538109150387194150645856626831752103329579803856494326646642191357731195348863382115231902273392268062257831846625389349767125766725344323463849809728208810523919750576877197660877948212307168152267798169122184683577515516254847937193811851673174681230720194721813122093679810207777638061489737044643737217759338826356529880915394993722566161056777015295449414153954948373965324970053320106853630562449341422223873090849829806773797372948786223648559686126535489199649304267694050893039193765473292199192694879454458872186969141083328836751667886261607783153027703620289279233194403035275971783603304197092699892285216065975951818470647084026492010861582406997192428585623206049700586113984846236311517813529398683827922235508246304650364955060924436094940246331927117042612212262487381513065525775255197652684263595558153386514663275505442205414843894044231489606563303386049131155843896013014437818535372657282952117575715897133809514255613335954012921310101275632077975239839025780782167497776823207090147950984033363249113264611342111219974966976407434453561737429128181147215098826198443214155422293658316759378675159133727232165181732379843417573465614975482929629155825273930681712140531383077966775688082164880367547636516289231986065365397188878969809601736419366987973972857133143298124546728878407030928914574610566598095247599359312369343728186643648259323582996749021006988698828048413626421149389885873066240691468400414688218910920178753612776323449843411508455651499520839897002211130278874045751836494387593726062862631681570865890892010337950370077106036263743583875643273012591653689931357056874496652645916491081008313253622192663878949541682520582415801695633834047690979012183663375635136071699512966160246318343703363338232054107577036004030221289936020174758612837633605719329822679417278151873407753992554277718715004481878586982594835150335143119419203747217665502641024625926435030638274107259161469308463479563709539486692568878442297515718566924527518239148832693870313543086637644395819338856228938121034756086304731784032723152888397869987569373951347093347623542644379152675397162987394639391686743922946128467442160438017403098341610345417229573147637754497394718491748685080115245920283743122314631992914636684549101805248898821030122138872448375435799089659463473513598115593641815234184353859354100736146775890840523319126609359330269435181826009749712249928608658749578291336888959353604115033979121146878872214410655420724021067170709357427607452542641851246811341607477548999169913796664712157822365692616326345705960752098890239937106432673895243314483794542899761188967880694924434925667041019587230997977178632958159384587555542763616337219755299803944649654294965256002953157259046455483695329113290599084644662182261394031557598131633496446654611238485983425353670532805716458817491536913288267576102796986424801047821145456448353285458966701391303064355580344230087038202831869893839651091798189022238174379850259793424584235986849099806315673312701188523598791776246408444712716577941967948805399082022995534556659902343456040300062394118378957231248641111132458525343314161113825197927369059582173486064534196629930296802716157829114573488184024989765550854588398489388974585995026783364716412217457599199438465841067483185828596496627413049011665233473619684426611736736821531134951859170629051897607855359987412043701008199098562502742346689393810281995685234318131956256308313492127185280426030600771192754129465116984805764998597214339340619441488554290034121253233287187365966097868366979487853399331348140455911476811865776708146730922672996581197429379624211177147244881775821126216975609805012847647601025382358575819324638361444514384014832830636725446945242827593584594577672197788810600550095428606833635124575411834784552648234766940218368584932074730382392706758693643576183505068285713787771896121898960538826499799358876287394047920561892345031576129297990918630575909811151301448752769253182387760501259304494556793978996533523464790861993251423318691168328741645908981378917123292765209215533260380241297976895659619502182999747935695163658449719715046489319349343648488347016208088203072453951506444661399929540293545861427483011024179426791573852964599318277831456592767265265373676697934264613513927535587169054507116588051926622775466803568857358295972127990646075398239154790073897320434790481310401793097897983932551031927742970860908112997375033230831838098774905064832063449188696548882234256463770986960727292548394458162787853932694873198318030726052804951742577334971775923337556920550712497116220241130143840379165544906318654518512552019159590944948932131803472691653392327861537696076227476466165932526533148627912984360745286706088506379402096700524482857377638323140743307634483316217368362753938672492998412143802385842746685598136515062727580726667222711519284631848986945514623971640487994455690318629731728437344963345180415255660812408667781445733151892438663305975846235849035865127443254742752960574189372202679634834763637502785621837331679388345126678875546866271387139607291429739302962049898750420063473845501834317982621650441302134423043301424987421424271254384196530426219744859904026116764720518086464333496586913408482027910133274783010301591158791819275576195292586972192754243545513991505275884362661493716046114974596189329233636942952358473493374157821106930448927805355894575266221747489038080406241351194197548305273746051203207982774833464928087724764411157652982117469569067678437883364157498315081775530745382188253835895573475164599982777354132200220596578849609730717365839924314078037253094271834391519637938