[53869754527428703466651668972390008160195754978633758545368720517673168418841018754139006534324871549195347210170222701551240669507786101693073222826545153321363574779974400034858140227656233947270687970724018028481088593359344219476983392017716315384860299060818958653435739994595438393360295280542666827083879529782151572300093136965817767749242215523953421494724348110871864124197016549575031670351547740329369173686183610674645735783074360296137042487227178142844610898250708617224810978056056882097603968256293112564098633971060278983770174086031218915142862160384566252648976918758410088352282653707718068026760547707315113497869179788784643641087115999307748670787614632821396596973799839324112442698494557937653024428623976565818350110681820130923425594654643284898510683396893383385981814368639191384331988858477395926364487132063046878638945188246294092863115441669519666763273583491673720348998112254318526194802603287293803889743644295188769073373691267069666371062870552072737821577266792986435324339128116294260613456514540036285878097299856813705673824360561586715548879242094069055401331389148262701897581584183793729659265118785207500597845643227544173036291692420654977178282378189324502824394782474858449021765791189196582334055026983893389909792660106648186604723853620873476639257157411116481826270623611438876902545201607720659752005299330953706668571108645899017550128371246470071310003461385309538930682007851678899763962584267765855857373936702221395523601827061312910237646807675318826059823082698188036029935006508687148593037956286649573707975379991070373073054613554989496380196853267330553855375450351282700926984301524776187339773716047749122073010266654822112786308029985360367984558123832771950255115217991735528910084209762233463597596251419970879095519951283564850868935618195529930412430774255439525571100258456385018458888979776467594053413922852201690723806376305774384646135066740612667381027310164742694762963125048113779755703173260608970323025834426037495683634468819953929538184299054799110155661893988972807653821774168603206917579311826931714442672399092813627490122186703054650654890098950905147612545232312687940311465083965115322318056140909163636386984816264655493897707706404126454636851690188682228764835507140577592018887490046614414997389173381866008231194295470383710427032555134122670000966659473594471207409448164474411212932179076252242382898647122168358609984557160502484485835244918174387656400479941469619856024686523207405361382700434750713767034636319335224754227459408159204417028610190706299919268489359339284887156220310476591160548611496485337987083831896781672525680962540121618233606675301134588429665045455799384873419396137625102612658289459618018122333634188883938190872323587632674593871033795857726086870911249248702560688738511617011865939362895319203238402035075566609564032653525974881214325611356345764236145331292176785622099892993569143987218983977015244764001006183091146838179001964678324993522531025395293741078631671696569509053263304903311143585955226358296335990146520827760800850811595195920870883593906694342572687387914308741971573178370360505928428246150859584012619052877094174557582505111021210297430077638648540993163824226988122553881162317477985625514948616327497867593360770932616379713776822060339010871404879256330142411757752804740717591999064569720102025578553364443632100820040564285277142269443276768513990441678952150701505041760753605503227225057497672036825063624280901391947709410954441105495713339878548376042741779410980143067714850590760703005202528351938054225784801747514606723561326141234372150360873945862770057948507482879589184909275259734309184505393140527496141020046269283573992540349073790300993895388755206922761076875042285418347585709413953807459475136029389683247400474171753241077677927858009886524945287502225343655198158230213411447167299138461407394549832529132889325765561043926725237357430109236198608623414251548503553996225429413725874010154458508225579094030735459625132890901334280748478055294065787177225328679658799899122346931095882878092499781922735474066142577694565712103584216500117550056749803476369676008458167415992627065038880960052094929674051385527235084490394898475014243645705281876815738568633155470354633069422547277163799286949693203722700344030157981344176790392141429913591470214230131209185566010859468410605557000676178103570870142148401895373145588098589139571309384006473978764979396836495136271394355058001432433479715714726906598425206283464459829671293929942340456014536195834499396975527750417058386111683872193728741782889017664528973400192431275850260507255938735554188677679486486696624972143593020335709724851609705405374756928412999948555758357551937634451000588653876085013227411801497730241338991454108707095896922396436380430187019615311323727070951438690899808426626811533391145144986747828137150729813795331899187148499504653204940338536507125043580981444591004947088405946734122727112199460302305429220795205672995336975140695072591659956658633740883095208621464464581778777134236938955598493923746851060528434309723680694924911362086502349448459041326904197398293019967507474551333503462890148491695611270427764726700411433080617028850544513817875267937832611627416243890646920467263746772671065844047938424129460630728608701057890828216098325163282385684139172941379634387906958211527312234966990978964320257443682409629826897622022323942450362823332249535850270348843141264511172439725368877578543072848468508873252859229385109991013178257169692984849901773529602630958864043369383127401087719156994627558616632541473186644363142771027813169774715145178550630279051530734853003979685834178167891709417210282623506124947478640256352073912393973300504000985455907618504134871052356414272284260750336835784524208939558228844281008314375731106550467347484604420753428973369400036057278572030261345697820226240227008731152394340821874554164933423005078343876680715801863808895312392126322448738625343577142257393413862353472002912044268526826878983414325656247755639858464269046977050544087999557544819801712292230260532994552684255897123865257391460552498794119035492629793545887893085732687871795675715279064125683461082453738682585891342309491209524883615859824251411300649524141471592664154372031921295903931038940970076703983971506891388513814996662076316296714011720536809751090279220487567622572101794477355220267700967474206021634287012132333887865639832361775748539901688889898192441404024713968516601717014420081980425911133398234307661900862973062546824698980838177866369719509837015778671247782075670081846748654734414663185184856351785834430131852613388050855713860806700618945476778637287384793507004521588255217229968134280885978301554094909746962255814274148356495060641319204294855391472877161236765849770432023226892383882342061605074664831964894247553538263354017095618674698697507481792106080216992737703392894668592850834599771862076101242854686352561742560640205461118038950814051788746086668005812774843881750307280426449183027374247057805939865248532062600145208773104622290453602120431675402246892053160406466350232791993849162480570554570930151664733923654317641965938067394272098431001831270874679413166586283634063344041069961429314745723510198756092727153395353331569677549045501868246203769699018938125026076346834667960488156266577379975019767774949809187393497212587504140776175617496548233639287618816583720639047470432765326723354828353479447082757823148891262017547587895289527141216040877699060308227694884943249674376090060249832250073396140793495830302377534570838296518139835001611924665623102081675299228804438942845877614207902777185130006308860913659142797760654424766906604567701107101331298769219278538042015274566861220828685859734397041864983030236592226363857230130827102539852209882558225119668643827523635689678116461529606219040516389859576275345738113851803853550547211517889382108392774285306955993589627024078154955706063503787423201176581335966384204307518242854010949625533828491449897425424647507225154270630266939494278912803046718388046105476505688533162411300818667665789491947272549892418783853328861458597703925662856729836476805404322869343498741763935936307379718515799509402302501836697854375981240836957770688540734425159558703413490977932781098861788234837149832481276540318958676745423326086695560686297572743413310344989854248952840097390832603386038163556396759586134256517706460585677585951162319504256343440994260037222710101454670525152720787552809123596154837447437736075122948510659546044597064325941299119567739408183057652568778316679758625036706794547794247834370008723329832310119492208142025162952348426260148076478374581088144093702113178272881968864670544119043310254799599876794364295949638127135529450305338968931450205367181374973745282668046150184346391644027774010791040571348898039317629906349245347106124228474321681007650772377319933872521627979741204790763520538961197703170812280872874024834407114973330645693158703056618572531142066473851569030890030365140482276427518948454951018376949419619990180302942418039279363301087340389911742614136354828348108767703860583931187949021620560376033150572657638531226186284563935188187100054200703874123738239448008297059954824638205462569416752917427848811017903336914170256156370954567198220302382008213077631768336274490827865531420388171983075153231353339455864395244396945039413902212589170050161150177380558519889665388766615839358183254559231549994853917250655365692228334053277592453140826969119495118497460152408588296763722949513444933639446127851986831333586490256545547456256492985221811131888181691705315973026903562689788322868056017245090142373825643018826457217543543540979446100324027229896322390602060888777109694867316335471600600368256279133121224915157992611294590080337546337899563126509142861573035970396260316101215568207899983819883429686163645950973654191622443783440186264524519541098246388676394724776919745525551636428981157812650177383309047419222468302683495826246014623024142634912056109980675721706247021395090794575790665956568386109390111424173095523730576658943624181191058039806238426237267968889813616595764440710289635483049772130964634820690111388539212720716416556969837300347816085611434900823489602496888629920402684410937999171475874612289708050073536590323676461347556829768388943416716052482000120913005753685032980690603327305869079856242409413785673199653614874315139725619190462033270459858817251552960271865235260501967426507556381723425195425596245603267211211465685618607921185267899202298977469959349446195438664545369506663562845554956657390121924101019093286284552542663788012209845952323592022381663030491747480683522426715258940734793119173154008073729202021997541402311793828315960073522520316346718925665996148942670082730857239727020694411247671755690972005974760370548183812142537308683275132904407158355575105274893243495722621269001749812731217970766986816733433544556996539986037255171388090038577186109587011932680950675511187472350523557275726030591495453677348412825134955740649937779790180427775522883241536689287570153163478376287382082461534460440098472983340718304255779406822667113299277503124632218376748014717294328637770574096332651362269462348809792765456814117809066405426428787531427328397526448108503818999327002470879522287835353090471021253996310781382057362444068541616190128643627762137175544470549292506685006746786144900442188402631385384396383678297617291990582383966104012188708172071112942463604276635691822221980358832162650569956028148043497512886581131811485312631885263529182085153300278169869837859700605682305242918601708055107381877708162288763570487864056858979406804229005149631472484488245738257555148166809732717762862862693053131170973393870185525885536963335399177979435073090813700843690262694197100727404989067868843740522381944986134803268711616503368131016022446168437288204997929199775746207171736477588507299756359891324751317640742766493143473659847301523486139967211862347627227394309558445559520906509435045209832407325555673171468773429804942679805617646454044810888810570670508637321092235824725234534732019679092757174326670317738680664859944579512066133875806394367610945655862590020116205290220727847279758509589720662615289867952850617184332269732226070078698110957037038633860868735765985498474315768535669109690680716702537326310410085646200704790931489632532920776345871187840415957621024205560747417729411514281424566769143756246170631131019513213828882497548949962140041947762767597967889347437042926179415291688611612083382858678216699402590491855349775157492280150922701208572532497089138908874541145271765230624887999820449630738845180282241471511035880224328982446683384394774986633805421463291797949479481276870522879940055262989999204068018112572670745940619408561485502431292574165033069090552108392927645851608036735592546898065004569582035166380593864612390802981327196541725315559859515366422363641965585971500405378217911084331440200065300785007061827979365697571091554449153405235844864044329830968548997886714664939933599117231060468186903588122569684494183325488524181948885145259240312655351570096846993406889620308179358047248125526072136343126530413750482906071402741718571918726504529148906032581456266872766299724204818645906846142512428820602511288419010127935247285719496897081293176674134180793438790711452369760520376190442716336764099427687398768100449923695843195741063248921509447129449344213827298586635933782269542645878011132351456952588511222109632971377913545319299551274771318862556106538708669388935528054068420546875130959464300566806358939304635286139679691233575365058630429967889659310822061596054643891018015962255061811213880282585572273847920330017334821470398369811565522611724224238035117144053365991967673869310198571014445953496254544586261155048937070172714179339001393406892604246416180394208647735121824406646306146893540990569203365697399962936094554192338909044261097509502701579823971001143831096262543064253969005070808634368227351839010162913156091705001992240586213851939050561588858934354071551518299617951700992434906749051019406321656291053610947170073545680643260613454078396877000058709612486672317998195886855193487813570885008384956761508417113430123172470711877962083402876254724671880397730913587468070242333672256437685457353059842142198030151673139788928466342584620751310755641551491960987396660986084029343025364953452312850415981347306609968340748068129157644220921866527110157928593467251610240841892276361798600173718862281423890285928699517783919630030414575393718272657268834572839457444036155140932804428068534020772654000089348350593338302050612181533356257625127869570494927281252993356351581238550853434214186754085099268760396676448729075245788249199748518889646477602979704630284468615979867336493925858312354513915810594521148150895579206555977400878278005805216751614247730744912971333048732592076992691658220515371782016124526243794641483347728315224321904643210731685047701484141668578510336975835344684617235544035828446053964355114234365949210430307221828135499465912237177074877345696053854038756473560941272989326800996109137745278890191380576641441453207440376963349972634749827725598712688391338454592663358821270351343533892297382165856371750141422044465786865653024529182548572698624700768210830444499180536738544934169553905754427799568129041337677776076164085167349778385864197214009306223010798561012162646531339528894702096380918776823551466074950638273810703952176234445706174307976572859839013627596108451863555790452285371461540809385228425416836404827120504017373432582461974084149512003829677458925123170346886743518934324283975264322710213969493949020519878440470010723344624566298044279881789306065432774867157753668640076043707593738495723483857439648237484673313666223096949266149066129963418307638227380885451908379078770762815210383334377691909675118313514712778513020532393663788830883847120077248800768669160191530461423921280279100166513199485 : 71593271956520103820756415154543000673696978704475043053489036720942139642191497206456537363948350171124757896283718045644366666069776992200947805086562025456582638440299786091828445229506274215000390445778539300167774198962774849134896022186070372756332545369981630276473146369871929792485644095405041447697001106639493064216791428701530865925728744815681512458860479322631559937465691785080028468582795266372236757103767710365614131744055401757544672748811523272929789394956845901711454025051317855980813539072414556144807119982839114726308338209096744497070752649037915008054275657797435153651100354834165192610641489802709544078510134978008573932674010239761571088666753141503416599530151976824717642094426393648632039347047706268383109193277504411793578179276786187950070118826777647337388383162933268978357847951231766041415652642091311071553853344616335550577684204833501778198104230613748449639874536047780799168637397394457525495671919631591301126338022746491155373748182593835728849308559242784747910398834992651675684808598909571159517020467492496643458548344074372367878310967118118186368503615175729994353148262002458309494049545284151363738374834054007580800013400144877994652005866846745567856702827386325410671327886035761016195949329945956113144478779971756440504202615690241520545146545626640400858414468706020933703091698155924244248597356921132302283064207292452304984534439323915753156197139579946998681368225206109600369927249180294587548649522813780668846459856919298736878729585416028410725274167186574789681485505323963595064605047542557351816759955667113890589991561268742143078382475188096616231273909299977656491707917850460779708284132017123323885828157881210691555848465002351125046923112110483652888211225313992631930588312329118292788858571646866879934621501893091308732277107250942997221017024449463976538860413829596857102667693081275429748159520815069902953784948822811847309532046479495858648916890722866471262188598251024373750152787410410532421873284180432786400285667246060671799003643089359675467949335547925695475123003652933795084125786014611504644084244439475879118565442597563040731840297122934746761559965466615923451524707723695362415590335471489726307205281762537430070633386642758097810872678450126323375913543716011147117585606891464037774015698021502082356250375229581513008107670082545540756425639340209190384405943262385679773138206345008933054024066255437894214528513351688203078739423439755563977883050864660828160747471236857842911785214579563453249208026699234157690941060637675768135892901531483045285946846555493422836102237087461447682549584544972796412534120622742141946127772137268289577713619417493217621951895190614998262240919793878415134217324929514909384800280098323136559766092699769689870953739405043644833343878663010284832389144548972207233505859620974706647728135228811390954983570945041746485657783766635076929955113974322729134315924511333579945170105237687261704570895249630144438900032699607535712823820119891161714454510725393079515381661115591932748540291059081243315753949652650770565033220702400122164406879901593140420296208557051468910048138728558366387606509662959869741653897539266614127836352623996270827997638396229671452491076999246751142389906503946289992815540760667270227361674899146635949062703602130813384521166191060564536423540018306537689399059575507978018363363031045742585739692994395369052066144602197952200355509136311322917390870544545825212193221312989150175088822372927350873269625719560438546343303220089220403245462143891130030900672779480224268957446806705786359801240274560447308512989170775195170196308784242565645628649642823120391344646982034821325971173490319712479624651711215700258486263445603964069915819415222289078619531066748029183852401877051681270339649199726147901279468841529522680293471817132503097905655707125194736170846960172182378427678601910934157962952136016306962030376766854803861929006556991305529869494135388913256170520994052283333675248651548028070112186902050094741386277691610702178330861117058308569400622495942717332836710945128116658497433933602353899206958067607958415195506784707969711223473968238015942091747171786265439708330097050755494472856257065103281139518141896665673522752620254786013067859286637761022861500582191343082200016769685319137554267465162551891110100430917759076157143698774349144762431994148111736414070893499784193126922793719375333904744423113721244072523792469345848553537782886366559240397034291317188967937866953909483758447789000331724704754204120436675208216034910967200018054917502670701191229662736796738880663067475660739895402511427271203208572832894482808993956478635218551302335532134527353698992892849700565126112460220596747322445344504575192535056455857963884809173480035544975958055353257834564819329393775692276790612167724055208010841610666789798919879905351949846603134608410708831390708020660787741129567687473625293087180405834342098179457424926417091462643799932049948408323077261491705651459380836531230832777938558352891960912730753992894338556534577009364797099030998441793706171779379734953336497517280597978529003875285114816137633148264030892269874556758531240154598783798709528457575170995442060791092085863635278471088078817283316209432810661962771761928137798225091723960491988864950850016156670439495356868798119863955458635166470042249048562459476968084854528989684655595294620514032853678962731734251010206660654326131442649382756368459454011578787315701279793816919730941369980570329576324577619271663563645078811591789446470080615858642594953112310228016340503184524032893501101983143696775971971491903207320132572416988453366152167020768730312440718593340578543842995065742922477551736534033112305216376778090415354430942364899950566504934475091702787308932622817770555488805724047330249524162439401451040031229251143811866087869761350564901519961457437718754462336687511442655549444306423865947040699059231973909548388216579796905702375538173384298661318151099691252178879555854099799891196809151274981832443902776808583066980297850132594222351704773522516765971624237936305330323607117368308165042806399396177586601087790693197696199852762553267360861565067576101623461153364579449650616924499712914505821046450097899943930517193855221618477681517877641763172824497348310862482368147927813054031139063808766789627900390987719370678787157481443934354083056392719320505394546339231672696157455628908921278869807299359305593404949787834743104526872229587885172059568380942265966457573019348332368775560229871834608223561180534153733006882976627660035538969473638846783394128053715423720694751346532786515343396237736813573108272914169728277785818120469616668406457922047646969754954976962632043485862517548874170832330366354269088371877251287656497784775589572339777116738020718851742187647679856998468461138450646630002848937861739844373600909266134731178269555665251845167321472669332457301703252164999854673518977048109815204465698243735979716135393356785706770134144925533350430601809667551359228550460947556448833764775209041527173697002458448685070834624568127147929464391336527388538472953603027724708229276785795815264255818975318819322483099018108029126872869329701901879166106787045758494721509403991167742468323649606188398151996668000428295574486987889075766725064508502842754000309718679982962491653360790105214387850548661015049010909854958051519959309914681113798013274723455571826645431244819595415494763753194089875462923765084303141483844690057263275211552440260572591659726305415739607682036457194460477355099638508505217779896989253488137762672310212125064114097361701619351421353616078809114892122206409042551687126414745735226259054667038641545860992935574012949846860652911452363614875009611376189203434940183136555031987638319337332435807009414344065023755401812266580993632619305687923708887473291917724260651210773237781572542597854201134118180881722130837030260780498889726456157116277037051611824541155214589629895581904795397157324666286560759343347789088333521798206249348945799816411653166409948070833973021635910563489301143602770778526265806937795791524388844789876938184859213428266928623028310553187128437860233566514734161315988635807271955306352383418432426556381480102983310266026796711953396549347516688411170164877990181674002400525680844278844449844663659880440125821163670085805046099758393409786735115570178205446119965562922940985199253550070473696325262336222939425968152454997200234837380287758199945808801153296266245045876154095761117983123373982451609108989689960740677480939234825420665267984481437215071957474239304846343717177552999930717607339975538222899004394589510413433566915041399358106638621899635334050952009133529857983379337166917772485572452488579259775135794447190549504744379317544919895505788072046910982132275135237344347489406405212950860992915258536140384736107455055320208355734159811677763206514059265987710164314954081565785764227993390871266853435577184795143717885216874132844064163022237969343074290546335088509229832580691585941975963570470714459073628876179849704923721033410717536991778083162068209507229444879355318404146933770959228418347312530727706590637475419825084680007087077106562666545468571465405494978115149544018317456473413838494453766690875780988171457296404669697427214202839417996918910977201945574427298109677775538858329386529226791143205761589401632226405000905522438975815286127352345920752366792827090572577032482404672964055224013863985419692602277508067964095295986280656350446870463715417816934072184845863069801170433841702034499079635672883034917395185247601648141324533463757188804561323434320625163621327217935496117508913971695231427802277799408548262119301053444853749441347808314388051973929489204864126797268208069797807888918259197877360256224903834584290685033754875455270668509878384843754114446601240648686506847218518683433651091803044476199688752239873133740599404415173525866297101143907967031390010810312920064312187327130379165083837969876899790115919865423960046731764575382123092720681826304484963640668781844693823863835047620171875450210311330233888056241736378631841400176845588902563387913712072834694420435528758836961643011690957720890975826407331287191419735569995517509630263026148313976484456015366016838826412253964676475451315579336000084085852744400442811614559945049043780116750989778773613754461666848097032480748576006607423467487213211329840629981386092512305772298906674243051803182060809767196810758155059215293227395407151636195905066237079856702915685793442220171330811040102656341398083633353970901296234026228916174307284556207942882367563322484776223152561050470522265291324609042172989453022964202746029641022540968142208657747724577650091348913469691270871576679388686881305786499772777194017090117630110917391282516900216795560394938647068863377828497114149942542138647489522734037773432137121027828549980565035558573141244690287505699783915720176011791571989739650745228051393333586480114330993952551209356361245914166306969458088360490221465476731317210802076160505581406469560322177756229387633168015114716285075210217134176747716987825953658225863782326955240269668647962897450600378892325670097265681351704243524076874190205955057287677322273450546850530810875044982004599549763328980737159853379198859613172576159562960827878176799184797102199185893454803550570354410057530240282368998135988673655309380717113436697675938424235924830979558924690500892394501249696328910549099027107404287278416446385724215742047399674950409832147092649116414154503329771167611853407514844972790004932583292484315641139073691097486656900916155754884405825836818617383747363377210711427604363100253687553691025163890871574151678701514061274273953249224928281696537841767974294041986358163820230686545483452341842514850399107412257450506541521822675741930744514969795774711639655924062361175042316478998258597119956292296832929098728141386064408092701795052228483888794600826464532244813594803867938999383627053077905514443893684729765668280109028552611654622901352338009917105949599299770602204697544826350667456787977089947958668817026730256078123400672158510177834788196496206549883297701381998445282089550814415774377020823462595856713790460016852122585304224723829910055176305788572475381095151328822517497369772371137288756106664802181683572747053873947721379361345933770501522875380933326057758099972023116081998941000920052100509874235279270894617411043187112190180996824158032460977919188171433576477428959735231679701502767878362544587727301804098692627088537241554218904091183891342670599788435995602712723593879574251051804825491363592407735246443576953061624565545357503826142356005929245506234617035274606896546247942137891657380138823329541990557937757219325591126570261027548013060298831239056590277570126437055567284467645711540696719793801207577769091880261602824146019450285167627095871182732029721240285767319987536300052859957672553018270989330277507616012292060079498222689897303203396410619473270148431613070629977159876631816155995024044957156093953213024059437494012296658637438721935819633134054475950126183109922104035639245356811552846585464738131653220634800482335118172937356201182367926577174482368034956993703947979683420437413902005171446619235614779240796136798464450568705446152461939245286895518036215110578345277883702089396797351996943238840316405308139991405796859857827554179069018938884330785867773927406368079641622193793662790943089027980044063354749408469469214054746138351227017832803954079543846012182179167947499442915653899531497614740678364228019444143216527535661676164339968336178725087742470097412712486659013181909572900194091185552949048581629202394989941622549887957433759641898559588919231662163676986250045264046823251743460614115752354351723808354265902332573081220805706023832685204988576907398049625111513529497924661980254968273414233247388029137922168882979987703648156989177379726769361568519400482465040948103138215659509206274391093103740606866861998057293526155313416352322955083865099287168820594034078937371283532828358200065301519605600872344327148233895383200227678598918119551302719890384496060576944008076332089691776073263019417538634911637689748086346347492233777183008798019095391208505762408828012156905687299219409809326110064004673295579937923843302945516231041370954973296248553607448837394493403789516440633519591807882994735760727145758910493230130837794349896963868443058797975808058027815812490105413547068835337585042915009940955035907006543391581059063290454434863867971247885894673184658978316352394708892913911203786025502745869101026288407121309345306336663976514221189844244754119526769267601244674347332343021439247813103792492885469297602046350753592788708283369827966229676480717851945093880516844309416066344069488565929391755163313810096087726908815093591963615834120108241349190876631216490995320630358809718055391805262097455017692703696831679740843094884011230749798147116999776354726807998901298350345597442024206278281454237433708934417807326897143584394106683669753515652709277460463987993292833515580571162634998837634614252119346064685004392648407780416893968800519885160428572514178455789446365168379677591804066863899793869744050390207788649834326846300214296565311248727562361103309705966152601921240973755159788259725803340447864564742904003254945776032684404783457302765621092008296839499343557608837057228499122310931744294057861749058079683304721238298367283534333747830216327950471145602811208506423563624081597617726509693086525466613124261696466201921556508917337026615373413964400006624704801769039137976295529802122282969995331607346531656214396095834830634149352857166832320926531279277325083145503722207546107464027400728403593668337818054014840651212967137058668851937802788859847587249187661264152134690522847965144760626869897968121124169039792265955980094039957308556596551963542617828668944670757829726469490530345412265544272587104921667888868801809255856383478901626397855207040583994848864174579176330986589537627968461 : 22782658736908258071653862657878137375241926379573236801120387856867026651894466281886084258206127046354608173999339878339055234670018876035089664036692761550336389971766215438096067368964547042844762504948849856790189415855042275212553036928150736611887955532266552705073733362511410598757661404947817231159149020836226986270338897784524513359078251810560040381322990315199196270873902947122740397326867131990054697930840307063196166145596105965663928459127179353587265397810290578806164220951827132547974155471970944392774683514203793977516731150322139264588250706350470684461323443694765216556309046523461101807320021229656933453913947095091321723962159607776983439493612713708244651437614491087524059576273644044569923392791974484123539385772096004976118764932580575804118798998242034607356039634816840503724123870854724417881801742574961002075595756582555293164853102542801518691988955933651994272686851632121725140753453006282041798942326968302932978544038845865991334830486712075791117222041607248674288849650516971915141894266013770995415194979955925314008650933419589467759004673554324515746090388571046908436343822484123832673477419673557780905220717688379713476610821536361845680801268529947594220188078634086840804948419720845941381651253401575634590913781146793514328125046588934822847466540907241693569479521024522663684192311843979416780295491079365830273005296424659368326218851815861093743169006126031496046828497286987666744793235874314034683672342073336027868714435863874101976102559103824349044516501285355457348648155683380135988417816549859696752088951758219136885710366980068690661607419786719097199126677627034545770711414479816057651737460467342081277804703138136147391905715201258199326430439319105196355270871757174860911081976537677890239111331903353528043629102378128922574077562533469423876419586824243442858108928324320659897861661052097611524501090914888634428087468581941540472046275649595386015491425345501980082925425668645385358029677563534714141320512998427569977143578427363260247896040544119299023681048460002445192064718730352787595949282726037142675970535952938252165259197791046444123952992879036140484845495010924806935065306664572971427173618518554265969690392179138126852377199316470770225073937962810553894368978391878376797383428343062918408206509486318600144223720180010277892252019757360576893181598969538323147371836375698703410627085451545900392331941519224993860048012264621639454960236018230736455233043350458048054025476091326624300266503410171587147509433958540477059610582842970847683849976363649567983490959501954168082106438839557825246378057774638119034017830182084505624177310548117618210449654456271222914449506732253897178522894973774223227590336950940800076135834284376864878443954181076675290072837584132528663144847732545621875305270185790146241262253611502257430701257984547896721161944656958447962255480452414825969608867629145867807865773415664378287055305780663129796582795726328859068005303205295340888586782420163512112344285068622175232382247827131466091871940275013393424927994938221741786126210807045619421800553322129944186596987796206504990543778808664726958003444569068436718431754276560446391498672950201923963934284896576884814493000297432007708768052255786662647268456933851081978731031509338629268496881778667723630018529618542584594984932221976853424873628050385378974137243658299460433315819355946493192043695822282161212459651787539384183118894460250733940455105912558972946879641611954882654334520644811428493695851984045236175235493418127653609464120969596105759887204153289229448074278169692140411263902099524182475251330581584883769471348498318215977009064843006336272787091883886391296127085063954483473805576136703817085591676186300036144351280184256598446478924166922969165147216155621005594840839928535575212086184548232838974487425687223813012761333430758193174703698938040022591472732663235243935949712382879900928020811959575566332409955806866884785683457053825949973471865640303308330883870093564574352377868062529464548236197577165689966039738658801103308049960158149786923912661601171152526913080050436700992137017195481841557168602868868957683931196694872240350342786067327036144356052702086992043640872234157069016683666464371947078225298542223178021197425333590318803232296385160701899907731616146692289879414136852149991975374798252725088174109196998990885165280213783828699235327597821267769575841187856118026966243410167002324063429678379142249057039486728605307990178899481755383694915705520348770182945273075783131389361340629171977059660122005346852290289043785781099884818964440102313742506779719466028872493710808534887530013422872150625520140251106626544386500584522081478195606528155223296996743354872586316677030817764725502704248558018151879636251278645335669717663622777096116032661379482462484514970432946414406312640821944561064908712705113745963944123115376263063966394681892317559633358189207514973241685341895152757385236164793465814760980530332903906250963566764678436795644979072879713358923737773182200727068925030978243987639634717623255150594343939015546369665995991210886490034366881716115828608372621185251578376966719308875375381895318375876446839046954653695712414946640575981027873346503319621833630952203678709000923562016933883138112773183596820811015225954262563664868854399549946610131917757445003346544806013686166135482608071202248098589395595899639666849369451094641031944132672930174401742795271969977952038261575551303595367285721254783828494938290943554495351451684396027873283759880058194793308745717638940097599461947302285336903299029690169412955009210999543395452995951327249247315732974029340511037764914191762862934367037601334545020767735881247627788214893675875543256170802211566441974449952942603893031156456603868672827674598697731971813007776984884125449633373530394693530243378940014723252251480083806655735835205753080372619833965500177429715377148685479022449154409139105608832930331052261050536292774068774414790050648235670555594168534582940953879275210646929592258671745638463416802078831781750135576551785098081765815151405506696839641418162768466279104007035933078468450282849953438728652387062921727986502686272148696112124584136883439474135901068184254666902547047601825562107778693450704248220827604680351317494234177082817020580738717231839140010171187371721413369476521017312353630312933463828882620721183389858509487639683980222755030169434553655701115328333223653087002499340356712907480546368959100555351932044222942000178514465060607082225100028499774390800956748561456886900570983013242188496311757721950082307989529893555208359194728089972867134503546467634028349003501974678153359999954150654954380031036737269816462879924662749335770427885155829791228727463883832150596261254547020497510367744915299023030820434297695679206478930848609036202580137843761124014592153980187493340660288613086978063995620205102862740509466959884135903669676683817254397150318984096964827873216830695710002166499485308922464698600855883053566321182890517963998418525920550063342743905013103316742935039865686995360455665412056914276127150422276944903986007788302552315864414674587388628868069862635701566867586077111398781664587843227045276664978756858259296710901540588518067416113597476443047395768659919043576743990151808747446253520132759915743339050955316374587767943490337861544037152160503257675950500034865518722838425387366152671723458981222449763937183910875362984946381482481897752325841035935254434354540124614170549842157623252071253000967627087461540694032820521899452396467068922923397499546568198611024504981015948691729422622383422661190655613768958574910329109055487471843094984956570545185989861138053664499663929905804942029001878181973137155746245190353573807664769156000207180043514326947708407090180142045567752688014913433181220919527214343445346927665554112221426197291854559376359968995212890132229977281176919834557368428387354196237100305794754610877450854476415603924793870530100781773429957867370907726517032805204066746897452874224906554151125010106719621152314215455739372640394447694535660481573904083323021095105260694734473374737864531090774510870137411088334210043971667573065875460740165377138098660620982084667079430151822175637806341117482225110950897538492455527818066855011584092081988645875817169852510965818489786933926069304100088021406890352239708032454996606453149057080717574595152354199017422585702395011508124999383952006363017320401083586563569498516695367568240545755150689055129783791103932882888965594129153674771285345771124032765853609655774826747048188388517694773495243430632388976329559047091208024934478300928014476183159186292850155589804323851626217547890381585001290534170686263053725006741583296328049074665373262072797210391096279193964740572241381535082067991830431530804796837329251595170855562557519135658435454086379667865371222575325405511908095556114744041784601097756844674843312106863026897151889985170370649274683450839624262737367195986736045646198976004500711208539801186135232460713130248750191596969184385810347073964659953089100702346739740867300038938872130976732115139202560977447380339332011502636231231122430198658105823990329031351303139564832481300507397817552981842255780289685085894629921701031845297450746800932365844256791535371848397174014032134246893230898574291038868506002919401145238494941776464839000843501881430056218174681436529573472370113538559354627280147344963675776588040507725781779780869329987444724487144113178254735554845413512516477048626032039666608040159876680168714777892387330751505684093823957110243805824526695177856899975848520740659415271600754987729394962384974509019036702997917467476970129570382019318261223170452000312136783031492420494455016904858198189493898839097158688480781452369545882021242847644708451835163128754702038713466611707694299605414386727823905996112303393386711111505304140531948743480859908269179170006119832138887214996534966879610738603954769465920923305259953006389807529842692729414327630357501974374407433871352815947427808348121791989779611941356155838619026070562455033903815748902144021263656408929381909864398362782123098313846393716250215932956178518029319274102243874420081692106728388919530592433739553260093406316795384142873670509302164804251831109662056987154962809918177964922776581509760096626568638223214231735645991698452668114148882642110824178866085534329515598082673413259395016903881012125769949732797687482395541937352146759613578927073117213577299066855484560101187688662915646169968482561623546499852927691099471107141295253980906903360336569478505792945854991247629974546733470945052221275731320299342794395312866023070401898750358093813668471032675933751971931895192557373595966224456252614440566193398886344503224055591423148168072224373005733317863059285433423664055064967199635962746030341456777387681845316979397772182766045584779378726594321649435762602286321254259343375260563370091150515012495101459067001735550010780293170837179942374372681307836145069737208130275325424906440670697288018374164521271143840779091834541767014331427039510753165021066537184715286294075606213147981975978978205664667253897416998017674671244384047910192798331866871954649797193148065846313268802438174651965415235801432148408949340785708172904793275512846587078212694469930163598064717432054641014617578863258371711338090900431409519293511493030282569993853911299714884567476248553991269832253232108832360414850071123082166510223013783862330291865590239679456316897098444709513148800485301580132330288856832961706483729701324604368105805196287478482422324373943211773421521428028342081742334386506603277537155589106330210173090142423686280994754537049013939486871310382013754649886344075297674925261958801649112579001595418738805441630558198949396338149028515134201731970906561526135253127073843166802044610204246376404915686181287520288612610924425599779251250440259466192600101761630623651251761576414562365252597853349320233012240033958441972351092967546705977183178236812884368066793746564456660637870038933293602804345424932131149065293398603913479602092618778610964197418334649754608832687954013530553918381558844309782322272038138477028311572437214061614902051213918188440416864001240709410869867907052068433370221014032637155580250811105891977224420556356040957842089132629131867386013733278732988997422686147863181574746583607847657077528816720368587368266337126614544411666706685869489346343284290543628355368292212731007966934263605578839929846660556523897230609650346492776610326448553490675240367168974201941097763978435710752141197571638399416301214360003829664462018202613506699502451520292901647935737100562890385891565152118669801124257994935697926634178572546587597006152426568519403480953903266932170082902736724616202896434588697017211208142043140960420560257911870233053336823570312814042313236418248942454319484504089370738030679151925789630554869685158798089433013670199148117803588110033517874089437404796544662443357237075481273923538036216559982144023004540973704513583154421879312375198646331849142696854824340744938650159204145346538083623811306836927693859787810114745266732857988558489167130689497536976771292018928588201355395962913605648230403063082240918849907866729326132065169461057527524341522485184167126136600594724159362564681361385848446697196304443890507946473492191680307755777799384080768176533240453545389199688597340457676048809993319229658132713981691922445394502377963322688268108219878818276514386564298533615138027012117740320550776790901434093949832908477844754083827285406006402178888877585343368009948833152981317301957719082359121771077706737212243659714379685534274241607452166341955985423687379460318201750244750869355483102389378755305307714636616081096942564654735135705088134686413393051443175731308360444130599442017578428707722608597160192522548772552281487883539524825418498836269285880246960222395143785772012224885767710620112660364385306803575089802974965678924777053648204319763357292069175824694784299422197850772969461960600901227717337988427009880579799341439480024454616875201034481812025321835800501633772670281154734402731623982118362099080178028768373440686842424044618587980737860804757057071042962107122439987264276238115611500263663918854096667395998446217821543120497285841356516185329545591745634828365062938307536222015867496309478469818971297219335904186743860998293781430942265754276133034469045021191914907586330769929125571011917178195010786217382671811602546166549476242931164318099303399662149369280676138261236983326816940252991139064070376250108732921027852414132368437792836861236190677739037078220079205771794276287226981452296998766495951076860823177475138806220606973140782662090664175548341606794270302034424711919078131764216025378520554920337267554291324229893997978030778246513180480312742810693619583265683819027578009283328697868260941677968227422167604909880469599776506840172021233914524913825655856084769940820195199367041420924044875727627194629325901542981449956952782908476632255045919848215109074728585065774499573733993383953825332848846399065397851603553192772910535507275401788098153373831374395090263744420101981743434894051491981719913152844097237549099371351189462397624683124846334159307726560777114845020420732135649069730104372665268183131834977697244078889355350322147101868281005284798360143338686428472377295972742048969999264394507020677135196565055330425165728917444280986800888864930196786721458957975992286213768140592288984579249519939423779709629292110058750520697362342618887526379079187045457772182267798205548793649043706812139955397044802498063744267513869101196330233708934697376270798947886257243723519512122235058418930600816903096619509975912464085496427822472480587033379051216792714776644484067200147588979904752927156404944479721135953555068269560927031083267117613965160894204102085592059698908552299026956705266982303097758473096063590697465966960555561757316219140354735729568369585620346949718520862611432970211898291195890668248799]