2173947250705493868921171406346650729747907535914607723232568127674899649165441611674386976458856617835252683708689774587827407307637880585560175267279988440288828685512753308576654303087233017933681065618964194847414273458977589439824846703386951830797525032410033173360375983461424845612872656660814629462640646272735621193469323484869128044296851756586923423845641605811368310689241028752340025644232177148977305651303859162668746899469368706495648397845544134834316726398996497743234613767349941058729115489467775005546625481863365327677917827016767087427843115493750817762404162765717519762247971272648174488172035477796825339345816494865881816838831039974272767799886357821157126570034707554450577054211545078868988872000260228085744660384359837058609071796506680980554635936060376622182491954898833686553017398146923330328755389582741721639150448864223297895584667782543065980821181253661991578221245685684361141128594479962684925381171183565752553611665568139145625703191278979660810323692270215682844353586323635841385948729616112275968680106834081602911490082485577394050675232101194136177054564345279495984491877819334403931784298495194157972997507921430769117439767023565139572955880844805373930171507971256371441760510250242147436725983908796194451427247944448984930320079750896290615651760703074973382989461214136778820365235446595868065526968776716235758255318874562872392693707958277586427838121114909544944513008946355540502088856896721879689593734204757623142088397643135137841420854454894136837291120953853527165221959091591619412335072279950783120344565312291987085612361857287127042277472814010317957419787989888422983898637308499397417952730628522847778655841487133411399318959279297457745973025361635254748623341660602967409480293405365136643389793408315916780310816027766326919082174964164831749655766296502400413665445433435881933922939047875054326028698981511939794724694582241730974623634947408839207218971354169096940813294346069932421057144569735227668930398149361585847053182986555021215440660576774671335613236527200643906279758854013756935522048758066132171362554480462913223786126884889693827410069953409879164361787533013215144471111514233675609556021744512999658615973632956795740261353707766791740714612708853303176030299037467092915297474861434133859916296775128363264201836102453853717624281434967759431119056982019681503784003438997730255573747129743674929625545682538576389558665560385182691754341255440764607760453914137310519255898736181372924552908421497733414579010723602312836261110738770278829806371177015220630816857976645766771009945620533167447146443498356498311662958457515113403958662988643788850396894682991299836452278549113583846934255245957973978212202729684242513344928787989222894764049102527304877024999537397682125787844852551513861654050222486287456244630502451833621516162982838718429284948796395000648853921771898527744507171779574245990706468196969678538989064511369521497281320258471054816597718232737208137269586310692413956579354547358497469747412073463044216699270155271582714116188645461459904533217886714323165238356361676513669884989172279504034937761542155563668768327564146554603581973978644104827743037374858914720164053907586906645357903255196419001704907727774927151501229665549648066649487792042545928178262343997413666595386976843997687899747534851547505212089937675867337278045265143793373552281317159324198227789699566798328540333549372861841196917452942964315157527097715897998973619837311556716787066738594466969704628283811711067380471286294240441238343846661799449955845443899616536644609789189088859943050198115276728275991730332163708347532067477145286590872699327439854757413058537830260893434441725683500873445998472471434465935259794959899823426076848898899491902676931645859217650927406873379211193392146664044326451580804531104331598265928015065733819813004287820965138219488708736178963888694777861484698296078854327417299382981825115780737650262253602053066981770478579033454593262384539742932428955712185700217846446271449739291279197448899933465718312656278825250627133552271675486997743451968537363737215195515607154932627240860277885859837532193373146237478664723555521971379273345321417464281011635619965981577437059779755500041721870410677244311831414508195536347691751688493625331365203938981320608594932863586584555512489630736779945328462015228898233191892684274323964124087966826252449937108194167639476139023003201390792359229837636867945675435257663946563673563896764492048278649029545490947735125119457643911221411110225612330950801805403330662597527528625206856704664631812385297278001704326034014822782322222238513655193673883828267975361785316193314795245494304538529835092107101357457428254551832396269279069194885252242655467722356895998329329580272992863651778859890170328562173925154991434923641824877852410393956514933335138287931147007145203821720022551442261248356186717297131345556230288027721838758357855514988124958052395102728517285679119290627879459832378435403797368419378060211047561632906727963771072281467908499857182809344544906982147057438240294246491426448086225768101037175632775232386140622475432700671593226717487184201983497446127143989696172617831744268965316727663136787574743425883049490366794597854986974886135607717042098457057645898446060044294770461278199642376345772240364177473872124496196045456468511549309700784274006203390011843276275718493449964477061383444938595586169341476854835088170367271383661746887723927783571639579376466139054480250192607881985469979775488880148925888916071255278483334182859930657769333745167792792350486337699745162780632477374678393399112437319941743028918602938919505305682928498031890151904304518898401573875463267091981888572745225700146970928855338728795859199327372346349985964241795597577441264206514237567777033501629075439377949906835255304752619077