30127793488057122356607838580567872511226575547266644590812063436704795173685933781173647122582018117652143228455563790337369768769520538592840582033501467418669242673267743575424914940664702633512112681794181042164854981991695725273630186767724113235557828192606876362247705311382540176484494893669624589455922557207619795766353604229987899594484749258262083644109464576489446425717193367850495584533114186177455645221292296265566518405775539777608347427125899540524563908594713787304816830264547556960250406104727843522036639031911663140768416125694452331807420738489726206628232900654958897228475784831711487223152141429716426606716795258858378942528872866734236649706240707235019504893593340627453189922272295339354098411066459668002193786892964923278327696147252148205255349457998874223095517479084742293726621669095789387144704961739573511135761663165012163690234170218598231469380122725344201350465999598399288137046720543249580748937602111574561769269014485111917589275310746046453689623991427608290807995156483384476601741134209705344924516558473042128887880697921044497387576504084151410608082194936527489941766291186399509615143796594867876505372655764326088947497828057451899283217561656292868419458732458231490035887831648054983311390331072978372235879752529486715531767574775887435273685813214653544623799909007489979563738743144162125209329022613391741713362959478114676817257838702349205892790140787654273597795755933917650121622435827663990147222802167440111788108450738929075379063672654792336950316009833538855992261575744084561681116521850182265883267695021839927615131748424232188177868367535637816442724486678684194372648194337769499205913654771127064337268840511134800241413430374120635583613443208618899995678241338652183003292327741101224334925058116449333854806923441853372086381476099663671706798762546478781629471218253916316256688638741957000125437278027904116211976300439940607343872668441046797349040308898626534349356933337207042548437567110493273124633105201954446394517576779729555002066724612178926849031418817136824535938202553478546837925302615415117886389720262331888161698042514749635494073504366072364243899542849119115901232745984419480582062974671927344248153722687471207478123628287097318462128893233827214772050320212988661287961381997175256683266819141184064164637357065881237283680187412711114714628569961617713264182287482237658648383691614596823449266277837285201951351329583302209492582369982291242816544564651242354225617776585172797971774439484447907132747612105178728699463002401638569989985272667991538179267405624115694781146249097523895885278439693657095749596350660753030535289360629717555691068851330161823942986575575178195349554379096192753776231525681279271601214441646881393617471897658579454131676211175381065555599897537235824165857497273497458913748632807716423120867688376455790276429638538162622664875555969185673298928991441496173983120442253719116143188775649719955350757464031102651156368597664749787659570974438089506857653132276326526352643833812255100977291549592385299610093539352548785447104092715556382647853761418525786594339927532697247834861362455881886177758949612612316482338457613514618868639511795367174786318523095898255641271228556585577516154337079135719946538214369244938162749130067383403055193333799286349495697520166075908617599654218261925544180449125557727539901196279688376211824119964345658838203708091444249224146931285696017093661423015152531803581601132337614854337523830694894782834961209786616688220683303928834968429942971789726814425180822266425915024505196141540322254396948421426764705254254844656787587795522068347216670580486734565883715587781379088813926789436227823247266760994813899222564342328948148736256358972752981744916658117012683880185751999437911145036405748852791341296636892351489714303616234537281547902318809207992546374928206298825201942146445460242032336850842728507255316631088323638939867234613531310048978863180373262359524429417066555127055479392508682626216354245631836201279621286149219045355391134487719312173523847498965240651567320724351423421361738079166275843712212478321702471348274226971625953968019645376086005402215839411637394743041244858860055570143985346726517173699599541335514755525847024737303843082526248323866411316332900863449939868280876239934444702965997989983996072587871276347249618659417119957954952277303613475566767719678895209996184246657412208361271722960052898193027140480699522520973306650184751715725335723517128060059200548657544780498131862704663268541702131789517969276346343526360614285726943315676261213961527478187973967326318836918495925955476455196951870266974271485796483189888484131630998163715702555551420771879778229204697341112831482131725088572257719560661949244574855645912562172255648871343123273444362966535346250819852385758425202116312572226363950502939276264113568976815478418687255111432239752734643178036399761770274866312250689830744195068124243027243960901379277539812653918127413389007158536135011067635250452503018885793461629159546288772697143655978587477871281453554539694768324985527292048357285863609875220871240314303843086984954197951864684990675587000363919818698800123922774353531945649574505934126298946758689314864921617017347050292814674771106841555720707461817833495475597485445691762762739420450655749238438078763194765634349302372822916519400553779915485638142005492800319577144575273655675775977814601991533691443659321908874006873781405429691656062295345484273549950558125242142041488186538805492129114049100692275237688127762806383650456041457520082416850468081467688947375737685602690422655237968485011702996108797344403650158967751334219735964731661658875123085605531201388493342534693911423171251455252211252479673374249207368611224958073552805160418167401513630610757810546062627947518667838620428704417356349373