288055934652565140820594487893356609467430929672754755269785788673396685658692993854630998454792482957082284823549124764731209248327178781113142353166698161418854454749961339645220091672503519166658419185587290133238004279194364613144217256695676519123547730596349467659342239312442281025266288521768183529353686122825519794671532761179311313609594856073565653948718739207025376488774599182173666477649099456317799967766756275955664975019289429268453891755518585930868802183259653154349128341732961306252740693686301831346144442239185508959053477288960632422688527036195248840869982542402697891584386957762461875140538225493696382505786511678734870556664484413734954348560942717822900748389386272340953255853715552594885832225658903014604277029202893119582941152726304120500769106450642838413146111557926468460277677474617702773388576317486712713775936371057480890213922317963437441409551859633814927666162629180039165012740676667204677146529619977267413991349223803560552080887627414055528615895676315686118466793937186020268163579320922963959348414546877310415641772555431494148851778994236874604559129582487857509102258830046423552557548069668085653969716222595811844368051504223803148383147530845272821922495951559397979817562515175734979451607281752811046241271153861858779862448587683416009262835779305039263276421889613954113392230368209923822871002700582774059598782619643214128840155775483851737576115486404542148093009459455088063822446582215788523134862112419842879352996584425818969822690906264834181451500791546527840801814815158804928873564369984862721326633427366739470686973035630637650292473020876125245964306974803804347171573331740924936768331384334745218442298423901568773328535643050131012476348383457727635841612797262118466287056480150923142904306448137564978338132641817812168121034425639718898119629220897001678892054130503680314391518923790541744320166971055345737285127624393679729419630802422379495229233418523691315234195722405871236485449831813630856972725567602581221123363597054226837962376461884956314263883982263120346968016172595219208761367380339334514130449711853226556741108699547431829901986070051966984577589022282017864775336146281251185462630529004296717653344134226810383772598913953345157116871123884482871414412432663556849861267539282541396359013709511415957831387122147537461461303693849222858865759449357833394227750194723346682144112621329041858813938234156844347744680301127768150773983564707846745636771217357915827175942508438714084722895657221499828456939817999694177259958952723163117624566373630467169782298935913258823523689258986410470271107083680747653758876369369536952370339654531743569914657300787113098871566655147970140984478110543076241802950625203175957621927491574899145298050676909910948545855658814111858088947505689914136607179726335014871237988956197322794478196757297743034029405569241828952434531772467525615643650384237778854566686820329750466051127360346188168208025262161964492272657836678821062128472582194518530129561493562703091133881923214037412912312492005670769999765643789448679161130982798847847711976004687942188852295192138018623776849678051225870306060416230989756207975469219825591562185274619391829320673654133493104884679243828722637781209285342140615982231963847689711992548787589439766724269383719965445897109172688830366953450746013671824136676320931938323459382691349926563654328391500967215831567451514173321035514496494223631467987631095273382519465021408476621540118358368380314285613801056107717092281033333293472415148914016233471225910363892034021493586733444893477641139670218341252509683168499883892850993228303589519085165539353405869643390167656984335229552157704785233453012319486156254914729421061937418311714357129974510986335179352439181728524327288537430392556578604079723142203894688590201442211492694491722245404828246295430281073218034399697155411963263041000352215319144236337383458726838561907338219625993285167018484689582893183993938890601807837456722970474226264922450545168014699611922556357932648798892371937360795562137433974787288936465491344377014780714375696810897822102187468889994077231257593524661941714492157017405279831761954806398028647612507449821198623375366529810113315189481231307986661054872875868822123970278311514247915677497094173994267412399844832293978310922723668959561756759438790663485039548740870773061820325133947513597152079169721712835252964462162169437471544696547489952067814879679751548362694237391649068329259242024814036382671997453246945175594821908682357601989949710593476463763528904234850147906175252737184176846532790544714126178160995543893119324705308318954813859027830877513606188570734267446396639678429487154055962288326778218153165212287748068373862545555631727382262196994784748789391201947955774630271360144644418091989714510303210373975605714791215697487756533348823243886877962240924398810973592796655685159131797684850541157402522447687768574367337781631617882455331941281903622371247962503127855429623950786747394029272478149512847076165991592929384332763503186604498028037957156794071229148201697368116484317875178419617494860142867722163772734992982681827728054769691728475768699995604116045446048571545176334389239940802026779163109302190829861002532169724689648397051332564302430511833159146832292818843710099896529533974638796236420217511132751942827029378632246149939704453585457584179065193757101264122608129964735611326786240827811120091642187235616293284773967238228024475113257380543743525592758732541979521188846175870619462910175726378821206053731413682323287993082680847592919867030024187223463397505773106231098532607282899169729862205390553734448880480826632587713611047884243697148404438072806333717629347434593674011393730061882953849237072448245132435329537523474649708209187341445333862084062575919407511184720789110968682155280136936859