57234169106757159408694592535382823755757635057084817654918213793922806843585016165304659227221216835886485703208953142506807283870666771013249399886603666997834303856065533127572290573007259459612255235251104694224674539759680837632448136965305308221702988606634069350577994581649502400786519983243851595568874180586571521772219373561212129393554627047929776612489728371346401719909124923407967444405943182493075979223784163650766775915970277238220719364391051572696839471387738163936291956853173834384031717174321153015751054576512590479782569640818852863549216361874847238071741720560974103729520048246152913857594447452280611690929393397569773587803704597689463852939160689030672885491420113019025480126491318449181852533685978344890744113762033521543953956209168516180538426394288067752538427747433852769967907937493070372378483488930025124396130021261833314878054010183576587465196588672248215941366098308820219654938795616964915181816682218562440665824935593097918448658925822737842939358316309214695967447725272283814305121045874842117297616967932308225169171520492211896527783486991255222252007525686598365059853546303660867558508291164284231164525440142690167850319512717950943776435511618915488139295295618990658137877133611117332723903280910582411422564282486452981417289237191923490828229153704369131581826727231247347141961136620926657672728842807886816350658766645181450087205100288744631551362452472187326788638728852196280062898412104149229233379039569058208543853428987642413031245565726915737409134791596229252558663891252236390277439745655936613568331937597477292486023105789342351434193953748661362602016489726985024271980377348025832708690272426319977382632168613271456414780666280497577399260153673276553466880532312665586458128739549557520278282723445905069886955389686293079706519691221600331391156634610655641571683181695986255749516281544803101014493110821933734446870798823925427368801680648556339904385736504586766555483229878277671470142972355249428888172558862337869313134612479887175202155587912402378851390714538539122715532917878957831549012839785360682557880595693809696193719284593332654490881481332299479810077173878789708281065119275929781266576741075115256211817461198779733124826202419053447344241447838643695668272564560662739228530173058158444643498875957254429272731284635258553823366134563460197814573702994042602795358017131475355932117968662333183272991900587579721262893634055298714561885730320497599981438172859015666688069585157209881144347574679464675696834402222884332694512231686725187213314267187266914138267419386818184561267943015353675479746526756971780764279101992214748304779142278388753498652453087679782782715477670138823297710631510624512341984920831029070952258893507964112743807563350959946758803280143608559568961564854122843359182759733110714958149422761758415262223287692374518084246903353733679833939941779150273629899382133858128260898021548430629088981636391268732914964707216011766885653129026897593071865583847544167400147205169948277907002545130158253494252776379369215488247222552323159094318675415638898378678754254633655444985209081875015503692210243666953488289941094158796608716832467253319128472999802457587884084522898065594630724596190314018188318954645648653470419211152874069609897219524671857356284767735255483263647565499251803216340575337041928317839565916437828273131505264403351699250119993282081031819333051598419236789266205272140998881316147123132225522992932701935940217769342162657094790044214343791668266859859839149489426120323079324861201103839466294760580273442933994892623828768586715022005631846337839385599564589689912636544951832763137191211480850144628625420456766884138598463844780993165428633445132517968638619238330249643867611085372590038217017883616208213145792731856769589256698540953904533970316567934826731868562222543976832578968595771111966397036528634379636105122261450908455873499947928684884867698819112390826699555992411709514773717415640122850017876746216664132221996571651468447197198050596760971371776169070420770349230479998903662562451878611164565083738865075601468978913535690220322651929312934831284479198788599201667863580574562089953550412201681541440383789528086506664568645592473897268415444934154844161473532606796802149932920889353721626684713386652110009182233419898982491406334240444917909247747165019755485671588026848858715395331493157671255649308871819683425947620461685726141192535526964554129641152329351514811631155675152273953175966891339279851352940562537789416856736115092108490222274981984759665978538626182502578747354135245958372404712082612185472513650733078919270646882908460716811308783358611482113632604127162969800143963019690731679433827596967248078849726053617764488627079530606067928691415426746155570639124446653223111680086836956856403593217447202222173805059882077346192453341869325173840261943994125398041069289592161634228989565377186270407943225573112784818175041955270712305535146937057099999641752973289750963343568227548607171178682257872318973629944726602977851106235364348245249276359287654439391389969603993753636453181136011335836962179175301219127011042817068594075975710974235477567557631347985308499255764735913882638746414400378456170118140524946643083746596012135061686330500723256105683425814608568619618889186221917054387218574163795181714778859212959478484362836581400124129402205121142216327250479787011789627915644510530221442371198216890263134715210778506980364448089294656421794770432088364326128933465439321563007906503189257017829711424723719638329991876452641170755524267545086378167228397625805476483364576775541732631144850116015052293283585776775352633355233498509572875125662967926151528308416772537835542856327349178994105480661329972475687138804935321686799364841697098798514769134245293106183687201428684431793749381585051089728565350682056298877354688