670956651293834205165988099038950682567809250573287238844995114574213791732898339913287631408221028154014378896647421516165858571420056599454618781946698313850389128494919969156171447469029397650464506451254424656462544295289578166329633992892207108112561484939952662800842279186407726525517296779795568830483511254285986516115403334656766478674554003590618435936631020151948481469657294538559098442709494463967824518434343636176392870358126963902777590412919503354663043515945116927128322332721996211106423878455593326934593013381679824259127337203586499944559461485010735885783081206016205731699522443220911227710376195484835819552281408151887217125454885209143879175102615181209388928547402617388965796662883038342990825765388117199262685188139582533526877678760128467763665271810162484827534342990860939806507914295485010056748100299005191762742469327193847282564343590756324377077114168559246348008867634796987324985734274841688568698710881528185805815156496546091355679838219885571482968422085369253197196887571129642499253596622446264857492042329602754541796969746767134263499534535314942845342157465461838762232587972413857907977875185792538173268233561618883146527707747481767728315814271938366291763569976715175521442183422909173508443418075719628316614731541806212398648521075939306505779416560515469890982513439200352853221265592749375037638341087369545897882333711276237588918265437806032786115174200115243468435048844220432055113684671920393751405352536321147666574463757499651244403627265960343655392506302727249884889128355498784484733401301411028940286182073182298743291516766188255926944275475005132260778013989574973782331990338949328679961024372235020623056515024383351451263192968220411705135588100378663157885885455037721629799443659906387215941446573045467489796064477314744229615417740952025199943625573634717410461444418172611399826715825024839890145699398470886117341470911133890688719729176869258178321194140368666507609631925938651656347911955762751073097787737089692869057104119222389043553732742085770391439565824968480653733668659303247689453703739185083075929445423059694799564021896282230372438924597153819313124167373788018867835741511515963924988118753036695830696487175429928626212830574226049068829620443664839538748725564376337063376538157644312480732632485356090511049922497847547496527645211574090692533212150759798448975139086548919532991296338391874313269583772375342573188096833059653684362596855181266303453597973681994718207884618459272821993687624830587079868990807357385788758599721908889966558324162623889776288163345322132316671291728084288635764542500164982848804196619644992877775289433364171768175818805726842110984011313685705532696047181885752543587415668418451487615044792969968933909984217786220946775673734295084455695443838203044950889863326665433936122379381622895646995219859875113700869522642147985868292607053922603548077058804667255321218314911941904369836165007189944152402874275544247463147581819810983048162069756472840806714334156486442308760067842282734258709449865775146437783373806545229426751463618919475977602225356623622676524763754173291229431458278855545352819776831894249511711879442433277430583246808286895885131010874622054878180870313219146851133757364224408124208526358806867173146179171131117011866354466544627156186271866973203553878319638239490658491017746335951486306533397886613172636548802030247793898531869721338536446946296399556084720841614277979544951806245961656571624461797713296860171254258407910629803511510363445352778098906388080214129996812005763854498291797278425081865813603277721157289793113746690901462997323116477835327181677756625880487132258995777029515638143831515255883104169887080467836021512786905020107239230341637124101251078925219123616403216658379704870769476978954749914106945679930874082520298979073853737236316658929385219418148118156960737444795452477746675519119482758834624836368824303815639510163261467601568600824359383386836044114160813704391833898057610865488046777190588389221600971703710344685497588609729527277259863969014647877767687711178761403935571559661517187831371825152341976158308392243097524450752834880664634538553565588901819854681017497640231249164435196091576894237876558510367392891890622376163296896426043994721581345132929694128135195465348376499860389235478539798525294938116419898397694887525585960731277561272060356087627965088432675667337406939555472416154238483139183119266165012031391159880936693541597719482870617817663409063377107829422128431126544718086511292112198278137771735420908985009626976953896288261052115951978364517939209406025458053701971788841829695570730548899318684322239332403385996192783612092844296547966004215755513466455708050919378715260491712785771381600275076734135860714748203330421038733626483214958867322356044588882085879461084604428392493542558472655494937867346609287725209247491247862126046074522177296518021854274521781623907559863204875598744157339636230683940732405962242733100909469173670173798476370459181463148890654424784213691823643677832669674627868515113608207050847843707295354363831510986385604632713111617979632484613022313539936696417492103984763771499598825466112335935367453323508921981442552264641575676962440773312606172274097605424614518088316617943689404856584292153113273375655381817359337947088746189107648318935601956133421114106597346722804237823556277204353593745940728808734578672660674603621161148426406328187975369510585531127858409887453836235058799474728315144274953095327585648264702948201208188907492590450555137911248617674078125654275328445122103291128453478532016385075480360033862954918535290673796292462768689032477950521001650632629725840402287471111892696206300215506450788022675042892414870653997920256050797745288910853210985953792036658157486794939143558636609257073868950364354606679577759332774259651789533286178