60159844530087428153191742627547856958570980498807290957973100220533482799482156235254337367288242544391489403421439678077663034870315517131679356112901143382287330442184347797597428007987467755582279376674220122948336628346117259514355795159055189487778455029399619261027844041415145983997899244039867118222121049882917592154418795088332400954929381256296694982944870762326942973824224623115723110354638269655302912665343401608247583279751172031426143608814043767123150569704785611770539972855438949593954336916877646418613612306665572530039249274142248210709464804378486334845338429221371351288344986573993929046854780258341726910636002868402198171885900214398982441085382811952064012757855615062664473566477010954964315496237521536752296984387076560439690114122622446729117821167339127551642845644169940543492123049454868701732627096289463787812153270648126913236641047292503671519661664600223066895212677665766331386768338278166346871407879179108135195176876639877433541763523464043563443244066645915935090516385828336773025105033355655774619923276535397783126546149310985421664137838156419501722763624511426526527088853257391541810496229456258799035504451782202966066955144729368823752689883773295808228584459956191796829877529593997125938453829031893404391788838401241885317205974480683691951235725861693746127323494216419559815851160369155286125667143565710579451797367546935979312577216272681168427549717463093488706117962221665872268065184570253605356158685899765952944099876539739667357426257943520668365764256350426253094873600269080671945620077476351802846702055584661511696391492884799222716454213942974016965485755290118062608085073279495251555714745730764486438509532836858380820435114124611972107263677922746852825480444100486422502639320576325707954183064656284066555661159390247258703686349572804467669862964177296756043692223255002956472547616688529645528734691658048909796519432586264103219188545564926987543134062372848997413123887228379836243362867885986896851191131360333787396136547591241103738597938305646847409674845967640118219713227914165873922905672715336419438073479901391198307044203859086405419704894198228587979148552652310792863981257048994233185036381319389203944307321451254451827256085296472417227967058405133563776326836894819948953227227794239708643953235902840674466772224164103079875897329100399839033654862533102741317891964747211448607325334528292098748428579342555440043079774449122207199575915192893256828662621685009349754984819297506141856236632464664340741570484299216492033177606543727758148912644956554181391347286629901081966205729965340295324858282414091647731179079427286571767007540439819117161451766399948970961239337981777945837884609655162261536731731822039313375763342920043661604033078290130828675042694279040618148595249690706142959080376409104706312545038106540052965751643756285775265555275861463953909700550654855137262311753031816018221995538927120217192042829952174557898024619572721721898026520326553192367237002488304664347197189783476015736296040112767436199637900390475716969587407768156087191487009480642716991544051333211606414455311913076396009729239849637553192294855394845895143149738819243798854756869061967790797183960189455432525971094836080233971780379251470598027310547072672021105498789549410702496730237755762799395975722514815440455373726757373375500657616436910698323505021211112739577626088527653341652318290791228107620226016608871750492136677788920754495694533378973934119450545159518602284620246492467436934189703561295727621118756897487428245155897332564253377348452245051213938688174173359844975453825381642145958032585549216221854953580644469153473701155461686144938670849755425841758378226944101854417329781483019365323734561158389952602776614337115379595196449359839761505103932631656417616953013602934516872705381535903438094518000879593426804510248911967309469082935743825891098342177615132765627684512026996253879099866190019493073419672434192743603813963888547316876866456575766757229952947172689264172812805346929967442816490267444687277618113484372625901654612987393457888137454722341367305342438194717764973870760678616300310079112129613647018922381538524953680276073405273041920884759388007235967597388227174804953998059928741110013401194976616296642564481167129944457362590385568728199315745348119403911867296440148204979478933976173599717066425466682557046861396848124377397222612438700034692693400139851611283443961353792779276431780717996948541462058454401515532686614349767246720962513783241280372535809795732265595469743113587441110429586103419389507854169183736349114482250858863604250926895066698072408349163453963088816864722006244818805151869858974917446191964851700794152992118379208393189540254792366888668025617365878220679271674376259893606320425427031469168290596826994699832865849615262589697902192387013669079942662674446395890862616282908386717807397845944735334854780667625847695027819333589401523991752183680307861163351764123802425339926664139735760101699008750710352586836978074641320448540124081104892206822653397228324061442018167082631693733130443879009392407468042455737870062176122111055319936476526218378087893459986571668099025869472443474169723166316447284622097309815211634074358812939628843337751663489261923836284373934094967043464284254046110411078158343862364680542834261451516176366198213624602379670008880408371947257834959237150993399284659783969661673454825952392665415955591972341907506852859449959913388286851709672141377694430845381056370522147816320158769956310685949066374044405541468759830868323912788815641276444543704425634784207153396864625288806335895467327750636384036281842202153269842339273224524160590329340530083587425011225733669521419189060726178470733538986344721808589111014636714048612782640199987770800728568723810342869272684842257483784305690417132706792224534