336094911916195534028247638146067878781797542315698260506513245437143022614158715359079363518002652858467801749698228853763937070978896305794458644395945126462154362363258851974577542362727475229535519425929230452122312696885271917483397146107145914327979913790861821198822688720204558129078362471215136371484414476919455733059451218380736095379443116110103075222756239679205163398493461887538857201309399063223644271146679434545243417629236009212919199755244306418928367713425409904672429430747868609762192329189891613015451808376017169176817795699895638961674922972392196339009839417246561111286371000682792611582207993267906453968825024887327397145318212392864379666116650801942841570155505646998333301180370537420932060272719169054308434665153124782763013195572396195410588040461464474602090347868223773626264756285818755161858362685457388585192478663138853744815052912470484797311874417724726655798211755351653140352792899921937301448399033342493139115427541524262841931235958329974134510794970172146572833609024733827669365213284408751853698624809998812173728662983513584758137834646928941146457049152080048301458534351212252911846660195121503249615572713323528005425774089599084743761910085326993314108743331871023465373375508393722718728753221412969822441421046150571336641126726806477637916222973429775519099037040788112964634958881987433877078364768258480543308427267068869625351817907864612751214152282935759329471651677042344986962090236546592736272937385886742523154375979059916307264973288537166153994522961800756162727006601014116417177985764448489662334695138639841113274125966862693667623912859069957144431711752394478212622857381298767455883582646823687692181385629212899498665150231806492375815488554811872850612537387702208080583238895187928906578376565005733568985466444099891277647395860128611753891741715853998534633774570266477467599760303369256711400813309692701159833276997293247289803316394478728239530844775134404930976685822147163188639075937430913643383528374831874843560579580286978585035452898462763627848864390904704755037468600321994905724374730119493202810861340455828475316710833888912276820831858783809951975782698518812486645227473496366792295691521664948552910889824202855939404370049029333751499705299530967186659427379120817359436761159708743435134041472838877132602264240768526711013595693213655108530371473362364586683947468138297507471575603218650148767622197535328754667738247525352362287936542472740573217862023665696893094423167841153523129795996665214928139166611186775406324352968599748212118708489394673253838731358438587794673815900795465209333296046767669291349014452911909692444555103015359924733857876578551502177824345909653990833204054278969719483596758969211177785539139888654573617901465788536686156502642810491452283478983012484193217781341883959757598386168029088346375252595461043659247912456229202993268129912960763535329485295119064221575432378486419989594204481575234468962633637924800686122803266599158206873684484814234927980982928591724104246585129321526073216500544445406163589498495342346684701977729208850206991144691259218617213379587679587597242118125578335937294026579852587871117878772141023141024180743785179175582549188203904884744150191651628638215462109598475898518385284458916388967650805463997128597741495641768465303719953596510278685636818666938350281626078936819615902727215596001892673253921139324110325261635861250904921402316473287568984287670376662568887443976307210947516010114748979683138497057097289162149307169676571388849384991983581233664233855039362143768841788387155738833110459854484841647327999078127263528496381539916444294811617628303550705459130306374445832288854376094744037795345678569195243811251753203650214893676884020188943495788689700247376886080807436225275426415021846745165919736427756100974049529790043520913987586338741405384385243288728629317725438112161172708605578339515353627239921298384208522877666796201833849890181903512599666468363362567509513065516076606226802959242686726972175655855143717831323313082763225475733743378859982944983152137444493132447816495844599119782669031920948842200832256135635079612421988098821247604395349733515555607267927947826044916869455517989312221403338677945525868931997584016131281976694660299447744229635803533178563775761964774867734189789409831997819232661831060152188842887437295716573913666656632105666491646798508565111158733970685685111712115251358066709948884148348537176056767981768465431832540295086842858939652869778716812836736235484888525824955517950719373637684267416743631769480107530536745278967381377644720352813266542614718946541605208540154127457131183799961067341928192293839877652160432761874430941386249047665812086510130348619209609415299544331679414245565088566910202550868856488670929531685876187341264612132450667275407089586938647234880711487324548696123221750859448018598720498646596620767324440769659471855415616661227771989230901661342041849597081594728917440251787532278503838715331738935371280736053391978885573946364146280674960937827657036259271189553842712699595421295206321146955139702685745892464887427751625283911366184242529118584057023214116455840958181707894389345241533427293875941595532097827305225625481819752555977125435166618805194078682467188349701517206451313021515674657654554889357391631971408071908031837196639439855184817903822535571803980485716665392391346909965634812020412812114075263427987285311591108873743966978399996421763316114480437798002556421629641696777368941924165986909391767646156949541180662384375235636379319406660825068213420819891974399310280212414746051299490770418203883394254023642434371628541310166761729581108627653457441902113377028278322638829607893041840178686577233129745839444442740498539713951743465557395486322697269744536896832657322858805425488393295615270768419069940848609542451915975577