60829632075875677464547678133962502339493624630245494016565355824612519952804272723501587061415553559218195871584360127984262558550591029749063761316780718692316789033488098774339151815702524244332609583347751021398050447927658354983458698535023896939166515092640473469590377549162040479278525749314338529783719897308757252098568697531025525023445599855472971378809384377964436351184781848955093892833016236604306099713598980415863703891931158353808324478732735885025283161908487200611118965652322072664525317642409238938603505346795579769988187024573176116229278413226496941842077306797701835045003425747493588134373347924354487962765486915147401585440665504489981090531831153538166567735123154434239683498315936147960914615170429126317866447515685063197649794131885550248156397875649878433851271546405999724397977812613489068648969553704027089531556514907693588456971113080389953233086357859405419814766391798928668867995218614729731711805741844268679166127854429108551615207813437856055876885367458437380699043198428313526817887138118138822546476515598050417563275337796201165713027361685244774463868547965525318367818949520188617036939767896073201102382846905225145778564046441752718543240353118513269685979737916357571283609912073635100842041802136311011142883654166433749843485462367662213747264690681607378015208515810988292750898847485902207550494696160142717359113231072613494654734284104576026444537184775291491083687314352544564148586435384971780989235970487112005295349228183344673055372286174357728655418095466371519565587845299717650197311752398968377188946734421368933327450398452743971102714913715399673732890619471690981533827325336749979959011194153494877911167243463688102632160018695766880153369582845648814262055917537486548687078269111463437375357138615298332391966116444791589778118750496886283547105423449282736312596359619356318537160829798877269784172719613179672912660492371135985995059532482547873186460687262898666897897455425040353399545835040719911251832274509224826265386290817303769652285626787518586342177720040209093841551759200870540593126723493428448904894715661563122792891040500960527106537335997106944565719363443071546352841729630560236238605119644154654735969307420876442141944488151614760999940961458658702902443798002337296570618620265715831582588790422580729441244324323420982328082309529208915749583246820122642371046519079016909444213263716109635506659361154848250130143101210808656547073675167279129192489840804468831210857713788341728637347684345458986989069692576816055783343329127614270866164092326403062544367585699385648036641312981838538686621572916732597859125085016352225392621303620654581368275682137349268934747299765200475991983547426285918539161591705921723518336511287195722435921741283470297252398307863768738553588447633015694925583031803055477173459327818500285836315658918298079174501112095203731115786742457658491908753052227401143666016261026346781172245834773708158721436853877039597522215208989669650993979647414589230609629747300321195653657047197225503997712521458347900525779795287148490154986252951321826278931743117485739853012356885401128974834115350269161704438029408397592582322577736059597883369785183145480926632761491324197621773971346658501345969415981047378858063525495942531017741426915590674256434495616944826737733771762263359721163659196815912210583671759329318785666688260773828062284954440874983076000727665171028311351377331761570171092692740784175931687787515569173666182344757882978574434491069955457829271719094390827388790207814015486646848252878250143066426925428778376673896243542056491147556459339481855456457696348398559922462255176317551906844146915514982814962818069186332843178836537428526853615368350536883619138386770396478532426428890510372104721552575743528113937687309421339643244785144670489454979239744481218223367645208109181423076119193642751162541312404470596126710594669839351792348077904739308593274213235389725204419169506136335883967481686739953458336475520054714538652667468674120582727394363634083753938478145717758811503055334381783273318979272716530399844482138055644960167458394979697641853889926728085275943740545957308626331789323956942306478733620345749765467452051212207099998792397789485420658548427478789421369242648347510371270610289522676460266126582842646628712114942032028102237120022385656439786063873348829339778799977375913593685583205856622946482154875594181848905573962877438935185335222833154788965470500859813475355698907204696411982790687611158019487731088278857260374260836976906828152757746273587898151486134511351087226121406794140043674585137899505789699478103416388415596888573122743822170042857370961566193254438030023217761053057352121054858623617742373751140366614232781425124053045858538152675305559736598123200169796803895278894054652273166668620434598576678829130526017450933624312765472453658518320148887838975457565752464535584261924746487866766419373724703206797446795876966788695979914672905894863053896805775576914792179164895823219455410353473831216589615755719941126428559872846523396987727566447597311614539834275781252112252528892599576631610173899073987776703781315718571838655514997910784511483507307823381413613806721769969099344799057754503672211459449569376475642537378204526273731522390863574373904873174895896877782308421927435688342053672264335622125604988916609492368798623742619408768671388484519989523801537965928855163339123356894476114395422185890612499788512497661363683282476644815642335017548152968299071440171538835537328847337340881337758546465302370377008526417040756745893299707030689254597484765013842276836935115344948117991782383449147261746368820968341945545421705520289650496759235322893553004911342357848411552404881933173275257276622306720366855194448501574924671108576982278029519423485636992461186697634903933353827649443304358437796073502151774921510843324986130879292