101447473779734354129730644282595422170340686013803156488776389691635956544845720833844423586915044623726656723228967604221591382773783350857807801839159888378648255177029919227039569705651678042363195179136316565802343310538558483578250037391061035774043703863267815889488972498104259762717844273814780586532367947713374848244791327554426363937440905739863098331122256672852727223352133481508499623536611358275128707832061164135833496158360431447149484994932951704905385906379399186422436413728209809146353893593641483992070537359188360912013647862936281557935330343391660633368886154108413387052582496819280685563842630464364742138827908389715450428202241962682366393311265249379278713438571587062567236817547177377719237996261968976475163019880661246306302084342396721903798683414243433271943871592518852725148926532878427134847432754573316369249725275319022903461879127266682146068189718139209678488230611708865247497002391301669621218606112031077294551654565788715634084305646627162913753962586532376411727683599692651242641081753478949654628252756823886992762590326664925472767315809625792770117187399901761531065355234618853104753422167574854817678721593119791771887541347778798976811741362951697535574202811581767791564670568756492025537946548757986917928703811719161025700170239810337512769934499130959611143910055785473762847599915017469859266954333199976636626379881551821773625216811909335285252747112682470599892618954344319422549937514133173621580113131868232553774223018314511250727373115711475379160923331557595258762429323395183025260321601118378621641947402361692748238129361318507812586784934910024435761833564839154537182865509734245235105352407583222775800395279119668149522173141815483317389447161105680631455352121428453557260586447413354525355725039871814565286399927110796383023388473229793277383986148049577711098530049473131872721446227745387286971177967564114777075847441884035440355647814944951882164975235189720271707157771957110540770352077665897142492574291366712952950981093702320597327743583020271080568384778557911417157683990758948143616562382099749495217532962271433988833853776755298239628426245378075183682235623307491089383941998992517289509182620590036325756647937383880860527951212553381932672268327795147624674827370182811675338238451415348465751656145345508808899735936143444623446039175922448399196753634531266745488352292677190418147513649483957721446977221160383585617707542683168889980413509759138892379846975962112786286525895318404352021806883254387878274889650486147294391501620911555387295842374960408518352567270549453354385196223855338770563969333047462095223227696144442914901888252577812687844966868786505069843666586126728596569984721182068875428021112394182718953261317906384093977505495819838691381814893463540656014938282612094326806550472443274957186282419946826908569280686565729270181489191573834071576272037703905427412564226550290965304785155022816384391241414271243235790295463087561805663606968632033685327463961557776849230379851617797601860975786115292382420260535668647964442901655517561682108855598114041837006338628872167737751452787632761335459133648997080272870612280879221392880692852597690599827583158178958930829289230477019936910427251433083738029456147667279543102617315457085164140214713226580314677863765865398596972195755635422538039189158529828083782900312596062817235543389508202699376540794544887232577735423037412531343551610362261014620305016429480788195938698818892689006636617336209816739714946933167478173970299478154523494615567140048067836403698565689483278125042054621698711395805351229125441120652665729620192785484143713257919715439093478933134168489445723393735586579589922022370754975694510535330209961888411635665408305635995628835919366593781310953773331805201400869938251518734625308250871850395966463925001314156634838295674174765435521147360724477630460091919165021544023725483318564761410277533514912492839742872836525287492574037912876813620628648150285755212324783606503632645693593354617336442264350471761847292654698166586788627071070642011479133174752958553180330963699676737592258281377033935572873916515434424272787325316791672435853140369903175523177626725545827575956656498044462891987956278852458471613478596850318113177469922927498566365371825759681782442923686581928058538282369998602510725055149131220247943997480137564778871754505761766278304574497969044286879751147613876639878630505087803595416613545211605631524369397586123123964945188297814776274045588565331298454657250732074767299772025754502464075299726961814961961024233613785059954497100823514802182058144736147052915144545184015843121146314657714744014747017235718312324158652671816306441839544768578188643173508801255139498788550479748151165869747797438363594346057579819316160779163490916557923347491645456983685271975282621237598589462874721603952147462071494842074562104539277080487687662415322991663477951436114925541050572601487451715882877585219275829422574163292819335565312120310165311245365128471601572417343491467382633398419958228301786349347506157288291391531525343708015351115864513212790177116563624051105201055427830261883289619469992666702240611837742017138114761267038723778671184861276201402803293994124283966111052630223808795793611065127882232994044348894166342827783726474036693264391996700579819228958070448923905585129194445869163749722260599389800636096808569593032505011930226336781229918268133831618822506932145781092123597452278274415755358931426045391683153611634879020697996848035299581884451675369841324485386221151966371552867342315509756336356616674679809481423033068960656496349926884420721131775312988612412841988383101491563908787773273546895379233608990399462295487071832942720769077100450395857691814615826350451974987815349027475163240701958889337715439237153443167560506071418077578007477534937816601288576781684896738387192257917788823