23799897327356027148369960699334945618706124634546492981345711531669675871171924034631456767173984145623550588999043329978844184795965291462864182465018597508548067754480663466296421152865077743647730033077366948868344465986082391100749539839193821318008381321681283723025859541349871630609669352250678909358660747266396550987532643523613221355466437760925523125249762886592508561912318551432233153256233046081307253050818610574216273979344964941418638285594885557024678339939386715428394189422296949978722197257433877434649656796612904840883945398452558199626314605486517671916227281576392366511109578247204343437461101767433983365808841453931627630446781082064966356436641700283728244724699655585084683176607396757177732121142384938351731429824434989678718228207418780388299084238590173729148894782669559250593632407364765456987307104477801532309416265859218148455777268609188182362399199978795623854596945773643071766724144262204100839780813447462593025150351232834408372453051005277424936142105412778355805260060489848571120918661446527630922800763635286958347236415097176811753742425932121976880427579458453349184302899571249380472166979599694938176815385232344588774076242110210909383393861774267630828068313574321146950486440155054974183422042080329080409264772912499394377254881462019465448401956386865732741302476682937174376457224172805897964111936464886826249241395111584326752340631149600116644294929518379648004829547876637732384928701919876894012792841336949739530328878854129282082397519212758844957893807932239277761219117916121828416812434348927522883647817887249877226201611424966910779588113416958601712114610047296529199019705381773532551767546294244672977175457173344231480564333203457345946447477441096318893800227946603176346210959761596495418295788164483994749240591395685883354264252205326872158216225618338834976016519772785337808404313137821488133506888942411281402657014814034580187488594484365276461649499857268298288526015116051501455772084303622675349424039330839744513921712245528247572078059430889405885775316050031224393572822357982345243026550143596912471381236797821755358376318411891136524097467051403163895810439690851414714636678565707453598992057002756280055972407406586561258435627697707554835280101045438964973863436420271145398888661996937129717741424581349891019234812396921488897829433783911930985861605148601398543414978544491756084442294351504695228214470013157699382167287592399651868812784551490913829512254971450053373309746853484976203998036616376248375391665690451274425217078626828706852228278072600200859527722154312855704836671631957174315055127918894459473864739361439851514362343586994871258192463570567938234340698884272505411750101946562433584457320962719183717380151531541273241172169543521647228593968363808620335613932797759527471465917239195948451671254031439947015467695120864866563072142165289074520313183751515915356838528832607063742957493546494592226444603851592135345417527547862444882039843903752855869363323296325094454599231801898378811508874967441001034354319588221661581298128234662397384353936071910071664708094548606730137438292954632197038458679926887148961997595666646955562096293447711183864055625974358124455391934145341412263496416839171552822187383508152165845138209994484205997630668272263486166353982519049742783422134085002998566628706532184155897951147727695835365358378314711947131629477502605228713377314282312095963349766860697204660102490956567266155928983947477638620915112938825661008481715129623347750752293052451492297699353789955856168246578233121130491715079139599689848721317752591121296367621816526307698702082641783489276041655975587858014867869672926949682183646447645299943340359623987756430950929213573111031611636097877749339685618166232688470719523101882265673033220871125752334620151261922170816171774680407411915845328515481332708926895668791411033529363794157851999569471748523211552669154571140688810372094916375878194917192748236157690442114630135241423171143705067915551845462268563998681308623980898443359348314439536729485698588446511326016582650195271833776882710404360517116259866259593753593147219949757664033507960045155310603693912958829732858567188615477437409220452252384072792412719669393497363968337211543012841582327708193082976257624864993113332791943817583359471360382324398466017675781535530276712648876930070053089863030665602207878472971911035727109416542199878934944315455084700051576504302382376892307176297335544705823739187254769751715491890832404967793874940284865945368690599552273705795817654757253498218989982581555966233467927804732410621815234765574953511998352912051869117478248131332116755605822549848839412414584964837462005058454587991819488204062574110606381637936298993296931011923808678134886633685849020735352962708801827975067511176157115978614954332953596702283954080513249184217758933257834673634224566992982156018029889948357910551111821599794532957111133486096994243488217631119236193429775809626514136239557343698078621845818318733457547623696612335331214031434119493783071155594182347912391008379282081367595359472318127728132153819346039500273166922659358193719934703395124873335397042034747897039832849414724957684729487943942138820817016261153383333145131114170606680094546888841945535983462277466154375272792418715536149715134757564542184252338512184936153105521260011904139288602024089404260383027417950696582406750378122683246451086322282629127610259578276771495245009831152726932555103247474895332885233356952432491726775339508567886243449211884422813690224682392512178917506036753580533421665957303583202198256643231659608681194950887615622524382870203129204473172103209392447447461047815083712729325205142073638771984281888830384618599243660957209740825111518605782177342260896396429387449758145364648630768558659291829347214939437445082212399696166162087095093