655893731771703112468569393720313302744495426315273844263893759143151137099455684327111698937594845461228349410117022318602930087464257430007450930595114098111678196117305763043033129454305161834295277355553361357684730601956859410228003400935294403573253826813600648715161043436075222386941736044988689257966391880784573068812391886319599429134682961527734441763874406034662337975002802446853811947802484381879148199425647348861545345612369532663953747854492278223369282920386835681087003811923831447810812648491071786570936264484328663171948715567768914895625320730091127225696936219168707136435742026530227165961084402329937586297811899526240981531381427720068252650447387371000394174123259269999887098510357147065346879717174176584896415493995966726277407542383363724306984851365147686949818161123328615988653197974751386842397347345155863749974819685668701415478130133407335875235610479928715960288726664538464462981048506659286386984400385159736884895677714490592762848913836075238518354761898124445606433767299331984926517343270199745351727435416502855996177645598544814967373793012862090387283626216648660858037025661832633353874658147273173705639979296036490106654951788507927098462301719075250237822769332885268465692662694517579219528466688205385070974392332284198882751515432877962513158962694363632336458942803387805006289881827067741960594864470716828838820982225455759118717955557115676453409584443209783494205547987459535448299232674816043142994686546233922150581194328798958136733409410066831334676495923217461495632609819890778742304390096692048204168795031898915584947792911518592368473036801514632042719419605641938238342864869762809532811518434296973823605482253969069938172919575878520494844545816196335821925574096266118555478823645510872711041909248679532668777931812503145182569686658081761129193698771374524253479486933752570711161946445466009142526543504309735190604136496859788470625567686474862973178229636732435467799617379583885204375761155346661421991366283824049502914523168948064356139341268088312409673869837563458939744118291191128077910363079253455788273362926921434725051516723795062655208937807774587659245791838826552085916204234571921635685970827794521544841922950618344810257725578834165559597676810880172170285451239749162816982137779411687344951600595042586753672726057086638675402310571559003350850274006354204259335802287624155164141418039028526131957744604869597265389433429580913535955656264877998321928418941803651297995625436869239208208300395444706072312719296452914818221197815229393980796866993281926365964903631670662263351288816044821434495174580245352744896903794716749531631770374411833470928974528736917329073108078222936613354177943634119374100102822172648816955189526374352817235272540022303477556544033073194644830633772862776967688023928419769581751123106874612514746253071878556832324254178473954332401746199861641174214249371798353379958283258381812939932662870214177535740294546950921105869935039456714370268937285389877612581352087988180169863731920563461422050182522876373458024884703679551143598788140565383218543081804379955545464285854676069577949727124678515167381096834827115941953976997718845501481739543564983984285544589566833412442546171624377450889078544277038308826087794143623866483182612526668869151466508331192118609521489077092237628488718554865447195188903711392278382726196575792555278398958480974764494918731099929105714130936758000777364616604426517196882468621144335386582991202044558543273608006743156757866483425423847469217454475087498179161276684169901595604965254571259269542423399444694493415915927488292386338044222986054532929335080357429588112782654237390288284231437316715174349402104558849454642580552721921721129441094379967362439022914727623164865180596331839496276292706087642632727275204905139186033712966845050467553547052507378949911599365283226922338132290353038330228765464315286591519769915789019742915576564774435366469345012915688872611818619411515968179578736949315590621981427259513585009513054763738962573351414156791083640520141302484829177341383686162655165620672134535364236149528735760864528903084196638404474949314834660899038894131038805192833162364641422149075904781329193988323497777895036506481839372624720757067275992184078543791855284771223409385674613665553457454631312848039226475539096972812666452930388904541612003476117637831770143239957396844226047998982169286836924730941089579977456669961418980933178176819783520264211384213230695583862063666924477916877870240677294190440353635200072832246992918689375649494261152462783908632228576413807160254452686732744268111679795147903167704438871533848604094742777148781782926457352473968326149593476731936564592499290722359607868179638193766075022659381764097952108595317434391134113387743789788899403012175006683484794804602982733096314185143994888246111912614287187399847214240412602366972585029665933682512600918726543542361212905102959421871457621588388287570617724293605132186612668000358819884449832674371393905556614727460194258269215407860632233226467084287377925574484383694779082517323822024514804179357802208438562014955619484044109268305075435147196043976384311266275364432901383062623293477359995899486462258569951613753485866577854856564139282491225023295884035705775225253668448632455265875367498809568984013310560686870453584193880603980398710675016856423605450107042313139491799016992778253648760292671522316951680251982583687826482885776602419206253791783983235298120197211456195636182607100685896229009550332822448454824614409708715898108534415134752224632093258470945704398033740943450672696675985107650851757753335618156099607762867060129074289095985633307825676030888249379441060001245353793631679722017658757841981421694253132581025487427116710676788238865550866890522067550907189716525899930653241546830017346121674233821783