75842187193856886408796638338299654208491589265941007036411539546591161566662345273846441317870680635192474953206402869524266192535058967189214934316641652150886943114964519409603955281491847863145860511594244772581561451812962193199365196929332680841042132078522897767899832217320906185594795617854526655192440677259217829512941953410522655950928963641281064866019172371392857768291311017111552300174958884598827240517884850195859816782534226157252767395954480352768236079995748747076215539697376088657699661949506421859221433198712194456858429187476311296433330594474463584492439731658568895663937777226308977915768361113395846731705335399227488392079346157427077697057713589789840044131983175536635674862078144565634154833132592479306634767122381599404392745068913474231180437480546949606379518424929335723482187499891420887830238164917988332197212346814319330308784837061885466384560228085483316829987972071124143976553263602523073127850694464702488466028949645390475175643797930162214130302125928219834585711736612834508586262094044459391519626938731626084584253710906060854288874520892113883349175903200724240495773496469058449127015958569397450931488368699851728988547824244840091447662379416213720730766171053386767225475799690227469004937135021587312512506518279293877973882505590892182380665595116638492768927417870819241925828398607026262524558092062625935890770723771456465086490376925166284724340384316122667996228209490953504168375691825375877227618744228693191047550326694716891590158425671012162979598525734295702323203248064077694848179708352530976018529924518961496205786918628688784635286873549222975603172651292977120852785652724182546347799796195004725846360019475920444327934780954841625319829326204848641865433731824888232390402666873483804934025953608540362214763624519901275111764034896481132479005217564162261758118736355930346017795817677026842872199799478123250937665257854818476685342875061373929760531184096779864742033689640213925313198260845949858678111483750361430309387161794305199691946259712504875683537358829607318938297572999983689234172794246377989237769682845638824273126963160621951167254643898572172883168957718031421999471653226381667386765475145659323113864838543817920023758519547180167144128290930965690868173524351208186764505926197128561859437517352095891110422164364845566429739223144935141472150583195980168541465054129680288238900321811284356251282274818443091803838133949956738871112980873199801267883112894175447054705246557995544705475436134723694175297640285310096055621168144413552257268019614203707975515060316725275878892380782264181565578869213944165518938745365366919428035931039816321422181035339520561493364856640240268099938376135797979608711431211230170227658566077303361341879142972465395822042690166661393302161284355875328252550557378739054253072933331721794509375772272987073515706754816406597617247025174018461332653395278846194225753865775739511948143747363217901206269633735436755187276908663951289046999836483760696596324671072454388612716367244755882754641762982890462440947660582851695119146217213157604673151242144573841248735349694255823716447441740868219478323603536451731931167368610780522273378247143057115386689844302659332057468928257046567458950194782992440261791023374236262643979874583392307639609562240648616624835445694616453826708649736011381451796866985728656890966860948260610675715596100818645194330216833632741349211589070680860123448826027642671358549367816648975674475677889942866938734183843790411024356689633749018337076974338670126095936711980625923209207081929413315812543181410244387273835685570354559949165933674097796294448970519360484767145018992667480372227078913098371027445212608127367189044338332699537971814781987510435669688985904245461685232163465741913236439255897140244032986613345262532824656438554298418854189879012909315995934838725090737993486045253309705822461702388427315712472781133725501322056533804567188339570123011847928600046034425630854767510426143259895369765822984930323672172678097501948281887414417902189737489127821215229600044042049448567315665575070782311447873472174793400557542367125795149503186701779657057322812061861668561055593404727912239955739351510388875772889542411077539287211752862465730425504402872379537208644563123985173169380629283307499122314781163819770746497788453892571122017268918753885792773443208696958450571479137975073294670365844431351575113959005233842271321187605169491378885378637520971641282958895312132213870069677149360587044201252539150714853054354992274987742751125425426622311379947661793373475716277094489458594821184178648093690503396169781602558594932487914346572166456094550808583753426376246733484644932568998513331923355164529858075196456065768215549672870802218304025052057253257554838174743359647469108696607574325770266076992373037237526860756705119595912803520370670496864186269040285152846556825510939784426410050717429682731210362912172475119219886193883469122178979951569637467368385113661533501893970974163868862900652247987118852162590926362193940528660415276654522460697768531645685728590748082492718584639036463338702529911298549679828006417519818079680190721077271945117178486637651184392662258733647327591230596432280338615303745581168401633632499572592263483267072375864743331388169426201539135373963629443421959501529252841678827094130742799985136776334849673112313148389893335406379203527497157445091367810971079436905927088837259442287440199523768815919864625825918642156307352294952444827728270243443751868978871960461966295919708596532123711158779310116025418360235203918724158189741189319452152557190505384826054882817188848966329827287534126358135138349680089867660335967537435351245094101647556999163486001466273345219403024478602343265459774517211444423337426256090207351285893842589579564806571619143724577574886918479047952025950423278228332018969745