506526912321364577009326491780968129343761768559397222860902738782296469833138784091037656496941565841494491340578065367000626732174703565851703690241488917167202743904102989306310699696243641307692285277482413719755086830115329059203079246302278561038544995828882023663018792204227814670744489953891117179456174127406788485586135268480286826182212974165773681698352832366458867909591903181987976227211745224678965382874790640834723104017128890182160269225488696208094354742723813425517967843979848976078279699613714986132434745781516233363271035963358870838123353612909979899899171666493426193956315290121265929487945364108212477992594280259597897233352672484195887346416180838961803876289073806184669337423415269638066532231157245058506525163261833853825122302531119449882754062155983317850992009496404284096297284550417782681953874954129689684396534376472615419691167458753488884660963132895224851871177861495186531384157591984144550769663149172688905043259518233998350788350957273113865724172804611764273632814015884353438815331454749450726841593430061797984342058885860647387154762849678074452899273967103248607356002741686871648938561310096399175250241958445483372623632388468023849265380790691947450080171731436303585441902848621960140299089561577591096579435553224413571067633740154492661054808807799200046635286168265279895350893315082211440715499905539268515713573703045911144158806894487959772552389445989891763444675249553903354113929897140463234580789862200615906911512061456677197341921681677772187697719433860352956938827216174095732690544313591435460086031979917045923517244810346771721675611700313367394383726274398594498856410026561400157841098636096719833711594584467867760416575632750312910378567866444232140100917985838367935144141598197515572650744647012256593763834172861485399235727925486220706033841406313150238004722373649218453138682673856231387985960279911299262302993225814596810755694740323433217084721669651539758684963527113538597560118782344161746327244667247311921667202467007519873848326428514373748654072495181446098291070092457545814992968060830672422462215150544738352196119071447112428140439921983344643884161347451663438328246071431938736994424223850736185305786726845605426557087332256405427664159409738107570528953979155034782152685479703629810586049453194678828449810244662444797423387923359922083106620233542952187976277470353086275389353199398187303253429706309434993763208691275186331801621956152183501595313529332363865262763753534370832318414408981473996432160414344816348667943927235935328628518816293322546853841506847638536202906322283307788152190026587098252551998645306070478715470775107992938348845868539621664320990126104907226785214558673089553485956632711538852525502384397187997647542280323548031082518007867685105455844878018955432534774644798521590502524665267127013698200982719540145096864371353264984665264325746491022345216498850547517738442015945759224627783440140386891309169262614924922684863629157817052539258411978116802353687494999574481738608394973302432545326659054380071461526334482444427266918343968236273122638810679261636963684585505371501615855359264751987971874486647243928356578784179978552785840747834181849318133380553051321210416183880106655947282216362357117620178904044354122415747482283766836670514998509686833624704440350467777529270296167354161206484321338998986863314158318101555857055649187143094551445334004631792491503987228636158452068961286267160880386529711334274718003770648245960949686479049647171803761569796852893952689239025591392475285265257395471837170948429241928660536923682580157466740116874488214137496681894779128202055306919951915837695894189888291753958227070936251420297913364217657109682329922171636638790717258322736264985551543242749504867619187556402137472015962898906248522652436210831744843957319383570876088826307876930365706141971209044984519459458810962724645158414491612952021086920774747132676611636351393364411965981778362673430984245718786098443463760624416467492044573296511828442186468455662111556135738317536837516224454466192501829203603356119541183855542384374988358800956317855924544893085329658151270093883508447145177541913800748001228321912721591768892314906162493856097424769626613658265626292543178443636817141767090952824904033768476947975188778894854397872339818295160688884991448096515078498844724663756455838430485113413821624875834523344114247592274048978537272036673052364736106390967860476657358012937122381095955702091528368142354909339755714478793567845670539794863716359960419283392255686275756637776843011387336328236945784087116689623383524136573616320757797023027412680183291287513574202943182056357378941383370715314986551263523413392100377006726277746921114355317196624396892663271336301886855823323779695418275450893137659365130787552642816697607243622046247627812657154463440914237312297735630408221816857112889894555545734142949390926760691702259934961363266820447521617872072837468773248683324393260332823577270129407768722092427404275089781952845788363854993922963770773146407580748247632594561863034055825547444238743513318028044771199135570381138676812405512353827914362223220224269129848776268878726746545676917866211397592914380067046259701430302435266689273343452085795715405935463314791430944796891837761493875171491702801229804238352875003721344576811381237229729996547942697598363890080436773647759073133892256302280551342324817569596913321487956570495557975689020424235645714058134941717165332253874065081254781849587707404969545074240723671486785930021826788914674047535819541826983541873667702396394888764913288046773550354952686854841884333641239627669632346811509085970531825170259035342590609549451529572419764055490937845339287360174296529910552557174435007094124817417311333708281107285256083468069754717228426867684676942841583544658653904570976978834342269786252860745983