53678657122102372432589852679857941615290666243833974431859117366251608795648304529760764138129398541886692732859395693247758682498828371538216968637952002163625959630166465974673705083383013510291332155152371750650743198902557832170819256755252912909871320057856324486996171679180478894244551127067836011017854830415809757202195426953964734671263125952071264327216936084549149505941097755698077944453169800833059271927706317832945085397491586498216078883135388865729868556816649385203607717502976917593776834526865730508888492881634259244467511481873357139574172271851741046545189499821770530979748502154371723853756249007985974898729568267688356031097239456167534191586332541431694509937651089749627048048264830680091793788398989861647829482579086642349016213730850753126282515677863224957887285074637239804222509441084822725076323037418920954114111183305494122665291498429039357892685047663166889901865034659201048775232117404248543121358479203259776837168037407755760792771750483303114365851129094161559267134155124912072634773986525198690784218330911665867373878949942059529343944208449376986474623559255361736514653589295761430335395379158849641916722463417257408239148135176364892198522432448209473467236497495319381048579027163639786747196410758249598556682220948210183142819074277780456230002862448411042069346950019454398794388876305639814445266778135938670353512047675327852106916257890046172302772895517338778917103234377069861229380317496755417432873995319107416984824022053951481611962832052919871485956773683240337486048700134064019677772229784344630018431248816159475358719781073810812150537470769790882098341866067719868743919816221707327168414574329278118745896457747772736596752695071818594546191949443942227687922880352681718900465224051618723551994707130455017539854626685484912140777158846140912065380139383512279277434124208478216594269360786799147275452096329912306069935192307514691336687181191243951051511427293055106420235269051349949503208534341444648905652557944206401753788818091978084665542940577436343219176248115569262237913924261743980167642883433154899509552772971301481902893285650670546510322059894871060171550216534672048042629495781763026375569596091728275394903851906288459181223190511667219189856225222669296187360623276720831637919099134209282174773975683415666157131543112662022365360641360671290228281337786013288586347032769777466626743626915250197809525689533551145933914163593185042117819482528638225272161532627799394835011788757901216987033935234588958375478692305314162868263083627519112513108169828594911204335158971884333674473802685811954178625248346754330387152242935118042101101273401524923811354110190129614196906121699941845610633845610534594999626674099007206551460944607263011987673236447139885742943668989675563975097895489496186157855393711040596672069452784199992582853579108631718983553864608214878656549510218497196318110454271134163685745302337283685632241468216478381634569894070460178772816482757010592320674341366457456570151838412515615698595713520312317136119249159760588213714539134942062929303237393516655664359386341390571121437223757635536481893792341256246890423217991858670485790182804183837898998004039223921028082982613999796866160112852715154829495354054420625486348817461852463007523986695334431539430321914779201971319906855449087884061686843452831389726556942966382941863569541564612656913891739423585924232757310179889383516523392092452817032553303317809718923186396649775015945654541146304027694615727197173497550832557908947853839702992743550261321909412998945398480697229163536095850387723348050202651305723389793515734221282283945290250554452996378127157754772197180368407955262531844172685734765407710108743511266763681537573699367871588533049598036445750470965481736403328023961557873605638407616549875211985731115598637317132894489732106422097465050748312558659294626125253045301487883508822270379987271374573721525205679798430094581738522484265656448315867309496160190828777700033363339364223446037274249640037466432744032541911377984119486407908742327696404656257026908134491921935653607609499271529017345066884882195021394125489849916776769772723658891638576693443654752067903894586921648472689339433465802306423828068612225460127554484440271279632907665608652525682411398257482331491244572653960822888633508343491904573617495193852194018238732655221064556514980459809700752432748563118442286706482275113513263293386552794874544083162838572577771591904533531767832914931613045915072380745348086825923966822266055161919984085816476941776866138391851212226141089011155611264324899801278624755795033772614969885410624403429134590627826945873215922476675903569519786270133567445215444014605404788148856274782729032948600085106894989836031440414344645354342212351061677946846326862415533558862436875244756806730359099200127246743282761577968764431736938614151972182524744966834669149789427115578482798579997969885448424465844876693881124338366767338207463953932588475777009845720689108523968758812473257854497742108358475895498878371735730697895032962510125941319731236117372954089177562545994498887767245391254215542672025600577538711511110895216608326322454733107799618902617649776465787798180356002697577985335775753070679091867633218377224168234562134601339480949553539993901136140940464317913787227131035051166050953535703914986973466421765472184733987127802724831574913025923544238202994068144870975956385282327046602475404619466643534841166477138675218809263952594831267336032073722282690773036399755964899403723345623272305451352442712934887125148695587083866548229764100675653212991149964257138248197137823387309522344223708953656912149693578341728382548859534253814329710878042377118665897756177539793871593463052723353978928259599592550809306477220349959058125632596321346738182715523858416990230641566910724887294857836336826682071704606428557817977