56393965029111595223643118346659425391163132186658923703151371299444116607202676657597562298313782447883566666645878127600130891856593823792416188357454739900140380381047189598093257338137781603358439849029310088427473990102874491472500703136599822979754112793576051688301392017034252735366556032965393661881564574419893788186095845599712335877124872142932366756025924582672028210789334147544550148254583274866215243322453944608724416167863893538754136443731579396245305431669775980759531095171161791348118675394459947939845122244282772950852951487495568943171368712594276383230704968556563035443720845275669220717167086211802317391671511362918291911617670442454289531085038620151665119238981056609775179789831041105486101302159233668171709441815717376721771552555761176095038930758972321525559755265387511042847111246994544592255369088147985786468581155576121666465799438462382127782578378513506260971758625448442331602650182471471521513715767185159488358027539907919177466648054013305190056191086100670926272147819162078193742236475970272763730136996703450842465199239359728619422226678882345957683858731831422434589816512307889996862806872707689227969869657853859658840986790644281044089033444443599864156853604431368589394874790315913318757230813679581578081755472130521878772643610512320956975324284342284246905854285228795219314581246764693414493790711185871840126288945214169563860358085181026143241614081119625559547580434992411065273563421374334598459553130208634356016255915728960749559932988505751435380164885840703201213455938428396131285939631787776904682922881910242650483119745573917198784523108966396939427596647339173311896148526562993430673428381407532975783812379395248217962232896154317844132918564746009347161855497421555196997583927088616131143806280369439112571198116931762773710219335854180626545818974243113272479988752532780679263298752617372279931858658469039115422670323726469303556517174842825919120001131664616379949401583175907042340010731427238460246151853813911222433884378372814987462541185413098284732865023176100521963995086683092514518602956058181897326224134229244166053484194559455248183635526428760420798835787563786871722573132410822037263013245139577744161521840780326954569148212606988312247350866525817656188833903449698691887153919493139953466679447489622661691536895275296449779339824039269853246268566454878145338671737321279238220431290846018134988977041185715882155118035755066277773757024664356662624829508432366335359257910640157036734358914105280919017975378541595215337139861842352393090721653445390773172617531871414431424947272831394465617474190051367570184861318100402411476807833234448144454330714288235182337072094459716624387913637151012148293884073553870609487358678475183318953887869638613579238144707511022781566077388336792186578905642689022579958196607490654328248797629288359832802713527377600273193493832109268139863162574495741647038917482106392666989487223603402418668441437532274793986208044507156956257101393204562115537257969849193296919443096336347432252889465896641465454821099345454147331143509813614792816142916087008186071189502967628845451326812263991665593452341640938451185663805394285481493142849087649252468429685107644569960218240065505586854416154151854574815558121453617745541272847377684495647124216568106212380637064664224812598211635814624532220990847762350131109686993179235612212522091741581282875454857791251086627676557881162952304643177974618206531582067765760671921008558193157856165537989295148135977845264745817015274282608970584465631469508416930518312554529196668068829142914794790131402537443928252135648944298328570504334059729783886884560620804647783823904237727003469437204249008181921606905931013925394990748915199992030542826247526518731101477207428601184128674104745279640120590564662524572569688366923274168993853649650774698043679930749002213647292727765668948882759147383213609905481538065680374728369615676292142412356636480840169247311748790351979349980025357208031534315950391586293240672783297832592649273274350106446553124206132496729834493393634925632677677755894059239685917520477640535870356009811892762515576341792206122607375691241595424882529521145857743546209886361148059958176733946695989467767482937398772536434493471104563397227910106592426592118995082490602628632843682395648371087799219397097408256789682569707933344333506873898263628386071268175251068542620350596552762212770663982788462551655962637550498331374993194613120897657119721163942941413523959390903213861349685402330367396690204562331699767654177478797387223946860212057165851805323622375522437309667903614965597288238123273998586654330436762008611647199459697503813648418749682613476928758539864567701131301276129826166373517733985831970394421649612397696514392795012813528688559227106243140998056943505537646188739465483651257509996469274108389600067895015822190113255276474633128287986362283918452736833044907899749951163236599596985271854956202652180482818462795254502798416649894022895210196783227649057085804856638239354154518509420236263482717467351509729989743936689919340017644577921498588085721611799745278050237064120978406852973587454030691145304591523921886507413481225670755989798419122851871285792517487367540455569233714366385372298744960183513669298533594289377814448002126638359975136708825607237585657659762941455269104568011973113631872449379974876429099653070481315405131289530322062897193548746802304974557786059597943134973056455215628535880459827878448260057358437346966781890972233375125419436842282806752295192954952468465969845865504639630028167366288727325737317652953519567364719200752715839013462583590228717205692445572842376991744366780150968677190764862546995523868812065826223788778278675907251950484717086229481571430765669848138454159330143958454754385814968145816333348179387502961761392217726908369589601603519547984