306961262658899784339743261484932936984884058683749615683439287558969873579387772913944448119346394284599171607338238748117908773018733312447683626878309396862344787448095194644711589450769614943337979903229624234992782909773474050679010963513321860913039663749839492318503390527475005451419044205711170490928679419783886896637558614094770557056430441887006939686176303003023856857564344451915498947689513329683480153177553839529955682818721650656071441634467586741929086148927213904250250904867477696724578673027610264494849898162822178649986634888293430732664950374399748767296698796258108065259705969592443219970347378994969662543554917633612519673194440391721705318495562224529768626319939773200846057653737323650380996764573631532112411678849750580075488578410311014023325986613799791469862855342586646457731530884623261936193675023148799397894745761429616372567755019488811411311122824859949943149725478960112833175829142742474535888837298977336457819618477275526598276981988576010602728668927136635554924945930098195339692754487298538661145039741323759154631962410211973413477024716699121039248813891361671282362931828936327759871648235217457539198798864426634815602154975616589679958812924310539131325966694341578418717621698256903741056622074145415543684629159415297744279119187231340657325038556759466023639485750322238890561143039512843966453594271556043875277001965811722428960892306421472346447700348351763866630054187975964315091673372418828967514579663728233675361653353829952895739031926366038959798697116286228616543727250595438823557590820395879052329486655219309662588869926391621421710266794079896587243756295521423265294681680637231713494159218811197478481472937306651807498079337352284961743564517133577470501670806157597326234420234630307255735509965657149640772187517370832687650241514577292803290759630083797994918544906789212018397819673026383563151692962340616545365780038159409852559052549937540415993617988738518141379694354478564019483629888369122891687539545980218397148919364157586303307609194324332232229815172603293071874399046434417822281561658047466212240524747427633307707220557117236672373065784632926346032677876897196407927501754259375529232159051457886418042634368382795852126798977071279512981665128847567456168477331047311601378706261902207160889742547481523484038330895702983766016130642675982885801417616434415689601620165125755001223612361029394394855091553408227360944598144741654341285722769574315835386528733611242341938976736577476332503677565033548850985772539579403632448582743280482811444854873617309262686194471436649953995277617217537764732473051528212203205302537852388352929885206390687648842426190515649075573169279334980808488926735156074085606601233023708327469572094376794236659222192502896456280475683438972633072490799388195214013166820992563933375465157833321880589326408927758214335913666271327183149413543665878947274033824714012527330977271615771995187092551446787913325708031022858132056991046468180265294646328645978335440384586527871618422235325680749646111896808902309690848389773856232602950283197613851524148919655744419789269865055675713491304968311037176369148094667638249633006105790161915706465454107344836679122849312845813871323406202797432070611645991395364134318415160896688514781527615115616473305599398195509340823051156646639664819324723813290657782923796260537052920114392911711762335634255224784982888427744486160480416254716377135713703480987418438136377881359196085184707403749138414651291857809995981272693026818489473275100877341592173971672531560329499326571784698363255151717109377674860365474418753455098509053339412180967734447351947186164990604199137635502344215062908077614373780226831147230035549371187011222915295726235383534454992381112803138754013663062488233877452636784354725727297931531485332253324542599259518442781630058185833442156357051622042538367989475856891124546885339967614261303426521483777734260301131593952586177844718358952047624025869720214171455335337637854992952098518942164961447684581853885726572923494914050774065369691072926729143893675268259381892746177911530707877621635997421603675999844293712650338272235528166671463898188157544619023645929757352538105789482556848197029685524413012125562661911938736433239296426273864751909866657241179109036192845158138310649230385491546342665120876750648023398125412659709111969010194599273668531132387617687985816444043220439129276972550585341812177230484640358349643898336323732230342529458725225138462526830578373284954189864187733373643188396646664796429832129401151643620167317521481183106922654964173589837037821228240977039264158139815209818766386109869840526057500855886715974285193954174501639831744111593946758004146974698854616192982356773267792967634559964985653405537941838112604990565663726875982354111956669320418980248579312270302862283731769136037399250237916557706679613738254199518323538053792936706320423871702834256199193609665187422978016829567014431386447621393170783103924551364419472708379543704794355112893743798728809510742958682725782884890541788317995318701639328419266027477950648917789620366724970114756859473560043395097138411112723940967435582864494697094050129891107735273299842771779075753561921965412233891970555139684114837307324967896698837960367317432080033660791515166685281257658891880876513962488526787132989375293971215626264195711717972697678594038014009317198435276334549146592489287981669468702992979194618092434895744127492344053602118456369202570761625100848627340344080279618857484371211306037595861362423787814122170374725582338079295617238584261638483685627887983483479907267523135420920084814386450546628482150388234735701587617934174598799876493426794323925572971337004046936289508929994562586679372230257093837411350211825199493230686025075665461186934041920977208156465186500161664489