967887718479358785582872554432612115010308229131746504432278091324255969723967523759147894446466833185380721441786697468247831825158427793981986426040232338998544575504335849606103278787859335114470866495088355931697291728641976058588567141047779686212247843529089319555177174510548844414172018871537630524644340958671336939893674498482436536100884620832191423219713270573879144639906987168225368099125587907431102057709240231052957461813654303650025721547975157802897688199348394580799854327493111188314659828532648212635360663598142888629224676375406732309952311374309174653615651641860321642218064855397618892068673041852767677869984754786868298921869051940846414716695973582027402567525998202789315389789328437734696882612983730272086162391937325135325823589560242603070880313757898556554477951825719438338661554575672701898488387502609632517347223717396636494687985999109579819932354121617094803916694417939536651039977570636379832919565572877526614489368577640908220547711541378698247533653738684219808590696715893226974504361881609570384736803236268885612217965220307261224470427925323861189802439814417291915946629063594370998613641327078833287455719235908573756453927975431503893495506425167438052285233384813235663039915179391255045320594196138095372395004160543481324363864053787234740552801348278352035508792703126893200625828285628401676438692866268507865953583592788997784137346845790810914924184384193252489957078521393155153378027158018425719487161700846132580201336086933293362329992871891961631008520477857690126123776425909321357063434395709013939471111988731915082261914896813287377351286681342803134256311050686473994915559937361958226722113014630710682653917385641182985103421519194111136689136246050846848752158007420817582541701281936305100392389420041674729712045134512845587302342110494312604517746728417651417667288445859871442133198897142540685115040910570199242258580544591309963925723349892516989262398362612299840086273042218481997211797510763791549257860362126928505156888567610157227669702711112172517860722535125108296729178915045520537510109834796541771170952132745814633838455115546590836415960685336480416698801596248995829073778807830719753771869226872641824085636693455906070105156278770427079576985511538159045395083469090923402420569741819213420962539261558556186965585913650747385535733804428905101384920692194820024844924305913387265392791781995733367441421374038488386766784584861635231234753908406187616304998266838364855534467055580313874377166376788494841026633461993635112339654497935380755583548664182535283233060481257414331456964899729695281479982735067397710442154397118544577902844695184359821375294024489117818403449262013964659422155974021143751107476604347465817153030984825112104892311198436973139855528157178255063512917637357567972209254563464129926087496630336907722574923251196757148803402553991264791447669187885734469690588188681829393233393727096559647880965245147489548478223575934405189761652522560421865146917737504835878246444886325471735247621564893343689439509127492224291989176759369753542669308713704140468262493236448053187768623377185285907241826463002029357583747974154683254736005770820368806756483515604965929262683109129132628140244875081110134560493608282575944105120548991413814970930812167319301998624878958426571032827647688539055899254018696495359061156324777182372197990909084251378556288606457694328316228741491520330868241794215428189075552490280779874086230944317718368807890621616335298908217139596007294218452784067639157087507746115011352973678352231372646839910066047768354062859157430925027725165199746790486441088591898988452904122123964511995985142878829169932944898422472036649568992439241634264586713579825822031919971611934848775550760760166147892717822604647113347947283970722003298317030074420905945466254210478933319676681007585645550852631171525843518117629696202477415174053094832784688513541561674020277306813586701964752583670424003208910666028071813955764944148320483885226679528062458845571964758726446303242554574367422356480670604694087107194035282081239315824767385666230706120251074694616555495597637191281976492369750978254929176357735613964319802942171861562645722551875852655945089774124730909113646987502334568422746430251819043657294336252322967594323398254951269727086833373219241976077178787827692789937199918553539912386488222230486428955925024199482403877318162113981846680868919539977376589506570099962916129294196219827018954366556385184613390637003385689961758598596798647725535355292130868473093181423539377725608260844985775323803047797645222268027234824270305062722525079325928685062967637410601051974050264074134728065288199092616485310172268934984189210632554449552891076846593437563911507097959650792345331124210960599351499032597856653719284326379547470901737964868634636485749008543646687851204681120078311173972217944212753529828088680394710958618143282542772127757314931048891482819044807721516164072541666993203921442586442163265339407046698436649375756958064138739481077555233997319891693591697668938910659696237382527759685697608639411444250156974334839797539239753064885305242022312736850948161382876112554400836490274696629265167232525614349340618775761848879528932217338825611443771244442025715189530228730532138621836188716739156715381393496233864438648048572504864407041243250272556292893034862655220474607144561893574601853252648354129585006414835137243221417163846686773990761015594022698095725796667347353224763718559351373305873645694850807465406166308924555453387558054007777177629884383990586020465813547450870545682767326659889858681878924130868952971940225904198743918886444749821942734438345369001024176127844225942521598798899524291419866370291787913133269719784407690721052172536131615858013078333758437205685164640548945985707791746560488241419062899767783463511518507635793720977618809697232218406518546113560