668495602179705053804051826762137746168484085944301743061046314784229789251946853047098818124779168632566189338959190880283587016433967369179516829762030972162672836429977395488898576032553906048687362434991798509733506455094583743175079508526436788627043935366379587374201134630218201349767626808849154241856020675815873330133043556708748579361912876792332242373422401897186579206627343423247941678347812913435232365948665896678760296293170148021963225057845624155141815553328239335988378055792988249148294932063641135090651134775754253527743911841780836371405393874917577548482756982744737473751712686889366164361290415633676094857312144838823125201332186165041848528859057729320627799895240234251465473629346498226051377100762143950975233181616911884672529839246954401599212490076369630086968646107546694706669050295163187494063908487203888300157101922849796752939258593575172337296064377810127242788887585701376323031249985665543518593851207993189709417105639158788639390745625627025563117507735248235906445713765121981330985850862429449561189093944583582517076551752642441372346095364049504921895158322935453640125891461113833022372499882826501960942317530238898347572330363451908986535125182241933533556908107848079398888679677723661120184423713573984989958521970781417427629881672252803744287286408691969016636888219095502393570609725847699195216233296037319676429880773262346077932141411663392154254210315318396395351275817082288728086258998466247863456211050328074417026256667694199625376676749274563442632984357128226716454878162421713509792041185794169843214444954318714438375134725237126990297178574411476863461813639979767442379024999750500050409084252075368022585470848548965042752981317493489552477936472028776531293223871789791316139189647355893719498038138659584674487986383977867802615186148715218927792487200219287849946841498401607615982918598524915201661062354567930525281116424156364677454327550095878306170568235632798329948534756678921689172633710162447581006868949429689251920673257955707524399695855045297119450231749086871367355304336147359094318221319671514765197348955548124849553782994344826490981056370029010927456452563924790834353785419187768322343086372714634144758489417536639494571918109695517327015133488202855216262580403791483985210566935387916563391089863601116546473962879803397549820549265984115057322670261481189842953239094790294990635209334489935817671657556913363555765945419439102134680678265542930727025320988571567903301329608306226495012127385725554475045566415669274425454877712839939435302546939423422018465529717541655459853256514915381833746034669182136113215126190245953185074140094869746515951576555819518573891079293970770139287627240655272852229553654701317450265892421979519348122026739581524761288527856860792418184982825159341942365637133644582450435077915131399346873516988869338578782604819633921736604148161837996959099837873896446917838182823081385433153891374891234556826441250673056493921356282769287795392098524987884663443409273725197498577581799171387325295698767075604718338371625281508984925197730158557259655769748220984210455047835055461536407033438135124759332043516766366394805088736062808470413413821281675806100362896993415740762202868253525827077632079828981137872878554310195971802401328995845814368266521733182211046746906649885747296175823714133667260687943289704225212997776604602262424363924909597318569574622576391126918484886770723784563624964378924141435164045728275153416525582360999325747791971405271042704518225434015936901901054642680588968981741350217283059438470265995198991103411052444724361495624276840123658526960824007916480257799223788730117236204821416334702211725382189259662261057912151165629465814027549057117770637696740158645366680516075977573932753925958187117272664166585886729620460973661383218485028561671156676981022506205030171592224843781097140386583421845355344928761837544849639724053091385622618312679107859927773423507366841378443448131969627584012187741644567554919455974860557483314058776428595120237292327228225536336236626718279865838624159534306773254104308400915925818499640727873428338284823268254166893819132390719097624728755955948166348443224941915516596318795419169709953927647603734459212113180883083771429815086443800867318523698374987827470267658359321878552126074199904254721648614813744888764562869738616878294752892220289195967699939224565618170031675721161281195261675618984387284133543887956328024514575499753108071392256414516631612233362958215418485565987616093139048278132525758328910957493827974085488077175441491389138433002976614686744756355847404707129199884522418785755187451775340248749767487119580414358883797636750948875458292179966787628615133787951067037603198510826005732230756365441856099255573879529645403303755581509407607397241726944033993639751282654367221876022179618725118199430615469278923871288931178694639951111440122926807336763250899758398652282618947796046415791056340437744297280448970821923436712342644002551171591499936638451439279173846171631667919479334997156322604033904018647180174738727808463883419078191560390774797948772557391913566278041645666514102419305038763425525069696063108776376935235256381145823045698914349806113709032778877912760185671569144126061412893032751509398218421974500111548729220833562173104181667043702573282109642139116668331883806534154825147752871899612621866466261363146715582846029885181918716887668265598854242596581549345929609793343061222221289332294733331093247027182767106417571549994269974172920802778624175666623552784051194831255590177978587144476650861774806161176095886046128373108510839219524377036536829882748181190690777942487936536637351974243468636891473599256995593442952371147435249131274123667507453592275877413582734258323803570567490662924461076795739249587933308396773645435904696436393511118798670614136611298895621589433337