3431576488431846479041364291728781610729675689977244702449300221692584876922725398303315210124221135733979498352786663893272865346949836646576105240934153323256243876454358083174858353656356577162624049550866386335266928712361328361176525335614068439317583911917993255685419443351286625648065549660519687036334157786279527519011782445298746199182633062841784383916527661932522387408267683211870334743449882738911041286280923803784157286781949591281489068409316710869453747388468360658460649879885504030103807716837511279401134156636522605184517235347858058047110812579400435889276834252256267182853233667604777538221584524179476905413940325644858816059201388731876538927194382446953217456327348374685589529557951724224606224744849359930723486553907300776719821163866257638549453883088263211391623625525388576003754875532542651789064949739454582773745433836169773312792148219876071768110118806518152468081857474448334001260597047709250545784714401196278957087948281232776413051111850894088788729291221939385176874593842369720396099933762546122526978714954569006225257325438855193762152787969483872868279729249518379616558140498827269679423087046177769644133779256397007732323392168299926650158018915269845448136162485929665938315184372156761717588516374152539439415018006615175702141366766343296536955890729031192802328229377224970037736807380636592084640179351671453487315224312798365128043131283042717564244123324441785117691076512825667922557296930609154662588303489094914373693297854835579128537031979527867796586312103917735132152548246313711055195862043455385572746872723922014898275681193991681858111815033526421907679038732953735531687439152215338250510843189964265996361352936956729351164704227399019173448897766962537142974542674803219363574925929379634771685340972863047234326695238578499026407209643075283963453613985338059512888300956197622573147679408269025804633625898726923714916051394173901829889656698813286423164537607071128069310884233505712851188168961987328614459705972583937613712482358992598832218203199515129261257557698935635421471196417186473475510679930769352748432061745628892474158333623063671907753484326484846366242753575810094805505729449005252253954287239171029298162998168323615077333389608715372469303350008439139367285068771113432981863391105185022257438442120108993357636227303826742271673235654098292638818445220096254138179388440929355569443437118221632375290942456815463761161380586494719218244411383436467547871255746721142493973893106695675865518833175717218854861234129728493309638095503341607142913256807248564166531629339307863083757017917075214721766693447941979952312403676253618188077775088453765975528715354286495634254927328666393637759635812296684929881236541911454746924611787820016412202588951546399663241104980480285308995257636051480460489039886457894566207399440622880857295444150800740425706355029165987896649807090322751378758346491292335702993255892851241119195409361724745245639551007974532779616159229177812611316091022828151156480768457758950496724870466275135742928872024274532045831281253066578474153925559179215982167889921326129895420253763971437248134195964813460325223933706439467611096174758374238303459752458400863132844214121515829115814156349974732074730287918428858564118760267108480135996991828076815871066187315946329637101145479700585442420840626487415888497163183296590129997289799152963326233529425291905876275114791861134902427384356054987768865616829669650729551941001162139706531249531021777164871282701112513327574179034152916355349168269961316335639987807146259269841616970082940595244768586613030295885623044262170817344177540442767969027826807993426298442982043517235140644806777434510077264895111603944177133098640176564165012575885610645770541287601284445734632218579912901027887519372874716458235504846261376672367613971197008990402360477910895662586564341374175086420983766746673800639834386829580777746850604488741166560154153586842829423984872973408201689714064337972439628010177618763873349144295712283615274056376096690649567275372849567926843188069566475895705815118125555015224442512518387910522055165685894840362367635766252590226422528419694915462582829531067197502356638844304716277374113144818259521563591562649875009840589835724737928382560287757177187457736012895783417588285267874946055759787634132686740981615722777896965755849789918869442824568729418844340245237418640441209393214744044267936152321191728125298303386218984031627271032515646638465598487472698164011280442634441419199372712586881615702627300482945023922624024213596145921650024179864266780442982880647130841231117022017247163531918246886772635104478209625426137795948228069950977062108877064988601381366018252503781293422694748092561911492017097479775808624796191239665950820353236983042694817889233796561080133888457675265957901216803764723402303463237683944075291522627438967736618438918545307025755611974830229471275048002051262913661218899705053637183156795326246538985591753312763423782929750322292709924131202725145972307232573964994222233114135506469824730895138195235997051729452418641485620978788864571139833623116679221825625399816894856378556274258559634673098758518595861873523571870545425307420711213302682899249652522594264097547055278682502816174402242331553264981598514168690820816636350165224261412817231333919108319538821817588288799810617694484595580171393761352987865401580341757776633729880587785490635616296799621843295589495103643314743673148674963344081700669699704400087688282355309574206979838680043682534863122143713750526739287588502742441072717538682456097490796173068595735686398407478480784392732283305686613311364977831011755463605149586576062570494957811053595288440507857491624014216979296985648063798805846124383590039949736800478985592174569257416638641894633785172899173347335974646539158970623117534434981331227085670753615247