102218353439405817751057576833404566503144573538685547661671919879357687478367621236750061426607272191824736554209227037862921814386823445997593982866857747500314428731327280434750833047943707560988046761214989957964939697549595655166927110067211001359122033154829245739818508810277258791926528133619742033473742876036117317599449955406878718779265901661719031706345742259788310775750663727571034921899687159750492427498646395547281656045655231697658527936175158755536159533186423932472343989123341557398204324051929249355833779957740231728159672466229250576446506636196101820454549985582844641526888487746113937328387284697515796275564629450392111916580511316487331130184567967816568917005880950585618684503531946946732836754691894154228621500756344583833836954710387017392635491372197083151707823914713378373825282537178204132176776705417701299465919170135988282700159909357349275124634648570563299342571680388030395724399026130699337272103568619971598145201697700882597555622331083102231766448216215981793410561971925515381358846451915356474642123370586173369120796979246165621949517955823532978316292659618506618883935729542056228756096801564755975281215453476931938982966753436123648981476793895893255225211747640963445429982841969899629153623749302784122722124285942425856370587227671285540148339192722388464188209567827246555727883588867522878507480555311336956502888802195149026201322621835936498212750829933988721035882849416679721174340201900268424486356432979941102221769498565567791027707922287809540383121481893592722951246233219022695976185691548074707372667211540798043608284874676876365709068956516812035187239584732286110452373041859949027541250299197847570949853968395319788886603078500114227388762139980504677295281948348519874761982154888941476967425148791128836358688108536185419454102734761005279981970497615176856861771664874533844786586472222058927163856319567497161286377246624042278902127726506017766377470747057408431950714306285974218223469239166775573707474672040539218321892623227828929705302107285932943309792042018543943643228733163344915934865987476177965879327049342810621478184179592130135420768733263062824944762448793585217593482536830231906107631143555697113428015880220719383841262094361323511676355931669356241205958367658067346473125284232661219578855689569835400757968976435932531388138202503275846865456015738985450299960058745507559639357849262702041072229448596159029235663635128927879166802914343196830777362152493188852377406196636773359762229061808234739023483275309899290037484965142414390732894777110572399410570937618805817178945663091636692721233906837814924125829478815331155260491296851145228227816531537110605386747961671724375290798960539136189274723341685629313196427269402568899035312830444526607040054814395530644633308223827177053775654648540895023701168514313352506551917758162560276538607630559996584360596912354745448082328250938432469772352014255227825940954788187730778532113843799475549019108122095949811155721229236262545457814045084260944119589429800015797479756764168693951649133908595391831660454416110749052966488598107996186174692025381578283178000578039693965743277965033108501231630430461460532424598592641622327954976227843532758451577611433778538937136044343424628247961447632105487340446158820557975022999857209372002042572982347275283829031838708095055244115164719140714182723299738536444849808268553486213935239661490896464118448051125647106039656980148217782301747479380075022106773376517569010152715544512604896981233763948093482970459410805287366980140173524175099766268113622031869573316606984861880172196418469930545059503614635916687427444389699744490579387677291507476857174862369813470798536363519466950409269523255379089158459543585021827828307665383953578380954576004230653965728189926538987173404231679393469739061683340271297589643557769936441524538682718008915357613167986140611558367432513215621106753933322739439517788584366437803592354751670501276148989805495535652803486337902588359679502224113248994752451533895128827372081049874363432711708271777125723182218052356520553608743370462687491759163796051152899636672989063424859749284964990488282521009326973788268335550201905342149069898732287585085261799360801186787995979663589780725337402783704049584834418482886704285391586908076365881274570125535037839782116669382417880434504881462045899229932683421942495377148525242451413148067234681465973195372768983488645365779744769642672407982514726344166955666761620282112129154851193187129966062777061228975087851268645968696978927599863592938962609954094604185913748947716030259130020429258263969456659796134655274937824526325576658473063334937719815861374794876559396567320615611389089505421537766225814170743231285252553517622712467088652468099187815373914338119409466418887255377370472194216871733833299738365750825796362418610587688177520988457478575817665661368347417682907206850760118016482735533532324896023376589624153012616405041165004983217202767291737093374140419111025125969168881189894125528398821124121298548413869959677422842575628277638766977032872099861295882327965338912972648877034407299194510356811445169615010744962217141467514385271731335131656583366497363812412667194142700247324937323228541539956670282535730025249542618032453724692171011021633414711476927525062693412100492284140436279875176759797477315846166231946114354740479893856099265853743355251259074032319840578268600868058454155496265524247363288845461785729194636471230326041304949364573512321167237429356118537740589579164123270639407438774546212414318771223794754294871908567502598456335315194393391692605434858976543712345409994758194463188995768954648744408561418620665351275265887523366838704035619629768455182151308565635523193756114261890667973688214762410841850916757665025319377025834284642968194819794194998407353142822946651735541489033876193296755