48032234850896625365271407655413352102253479718291199981856818375594196300663064284513289459055047727346038660509896164920928796252531653343111053983046687796412216916760563388524622682045621328564840696588658516504305133935317795865214136348531199757702686875529411349232467299759894393747776817468881756365102128344960296917562130151629185852562896342859064574421778812360365271343648471729297543522153697525957548755353754832213919092245344958628880849567428489338596059707468389069691163383518587610785204301489762661801535580031429711080495265516264299734313987864153916828842616646951407810943558334414519780549556674192879916338236075161507295866089835243063158918077842532123112910689993001400697152796470542172041946178780546656996636071021324034851825664907158502055229526523654249347270121312539598484169906956517201819716592910829848950578354824142610158329779140384261253892102671524243199474239113280810134202254973836081753241423853995822542758888539344277898679716013287216142569482319506471582516568933581838318479525426987798241428610469416829328630888956388692875949920540389626800038937262828723704076779032163196375266565152207910634523993050882382697960199193626403289105836286419008722771328126297448311589077459485959601191807536572451374968869328268029812335740898173424681345272633913923893816370170876429304790742277406888478051917501556266332320340483913310954359073361729598889332143954234387851221087357332119032455115986706645496888698288484841517380727540832451441719823874488426968544180712173068588194719800835728234651160249875841241546785644352151414718596635205460873197485828194602120189442036341298606789601765309647939835428211060745098047772446876198348130317014174110554015839621373596612434843764896420357781796360647989968422562432337152389425535781176944145568456024283431045069857627147103853647989289409761384399969941452769168175022997759039658434515536906701733448215523836234443306542545306959197230251075338142440997776002439187991247740331060353171638472371632753248910833947469853304585472160794888490452344297363673665275005915981399511047419026353849699447975047355215169733479856594255764347834288411343943751980041530650116473813446577027380661891973091616229361561175636403269767215024885941603697761849939933816272982149186590533835909478112995423040756743663027990670542092202250362309391571695831785088021270697582173609856328801523660139704132868466688868731123780632353280329074274988384119770559425637036695643117574673243813397942615325148335513653286498185339603011542823611826299576302353338964468338767808291155878152418356473211435505577735934755101444270189672222817785524101888067255773368229956660586661845317992111803326778439493286664788292061678498858708800230395475381837231748186318549604072239940167208949776039718748038633902151010412133549344582125809813264287437454072000166296352227661638083123649294011147098069019481099982956887083458305845511937845831227155187915920722478870843191698258137648559101235416023885691240492832552674468454891158739095571565993145774791977727735303695022589467115731154084694253396621423650652165446744796671038174630288876387152629987437710545795693586471061118437116795585395667725751705667083782551146196727349099974828064158015347064239184103606664615111727526547811429133066451423149347874764395819914405932887336907636036439994953590110906340839947225329639958535701844812600732828726438674248079317276191779845044740317565397292113744151668690529855217449901115394979622124383231624601587285756985121670139330796917268850491978957917072295360650372747839477773558651880856420369237633888055150026621452501102755845071539773652303601298281067443229311644074213213335137497776677691366318331157520818731475668833289648232757896786113834250675794404026695190951839283537113869898313542794671062141893191017648952841513223163913903437855134998676713854873282946824022961552969255524919741233178837404329886227635258933785403694830458277631994288676281422372991823418917684264611880146695806547482466497008493339719003844332221473483217887604882484992551792282188411911271556006577771445331989233654916657541294259432667124387446458547429874912823704835373180409452117051349085369435749117109992185778436062979277504876708592751756299668361329879955853479810354661509211782884267242450179000834389311917248893926173317456673534884909479133367652035248067514625161947972536376174514892976750123565048579302239398132669681651827877820395765440327450432196396382185547794624977437603177536934277504377777685196889595059636831579211695202622095949895210938156403221379128641964921244842867427590905639301291763865928633323643964321513483081792236868365298041889727185478587132345022506646775186681345781564366301527675910734304067382118318313459529248918212576697793434759191361078160661648632134683599853596338278830986702870526651748474865287512118391327748733479109619392561956066296318925274569382910218514236096549373647553176525835463644960187579113608557662596319612472915358536063877778934863561461765484261126786876201814627355735836930261793455685236377815738087012536285939229892814597002407452629157498704236095591781944488371764789069926925975282457015348420839951745756807464458950664496223990491258789096382374665193782105583834206242418346307931720305417412271343641938509237860012345847911062621299360638499425741443512612283500334077130420596016335987358234959564601456631769878365339019135205810659691479461352197806721038879464397176019136453020132844235633329970536787924868754943763507300794928098196368552642377798619379316071883461216401353771194150873788222442198165861145865174207500839321522009460419749306515628711922687398307723781056359012973134871854278483318844463985104332912409908856545498903456999631678145112346515702239274959753771158016189214779988561960459982667490144072739992949284954970190689127