51344391583627364168916328762168313722952722689362859119571831897151985394883168936705917345443415943369212609108175691885561628236491717771839777021014593929369468263927545830603106878552194101941433293265455413539269484423498596727996270399654862688851217142797078344247341962742551165742979168268374285217726525533527872853927041078611787248313367685989111473810821345486850513048178318833150807066069986946489146193113233868477832685755743792275199256756968535799771978765251105941386762151115633377534471368391562579856282413867310490043864491644546800953178503731292641716997578393906222713743133349779939784784954218763965401269978313669405752419301192033332384656099360721925335343924189557320145738903861785215112310841561367924280785011413485865412254935122222223410337268669507656948734597675586094141559058602860205190908730682569103287609214171283438449673930246519675475797003274681157257136148257073373361666118509343899049551912852233169432238159429271077403893489333754455908841338341632343732560468415604687345391308320252222215909264378221882636165468696695134361843196699183730578316655457596273868998943787960133964458754433203367987266523062856406159021681620709066856196363474780222037148588124462735533098495282279452013816878017070465125587824680911847059559788796081289468466779390818062819124127098355824203626778910590889402065157780268335261953055559312555929946816691112486479796274197577104371613428235685003484253130613033253019198323781936557928159774361624389936273473725913094523460647201686825994307321438037434718204651536871249099223613228578843990526163579542918666184274580362197345397788763332949183454135652073556776168964498531366593668887774461665388299387341282943683317059994815709918467181755597971885195288966622401894736347135315387673992615410811733684275185281127774988013802820420102251509826731421611646349249424523582585053613482214998787850774998436969231033435803353053129751905643079056539128152039470799236516025372284006979717415703163315181209924806456984887488910539804125560863901369182875577469724297196704236187443324105893439218943747821921691815828486682816333394324593914868745798358747689960503434984455563130471400637348929596600121307150575027613509646353794954907866514773606595019624183081685468011553880890508192709850076058473840259092294220579753007771484923532732475033411601072102107814042947772421601596292048482999236233374473848755372272032644368338633284725837176838044785278445272936630744145851725460637157635843313466370691164447817583477148220883869233609615190271551652018886325687697675876689172626385923455851627164518978411482640977008743125658924880111570189181514515934183921491676991619864821103243408787126704117820428255612584554577957583047527630566382712299837189079287036838984315602164816156421968471612588199747298196143664529291359342195377263775102346332756603245235021731341549672317439990477693755939207168113913654182843807956313021176730584024021435479963872248519693846471790370126247098791418727037476171052955842168912444884212403392851137122709246775082512341744520965522835691353984760234351153977736222778239634189983482334184690352354305236595675317897585997355526743577728747754250864746755102882715767869190813742078879351586285500047462396274359894394286126788549761539089495399273549936380561862015369274819917077269031167306276162171544469670768474995463839069482842192443209385979507334890079693921723781941866334489741871793529723893996079735338637234385257570934782089777690462719994794296036422145113372472283269827260988032318995643698959289515724929520620052872949732473924575424386647571951212158235683065245188076139497263122883816297865157933626615137703709627633538043840677491030184289414974482935846380935028267325355459561154905534962520896831751284048910439357029572130676491800304939381034570330939285166626169661937962602315873690621325523701735959774864979445051891478288918579013848539402037722381908182914036231030236943844056660332048102436041961929942440075839966024612120678207684910831284870955551023143095274452947314976740277307348154315218851353351209828436718824083241548455077698533505646424398362080569625794864126552463891629922313975851259617821434966613568984751696364997778938966860320728479416231038519757769783144176145949884929211558416066331808886421150811359521761162389107866590777260273152944418836798305779321580163141313449702857285418676425754808489775181667169271917205228768394093790475467732012444164322850771114171157023467433752441595775029245557464667623811859432853390190576992521828707264298884349604472204265834070328326073404635305985077629926633713146118485968213315649481188192970803390295232663936241213584112900945112595352092934151262103297275948869245815725150331463407648995576263495261873636459088789634371701551114222659018358646329140214516373969291957822330449436960145778885702820322056785116635339234898713707095793929715756400830798155381343904064455452599363282558733096174415123491853250265886949741755249711262185297934658995181318887652063029532526068204418465511115607341064622053225205514518732447440915489044097343517845544634555938817174461262498730947473811986763445888201122815874702424416665512175671770179657461132357585033856372729310281886163401551153225647739770506788760192335181663281207037926928696525674282756425317625961363134490473775583263438590609398024233983938896111739103483297613979877868768931234413628766847575412691019450124625083697594789525593105043849810267295533687920869466942193213950208623354460879606386342930628607935083016584608888456798167839336690829969317395751935621521302559188188906965953664582147819284284742144661393921521581628259936854229202097225255514150220988187578582636877377526057481852429528641496514996113273505635892099597339241974959491221625618453740349234406997172293370599188135258046404