33327699694145527091649301981329698626850115611819149623052118575916263079161726189388830887984887541037075098586696917958208251910959498835207564275401545831983949158344472973921870346572283162352779722245128775033028256776387648439540714637706960372178265208366818646612271317645373206952385431466939154443098144935225118728979253034317559438832427198171974858396797329137792552888752407164314770592978184834228501562095791528613306608135881228561238296628267741635078329135750149821279482317378571445525787906025420608924851273545952734771163224635283924555915719723767142346762952399192408680870715888415840444607306966656023374434719855011166542632757977103322464330998664194182189797711454273345993593246361199191628788427950985524385744575121755638869760997460793868843153991006192817821348541835709454841644835411620929797586424110395779252351702739203147757991613542645252120913869972585637830518469481635255964909895764326969458895315444264512867440671233984180634585652976518593368655848209121726753155485425592660588694357472620193959081072337269107189543163186583927650679530395239821114540486135958791238985742474954941198622646298382884159543789999394930910305136263675679244991898646571352939433604964823140731112181652195194647402731775746809258467699172573453858574795879120382813680475466263569755880583480214922272178566106215581019137752541446783686654882062456855465587186995936569247215347346967015520778471151964366274659688326957758406996687998747633027518449437111528883262274701440696865536936947142571897357657064491460836666575629585749444161243832212917605169716200136630068230528327075478904678645063863340669326988568163265940608274769897266647187381404353805209383632418521414848334688928283997587292864763888801533072138097264489363479591240553782977626064601736947824574089589068701908238112412902955794221848169329521559689883077139874718557610734325282931126257436269468013072116171707257786981121027909027434710305785490013687587043987620821600145188128469943953648751200147954282040511386674722186696423686716408898285408444173691844293040567101649315684271286296822356183044015325480079831669725915738025622936986116475817522793676137890923035395684657793739196274360642571354506646985615312587369042739716973724990351470033319376761395833878729774566909552323327871210576805431251846238734395862998256554651195249865322044642861304685830936252335956226490343488732556024706452922037192819584905784432755678702484754119107043303236388108488625228231927946322636593800393926489345875540929310113199942638469157473144137340055386613235813079407386679286894225186343597381183645185304249596837996075076639973589562369490840126174649872157745392643192751157288186946758073997024782898668955654399823355544147959123838581645925439660517039942014373684601461549314390011206007415548387031036722716464654131039279282196527934359870611098008051996359922618296418085466991197072995142749676666361404425512635698552141444616277088532785797011184024009657193321851067968466726754565144463094885986305729547872699561615060402859811082603662129610949570512713271686609727437399397473922787464896970947982591684057423363714153848462872442194622715157752382023886491275742784139846849838227549839541277269768695883584034568271692665187442219535871973266745202622107483498672788232632791724345782363853459105134196014090119512113599658365644469110788628764789661476142506377471348171588920699635424541569045328634817462122139146695665603901315679593688928225425077531707123166777456243127702468674917126872497158056283452077449251662730036515942363341320654104126516677826397044644263564823992036843821462833710649675511594343468974486218198112996819126818450770065459740324132176095457087282712911264876381673888271523882401929039962618545572520328952932899768914751015287478118309782673424591860857852179339242586521741982963980818782199314573223302561498771868356851519713303787614253241675227946510181640998759142348187720284385534671423414816274537816666896151737444336733114017981497938448946023138108644673105363875378901320083775286477731566647325298178146910273874173954934366656506725573654373843564175587758640653345668153582887168381218864562544244477294321125434277773218795946158936378807840990431307075481347143520562427317927690644468966745829742364465229596537010397742757848627115685699849859394810896947173408506623646353400550961483186878984153701182487114197692084250515994585174551854512761020356015258349200353259276859125538577458159631950691655065405911710332672968324448816893924427821148832835173695725279704551884718652788756911759818006293125956264473527679543829963130740563018254351846273140983662298856642299813594261973893959428842783092027001114348778031282206732868629301061813578853105342204269937985152611492277177143290533277056342772149874597686882070656378495994064360291378584000190579947055415843534159497324734713571923308226882201395565034911557581455583161772126804013151450696378914862848556463347572083938033173513223479008497542768587534463325345048771883389063444735918878871894418016864566839440786484860583406502953977343169867406359274179752256866498756637651725035671450265341759113348832119192952289942754734876218552931945792848212924872691168972576906118051872305168395258901845781757746930434816656664336117904160884835436534818017261963223458642161408897563919762679532872839029961802886466785252293236949721511487955143479541384836756705973534271756612452437536178657724957206626835275894654676760955803063824999158316512377233618295111734033406570781983725353091658248392518671718562358883109854669569367144408547500389399193442879448764647525824558164694118687528313547461446232341837418869721491985529275454545162250603498449356993254400850174698430671519829009412380546905396947716942074525533632924478282064153997624587099731170963522507