2103815871913061577316686780087661213821532376132530306389951343692222971158946727511423256508717491972095873766703155861707784212446554314455047859486152014429527266660833652634651456975260843832329668976798313704991463641155827330022680778991358232293078067265864334594354197716451498403277222205988081166563736831903523876839622685977218312806863323423832345063092079174509480497149297545789896722337477867858135743953373176997369848125555619754653362363114573114709170641247243382456091003496749217575999248331976340942173140389358773231131071103845818154696379211712827670836252735734694607862489441430432048538057371506715368407645370101344772133572970108315535278602033989910724936672499284757443536331174218145321101535254566051259654944085274099533539340967963822792142973555286026386717080867379846257342562322531164780495631582744325443263727366254699685327604914842834424712232881589388317561450416209315262332259895698716292147260163808038980258362858361048769549702778617211712420462550442879652745396894969700657931354747642830274861471539659883699010476743327142311479269656541528886167779155431396679379402819928597091195970352857078479958708103188845849665136470821641229275563624070190854142107918292659895696528945718781291577328787745126928210556022466333757304921056485102607148047583254357872185589394539925134490269606014253992171872866962175486389563303944894845807998297639536882549247274233149727823173668671237817515863919296362594880753840120078238384343552067192465201258028866655236960751597783161693864469603344517961549385376672181687518025416122186506150512117567209416995757448104300243493177215718379772889659369664313467593939744757022696956352841201539355766522159759629619595839359654153034308437174358184437129911658029603964862980134741169214637408626984516647292786192087207778242859383440369424743812491839314616028483694763945035241832788977358679282530908003635982065466402863373143966863925125679701826246405483017229836496950702481603746129918591769536698938263449154094809979279631849304611494320842138742886114974399362705566699195868330944868199640211661479235463079264960237678252736951542802966029867233848341612532004463514133416096142120630504666958536221708630469686731835577645342737655810662984212250631051825602699443745141780351975924562193161561798310583146391931897031429464069952165625713753298125030923591932496436374409705897763050471278719160404940355941876877047875387529981290482597475526062609350625091952461494473996754029578513820881069388298394669457792132991969953134613408366442587607276611577412228377351776156621101925063867577246843766962379849548333079601518982015662865853546449028489646638561599598535909953344063217385175795385669149263347045873470750112420267091685558893672196218588693359546552200821876256611115297482262591752456149581618386135634014878470562684393467827153847748127273793169557554241994950515497814310769319844198175042468579513818544240589882792753912252067307159716207799418774524270393895996754735958103491074314628573367805457835172345962338542258143923257626639797259316636978208178229489449697277361316511337568793423774839567078333833440085436549718995097916975932638395855527492634682941314020802090564263689668518196498108811344294683482768905592829269160879773556750890692576629552723894343871115067848447448361035504499241999544111053562250151485973126451457331514572448646997641942232947143050752078523960371408143348070458023404885044398986862018247365671222470207964392629828333963325478870782202214452638922441281374293493059566510348186534765044545861275915189707762676691353363098908054667048921726534156964790731766116794922344264832984353749130939124183459678856181556370392839561972287555512332558421201700658810655398439418223251545717083542787919585935297446696948541796456813061172194112831685815458897606016658175377085242376293129316551965535942902242295063513524462514348449478332823359812549709786334469533554084263129646802767518147453835622845924278008919741741762532396535448662166436160366532506170356103120725152729254821836306830486066332649677216329036972742467503680794656798066330301448962314896537991307545676466938115663948288714009687743247396937512567185570486813253618465753614469660012573733714610584119235221364466792134631025504275993937747904755751480392975561718723306837947541443421822800678413213136380649496328626639310669235482789180720091947938372194384285452342672696384034220414379762675124487453164189110319213856464471818986969298046897459366310998334376239478280122095630352412506082785264837092402890556665603877331669338461553811416516779555530616350280275014070919623165597567225517617742587310775987416587813906169935836865066814160784066824231788020509335481675375481775750646725917751678819143465590683774996658083520661527111871961193717143630644469955717827828213988143973049979020771371334266224443891571486914303314843287244858651764622761125285615464078563990742079249528733221063531665682023122949898918619193346991440982096764773821236109877639581071378441744184611459294837095503898950583663439321288386589427929347511513772437887564251145188630525814867871439195313950729631792384194282459257187473891371624718825863284843408648998099945072467591157503290834075693631630738117183084851114742358396228388774659493456185596631350146791926581750582702738639680436787430269101490652026151784408279939256239499411988349598065782726331307439954004550593431027837448286855661973319063442282416839731707299561426299037362867713622804314286569746626505720507229221875315725635810438816733669298141278608189213772752429680839571509787089212319801273166733551510312309114483599626961696678232335810624811324312587762726460993563680806677525651285460994789879856072885481381798898188843538360758683632242537418523897217998351269093563037878679068662470148783345227