55622937052854991827368791615197787105657420674609244898745963105357541924834264285875938773202475588755285921012318925167368625484292830198455841667889431378212379387104870904210566613347111709324967151091067226175124491769770967567037097264314811230346393552594953619223608497985539303194690251752023659043183972683174103280293239195401799156271739990137352811612833362242664213139585784927888475196516614496297276581343002661292808218148839173515261096322000187026586459248670033765375724801710287965858351544246661695466286110933354996144137246567223677719540461682556166360776622684204185565900283886088081998481691367100272437677217747053292299812805621597746797851895117368862593214695021200650393701617268104193224767534998797634592922000655724193823486090484749522002499286975941494598337858643518245169808812142527370182383895466076079472160827698566051720911587525869070797756995592018597771462682243655522120638491765198983888100503349695106428774194017569162459209760786994047701299614462985671349121306795786147283632671268384548375566260640958316725487002242785187250712929639473987588445497771856422838568126315834867774647666631701390386043722416001580608513559236169354593958614245136640515391531694052324502274694305509663495994421968126943385179571644031321531991927344832686733986922095325162910574048379317558891663785186278229368517017063781329084805156266403127299714407103727199670353362709415777609182318715592407293076953831330597867296198631699070266617887446458186311641362571652555331499471225245282754229523408155891372719845788151767985368742472064832270957128203167900229577615629093917570446538782521522794489475381880334019798482495225389786174919076330353994112714038843314188717452076661648155173192110124859753979251578799853487658541311517187551481421437476516429930646946007818914759918286878571805442464494578279371857367136886861645029105686044925781613535474145296624705621159979299524499232043554347207979266755696034797235450322294131071046465389675310567417487252171347043507481342292124374570344980340354323180565892897139449289438972362077213564727334997505764210253701025362923633676642238375428681591736603505978164073736139836019310985727121676861969225003476088081923105380019994559147368396265177829042529567591029683243109996616638324185923469488926644864200449357161649677725516963740231809785337485492811495298466609959043051168144510008120525024182003678812382741106080037751905094807363826927406860237193459423273569407633229794158430295760258148993196425173619258514186690562843478089962086654484187079789082808311336885405422648728869445068165908020354855811085733842878648349572767344321158877334698529882963669796823100848489099490961023975841157869695353861609623713100491822350799611305068481173898518743104487955406942822136527244158716074893269654895198074144312151316954796710879046469416476861254781488010981945072931196949419711670705876066380647713997340376559213979478168791915466776715322728214647401392573139307926783642904916347594561870396270742614952386346567406786695885764598553892893143893050186452173297389144776882218894770634431780993875566929943710418775462566091786166920248640593369006117592468331413587960451546892875523595340972675314016934887447551427318184409745569869747835757539261451190847164697925462011109272741779322773997415396845489568990644168291671676684381776307723624188643894175419352571159692354972540753061187611098268274359248028654590610545053470511299504324778863916198132264799315969954692908524356111697891677756117476219698485433998598580282490587951107077044418982930940972578422858249420987443374675210932273554662516738556906626824249173826343043624493389827223376544871453437527626555318666270627946463286144803626765829564262472060349324657263579493034531690086344752303273107361842578410693024555681963138765432328678373094599888281721892027980054678811776778420957904215542556540314421155999700260134129803298791184656524993753736478606194672679666907241284529237569491513365647257027450809491995390598316237807244160049861802739523355384333998906536309585153847752512257021001443414616027708202883345338196452024893496585737575052911255261478587011716479764360819131239868753535116681525079439543610751589482553448398829520197928389574770266933648939154572583919277193663249828947521883498389765795256287499041814125460408221415691429858111596620694085049909972306275968830489143603402574976032214889935704700845392902517490664744467640693397131829716787692580924834765707959454871224298764958374659947488632918816551974624447187968242872811415655964814899248708481369415454350862728294420975854285661615228055440763120960417952549785311408819947117529161716166781162045421655026203571170564899058018707294609553653774307895834357574525969330809350289148755309431728356240609431553276499540298610459861622349546461568499845621178611830310382972321397521771598782411540516359094049352024023843811030325861645635422017960243665598962588916955923447099431860368666044681438479373946535965816645784496541768435695071763424259957233287946984107580823884082134948598872918009408552432066494961798211026884746185730746069712819859373846535294436373745123839439616555105531642835826486525711799312069931637216544441937928101823789563491981694623210353284969709933156561701266086098323148104266580184462239666842839516932654963014064326452739943694173466799781202338064258717623587702509826758078151539320388829204626872945618495575422316519874645708680766642920523869946156011573055108825165373783670400754474644288453105316241650986426420388379758856998472256663242691164004550278853604255932662361891273182927238335640821810219755167818168562172524285352388816380790331712208035788108406044747483886559023253434365722059964550776834753672461111596228654823208801646124652957310452019324855525793439599883748387369286979106898322799335