українська
13780787113102610000137372688200417600211886000796412392012506173686584120156236221512892213217622411922010322117811315411418322423890401828138214382104241226209013820254822183416545802201811846141123178110227246127223157122179311811923811054487322271022472509215510020615511520618110041361361361361361361361361361020344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343434344210412176136136136136136136136136168160491923434343434343434162130198013913613613613613613613613610263443434343434343434421041217613613613613613613613613616816049192343434343434343416213019801391361361361361361361361361026344343434343434343442104121761361361361361361361361361681604919234343434343434341621301980139136136136136136136136136102634434343434343490101225182542124794128229243231163164118407077152418721141115186741969881811819824913012110410510821722284153114296113419211055180128106145151211237655814966501771922142091621072212103710416917519923625159992422291971951731821453713710493192013913613613613613613625077139146161246541882512121912411912311586691831571776895815411746198111187592061902272071361321952482401852552262192076219817813324314514019917110111151112421377244422278156442552194141136211173171261561810210131721324419199887122411002169140198916493218142115206189021931120822125251531902492401251242512413917688442418324170216245231199276524171732924961717171717171454181916394124232651242532491351049317802251421491513418520416919115050221294420720621136201981311971061491297850105204104141981319815914220017123187437342972372275014616515512117683620817819414514219223811433150210109889613718022522827238198150123237432276818054961286968686868686861154247213124415755113119124162221222504132297119223114660736634171132331002781599515023675182200105181599718157961151841004475671681211731091681324897149484314778201148312027721522390115171139116262371311711271301121203789181196931861044125424425013516816829429968180166991286968686868686813488361401502502292482392532472271652336176106881381123435225147771303316019610713518318092150921175416727541871117714210291662102423011815315415921127148159645022145484333678920924686252071922312349918126339120518420118422815871014617173233249617171717171717316321018281979849124254242243184249214155225104170552501777416682401139122517516821262214161772554424140442091658362082421508520021813167107851013441351401731542141505416389992451441069915922716114236246243211113200892312029234901474919234343434343490711641652442151781001722224820719124022287951622492032072081781204618837377080229117218145101811932262413782378093868022111722258688190239131421311402211331801837271332419919258262341616816814618391181237885010518021521520111310222415114420523011216035201932338722114016918723937751620915413812217171717172099023820311925513513517425153230124249571461469810519185113551741629815343241831519816136892237822288181788352375010414522912868421092041172191732429113510010516772517193150145105181081731481571591511085921421410878034993712476523311225510410917413311151162198111131205874171199139230101203112204101215992153514213021310214716513610477195013913613613613613610445165197189592065731116125379882361484848720284147100939171163121001052402132474160351586520810512919510212920510612921510513185126231341672392012504112716976958922852661749410415985161198624813019204218100138441111193422724220280867025013201126321572372282212611352372412359135218887201216224116581452462199241194372453172223992117192142231103922725313610420519301391361361361361361044514974382402191592371351011151032518117425019518143321923364714410513286177100182190149230621651107313458209105461871311071215233633222583702278251743614114617320111238149130372129813297241688222239141128187183160752227221420995198206228100210242995153175179225469491621961332301122651751916110421171612042124118208721422416219125211851951342032261864934421161217613613613613613613621498183158113341902492401356606225513930101611891812117917336795010420117721299692081095510695197835819513014449257154521717386248935435682347542157653699135372513183171749135205138723414116611210181691421742191441451819175222811501472299973919022819123014215218817724112723752181840247218161421031071031211011592186693610020133697821771713870173135320618718227541533475168133991286968686868681802210710710419219725110915139179115223846121125416358581947211618016153158145168711662012031052132087123117513274589713318013280209132473178965615066116692182291483274107842458635755533171160451461482251210613861701201651811619217878837128113916810613818950871512062342522225717813833346585881945235121472291901541631251065722414723710514117418210419488191771421712161011971841541282361315291452418821399177227244511772452222512012468610814413610103443434343434162181220133931133121951271417117318316612189177724751515520114421416414631342321801941101792453175180175171341758316617421228138251931442062116475243159118916628141554982591665214890217113186441341815911418910589115411912272481236687716915173225241301582362465314010691998125116203251175216251472444113223912521307920813712823625516874632252132361087527239223463321420834391884659230135172331339915319017257140113219237139125796213531631981942299321725522172531802496171717171717173229621232278522011722510517618522018212728221131576212722234351404211310710940153382111812461461348321855149431511061173413927161147206912181819318813329112102447218417213668181762038670213250481881701073192292091321782531161963784178968210920812023916614224742532172189890921578731194176501111916644132106290208138342177183132103195203125104145160109949920941356918243193914414120916546842112136240146149684015014487181731819269173302361152281775623618813922411418710146172531482496171717171717173317460230162042492404524820243971771741721714914714019916105206214190829023520223920221421613836827064101147160732424091591461041067534411914594715611811170252782486014729441438398438946157623053132176969759134861218193230129207157171241100193162198149168981127420818024120896182111431214710978168161153210182352362292371684524520211810122712123290115235592081873259785137207137138160219817623421898505575242563512417145118272052118721162186218163411322105428243203751772234116720184342501694819234343434343490718825417519911220312110316016221215119176882101557869659147162117751441448071105128228119219140381192181998534109129542037516450176197211822185162402161401287519542165243123341557010756129252235399136132881631062521989118369226875016618115715416210576252248154261061121641801517328221198871392194917822031831951421129213051153222191251062262102142425278431461695238213227580149495812315921924133796617315624611210213374657222149211244569811422017317311335176115100441041408924024055223192958234751620979129122171717171720958982232918219511275782177401081439442142120524266451042391362001927454917715419473164677320151186802341797516810014922474107891738817531903591244917152291014676241813223083203903416815116016845150198250181190239251215106108143162602241502161051651489127781252421369217101122181381652082873731201014966175521724014516045103899128110187204881611853714215410131973623614622444332351031461281994619939972221562304813850862811223316556244236952022668244839712869686868686818014210490182121672361781317043138160792818010022837225851075646115872101367115524312128543582347625116723479127845718615718511733449228194212245202224942092824012717915416112586109484412816013299170115128165378693119230242162262015242252217269522145107792421920910213117818417717468390171751998511540971087523311823515437192421476476194421191471561115310217240223698198235231712361352432552521361721839869342507348192343434343434901352042482261152522541522531401127201561809951036215113118107182192472221041841492112199811016793222352782117246197188221807321652117821538111235253217451362032481502715012719118868818538132269057229253254551631783381502522242531807218718061169133919220441981221862392411641328978171819144551098175252251381327515169808523394217215150188742361186822199240856014021484183925524244156254219235961472336824421114620718412420213713613613613613610415711324325399623091207331820711894174133661731092291458075135251981966124216345154667666341315212290711078313431181934121923717261154192167223529922620032287827230541321412455527811082446316569212198246152174410531861051532492462047010848172819715814965146236298169122252199819110055250173821611324871181113818814353220320938140261061051278714114552170124543513651246952225137211221836817644261992002029892251183711772091825920015468848249617171717171717399162237237561101791372402172111127310410114525524416913161209169218638492216214025223813610516723810568361221007310771536163178216180185222202154892611010560182941419512690140229114225313314023012610112623661771641328425121734467581496860306791561421781602198178102461075558101223122108169172153165251211247426185165223129186142132176610514143237120253251167219036144912411966989201051279661324570109449316635158707511581097724215821420741561410036355923313013911224847471501491006534428121761361361361361361362146515255238183120231145251164841042522231631681328011221171603714766701943015146621818020642972131489351762391801694043437067671119015624121621571898621352049229127173137191208177798120185157871182191201712051349689451541502071952221923713216216015212291651126130721972262003699176216931202481931919923813010124810265271981431216018621613188341331337797991271396014196831052271691339491631482468314943226166616591631807945931861517818861041861562142501546312749961792272341992541391415415334211137168164819234343434343490199601182192451202301905936108202246252131577820919017723419541521837116146167467309311814793511222423821998104117169811397437147411321958121221353226221247222694237129151441757724470142241391091832172419317026120604612018894893178761811813513492178132491911791003612918637751132352531439784855541536026129128311376821457220454523788180963019429109223247155165116519918150114473171831305516712173164243591432476814317912123382180102281842452093948971477710142172532122496171717171717173352623471943191185822312524230172143923678710829775010316588501418044133164148201171202461785491552102481851389914222522771141292032331302211106760158644415812513016122110213121923519520418511580908213817023474525418216017017012193210983520823414376423432104025517483377718814413668144783810194901421015730253235671681111086656150684015866109169132992210970852100188721171381711881503610817818911891811002351121221391447837144140134101291391561114325215024076198237464721821959161102361924918322214261247222872143316215918344343434343416211719218720760137123127115150209818810122914622572814815713445148131761161809366160142882618169141631312472517991172442161772291421552271922955693415366818180115301311348710521713447224718112125140781696137228525319719711220118285702223984954716521614923917913324113521925413257139234100124291801431691416049237704417917810286103861552914790201882161201513591183474312779183159291839017315263243597619123255216237152227140113342501054819234343434343490203611172232211842511542034917022013114017568166401110823713242912722017521922616810561912071352441691251324549921122061458248253112571571121879350712141481331561101560371999315332636145148822111695274106171971155610021611010650106951172152092141295911125335621572190151100863520360402411871764423714718563148111768450301292212331501611902476326141971931882491202242451198190511326522209791281221717171717209902361631511581952139301311721185424913050372031461401952210951194162101237914825129702111879815921116812516577242541521803311815454213810852180822698185139131176216364590772441051352186817710472141140105208207118016569134122221396811322713119225155239221932291159613121832265130362081152082282422320320723624116418499201178193929522617724190249242272487014219919325123813329155681811921513181162150775346152472191461611223624894222149136865344343434343416218184441819820959111795713252101101146127324179130401872131301111024568162411018721514216021942179448822142193103177193479786145223143203475612182551492102541781241892892291831349413177350131745212821581283115816234217175122261614818225144762371572051021992011991581331682051299818313532119710474247227689861328889169120208691771163125014613810731924968912191610511069113137215232812712112328203234351782171223812223729140156180158447768131137122171717171720990234249191220143123175187285353149501506540206971673522181132495023265101185219168109149731111009044145707156137177531262361772138621611821810217830224245123225424614677121102418133523714412520615618588521159188110591347928131161351351949589971889558149661641697362511261111394883119025549174190246126184278761742411612218544818520715615812817714265182291118120012216519811217510012722716186100180246901682521319794441041299105911219513893241892294656247143152001306852216249617171717171717316517458230724415425352814790272192412451881651521782544018451813217678213813123721432218151213671984818220213523014241549018184251150111407821985811173744214222162160114482104164351402076225212143612496034117171801983672147255701428967371101271852479014821221472962050941256756613918281923225411221110924896198114474921681682934912361572034712985167371781259812110016811921815312466194174769132342289221185108198211141815125119175185321930120136446968131141122171717171720990234193107174192219207601101328525515517716219761681321952336460181291731245620618922794140246397761581321131294082233122221592131401397860249111118516110811762511251762188721284908522113477205184247255301951991592066511552138726014114692771682123617892202105199147143223101711991471317676248102198761242461933924898198231521851603218594248203181246892072364631108141671210137162291121843502127549892461711631101710846152244881301017521625763237225241822202318015611420577176174198190193136214101121761361361361361361362148223717345561091992052091714216017737132133912131931941532211671591416114359190167170113233181561802297024942387052153198231159024120763255701782643236301191822071718510018321717612022234602422151672412067951621310543718010165181214212081547816220423414432203134132761441568126249972411231122353146701604010421211221020622825198147117465923918148412524811810559261559824942712861168531731262009818119323323521252822141431815516311525588157373433449118612161104122461468220199591601492122466322910828122230185178189190247143136614212217171717172099023615524722319713712323913733651434659415612723132418724986181881642241145624014310712713939238191196720312424810812659785710695236186247147083185851612539113390219491112011142522312335524120571511441481281701773513816047186153175233149611477018120713717020967100255742254724798193215139481112386636146178136219129592391882437211652171171221457810396181894911519818318477142177602241961781821522871616521101128163231142211411620327148161172116503363117118915122478661835115231192906118187238185551261261984722424224910161717378121761361361361361361362141148715912522222127228334202107240192391593415472354119314213476207222126612222491996124631261225424319439246312136462542292418227492082269874194177517922224129711586891993154194416815598242126128205102129221239128552371921642011815610425522149114194245622030121101155243233251190253194155248231227207992091561011781582121522112262134143172532302453735239125247451199621416212225318014712212522364105415024615867441671837213044432441051325416727241112155769125106117151723622424715122421819915914849342504948192343434343434902031892402081311842412445148105202562202442261231041431652241182161675166241156488159252231207182168422515315102160214238682138047126121238105168259435107231103183219363614614810413312044142712542421116836232153181116572301271797219416152202171221168265420167301274020243742252421841416420222524516211522381169681854135292372054524824722325513123125424338901642281222452116796253141392011812510711010819311117524829146251111453201172178123190170331461122011341221601298542171473392173619674132219179205111231711010919421127253551707114214649349022124961731011581522211382471501341012001561571342511772032401281213142151221802271495295021218719312679234221156214242382511627313412255170200137147544014716112923372164112251199138201191226229227117881132061481142482292031881127253242475117172092181061985911122415693247194545917214375159120112091006462491101667724219025023059220115198811525911546218219182408910817625029216103199131132282441597302441953416385210321231831422211918581056385701443795131592542151158817812030224717313119116812235141271421731661091353367171141269022314722915762159252146245685815313085217728237247106217194371202322541279723017215318424514243101891532091577892811881411991924820537879916912412716814216209227320284192229114194898225425311422110513616577853192210908811815161071221562222791332212116516323750461551442155412331140351262535925341622131411214902301962322981215625113517925163165176119251180902526281272551662525524816669134122119228196982521089813712209234246696741511881817613412255185220141235182173145161129572512131971844196101401911071831731986229302534234191312271263834349015529185254567621912711128125197138218212176391411802072214655302552433124023113946136871787417621320142161172401361714758221633814114918112720018516211511913173821691801006693139150201142481581232505791261622161162034548126195245101571211312381009558788189146205183183182225203247621933891771452451001461321078613599692003625114613620112602258024391581262513415012217718449138181597787551061571859314164124189148711001011671752413772271562541836163291824221722888154961499721773894017160224708219418216312725524198772178416616209234196010745981661122151472511182713842111246471598519701711761521853986165192127219199245120577914118715617916714817923029173146213125631917171732372301272515323410220719618429118135223997191718112724625121795174186241522324872163618824274321487816448431819497251761958916728347505415577216818012114199138192721944313113122163181167180121976270128372032616413642255203248202176403987594322220933203100100251551401754420310021017847501891261132914257243183216126662510247235128692512211462372511502816368141127153172209591352031391421341651121859217619758100748710118965710018722724763297159117142763316221313712149016463976610339110801382531992442221821876324962115021389224215230162218116208140157135251113206148102534261842131216319171717311521082502198519119865231931216719913188601291004221912222715231581415531122121293463206592317222024512714397193220102841505112213229167982002161770482121535425236171561051798922914963188825416711118871823119131108554597153134852211057745173117211101081489620261552214122754173144133100601052041278424625523819162131157541736583711211516415684892335415041202253227189197423386169122444421088143128203134142104286287541762357634415537131159221254247010918413776331622131371214902281361672311552341351681871931087020001711761721742191153237230121002516861491152232411263534342349124321037248240243471772451422193522139201148172179118223211179512413316314321851232381854319089220132911751909241180310315611601822181137516338149223153184202392151881766315612619117621171667741872151962101057817572417241371124781598716610210523251532552514317519819195157141157551717091561421862461321085999212194422015886615980168199100188175211453395654897025177520224917732131120501317524313565154756617997831191944723818495150351622131411214902262211653392243941571213204965335100128858886711291271215612917995939842441732442183728291947821910580172142251153136136104931802322352588922231362455515313018020513424669243241235189246132195150193213559413069206425651731242432261911132151897996250811239817513111813575216612036100523523622252805977215964135243236467115112110210424365171189831344971192183792224413713290197522351149767321636891472233919145136751283719118620810213463251217478122713117210349230203102208216175519416920611502061071437100407523110751671092616815491998415610411113716316421237838690150176225134399419513681351004418760171736212176214183109621525188205825962115019346240235197471492371532331802213925510616515718214346234250236120964132462537668681804675361471361678211221629152249222155184238184671762471901239819417472039213124442417911322076325122551262331092522501308322414520840145208154762216313421324752012169741731531652437613587178172205225146192414665832152404219946239147148237106152149140101131381251587489191434519914514612523417217318521199301213370142436424240571461499022831991396014898770685615850106884112534992089971666656155122351472216324214318241153159144992121211861401741865211067244192115811852531931682452171122422281884250927013473490612496173376218124481672021071991251871314716185195017117612118129255154247150227221165972520223921045421771652541792320932252362511531361361049315074167141907916911661324310222724235247195898794356514185230743837492052402326616310221318155252301031581213442107178125154186181195117751185714913819922810312713814926927396379714410518623613816217168712558814111714115225424395972041122217989941662291043214914812820223918235207525971492102295221620210513936141192743816316935142128215129244242415667156871147248104253195482281448314119018782178911493061151222366250128253702502242431841401171371042404819290111721062431932810923418117018110124962115019344240155185182571318516314316817919318815913713613621485902432349517921822812319132787249101108063231599212522681562291782233437243854619221022311510320670218106193132133920288541921461621641888674379817814624916216520523315015943105196510925010315020597552501902344119290561273378632251021221425022411911717313227716436192202245316922643194431095424144641711792147219415216620313358182402492810414922420239219155993110251251831197149178100875495229212162682146198669182168146322032141172196852481217621428719118328239153172212111512531984113210610150521121026614688631581934224024313713184862351263834349024710048171411385523135240220226241941774182171113226252169671441462261606881515651291231591259210431587423274199802517515153179652132512391881432372472163016984101101759574146217233572336892242171108321481432132381281971865088178218172242190903520498244163101150167562169912824520515122322523116793137245135480302362501524418621597917798137149251234113218224178175172811661801051617821111275107105233184246141181160461019985143339349747810720725117083237222491091817515214919821421362284817424213945723078532151361681272496173225180791623515994326712521180339531891312091402401671017624460212133147242477393255130902151370129127781072042161341533817016313815624825318090259012512017312316721512313111414312253244180179127189103624358233241233189216151124247511717209186364197208252150823825117825511541882165110479100139127302018230221119521817814068824715612128142482291011836101317217868196016913612101205155511522915419876263511507911424171762374221143202792431802554322116613486541679318311372031001871691208261792512172387192103172243131010719844281231981111762492328235160235252465131621141259441125151206157186231200466515589581002551485441108933069114175195145222235528860115310614219910265842228210718929391011612454218811217421646171531990107131031661027623873112102130469311085101566370128165129202431819810571226250210661141192619810565118312123323925462978115510162571877713412216715714895186691491215316313323912423119843219188172312192047122311585102522622157243234189351789510025014618720762431371311222918020745131721901042322491114594107125239451071882166694253189214157233189117223237750180250932192035755671752351257311227824421319189637175160168159161471712421852061992361172101285111915761141592321131752022532202211917991772139421325394213218169686868631661524582072052351921635191225146191114273761209641665113174158591041402411871262067692125226207186523323628962172201181009841188241234912161132391057045381832074763187234111128165772351803117184509711621217419023928941381698615567150145323212969411815112419114522958788901552354712725227238252251211216101114219066113163134149234220231851421908779115021020874251193210322401312177716840242193122227203114240636011851172114226138156862492061111952071657618022916191811951391362049712818113451211124482155217663203142122341217618024017021923817312822023173129166239107542202082242301962322245241421171182461481142365022022019119092242214210188251174251561441152112761103171822245517920774195146193122226160158251167366012466942492061277924490235125601441254911519062038371401461592532431784214247741925414424316211461581553572332542614023516424718721720716450115125250186159595119254431891835315223720712618171725384901639252115102116217413916041150654441129774712777107401152192468524932346782216424311822110167254250742520667367987597205100155245105128149146240231139791901961221471991922332471932291494819910614937872102188422249157136244932308021820492142141291804872181612513931125129471022067012119239158462258128235173183623817355144612707010917121108180105774513519935239149132171142361185912611723424912022524369881271204974371282102541721801311182532211920120896151237121369221062175114218163217010773832010920517814175238641202521821461221739017901598423218021980236200961951141514289113233129254127119379021548192901311051178631811702042021618014418742205887711281651991692511735360862137327148741848136672491323024950179451736924410319219234143854124022324611318943812555592052517239142342542341215083227431592533719658662381812542122442092472071191906751272441732511823712311713111494244158189681741512541534880122158244193173917418625115392351791611541901111902352112192532201531582071799593346712521124010617613089343416221310589401291032311802261811973391661782231593715923414720625519770165216101100175023352206219125107108127252233248394441151299720969200104283712914221315015016041141246150221882552251512161252551572251161851601931472101021358615593941807348191101051337713425118105141192238180227219111102225246123254133250185139816018018302171513711720570104862362472002231991921825910813893119218122919517022524012122812523617851317828932441732051651902532364392122245157820218614155691304127218361402022062371571561842291251151811621801594475501311432311829625324538162254146127232155202156193832281782025320396432373975130172172522226521243688107176254134342502315315319275111083237712312391312896105658311172131818020620915431250148605119319889175461982202141841224520676451721995881525512424172161681791292224820522091571224672271371312531217917918092215311463155185214202204249264410231722131139414815325118239255144207248223243124198251751552123425422818778102174797924711510321855151134871022547620912526200573434342501776822825125322319011019817924321933571334181822441991467253242247935180243245139246216141553011682142753702300181209371824872128351952032247655230671171015794122249932361252002387077391436340115512171661311830576094104136212351441274237163152251502401024612238191239811242402462312419125323021611613910917722919072242462112071921673112634752012232351231081392432076331116312029152552371710818522984236190247784016916914618589137112241417587134244455172701631986218824719427184253254199224682101201816124612510113413493218121123206215179901714715646112211751762014920314821319533161153246215117250637216122104161217153423413812142610832772205172163120764159345515212142348175114180953251125161534148107141150190106971539322422118672022042541191271116123990192559985238149206204220553213159162032042492644102244237917410758173462531317125183431751912041243820592159238247115103262269542235107223121249128648756868180581042082412362362260501792117317718068723515823219277591453130159751432161116370141199150592374411512816120919717616414718425423812722618779190665215713021523864821262231182436916825869173916525388165184910413523611815132183312360212251247133120609744115197101119982011461335623415091177205206251192233114342322472271291112713712722211519111376250452291449515914318978581916910441112231232722225324099156127194116824599023020218513619997115747637193149301352102610187932482768441181244999120275921447620382272424123821410919243952139719617425119550253122259125313815717816322618014120217613324614537193321710149192906710545223716341159238181122204132412181082302251897120080255153934204488902085221912124864153217151013824423510991122281221572421331122472375484130176174127891413425422248245190210240422232544223721690316511938095204220147171202108136101230124131501241150217123103851042481222195211529239255242151691832078114215323521124912623823826249441551051386088193441717209234240238146162542488932449111484190471722028751875120100223811462481001122431697133145176961593514151571922402481822011923919512023914721756251150235805111640782171017942811021214041193109183253222513921269811715176146177242102011582511557436146248232221792412441477999179314219422223192140116423711501031882922318824730174622344351641397316181233230991131931919513121024790244238432482032055572011826252197217230143218318666244611416577919112023932201212313104104783215820219222711932224180200220149116233128203110252206731662102236318124021113310916813938492381291431441825710120214367175139118949522717722614411319715238223771001381881362141091217621480250244172124797523541136210661771531021322211314717964319218619610023122574155732344371159132166475117414980359513201311752722321391581071316118671102206712479011413116963512618955204214782332371202517520717321719244711751811902442623520344512312172042492612262542531269017312245206108216162244261067216721569207137941951247795115204212522102351482395148882441902344520453115125244922322532201572172189918917379686824483912082219593159532261712301842022621018240200196851641254725394254491071001452715921266219012022769761912369091338282072508151255234102602132201301841326711098430187250106011623122113621917312024613759140142216109781518111745911821522440351806621727617023123910590375155248931132067721625014821117723549199202843323594180217198176895088186529120613775811811725212895602444819811118416176171781561118741892511111481229344184703874483825115227861059182126117214101168107106197114418720121109240751361651808922261151942271801635328135751906765861492551341574781249126250233194868423612718236715945511151151276026892172361181088122519262991382291237422322922162181293172532122171754654101691252331732212915326691891731551431531923895128101166144170524208141601231021818023314924621114717516111166217146262001131053216413325419019425132818019219017065801112041562039212922110819524724990925461639910717933141190167680250234124174528820916724222918715911511415522321411102072045723220514738158200167199146239154235126232189147143126782451902354124020920719210931552282213113190110207191662453980214125210235212249602351902322111010315221613417422321915961253185159595191123762557620912318717510767686824499107141165240210188542521171027124214362182261318712414715661997610226160241101104905623873118843145624272148172632115941275117039141194415522041217776111902482018119513597250164131451482242311581234671731219172143921099176124126232191121118961651474136991710416021315768890112352501071101951138722113497831831451696615018996167292092482211081323716024388172727416420442419921817546192336315514228915013016210131101673789791171517690150542242461551101991942297710423872978975823513132022421443243136225149532401228318204111112518128201104272202422964107952333818111821920457173200922554252677120322127589418715687571806171614024213423839209186136121426200108225182183908431731891011986413015823820413411590115164175130166672901282072311092435214124181176116911222062511032441561171438238253162209852250162199144175246203170488322421510210090112551936169193234216218236125172231851758123164164591792251552225518913335171202204189175244882422211111026216310214219720424587125531035218714119318878255216123248247159163206204236752470203204587424795320615819464343416215913015021019010710225242119235145761011441444673813186261593127220121402442011238715611360166139981941649562352207511325383471631162288816316621357187786712420111418011813208924613491206195132137227971162244611418650150144493237161223613623478317218213486220120231253184246165151457417417216911722321721124120263956419834351944673210136161212162281729522422435167203202171643680371392221345314714621010811865109701682052218718724718263225211207190681234013716619824170107602490230676767248354157130314152102156231148132110225112411922125548224510664141124159248118782723454217367207189177215218100631821141832149572364318217219618482175946162117103172531441531941732219812211160204671895961254983136239431925083216212176379524317128131581801371545417123420522539492182691491224520576451422201771535719925357142129501156225110717666551799713413410125133345710210622421325759164208267010258915512323824494235124110186215922342352432212219474423624325487266024522170132301175024312184189133164102238231206115062144641512394312020649179255686868631508450133223200119155185237731807025125412311585233631022541051519718122011191428715819722010331707777372221591812819922111414323675194120157186241613618213496149041421932122119161291557615310052213211154861746424623923892128165114225861194991552542411755524024391239511821571792361391431121932542513225183193101177343419321023083106113216141247972161641314417721880180236992162272371782447413772681262548012399192066325182441057216016419613773163134163177371301981851391132052052311952292342501191912131061972042172432412403514322720318533216174249392206770201156194339532251779122818657113195182852081676518173432496173129204214802341711181988917814112420523524210916339171269615316918121222313016613412491301671901061601161022301881056416223132951611911752089617615241240247151134391221386534582262332491211311332542201312686104561461432171620144125956119924914219710880154143190159502512518424817316563819218623523594220247631152291032232501151572041321252184241164132021001684351247115461922101762042361313212211204136136136126104720711119715962111134211618019837281461051717570942714857113213541811982408795127129191291234024621610310314876221935182223932220272200148196217835569756719108178968415019024813883176241622710145192102179193911562531262135719274167146631681891647945212192431852541107221892501013723714012521415547226134191431351261811545616210191561616354157138182249111615425392182302051932011915883150946518214982472521431522623815611723616915222114619417616032776156136151952501621911058146359241893181139250250102362288818183250722215713113371221106108191208200376420810569177203138931352491132242488215366180246991281811344983179712291716110116622151234173417911186531925824113313311414093255146235108321811501803215517522725019010240157153416410719190249250112617248353151251591612214010225014235141217253210160204108801632041325313112123824522250211241189222183122143245231179528824212516614823891792471911531767310510410754208212115150239243152111611865111522322821453192441711902546034343425049181701818475190159127213246917918219251171046511211416919871111551317619012624512118824820861152254179189164315502471324118661651409086191612467212424724291176615681831992402194378197702779132621172082291182515718423570146241132108233135521801462172429112672442312421852095612419946205224521921141969049239243251202336325519314615395339614319523515982111379980818913897163713456116136444511139692171642461252131123702538739253210949897821775015915243191171195121191621719510618712631921801205717217851851492291982411265911562238182766811614735213714737101431582038291771805421447167148161202111254123512091541361214261987664164531002425347502713224518310213015325323517319210416696219912051401242422132462337917328179772132502101592255170488322431168254156179238204220391022382272382046179102107220229991661912261141313625019196136253140235185200183127742471751670203204117210396625412118397501001582141382361712516111017916763119204220207218411896134249106641702542122835343490935024212211173819125516414237929251241722461322115544198110163178223205223123254105196631202227111185492221242331278823840198126103954167203141112221502201262291171522512461712458126561261822391182459110202441691312229616118183831141581087238611775717953175148668161230229177252104275021118916811625151311911579632514421495356100247237808222813521416217818518817822961512392071418327129242114104159871866113216122377120233252317457323187132837515169481261948015612121820714124043167174174931126244371822211021941311261531462452181553122624616222181190217145086184244172221851082482171321823649581041401917314124961739720421216648914051211281741911818520420120123111762042078181141190221102517510798244219624518279612099619276248215155254188215170501157887691271077222915223387169191247158210230117102154172461831029779204220235170191331121271042321711599718918311519124594215151141552139112810138172291041686016131121631072002132232181566868681314713163127209961244710395172253200375117118830217103561088627180324671175191285914045131392321491619613019724322226174636102391682011842241524733217214422038924123661127192136114754901271884861052021586322738245309623312413177180134867112514717792381491442105262031502131631631892919316232138138139224118575324121014922816512341163462722062472201931282041142653175242211011512061581432512391842112161344618523218722281181942542161041637350150211411972412201271591971341557665911238835489207821614820522519418512712529225189796716210814876419211424980228180981631015206219172821662004162181123172531362171941211902301315710210717124416717611116680223911289911812786135921793517920428103795212421120819923624992851318922423913721411818512503312815316612618922139249152233179169183192198441736514817595535315222514213485263810580165778453164264418915714321312115769848239231311712236171781111150180199112243711388187816261158250732261341320315624820554217239114147364206579623921261982251541716559522153271251183122235157143240246512079622612939961751571831926119118918731190557418865882362220213228151768442145644418655020145494114074721497339145731981002161139410569156190392191172499311212222011212060176187921981182102011902558195125242246711202259514320223017217812649224692132233393013123423411415315524520971593214617619222711816217017020118187295321321705610211718424125016795227143169141224223108238918617620110114711413421197181009318977132022499313521450121762143210258568726961051791651241809207109381022525316965983821623317319210710222121316519111501349901117163181928412720622996247212995239291897010219568931821672352171512132514017223807513110061167249174253962132402092612725018520816612824922211516012259311022501452504923923312922020718921717819843127868620116171720914311170938871278015187371312141207016625224818020120244164982860622511251072171945248231571352272162117814449721449951661721644692331166218159212167255251241637021422614324725429239424011361973216281184171179255962158712814914071145136752401641752522171471931061791942124419329240194341611501348718622724111268664113944209183207100127311262401752401852924589834194237972812219694114924321512522620121548108881651102210110169114220118841481516415980168772331120232951201252231079713102143113772241478081192091711831701942162101082437516218113172531361532301311716712715411415391611221138204172187186244551928225317349548812970127121641921755319618089160153230995718511720450199613522489157115061511021581081673316021424089213154118792026111811163238177129234237124172206115571631851592515020812314013613610416052812212278433024917454517124991312493610095302191158220461831401175221125111021892551014632420259125961691324859010820416450248223272399622616424519023943742511901084100191219119126297103701203724321024293741552823010014611388236782523470222203230177195227247195177162230857834186542461931532114699189211253253199312381931991591271315515623219166311312142461414025612201521672221262318344152592719214912071521501117620220313822513222031822188248198251120108204657221378150241531352850202220867627221928114774969111345137214100121762141690235195762431932131971085166513321221818961531691572102211438921687253452401194620810788991821508912715518154917612218779242891571612033717822321812447159129110191515125313213150222246215204185212261591021544415134254222207249104208168225431551818172091433314778227134152354816349138214882181042382458311420187251187167853523220512671842392202332161168437198174558619801671152292231439011751076410519183183220114471261132509176217172176725084928341165748972361801021482054667431652114119619497361959252352028176116121217182210621773673130352246781855172183889585472694245383722393109157203431781571352541125562252244107120361645922916415927129156207151612228442133219239250431982121509924816817717815910535192114562361823457818183431991081931311272553922222023844164134110321071731217492861408581132132142132231591031625321317253132217230131171139217392061539161122113820417218718624455192234111237171156254661171170635254158582551271191058215188873967249245118931231783868810263131102634312525232253165521482092181262720061173205228180687190115221219249881572151053225011563155165231233218126124246137136136616262156196213239451951561821322284215392222243147138167501202301281772911081986293118224462482292417192185342242093271315620630121228105148227176205221557321614813218318021610422216777745181041976733914586214202207100210136711941361192442531431901538492947372981339611737188101242221662461695113175524212269218619111821520212877211641316018024998110122381571931572152221302392302047110114515713011756211251701612058178254240135712402417195227228211141935515912713273271101382421141731291016710110152201900661734512022621715124122612618319423424520386215601141061611221848169196129159175873822319879431162531331725319679213124481991082409838132234173192107384423310922131831271063824516411545167213205108129191175017563779123116618651191401216431162374774175776290235166637730205118218222159230182189233207253165971491348426882331038412711917541105230922471182212041722519912638205222207571221262041561991938291371361361222439399855125220136182881016110022520189226182406018524716163163114451894127248625623124467144148167211717412916516120916731127129143632522871291171361771881006424014915126772491807315974197163178611674955083196194297220122319716988118254157219210188177124209144114184252126259073671711004461251221611451981161621251008910954361992168723617513488869161522081862462102352082142200167391281797859214168531662441691351192212441271041219911321016913596238236185168172174198136175311492221216916913019722514537129879525531254187231245104919910010820522917889224148991871261873324301162022016253153172531281539623119916012525022810710617942115015319423364661411931021823878111180801732311781232081765815257167249158140216159641657418211791312192024911515910432993852237204236103229169370201791151802491741581951241991752251456652491426131179978911115916323820413280186223615881022382451901942071931022301262062092613326238153185312445116923116063161381717145251151551955625517322920821636154421729887741381298710985133134312570721162151455922721683126110463422396197194811242472131191202311894711220420972522585382513319174254209782401394722688165191139191181818217361961142011201211313157582332181404813111660217121111237144935913023930941171262181601341002502222212533150486169681821816112446192210102143183253250106204912141329753211521262528170561651812021581222302144153551195207168199493929409111504494142771667613024698686941025299212253122225952072274712322212155217158231111529311068187282554716714897171218160763390179481929032521521252252441977645551193689552391242051916181061238135124224569166133225124971991432119615341240155932204667202204177153131052042461891509938112209160201108103250102195591892301312112815291562041242211520410879247189167020310883198254941671245374123187392052202077419517192115881795381272346391136136104237243233178149224565189209841751610512811722915014921616820247578426183281785178582258164101186205101135211229646018197255222250822320590128351521923262210548229175401357721741486801886105402013968144787312010018166155225169238115036802506382819166100931392131418722311151199372192042542212218942305518215321118914712013170116131218124811624116315086174916162241240215103931288060141226146181561172344919819053525222718510395198158123237130135301211022713414319219815578196432076113923711822221671061351922372431932301829923015122322518520488124481228721725021865671721809213117954461952063520412515936422012176214071606163111125019996166128183170115015319418221494202871910811749211137183134121823920822060291881071731671938602509816619222391882081572173264233572324116201209962322001672320080223250186871862111091549155204410857102592343120410216124962390992382071871314733115204286711121520310814720425492395121923628641171022301262142431631591739216010224619080253571434341621906025410951301572770562614717719416413319225370711225222811420112850184252176221113222209251353597148201914572198240220243111738022919494187110432116838187328167215351618774194172184204119203226189613367704540131471802461502142287416517825385117150138165144145233741511172492218868520221615117151761809543125143281733316533150610470205432171581402002889214106195737115814098159116717143112252233393525234647171246215921588204422031882412181072453118222212525161236123224622404217620163782182911822025124692188185209241182462016215506978431421502396212314046150491625333172210318223020317022160205212928124919416385131762042122482327901611145881322411418019876231113131131224219211910216621480174153651523731163243104512511611991103819220215771516512815316613210373176146472282112351642479295219201491152394117979205519124317719124799622491063315418994202768816412211176212947446893311811658412717414715324321891131791292222071022552885261261732389615313613621494251212538919087191182561321501681325750941681169524730211441911192031018120236214235485021313617722770992061301332482361715724869113720538143151164711552301972241469711921810084242109462321482391525249110407170186343421192118217901829162179820175131167765041235200120446237119752172211420215867524021220311987315318225176121722121854116120910080246131742102423054917911418242126231157116144213818840146253158126246233136181741217121421324599177494126233771201894644951822873017831221114462288818062178715912713515521872011911421416610845761762441362029286286217481231412371851087084104249621565113361213223386022115310526167122438823015291725010176204221842511921693243222114411921182531391751871241611342172407011241185128207761411652542819964121801922231552544124913029511291602101261404614980176471021428310523728511811512042389112715435154149471922102245395772002851247190234431925019424322117510710059125253571002461882462234153185206189221207102621432022041131617172453635175255155209136215221821634121424711919866177101149112311049681341281012231251331272552461082812119619318422915813517621554155982361522258298148687114220683362251492034119543891081187211436115511361992261361801321457410580211311831847266432011902281711132431786153158501944414321412617818710110916018018222222179613219710648122110564165531771145212203213194178201223215222351521581203231441961321522113623418249142111117225236223943497888203230441921519520519822023910219242135182195174187992001447492111241761232811256931689590135107631056819554393341239183544314916107178124156012717917023616538429612176101561532301311892121625020376771117389115953111921706882021081041191461321052512451716610523216452391242195083123196761318123812914115348206204123175138854124024719810816160250107014815325191105136165225105462823676671812193620491792951129161217488715735219211801083211618915814219976205180124231852213924723619121238217156190182167159351891432051569513127244582451801731272001591312720724310313123443209214925118563199209253179766868100134254221251198162118521753322514926251162241502913520214410060146230252241132195113196126592262452152226634251991642411633749146153146108123155107824715255129733165792232551220315121416316516513229229371461051018081811401661665420415424513269822201675848175161291451201822171132924112742208668225128215237681771245511423149961797322717720119819815417222238182491744723915914516203322511612531173716381917782232451927419698120235217872412221551753315874163351051991311925314241214544491176882424439156147221881187410314422420410260612091303718112932492182511042182271061922381481731732531389386764411720363268720324812259812885192204214862082999518116220450192101682221067116819381765224820901937665833532374771111735718615824633244146487581567919025349191042442268153573117117917618842525422224439823223718822815218919911552200210144367110723229235223411671759636167631991821701221872392044132122945319222118513548781751852221152492501062351721750751531731331491632157235825317325116121520023657237431002129991149251891957817953824315719343416220623824918811754713716045154144177531352212601782394020047104127821112202471231088022548216011520725313461852285236872121181145729241852221202520220236371842502405120415318119281711807394125125111941091177019189246722145142102120921413210194561586660153541941731361244710413810219127100100562142267123581331444851415338145181727843252941831744141174169642452081061482481892161101471372457110202521653750239135115013480205139151227171207191196914763143121117331482224911319777871944665851246914768937919548171205141872194522722441565723231632545090166253101903319510016911713162651512923515158241171205171972112713016804919242961021017874313015810611424415115319416123443112491921624486112239204204118613161122254122118814815314221912359381791297295161224170481157725142240247166636512813478125531204215105249964911514220511612062881221871032501923423325317133811422141602362352331261894919214152169251821702421331401311136315525311585195241124253184171717105657425118812211711324173189417310522925413213273255222103562361181871401243622511617711915919616795126135167159253312462171097514025931115143251125195376579197144742481311188243218123825061208192104217146197248122198121161326688208241451151451968025322237396867432495167221138152123914621732203105183333433889111576781006501681911218677201175140243431311982441045251431991422422181828123208302161161871732242441863612014651872091671362120231131248228147151401091043188231941201420270136724321058124243213183104904815219239179552206291752287710220793138191255231371241872432178211515118121445122158138935476159841321577022203248122597128851605224848243148182124519025450211164751111818953355219602458611223920610883194851451752241103816820915438125245171100381448893291861570129191551021310213873199122175235621742061121641759061157229235127106482452465720824397382445275175111190128482232316413246126117167971561341401251332411311136323511310414174132512422092181576161131451361364071251188122101225154213108176512011452401275987160522241514991553497156191205420415822314109261041456499226196161401837037201787220097149484214113418071821121160193984237251201391072082221804245205109104101978023611720211464121208456345112561571762171009315388905326213213101152552352719619499167508812722720549251219471713970367320132149767496215125019113838146810556404312315711818070182161121311411122322071515024724720312616616179342367615118925324243241229220229240187237112592362463976128127254105855542269515611291572472171729414370141172197103159126137103942552816312611329309310849250198908714918717356126189181086312421391248161354688520276232161617124996142217208721115461213102252040751115421810820120425424415122150207145801631838069233251159355221124539025010103114204212944927178244199962024812316323119910816016123118717515411018645221207124231104322501159411331928210213083515222421416613412211025198381928221815686183101230154247135222311861561253153210217962212071021821479923024377686823516611922182225238257710776135237611451401016711188130221702120315249018322948126241505413348172196143198112121471073736146229236541122817101461842233120208109677424515153109252145645240721922281132184812122777499719410436361242104873107110217109549177108178110630143271749601013513520318710892301235063251393320138321577822513312763143135254250952811822414281835516211024950917750562262403177209118911169311951251702251091512536179222143537723324712348106216721201883015612022523324819915725513523711822126223206248141111244923692192361309759301341352313917151229215117218177251177189823752982402021536813112918612950911876967129190106442441512171301151112058751192202492195515189102112031021421977697891534148107205182193110178100230125205306779204222474295836613177116912491061115316521557957221793161488202108136221271732516865179134130249238125360152917614824681167157230152141172102532121444022323181132302531082462072118914324420721719325292181720915423914710129184250131122196822525248628911510022816525330931791091734918810020934236519717210066222483645823412829177205102147171471171426817796254124204942128151221101351991316419211103381372262263238175639621591992161422141382349220414820519323311620280618523013854175231975385198118186208133109861804790130959412011221244518320813571592503525412424315710417391140685014115724721619155239178131172321711161715016525112721721723991219943922421191201234413313911118411432522271136823120664113893712612624411201241612119721923911123176194248941614923573891227420721818412591439613669133131186121013025279209124481038515417154912524221220123162587125130217170201541258216213224779524910163907221521869249244167224111381482820018523313915818319342240247198204113229104801454780210224702393351771881221637719124492246552204516407523318520890136249621432212335321324078143223204612081592515671632352506917519125121415394391736915423924315299230882442162052202072502311722171661322491948734349018312421316194111223173678859109901114043118226134237165763313719717911922314275207189846139211352381863710642211256220245512618444411337191342101878181183135818416453179502402511887220323980401409632010942216192016722414912875251167130213687208157981171622258821693698209561502145533452191212351732472411961471117414216553186281842332461394812614720118424921017116107107204688123741281812111417621611620393105243199107127117572221518123297161165451422946188307115711244782171077423515022687231291431191701827112519768188176324187467222311520112124573801212492221248323414941686361688572111731021069410419311148155152301521097021683161871118126622441977619318955901282131252111672071534556107131545128234251154454015523318493112232532333119910840166181615212024121221906171192223271322441842049215131718186144153227211207129941071791611012385810764105102251614118007523324921320714822224324919422617186221206773820522036112515020520812521110716447173233101134238227641751471539923320725310810212357253105138746868107175150168252320010713916731662291491454110719074143131192375084130392725424918720311320511111164153221137243207249251902502529118824924616724822915371323212983791406410651912071031329024112024612365601456442153146823920822021214171434869175825093165237217262167392042307171481262481201641479725223816451101591051968210515612125215856226244233504616121212115116318918173664527542201087523612723697223111171179180188231212319313421414210848211373649229204171811852431292482321589124120935247224798725322347271342401225974226181118922031933895221141243247251105678123723522324754162213129122173177180240169253832291024525091111995725011654173165214223665021221373522823328401181902141221571172167619180531572466516523116112388168199175152248412391179439343490219105205163233474414819124352888912313880651678521729724075401162471571911999323941044882311571253610620221842322151199921216818236187251525615715719110788224245186168104104512424722112420151480938538211252240858632809014022924622518142892244117113222123713462538025118490254229391361673733129172220201151239127136711018613205169362462161066792119251229242862212114311012141661896292151151282132222101341074718910111551941142215024332236370159112574211862161792221211111951213011019125284922426918225291662034616410145234137931941991371651742366316742087224483981286968686868682121671211012012757628830892352507311490452482111741958022617722722123951963120660913751541122181697971951371632412021713122413739222192166723914293118156134192208145189313719711042371711402051751602015864168618712203203566722323518725221411391626675221621262061191981761782001271052515825122215512024112731227155119222703610519394911111321391746115309518224915422911271152301751613911622813176261505522613443174197146150822611418925221412926319102058310024984102057925525227231891311972117813110919423018611389139122227178894919019613710718316915011198161391265812176136136136136136136250112207231245120113658209228218878319938572101591182513450917623020615413391786161111912519785810426246221101274417510719621215222471938120215612483912219104170462128183118132172157145151121225250229882542211220117486134322371454823423120513511720040601122431381252454516610918394624922151761732322409310517724522614720765381571282151055521723167311296844381151879048115461741892508621213318240592280194119614218528137412512341341802211632284811810082181262335622921116217177243803114222316076347116215963443434343434162941885219113151242211302141041141734418410797240150291349684145112371848932411793491072307612169421972291033013572521381394625519230182181971912532471921058794151111171732286218616612115384102031031241301041689319886210142225916697124254159135241229103312252482337199171931831475793371992522262328349188501366850133245541581386779592223312018875454412517022512119915713411123534707238165110439817736186325121988315150292332231268315015818110614313231794119919613819031202681801864819234343434343423465107361342119593138246681221732056124417617421916241471701389714519623115495158134552392555910619884225170179143674215719816555220135186133141240250156401733013093156185929123222012934418174741006618097571501262511654419011412110962248238123111982381031593522018428215931156221011011788318687934524823675921232211732494174824416720313313923918451449676139180169881211815318212020612415624213943802281822011771012241449974164210112237114162611825514910812323717169247992094323118089112195182852493146109218732449998128696868686868212141625222914618315096894013724090216116487111131183108931388122969701282452261631432242471031591421771957417722330599924416890124246249119184243222127195237114226250199317016216820861551921337691761876117618522017814919069235151332202201001881351952371951991111881426423512421284221939586138225197131876245102254399522418623511119524020212848619222615040254248240125178788223017424422816379224158255251183121101301712522122213210518411957242451879536718824694203311319121729815113247238587621041411801361266012176136136136136136136186200224207159552242291332910479172221197376118623934493610218825358238602458164157302818225178245512646622581741842343018011813211322922725519416445182148324227142293721921262175146225166611510316010124911444107881361731351513388831092447110136821211882552521711202242552541349722912699241249141972202431836310121595332102141421157818741412372940118219140224743783251807815442032442551472472027816312924357442161701981391791678420188223228821611631691712921050253490531217613613613613613613658249180461401076316871521455010224107516119092128165150205157133271415313418420314320516711013829167761481924013113531252472305245199240131662242311519577917684618391541441292131451232421602048878420273681947271218209190104623495188619121514150917210814155204205178579324020103223183791782097111187239512624649130941677614401713314059238189211746418263166184132108183254246119248106214225313415125110015314420923645331531492052376920314917520062166101101731701282031422273821991831456525235894426197312066052193111687413514319623224555144169683199013913613613613613610413310050137115959513824923792059921412212214015731722291123022621525110843193801719884150224160324614816918692616114281901575731451099756156781241791883023515169134140962041581353222418022517118513914425223677205188168422457510449781304615110080263711710117721722543431491612521746024798132219218162405610012152873119424923252222754153140250249112412321593119210317922351771621851032089971913621918820881761564618094242450158222323507917516621597197952462411517719918621025123420429541981213930142162161678119110449230387417725111339194116237611621102496171717171717137148148140206127125492211936168917132172237228144187488117112302252101891831931449855981122271401471261342066919892161651911161223414514649251832181615111516625310018522078120252301841259415333511231611150592241511124191171170552331001019158227342172721735135131323781153107622110610742211418824924625124057210152215208975223841850751992854431817616125319471144128620320261212294183169241224188205421011722351331901122392917725518215596252228911412510911412788208218208130111346523649253100891301682552496171717171717137872318022619025205104141167187211992159490242362896213479013675247218263765154423832206562306435168234137911304215510910114719228131661881652176218112216318111218810110112546147192388972501132319918974392361813244111141200841211271354831695242130941329894411013832189989513960141322267399121171188874010167243175159615618170209160411178911325118097701599942171432272341631519324614710717722570272022531491893054151298691881504717419914425378651762129220559162206249617171717172095817562156192479489132685835471531761422081949623101719711354192178251216844411942441952472334919211418793189424522020204899241672113367612112372493618817821823750150223226121111121952292151614223214649160177351341644875754916922817816157201511771722061150776617889163182129107250136412222912218023418024922412518713551587615278165240215434770811042518221712643100244162172962475814414510724623827239991551151746611321316153742126312176136136136136136104157119207103131201229415517132172752441125978817375232252266118315080401311782421141561122443370224212931742461492062359413917018304337171746612157167181175172178126941782374722312071192532331124124126251912232253222553937237722511541223010419661717610813736962172498052110124248086431151044824928862521092072251141918824122831111652537175971591251195110621611710211721816106105195551792397167111111281951491335137250131122171717171717321122290212134187103180160371865008987104971761151281491711291497636161722913795254124223469781103696912618824819491104768981227117982302421227625591883166110079113208887995269216537100202113185156240858420080126137112241432212552462253248616822641562372144618117518091612010716153173903717221012615315611813949022196181052042212258824818257122511124624810411210512824524094352402331071752242111352391941581871085139195351151261042222365772140154138109145892198136250143122171717171717318750105761279717234347313765214619024236289653461561359523618645124182201308567112238113725331482103952218181217159132672432302041931512232061952352391241387719815019323441352032376971712723618342912023212940170421471811862101152817217013220522514416162881738824223744220118243618894191281811656244106122031216021615193871311726842317551911471716142251396521420811431102471516116818222243781842325551596018458232931132521221975696124413060239202361851975688157941532506722892501511922014151255250442021341763828131234434343434344272137881277752216211024911414885156520513614514615710445056180321162037111712011511320010413418246210163206588122110191254223235184234148227971411338094236199113713013214622610802013768225241184101200130183941271320725411161702527884221852254717068501451092182340169194228245199981892055452198591797511216518617544223616281124252202912481999920796238242702122257161381011591181521637742451462331471553180146213140101182011266242421512214457237143168175284797885422416219337217332541889925222254203189401102501427108483022187222311942101819972532422291202521734724023573115110737231391040249617171717178165137751125323516324724120414123741617811981403013411110347194200611421962282371181969610513919611322215575177442205328891511002281172278637249181441531315239622414025423917013920921622014221824202462211173922725210723216142682242451001551351892462427512025015717517723320098916912816217826180544612985195342013913016567240243831425415415126792244146240202230116202721510025419417519119717211123122424663606135615175207465118621019017322812742201181631539636145501421631854138111236195250163107145176123240245150199194581021044222128204165193102151140234143219148224213235126133171011101402551761661021171751372452202117935561017928112218471001401049624961717171717816524920533123226192147207641172035582981777217414523775105214130229810818675422210523891068510111220617113917716061112524222418623616049126285118522557215269622112223812172100226401131235111180171422299591326697196199148201031071062532332542551601811015760146114748250158422451871409713921313822624217562341641951874882181131191601786686208165186105353163972381246025323623524823911239334011123817875742137135205985233762032402041012915284237199209135290143199137243159250182066720667962126815375171195184347126611658872391914514218671312061615053393533150223248455512254252192223113230952541112781182169422096448192343434343416213024222453873251251125108176209134249091133116903510411887265120206162618454152134411872363883623818719881741201192558184414296019814315975128378916621232547315612321010510410510868101192139171011262818023186112120138144145235208212210132111103461957122320469771775621519318214485226115193102181321547297220132245177217214155972321361611810410516149129175180201189177190396587582619712317518814120763159129183621551332301662214825124423313450191235843154204100151145240113819382714041197462191091337323514313518318041032202494022613593132231764917816173148317160184104211114921152405223660117125761525678166174100177218961771871610610919895952542815163248136763726566886868686868848014624156126181207246112692749117211771762132141551031951382122215183195621101151081842031588272182202148254737423211322613911208248989591049315011176244137126951882506020662246411618052276520980183273722926581012082820519223517634224178322021597111381891415316720549192495831321126013769779720121157178156134615127165229532161132472378184931411702347468371801061051061981512391271301032542511210255198171168922929016777195174222133361122122407410136113751801978051441361891182166211246220194922115044107196621831901362251992541015815422517836131821481243247156821381731344112227145123962039674889223120652192202882924872174513811013718914359731661813283443434343434425611775222271461891836913359131115126121150488105153154165253235124253205183168115215226208115461484125324323216711240223165105521998611011593150111765017696241871592251526124668115991471561159668101807414117814424021645701043724915913289105212623711259108104149240741511578019196242214136441531253496675610148211672119520212419821199346782181484511114259787135921311501984042422211851832338513513210249917384162451411917727911105617917722108318221842142197102836751118191249521230115173172213681552216218271141927955174581081197629851292055515934115186138167172184251225103112216249191198702192373283136614212217171717172130411662201212542171522492341911761955483177245118219200196441392134697752612712524097140220249482812224624950213369194142126118190226233188129201186226144177128189126185177637146732365111360261504513320398698513324699435184210075243163229175501782402089813548486204111137991041452112321477420134104117516837191253461871711811619614613620057472412182251152172082214524074241143108119197106189146213209462353821150342261734956278156122248110152188241134168305321691208423010053107128117235139241152022164176661662089613920314124020412916314025122523461118193383520317721317415520315617422611222424625131197772071901375158235761481534434343434344288191222111718483177663230176312012821114610822024724083152561099591774648217225322920370605318329177922666401159124119230353732202725610419316127781942368911522511521681861461251549217744163519919816618425247475281681481616961154665014970208995515814168180132169181178522281681461011543720482301671311018721381642101781442142108218615076234145108194168237165203228881472228127208182216126143221224246185229253100161785219258242198127321122021091761518620320261081816227254184139413511423817522210510310860942172931262496692111186025523366156114253205507018010624961717171717811931542532491671842472041631122462331997312821357198200138709912022814525596253253143195943915610171205388312315076167113234751391764415623618136172235426186220179219112914944198571902252486724124771158682082376810514519956871011787675912161246492371102020312018522312918624656156181222117323211433723314811067671718850131218343923459180548670182103135752441318313860141802005074317018920018623530943722818925222962156114248190216102151109145731033176238901549011221010914334126228181240214121514152216182168114225226451352006132522542482534822023819411818711141115186170239136226173165192105151943899681711341221717171717214445172921882394615219025511886125502466713922451952113120719719724761416721935831222462121722222024785111147953164442011592402329419536252203628124020321515819920724621676516719115323042118161220107195178230568218254577592243419314811823222228146482021077156158501541111868147208391946108137334616712112418511179269920882231208347521922102247422221018418274127235120142461711543618882142171931801771482187941205038781531406856442276111181117961512236113117016347100318817120119316318956106114149921711211061102111761724619822911084211518610610415227165133731562431554310114010421348192343434343416213024624110717522421971239198180291672022161589372242482511919419313712725227252197197502291356691731251811610918180104173179073195163591181701971619183134128683414210974252182621780105119194371298579115021411713936821762012492153812924263441784910974216207365785710625254442397225241147621054832175168206232133246151213222111651795218842241881411021381911872411021214029137142186250149418715521922182331192071622302321124961733839764619722216313914473381122511721148126244112108177249153172230142814253215922042482392535070180106249617171717178165107173175195205199311322111435764198186138197226112582924824722779226192273168205136815024513594154215138251102523314810024116759139188587889068601171911252411931714716390244155219134138822321837148105319714024181181621329973212755616525310223370188246236831027351052177415015810915310120812118616821910212920324119532751021616215654664893791554554183374812468371741852342201516965381577016894217262362281585624716619196225652151769225106321837462171882831072522001961631841051831734812119513721612425120510011087205161814251231108252241158591779317395166161328344343434343442120552812724142222125518817386252031785860136116180267721751902337918422914914380848137115186138388224819717113981237326133111234742423422041186205138075221116238892482196124716019822514649247925317958871582511281328512615113755886246391661671822161011491151566588130194206253228235188109164244119111116591412091802091678619210165221178870172631811922111714192236236123399911368919110016815242381832211207222220243265613514115195215218011117839246169510878164981792189217381521862151662169823420153219857591714127244591081162541324820320621317621617820584137613012217171717172118811122212629238217111193237206642907719981762189120821221213872552533411012224161216281415321721310711901132551512051041421177484168139147215119621848639246183140123918825346782231219112113251100108577152864041113161180726645153214177516193206109183108593415622561091781123090123755911611110613698243205215199215595381292122023410734186517218993134122103179219113253239255142197952076422111194681982461951231306781551396212522424185222255244154139107246221227237191592141551881902042371701654536121418321622413015511224666915290237147169683195013913613613613613610222146121115209242210131402372201451871971388852138259512614124763159131223622431827625216111949513211115422750681892171661981315155421342111531317614620141181708194159113202216152171251420728187420113620814215243149442531898185250817734201140491918519417625311815213823323111712317016417226110108709024617347269661242127143163233205799613119751717122415551239642022222431778025510843247202515521532452152279523128353321482281162162385023113558162412824624720749244140235481772001342231099517115114510464249617171717178119311183183225187135110707712101577548241120217519124146661652271132342455520214817422181197112250272452003625962453715320622413224513811220019611472142418716412717626134217139234144150188729916411491802024374176361487010422534164180221563688233120266217113110143671502021781212361142062115022342193149138173597415625163166150382421821248372391532412116111789356615352252302316631186591061351519919821911141912337022217516317417475141172158104128245240253255196156215621921265431621371491272424124118242157501152296221019215618094012314117164123221509250109427859253231168172441495722172192220221382271441356219520017917513521914619821918497253101752043623463688686868686884240982254815818525498108179225112164372482002090235185232231321111941505623414620310174875512718428111471335161292478015924418086184173561241721522743131724615413317997022518939254141207219671521481382477541515218198216212452082222121362303775811911123390224465402219514020762132221237655226135531541322031075519449196210722171151132926588491087621181810618514717140315510123236181591981081904936213146611761208383241563445455021255139213138143223250164722324756246148043146210219935120123227173144572248821287781343745191056446157821324513415122514515517519371192231391391746175621474317415517621615718941982295821620842121465247191139209231223147822491236196245219141454482827616212698128696868686868579114514322112045166141114731981619989250201945111502262231752521555622476311623834344243206121125411501328390233135250193423976254135936246302331951714720210056219145186174611711325018869182522011720220717610419310813215526140192201341718822819111682214155172352157821413451102195184141198961911891671611645687148128178171951016758183103241806894125247127149991135811321314523197957102918138181165147136202219471441231941182021531810229467517321922821023422914431105121375228014681185102118164109141841088636172250121146235151742619145150121742162161432321781331202322209911220465123962122001615017551752461271391323722524246189245191241192132232283072981642231422351821756919216911725013625071238811897513713613613613613610219139156112813156135036165991611811248216920230204154133103951251587622436324813975100782141571592122251651339791881641287831665198114183211357740193174351305021414922415322417621710824821514187225205231158687122182971508184237104933421532462156424420519212612621019388127195245225180166100932171281765861168156489055389961139182181731901814916125217246234662252921085551381081181807512816558501052047336240197851433493944383214110759525239138219627015711713048611413685899193174101237152902261961462291411361821831621962391971522096714413718316116335129134142362362422172428585203261281959713120723519876223881088323519551471881381974725519213570225204227157142171491651489299185150574545109562282556219420024311070702381718712411614315884130131199175252156181531970139136136136136136214851222122291317525519227199126734145685015310962142091719835156313814723925423707822272166017710026103191182241391654878131671595855125980776407123138965417151311231227158203461947120763151074013143368512997302122156914162178130197118108189195842365010927474202361672348612149241138241351871081831878099163132322171071581432142101872301642239682601319018711452331492476518713288115991131241172531271444016914841107391582242431439522619232467077188148188229603203224619218723912413214620233245016482942291142505124214614986112582817621923787117819314821922765107107595815415035181419723819458762171163514815122225219239230163184561281623463106135841114190336515090182100491419023113761862501112003637228148201126167211523757186825319701391361361361361362148994794249245116140255986130141531761302051021971592542411234181042212542261875058821017420572320352243197299321034193139252132372101341402033919514814634227198101781565618524229781351124114254451767411224521316731227145187239199251127189312712225311220318591889865981211249571491581282985672031132321187992444023719176591182391851923924220967971492081645529245245114145244422291672391151992491831621701905163284652166178531761141164395181181224179223631438416066198214462182392161012712124119324979823912524613222323913320522912921123912920511067172173297523456940281352111051471051413219517163153159197106151235966911511527138139219818514620345471892305488228243868686361298672207859589021837807822521911123120024634216811302022023318117822208218220132131174127816311012681217213276145235236182226226205171491902124599682304919242641912552533149107214108252342191531031581341132271982028025512524220110312022412971011681191232361772724621810711925234191246246149212223321502125515920713523517418782134101391531071764223112710948115230442201131999350212187177991992241721797815133908315711721412124217911123525010312913613612692791582475117263121146121171811881741791912433714219024426762181241122024312132545971664015321514951747623010761778490242144122362012428181982057451522492261471367397189105893134238113241721015317820618610784208129107182292183426177120124616775166216123070921212122252482281571580361612231931933213421822112050214134101177243663193200916524499856118219117265225224024960178166144971719919711239371951702242402521121862101661312181321767117861185144502082133117518872995206193166304722625185214501731872339109130101167222346761205931151414611422424214125324821941251971471415519814415474120189110216929412013912517868872215522123219976206164140882297165416744239176195238114202361572141122721210122863249412153321139163117891891329710511613266562521547802431872311901517674928623655421286738150201241451211217610144134391436124647252342192411993113123321114314516125451243302191101872451281951655522312427151921141331224510985222991175824320424324023316715920180239126255251155177201382174223423534136524313327271111881451329255203161731691822191102324921718311725317964686863174631591248166109189177818023876591151272511577996311791142191226582825021292196211253572731991622161022381912251585575150460153561881896211492127217712081586548232671211214121082120191250149111209501021119639237128810917819874153246388813010150322794139121237222521101551012912222928201739033149136227152312552111632503119635491401151211761852153617586121613733831121642316370140148127162231711018391788524692229111761381064322414612722423873762541296017920320815892946164194925234234254632543123019024221144741194872411848159204462118527210240201301833718120101187291762226749919121422918718711220212212201212443021698228104140221100130765252693724014925010110437155156631012471843617211420110588245243144148168315924251391982411871552391972151672542922123238236203189224176224225189702005718320224145571217610144153966417374248511252504115257179239267012619131207622513125234635111531862482261169220310711798128149159153251148121415414312217172114616616575241226181103971794127202888790232126242249183176104214921081192372531842272291581219607235161153214561981217165113738015041341402913714617195861348043126252271692012612723385176109187159424115562108618720423276112471782209074159582481391412021762131663282189720910906723722512325414019912712325162109331203614015242193213401876716216044932504319622521811220126118248622081262025811518793701157910148811420558112141481952923226174228132155155371642022142242337810710165226217190154581552512052822012321393562108334111149193711458741081182171952362451077238171481252486613017213323255171692182451011061182221547625142187111199114120298660112200174216962421201401536078230722579217224249195365517834147202935733231651079113422496016522924311620585183992069755161193813619179188142714291175412314220212638137204961288516024622011512711611613210016811931315218012122394123293267249221127255159481441666510225024523216315161166166901341011317225224961732724961717813318525517095163172994154921113621082721191851561361991970223612054510924261551401512232523126919721612313520581818519034142176192227113731612216878101901785056367623314520513495311193411863234562205222823172253321929059373720315290229198101832039617759101741506913017114363254241831561242815419015831832211341611185921424312122518188171441151711291446712623518523814456107217230235225232253182255190147253281672111199138144196234112235198101104371276991883769502446716113461002101781476148244173129213173104171332051373992134109674110842251155749124198711115483181722001241412151461535223617823924310610796185244312081261622141161222625417710758211492141223126137119174187122192361791317620732322471262292161451141141861341359320011413123323443111195188105167991212131345015016553252381491862401551731352002414557121761021219723951421832221227113425054144128233771472052511482461091152169772031441211023502373123312972381501611941950436368823566886868844026151461931811232391291794662141826892745022212213531621901742585851658172168185243202171111162184184288354153361397233939462191711941227156193321886965561891251322054431102502291012161132476111211720520714411472208210141791022316112611614952321241443206218321361696775100108557111209142142527119020322112620523914015475106162211133201185166128432008970491721810421716178101240744813375206615201842552441117364661725025234741391729713176228119795219274203611451454817051171488103921183923044170199473718817075391763622199204120126515567150200210189176738018396191195145220247921256715317823021816221814195172239135207236440281941418319922616413920766741741352141301152491251762001812083913262442118981817528412151983820321610112125328233127144115164195253117221851832252432451466199618720121674122223253991751732183817315524962116810315812130215931191631224510932121118121522212810315912565134242277209738216801353012214444119186122130688249153185206318512716817648192343416266113201782722622883142701012371644155572310541198104817010721711646254106774315519971431328678159207232209210717105338915120575542461946325413717562253217523712335822119510198871784112111125881124837681841011993316824056140268457175191242441745625056148719840146240175331576614113288302546181217802371781951663966437221062176170372481047737241220163114222011926106170431012347424924416719913722622518163561859024342212216403931672311041281651221067012023932551931251112071921846859182136893712418034381552493818133751423771143100121501422502033068112236100259111529511931431571072218248311420250184118219145216243224678194861562531242001852157821919116771592532416112510161852381316515929165191245511642158039717149621823680251205234203351272504325493190366271181317617211859254178832113818912517579148195017164459318676130169163101168111323377518317121955235205559514615923022112725513120024713267852001339468824949192905548192343416266240159591101941302315919373191588974482213215415436204722032819222511619323324727133971551953847135202068741934423418825424451120243249872411932441913323713202148181795015719397227139112244196987318861564757183209805917415212628621222341912422624674168101129931662317588383465150691261512022493039971362100171701944318720413620211712142241952322096717720712625134452258314294141914139743161396118712614220510567217168225217559209126148194269624566183165792082352012239525401832532535784851509819622052162142377082182191722172134846865718228136919115418813138207255615018196173169789163128237106253208142442133167293411651315511157856666191478217207138213102693415868581506616416313975739173173297223353147115819090132829189244583719433124243205108132991131402685139331951356615923510421320715444171181221529017621722918620217616788214147223106238199159227871157517222160235247741672051309019131911595484198136242991288519214263254202041545391134122167253711056382102105112165186127244183112106382522412511251202462173910016848153571342541581511811331721173344343425016918152522241663511919915319156301972131491813610022411257972471001123113485402101042371588434972528694119620725511014158248231831201131798322521910427100585355912710420811619425019721612310841361956524321069814814822523359175199245239513112815621982571021594161269135180159401713791211772271841942916776312371189861135112118134124792224816856131247378187234210115126208145251247793420861678712617410014564163982367221713410816414784601106020911032150206911322531751251618113193227243982192291315217698127191869228167691301521499022111811692246103164171392002161542331341737481227177982491407980591211960123235111240205107255197190729418312411822212725511916936116146240174168200151352114165862424110488507613922011213178215723141752244717468362870562053662018442133247223125312012462438108603051622516846151126381252161081711692459105344210742225414114914420446912011261667818524549212311181891641324115317882169219134251118271106036128403168852042361472525219221032203121797719595925424899481252504950100142153223964106142253152249622919901072219623024318817412722136136104245122233174155177236195231132001371992031521760238162224156614179140226143190132134861778024169888419817811612619521058220119235312406811211521230125115637215010323748582321928521914129199110149499619318812110425024675252230212191771801612123557221112738821180731443597133134875730153150191471211952204623623424365114167239105215962391983412063181942011673113481163134202212149188941831714616823811501582511709163100168171120401001886194421871912134121564991472021381818074104531891692511892319019412127319222150247149221541305775341421982236113824414491141758910023415423111159151195462152341753931138173513416016116155367424811025272248741391451383610116914923662714616113212245204238117200791856218122165981141902189120921821814222617850601242431312401311516117811840221275276754157132105123108143210218331765917923523312160241194235177236164191194146942492221222061071888692191221801481218622291681899712885192204442342261394719294123237466724924516725517115625413216171991591271012176242511151732511152398097981286968686316568501372314757179123818053138202753722408218562169378566011089194156688424289573712913325420621129180207362921410211029141237248250171111141167261501512322747872211431191196322671426020388103771671351122381485010855523212113019712012524623818712023424221124020418722397152213129161141678143394611199229156116141751145219611420150695443522171182219176129246513819516914052551061091972368466174143318777219285923718818520489201235245192230204214194202100821761161222021639413924220967161205645921124074953161199249201392232252421351597134149134932462151791723025120324123362552036120934972201141852381141032002057142113192091242411311781788519821444374611238216182122546416119291784311821999712015115120028192383381247240742291117622836162115159886332215771511131862811478452401481501021552223020018822720718421319112492182061742391632472191412198498124185791981362501980171192237185231254232232232251152356124722013151921141611222916720571514693386725324320451255249254201461254921925585127106141245101230204891681741745418111125349881862389215198177254882444114629292912124724916712176862151179514717317411524283588122314691182172223798925349212022311231179325185149251511801701702343963716818023012224025223315260170181475421788664372102012021018664011981541362491582010718041961422461551642031071731723719661301423217141631811811351190152137178178341643718810410910569117772174171203224145804480281322461522432112556246222234823417019916522811115145174153228180967416511103108841425015921124879519124754110622528044106150239125189214920349106223802091167413016821111172271762188034193851691882441401162009826102109239247201122105252185169251311422218113798155351411891822161613531186167188167444012421887153195376761211229747112129195221117153168921791001679011425321117124119612795195125239125139164132162158513911210080238311538731139163662209153225241543692209617773126214241171633449122115259117910891227193412352491614802352383511919914591101421701719514473166229243144253236216925422717916325386105147641351241822211497220124110715217115915313215617968529820415121619216812114916333149126166441141611734315499106482322422499611975642332081871631711072392524322221723898886093191175104128531812021312031821721504916219049192421122395124572221222352925234157221252162027111572111671594267253119237181191149130236545021255512515911823624918523815033243180481712191252432051831416623720415317910123415105339024711522714155921651302396434413117180134155238167134641572331172106410318723718215087254115249992012371793023921021524228191124201208125237105159117189213299624523118623575155166246231186235491529922451051592532171107819024316311615925124336209213125781862514924461150552231241995630189386120920714325421716123916319916422731652051791032052342491882292441162051172232441791622512518312419059951232212552381592152861711861517125023196190251871757124739201234249121236177199123188472232362313651361368471115511106310615156115209472241509673671691644142185220122511816312120982184362881652401722532483622711316319115716818826279014414420816316517430177882221351969376924225319813124217818216100121135911461016152462061973423718310521719422918424317525519816295621101882391436524764671491932261788911224824834286019068664115316036482482381311191132462251351932222161309461431792233236804212910879879323321163181121497511222915021711389216331911950791551261095460220218362351671442407224820363192203547112215618424324613914122513213213725416234962236178862392149197707224157691549137156140201801262213911838158131061141805124187159126131271221236150214183160168177913525118850770128854111502861026922616879196101127211248122135253815725355501721152142825114124222714481462051391400432402552361575128100871531822231142372381062151137919822646681373291632192661122291123621292241321972388236199971457714436111322414515321619670512382102111102292501912391731742332341581783073102146251100170235234185712382372041212305923186121241242879220674968112015959188785661148761181872412206824824711135203514313422978132237158671472287582715984146178432011731481252501022157249605818815824114587121124252756319617911951521591031151096060291839353133071225115777611415222352416721057171361762121294219717318325413750225135921546017512322118171178410113197211756216899551457421118234160253226231919716723211017477141172265212715119039203100515024216911882718318212862670153592551336412114918820911937401752021792424611694185141745824413534176841592078718787182295615312354135361957755125150751651698414759425224215119123011525210317477142131332028020111738114180415020224319963254217407918522325133184226138203217206111571126378134227237249214245159175231331591141091592551241716111118824116351978514839615315215228421525424979861246559211719510716120118837147282361281072541701612226244251219311218515723223727661151156123614722092111111111701601651711816715514341951481438211432411032226211821621153346122251241222255254114455254138135140233471131106135215117110921629743515272357822714886214442522284997181322448615282229192552061056812619614716210286461278551902262156201230681392211294047189825323223713033126361791561486476246138311752131342508111353145206318718960181434771131451041057167192135161231541762022105699110436224817423520921822213411634101392212016072822072108201111255325224511792269950275195198318822271571079956318112024320563192142213235208224246226852686742467122724091451989322416120812146285123498175183101742392201571571921592451934249572462492341531811529423513113982238231255114379814582222522385533301381951941182442132132401531761797242832220122098226233722411662472527541572421101809212053215198211224182226198831541771804959180212196164241661925819881199691952542028173391841462321689820415351116325524914318584156743518824259134165208424626146120401572191241161734712724924325221576321542995029921492516731250216332292431862351742291813839701424188717021920116213617223912624727188311022715724916333176158239118175100941847423825513740202711014169757551143249451517435145452491241841171621141242315922344913924914814724342474484138238299332531265992244121892371092555016950297920718323816123124312120016792219231158111201432531271709230771291019898114561242381012322422319124830118190320848647255781142233123864442667117181151792302056619521211824611019841481246750145481901391631572216867151182322377820230158206631483291882316115968215199239228190163219185175114882401951511811922271143378161148160188146282102392141991231467211415580209150239131436983216411111559167205131215206111482021452071861991502273879514187251248255131212120412398154234261101406916173220125441151551957815319723511419113624024491961155322011016520312922824016661177715221020941552051342386115717624411635961792271322332138811224273120253854716318811481154216401825223914913541513613813366501411169216520516213618623421470461418116919217882200411096996165217314913513334234198111252101432232531694541891711358611052468096578917718116252131972142451413820533126471701116821523662441902261972788919618919962571292291641921222442032391992421272221352471242483519880641352079183215719716518620715095201888233100146245201231226848176171199525121414317624220563132189186142911988379129245150249192601251242281571372016876129117281121951323949134139148662092122934684213714242691851211764213724024225112514851191121695218322024211730119551511421224922616518422372241068205592222412221952341364314622816615525415775207151359118317020315925525271216191191139247220145218813515518313740175229218189210721697416228243811351902201258120111525166212736222936134208179326582914611314687711462011381852016022310619919524918912156207247145110123221191952542422318895179185861581141091591231902451236482178281661925049495728118174891412192222498612424019111116210317826178825118223722830160166166264615913521034195181491801581381791911017923011721417919910414611216319511017722823715502071872341342073211319555225106108231134163131133159111156215140251819446141145191132172161604915299254441416416671798358138200250223239124296325422023112169203152321571119277276169222344117222259541961631347217122513717237131240232492194111954242211229114195781371011051086975831324724090172203206851079779371771121182746631056341454817412122715514112422899115751621122721177701822014619723311735208492542399249254997313023314819510668120411512441154467621542192339318325222076018161119822291221782277713815718871601632311201521574243179462669140251711672441461682432178915167941402542152231361001952037198163143618415795163192154181601921621482182402246188255151952261941392075115871897720877121419715517139817296297323825422359241952471751312271919171385794442301841001383155158210196371914722615222355616014672141172247469136401381608411614834651321646849523616621215534313724021022053952492022318484156911421121674519910058238149118112213461832135753734227721607214699529461462126150164142107411142922074120332191891469713222923825512436174366220233178842954710015722840394913215852211922916822811921716116222312914974172227225249214179851372015444711782372451241912532372291271522848515013713720122524218155189211112020510110415721461352151391163449582557824923876461466822617098210411882375919119823816523913318312565528121148243832693248236572377281242291762106860242183599617117319517224614212182796919810269108112192161389256814916547146102295618962216185791698824917432151746711620516324821487191137206141591131051175325212122666232120205105532232376627514421314619321488281071634967124577047162185174581914887148295923646846913017618018216316519899929512245153417710715114517575796311592502402192412372552501271202237222101681032291156496176996291529615618173126707151198136135195482226656122157984025074818823384225202169124162442071912221125113440182206176123209701292173364915274991502021962514119854240507918887321476352359913419510268156237783820827141192117217107971892469313621476101126210762492161298963321762818821572472371931432232541061882471633112814922917918617311212212015928411291651344620938267021818311163622501119519523014213310412025518318510912418722816811789241235431661131371051541522019320881991234196842106540213385789223277134138544021651659974189237802911811722075817822820514174804194207126246163162245148163146141741347221122235145203235451831483161225684122318513834752022012111711243178847116187875014017618249154163146104687322782195795232582018178988201158114223510468947768181711482002071131726322371759223080618534251202181189158239214214102230181244179147195208838383813520325493591721625116820921746133331192482091191859924381103913699492541001671582925255125235123232622438371779618510413612612221784248288617414117238235193247191244121841192046816212339108203723821431452161882122238215167431531961586829413921291102315424822158165212012437919618210912324122822179160198233160134177226161104164724325049149829934234122061161852081931259022250126144255184556611322718290144961511131036014262230997785062202159132221205163178121105151848995209215518319530281617217922683239121294656255441082211763011724511716816911122814522717758371561203473197821487810572106532061581984599196707014413668184842815551155159662427411623721613112716572153971171611291781661952275224262167922498254320725068282719549202188121821971792427822962791781481999771022554243177532868251251621412441051756416617014223205292411941622512321551032131621851821349441195103102591262494711169168115477021646151189230184457255845211918019519354204240283081871391176524955412481242369419198323020523074976620154221591182252459524953236871902324523192205173691765724018775918053250985191476615222355616114681458229164114295415717114117169401732142142261115914818414619242135206875813315217296812314115982229203167181781174190142617023213207209226237111127155424347612073910616311422352491061199221371506614813980201389218523517421918584158741621775692292811117146163156196167467105216719131841911472513816722371454545208155975691347868145129138104219717725212447918621714421428106123132052142553184191229134155231402471518162146182159121661925049495792238253249151132541372459298223217126112103911113752160100168148100521542371961391881101451008612011224111254250111961252191831452412141122351453720520318912711345461571722421824154191233199255254651162212501275614522021467499152101651503420265732132361761139882913782182164209104119641917511116012027100162622219121810665140233235115119104877148375220941046243237227215136101781631641772435915915720148613416272492379446151787815817030471751321472170165202105212123207514324910112922111019947190249918054214177602044209246661048891143518431456622118086216712198310920293023082113142004323017988132207143191246296025020054180591561723272188914865220172141249201572022292272258246371461204622129157219195172223751246216319013320719317344199190104127917825451204992552521792082521747924347139108711822071113742145536176221392203162185172190121249920123202158514151387921157718293248167138127143168107107129135231168206893764210333120138113762231421572161841183511823723819814917518722131411322058158232728491822012171112503623417425536216795198173133169113217240154575318410254235209196164816619258781681646792170227861743514623588188238117111661692061625896234136771641462321069120253226236323082973619258592471151695242167582551916371161743486244417117711422856148141745813213874821999116830216981105116130208171251175187238539258178842106224922820216214217719620516114869168115937896294323794238222231818919736113622291585581106248224145168191818516916820328229228833710141151134132140196765711619118923811717557232247152202163136180114191311514810610311317262223154122532923940631679417415813818118921818914612414917116774218190161703520119928579153251255140137137137201161114235451591934395118212348862162179207137204311085140928414948186632501616314720663861662522763624423923919832551152313429358141682402161975534492471943199317315054562401851155812145149671302254715925301262522059522615724513719692213168751623113510586202361092111249615423910636153522109241711274210968147360612716564160132572058319716351816614624083222212218237168183891691979668112157234243301848614210021813063141516043145224621115810414411624915219924171242178232168113977920716124251118178162222745144127255249871521901331234319523817727231386611321218054194225113337011316518378221959899109482551061998214718824724025567551252242351368178205119185225100612511531813813817126139134514223620875862511880184220632819672581371214243197208885142301417224669147416818518915024722320688281871211111175118924812123971682378411692254581641533935177231259172252844312625523815717564671153516620515813810517910280246828824225210162205220314713619941133185206186142141334211024330202222952491042211985421321936211974621513118711810819521477219112221251222198102647150992088652021901792232505720424921279971051562021731331779145184124170312399321820053191471941522235561611818176221481392302001437242551481702161619211423191171821386915684826211721821281462142332078173902341401501386215276718392190212161842441473436202161206164581497126181191238131114848222201136459118211417360197238201281491808518560229168361738223746658278130149186135115722121681427481742308682142358939249207127334214524202754912985731161551681647614925215817165218892817120711937237854663574273171926185210246249406173851491153414611519101155137137137201100249213773119310717458213025446521346230119994035210148191942162043113860161253646026714230675019720657592113535976866176834495641417024859188191127814231656824320180181559725015689248221151271316347124511821179502105914636210251242331727044105174226218242512146213924793120491742422482081041831157522201431506188861442311588819413616610618221922416684171221392241262028173113179320491552261744116121817120914716011673821021051103921167142194346422520823018099739422877142206681024761351771431051741651881781842532001409443311371351061232622529599777196161201210632452461071122012292324258188801332164017636162446019723324532195252115324776128219172861062015041135174147463417616217217131124236911201082156244114186141725115243236101210179933016378167828024117861874123630167192217203178402342361161431512101432152286223235432022512001991229519412293251391921051799848158192941261828525117627110184461262922017915016223013283402215317862207320423018457176114220125203127325317623239412149291471412071523519353182952321978617215923620596252400203194631981134215119089391982474226145819417225551255229179152247133223352374529931178216327955616714175383813349521411313058731382024071161127225462154920714310881821721162319129148662930229771214413358931975818523401502722286234252137148155243751683589168163374223722486218153843994181691467811016920015667652371622464171165101811221061757420282789641157991652212137022968139206211249165402471881372521031103419982157136743670169252220821611161702441901752442174453399616510584250762322225718207183158836195165801261382132456842105251822458473219231168525820919619619622880252332391999525424351120253117232619521136176201531471388363164411191891162392375215059183239983915782974813619316132172148191261912312921810641062485914325323618618612212018423622462751331822291191392367871262451731592261581692396100209213220481901791271849257221143119471052022021418117286116212520682236881911117516917070154219681461591907610932011318841417121113138571577522113186150161154219118115159134202184521716817210335331013111501861251981778115819598114151651421422279015427174169169193201992482422453721070244214174100262472502532408685193202529892215249259435135149182081581383612211768325088189942522282301199721821241148748110411037139221197351399997123491471765817317212318247372036814072437417111317962048315421521562133115613613324720210963252573019110753235513632078711615434169106121205709443194178461641881699825324315541791581591661202337619849196602052251892141932511292022121361868210091155205129901872131525575115102229224233134922201471421631871892918713516315224918624719557125309276392292459920094376779112001459624301597105167152213517411248723875227203248812022925523083288208224133211578623143255240351089111823174122253181921634414819298217891139220311464962965244162133239125249251248209202221152115203951441772346163802011502121872402292432181851009882248396297122011219512320270190202342201482351679236188150234180104562171961211282444723587942491064621712919318723818613175716314155581101654038206748111022217682181612101417416213381411942703715773814295135663714524985010116952205822235881082477413417781249438162501691081654015013420621124916512019023516421223913128133126239228184226138872432186546211035010112224621721017165571386913913899241249150443398039837966191155175187238771722552261099517015842105123814213191919147356921517415724815915188225512422867168984818481711762714713839141239534386962491251522621823522313221818270202324337136100136131125116118210245153412220322515413515122523725512161229250151791191252281867620220212719117229173254241157249199255126719011325391241218640462968146252108137197176131159418724814576677148020277146117160136422251503626617123678196176157159147939467218401064065133672531951898966767520991243221110156226241161102212256915223893252127725123523830175593543116286234424140378620214487241188571769213717681631822061891081511216615718620223127223531128117213774415017810111549119524878941831654721196126691381212251063170137131145228178251252248228199190140129174782441219849163193133208238822017215209981836569150128210188962131882389274164132094011823219022612711338632192291921468118599229712322029816219220239197205651015662461161671915222924616220622719472138130144230112851084137105832091071696519619425010015821117243265715820514713719710613516712110261552358121162513789167812261771267020380136872042402251862530248252859220311425524725519593095134551912355817424111610444315914325218522814213419282202211356324110922014715813057239248365014150179842113187207134255190176141981531015249411284117614235421372361522162258271661489221092371922313286110190173137174203150149142218181651344185242198182822922898148139252401491677459184165162233816218240215153201651642071618017430114761664416218217831704471171221203613916521818914660211916162179218510624896372151912291502017118628781578434491381818316517816915220843703720710316950851141901642511731832541822261031622102311878819042105251137191123431612202439574138852102461652381031919191473520564215126252225223222136247124252701641464136999110101199151292542391242412351842461861074811719392110251431572985021693148535427546324952941271033958174123475078312472825206111243224163167181821121001841501971021812241115195128225103542247617513591401682481214218193643491786914185405792148281451482468258112616857229164216113114187341392102201903450130861381422332021903176198411711729226672337711317817292246219172561352102061971241216721012052201961504215158178184961171231679166971361708122614151331315206100414158912291179912025361842342341122502491672272301072071031951401492072342442421031132361105952185120190132155136162172120731631891391618451552211421124413379223244856017711811903126121401324919117310174462183519414848221193122204888811811521724819812284196904720320719429160205238192169190194226165148192103920256120153317731758182237241184493915320952317811819816113722521120480154247922128714311612041312914883541361225070228878511620020021112620219818116795129166183126261532091239634118942432192312141632222271321551991397239250591862392482594247174553425792402102041521923710411442011841525225121517724185159135187169157216311818966216291425220719720519813927676101931031347914120111365371571931371941601569242521677918514221219614124185206177402454724422913215340525217828229343421297861991851614911611213911768758173897522923580168164441923915574402154922165210173164461582391181756864149106247114207142152248252228115442147337181631521924211993817216215116314612246204515416314610316284592316314624615551103222352299622583731581427021923203143168164237752531105549494957266024018715922513215442621891140142184134171382010115020522910039631951819112147205153141238411351491786531137148117432152241862558914315323918615318916624223186130147178228167151781332231052292182479223251551242371542152277714114119822823673126158165188234140199225224181834413222252232162120406814625115722016772172173241152337310258922408113812751162402201373724011422376202196925371842222251169833235112112351171332231411913950148424623881148851326312122440188820110018206100121171818511259292329425128602452452482381992231295723720510814717712721281212144621917758408115654230205272431145640662038522919523893251240209143127131551822396712367211816952220204122321467024510430841392114017620295313916213520220216889730171122175162810722671681852471353532521214815720169932619420022928172141397216612181162125187192017417219123344163157210209107207782695127511039792149861115172111125214413112023811563691244225523819711845681712071421071031201122412046174241249224612411952354619810523115814014720757272662168401811241162232319414011216472177462552372432551521978188201508395197704245176281721512474717019519721117018410298114481661925820640552010498167173156924220205811741963177998711013616280231881572286684114126161206113572029164178148162881351761462061004117811407458222162881901413374134112771402201711327413417150188819998187139741342342259191146251166841649137231632231178213719640381764214515616534128138812011125981172174431692312312512492142392201141098416814220324166181189137137137201209100217247191136179207891326852613892031671441641788126228511772271586721914114601331712511901149555126241203159992542051912261172106022624080782321357241249115218120994991481210121119920658294518724797182211101200167103344911639226134184202199677385102918942226513922112989785513414694018672185215212451713826154239118491892361508797624125184143718316582120154344378121149230245108205219828871631048971463420026143162542241351352331687521718910118749252239214239127221091819414011611724323249198162176210148891483717424150195781219710127762615019322917513013124921617897391262502511912251112476214016911511659244147180952376571878086150832324239120932162977966521423210224439146120502016610821662429416816616236100291901519878671011177373071401112238596629198113214175134351662092301129838243169137239396729115156187130206188181166251952552501591121827622790972327411324316918188220262241891091931251591236325262551022061541291344145198182124749442212553251187819327966250220194227411631161421581551301769313459187240245312211386371554923513425564134146177209410205831546024814321115418510298114482225417820122212938199514925211127254481478215734131454154478516922597193789185787818533382292066315420235184852101936114814291378111616288190141337423424710414916514819217036957113982245911371324036126531321722121129349812547822813317214798178167146602118712742121142146915813816315717598231150162146103662018625542412072091628012668371215814812250494949579286622440230585822516916965502622915024210412014858225201120281181672431607818318668138230138134662421718331119631781095252231701202311591411051112521281422481135135922191114610566149207199181282217218623114124239131111954331741421230111351312137120101432001462281671382421682067233148241230188122202520141165151143981575222017614513017120162150150142146196210682391271691707066115212419019229851421126051672151391421222231291702092151581391113197434619455622401222442392161971411051101652361121201521585153841303420373121101231214241402439523685130149662001916865120361325925424642141749314116718323713412510419220079223802433150101158203130166817919520410615216023496461972138060137582151521802172514127115967323089249145805248693316514782602422912010160198246205241956243143218681215320458215724923210321920411359161552686138422117453425221211212136251991517512231901751841582580141022716716250225197292405710988125215109112238931392511230816021712974021018849211204163332141176212686107941544420872111472382502276316127111221318115116318213724519324622619320135186872421422071931091231599314153235182224155219932401581255721083225061388849325123686156211312217921424849492514341176142514213712220169147292739621163841031869222886781468521097435276491597458737113992573824266119112756917277150742342478020282732020417742176741491832201153510691314927174432021318358222351641466021591831462312321654017610612231491482311049710441919147227145852472523122543814516448721981911212222017618793220147718757227682159199169881402421321991131592143719211817322310813617123820630180207156138611958625216723528218307156851126219121242225115701471131631791417599140467248244251672242267212205543921437342166913721014976347216932169164182081912832396611410478172469145133255541156543798882361644834138224210928724924812125292151211725531173255571536612716061131871352264219158193173227137368224056108104106172101212301011402441414024672311582522452316233238675016218364122141186206972432022852111441501992011278011918461721991632481981112546517723119414223115816644178332202191331291299723620821925425025016176167811551781611453711617623836176106411432341092221624917312119113222821110210167238841881943519879452393121324743893923724622624712920213179209816217263161202473721121620318216110166161109576010813111816731320622610523035249261011895449151818672204251261912963572391571041852289030481901412438990239192771671772441887130187245871124814122518114397231182131681091561345615991752071312338321914416419623723323371482022524656207206181032212321893187558001872092125821213181245184240226179161041075415816913710921518711555982527222231214110130165174259521623869205197111144492272222261802512362482091658318452626119199710172227140206105821557498578118149234761512351362295815722923087172295856149116146142221972421181805818414968233136677318724149212239161941759221819916319218229342937313633242169100184921774016728199981578414616798231234119149126103149226150911414210217113219520121517724812487821581636916125213674242842369219191914716320524611710724124018311019810115115777731019917519820217325216211618154160218919513135211137205922973118198831371322093721415511117786026130195165183177217225169174226302022513817222322011815254113229879716512588220810122420310353968111524658623624023988249362542411702152261210165193846433533202192382261101891311272432822611962302381488417602018111813816103715187117151321951341761061011531622022218159143206154227242128254131823718715816313524222979172478421525226742107342418415424220214213413402151988321123412813401741249855206572511002522341911165207141891531441142051062311789108782744121209955752252176324414323420219818841218199788918599227102252241254392411838521922514313348179154194141229226129216194191123108301381131372292352371295380139831341341411862083624754214221441513253108148588668463917022921320154154926320413116910814018354148236190165381281331881104122676224411821593417752175216581651975238202171282182301001252337714466819762202371732518963154251140201322001182412401262464915762149961247922924312620220616725524378164253213220821567915792131835823421662217529920722213117525520325124016915925539235213978417721873672213134224543513522014510257504162671882312311911998203230778824522874101744222422392502371097756225220512321231172062419525124799223206781721211182946190234292255191912245825110164271661632024511027126114233845621654383819495214113721855712211467252202117168213187711882416523021920213713711429193821952011584210735890202351241494315140118110414213790181351461184942169223671859439255114326581138220125821367424211718040872221142428776140222839316878138145192031655622235164146602159183146231402349588914211819013815791138114226631991961237184821581636917717886146167982311541521521522810913418624622743239186302391252371971121879322011448138817756405460204312115797992321912364541671551072277319619248253143127131591742552510854206161210228177226103151797134205111431622258822318923018921781639115801713581244166822205115829241242504014236166369617222038137213238112162218102675110112871771515022720911287722016620122237961167814455382240531772521164572102253113112341425421454194197253133134137420440186202711538323110129781601661971187219138104401371092351222402131519030151158185241612223336227733065120492051891645449230472271861448817721917910523413121581981941142168870167196171512472451419621321446252254238717799235782277714833214225252214618012315760147233481897119245342810115141235208814125442204972211984110413238182159776517915123155219841189615315917349202264643242457110350142151249252184166166134107165731644512050601302051881436827321417713310919376771869137418217415451061185920976113213748110563481871232218123929238525412424130163222138161551925423020210511214115018325520125111322379191141192215913613310315919345227209144219289222234115071209140146911543751091812342093949123193601202126163453717636192132100881681677123118117226209715919217117418726318411135301075813182121103242136194168116179171237248207243592243021117383824915222355616422024062335711722714131432181614655471494023133162973922958561991071672531332382241701101432014921223920942203241421764213716420123471491362019111041311051164421473371214211811037207814615411517828237124215918320149601916220824393731211422219720290731581381571079898981141802523416619212223115524020610746128223231229150491721423981485718961221104105105688583318330140582521546741311315518623716719119515922324014735421766211390197811124511341139228218197944712392452556613798195246100259344922710912819811031091273412915760701941621459822768183112131485253146481632107131652051701044179881261731397238136911624114333672301842201988018028242122218302261829551237923690333617510625230254324524825020616711015413924234671851481981825361168169246225189559213587157587848620137542024318314563229666756133234195238114331577435198243452041193415766176183312476218661272231842618912340824024812225113440801088212401702211301531091104981184611514196318817915598431551744214137148631387820320923816424899153123121173381551499112030632351624913212193172559283311010796190223852196424919713101216149762262061291933209871476515185228156162175212214245118395287215602221671230337154151443163436617602501502473511624627152128824020418545461242282445446171662552161512221411352399212914325523210211015202117383661651973182372397417423199101190282010767675228111721121276321950137205107182226217167872271701074767120112161751911030205215188135914014937319316521310719555462326420513273254777613241176142674223336931131972291842351741871858415211424382137114814022917433741383204814221043711611422320916414614110371011557237243361373589222745816124950166824241754112911744182123622294110126217202772529473361625622235164146251167152196168228571702281192096836230212418614266145781621461242920224393238119102142661098817415811514518120739229242361381811891371371372012093860601403119023524518422614651801031361404422187111181672115718724616299206122162922713553771966619314447177226148241432542271592482381859513225381333842472542478711619215315123275202143223247118156124223501632112541205613222514815010163521181982272321678488722093512271662082416240154651292110042119151467191837515684219287281132104152153206172111211256924522817414622671138192205180110231246160195142056785820512310116325215421888532091011486924341217411582302071531382151575219103157186423864212201381049825104582406320315819511591871621231156312299738841129702261712244517143831601444220251690229231813791228140195233175227182031961151582181801131181510986921619061184208871311610113880214231178254132131149202636249672541161001302355752171901432156119523519721794131912041578515220517724214242621461161489617049387205175111201432052132131982462101766616157208261091181566424939526387381951231282322410524892351142241892551371001957617421702332552392294511218789553618824149124227229215225223127115116062311838040178174211188207244102204742016167134156164212146200262182231971821782242251276013223823819212120516511249239631852371266011623079616910922515313311324018895926221320883854952141137437292218284210233232172176147881389111125315914619520693715720166291901637337121425214511957421371581718411884743710116936821103414914837952427616414612461223237158793750345516785185178841221751487571602231171145618163146572422302041531972271262041652021691641096817718617016415843109179124202132192219715823974242841726071139195105123191919147231131312522192511771642131292175158216225102199134146193932031421242390106106170224112103696941140971326089111101179185156198606363255234247241215183254151085134209772210211175159229197245119114033120571301252211842392294719914822532158142684815276819414039205195217151631282301891621796414866746619575971442301191712131422314077864915726214129104161808243122113202331125583527917922111012439185631676367225018523712610117116013491141342174812652536403717823379150112567411322668521581642241769674160158185178961031683119322232236547416150207227113291686194197115522331844021210915710679822021135920322524221432211122531219251411531841471992072342334923434135196208761351319517292634387135137482151591396918514814987170163285870210106169219141371484815472189201713481441204130761157118824461164246144180226374118724411872592192161389021413523822225212413622222167391224020918415679794412931461252510823924844203938862241821849818615239942101965317310324015312110918423822322213719710315714042393120519119402161562021731061382032014035253253176502532318610919616614121924024287931088172452351822261711232271361592476510112871311404214143471066916315920716613720147612911715682465816420197588013340552238641422516640422332442113916456908421015314815214716015512111127251123176121115233250443712514133742381496713723856220178281392376214511416224815091621111481772201126729871102481601686810622231171145618163822091481912914982201189832342472072091221903725237254751612511652085181731531483122923524922611221822219619619622824922439159248551562102306891753521583713117519014234432191454613434702122152148067271331281952352255411032177104206324820487112255245255152210145195165193109197247461581149623816128127231255207253952502618204235581381318012930891322682098121715611032481881762431231015612392291491155277157186582454341732862714320796170211655716216827254224226314322115972661066723323391103107249971014380771323512843513636211152218907919384228128673287223191531082151161386113342171746721722911322414122422529617094451082031971614824791145962211841091181802191731689822123716272171981572481521325419312615011324723227324313515102131472109166129165137239472242231553928501427112120556235841091652001741731481392172830140134120103121977115154515320710623075215447013239217834013152193124142912711910424432232546519679189158107133169117892411957516624247784217199255253238151202302431591961032542404510011612780188291014619926861681031111049555236622325024624719214674971951342375624522083224162803023630192792391208107951231150174421585730862390618612424923622528518518510298503083962916784218494419610034114223380231632101616514914816521018014220149116112197100134258550244832823317822212210723322510957142708913811721469376716143116937615011482652071462028823425415714048622223522811236134100142164785738511515023039831541939614410719741857971227249174228247152401501757420647118238209226112218222196196196228249962296323965207131183972142041051761782272361731691331671227670771965021820116637225105720711323531801841566711596253215199631332192071892524513979231150673920520312411273454615830224218241549123221923951301152472381933516132376151641408046244171541809382194206132138643229137237714109121419899722415971146231223635298204145164401751413814412817130681291977914714723514811820341190201051647319753447867213186146917278391451051041621642251931211042064359555829118212214861152031771991298172811181672362161881751597710612910925562441141848167113211611522412421231541951026847245164502401781086618107211011512346841105206176289084180911462233914114189187216955219132201212115104235227172231202195615924520915217779159285712185205124117562824102155751702411141011051812191133437862461422001621852052541461779625119112731153182571888825421317810420321520717067513714521922919823039150225231311232324611029194187222119452301575631213117851765125323620918839891511221181381942535420296161401743623941109272161793114191231901544217410275165225159255188235972521934931193211952077510023532135174887923325115321126491712221995319147241152223556165210142973338211411711001142349884218177811351809241393413220125482174014114943871631651651531078952927310522918412929231668421819385521962071262461631382428573196146184229150202162117421652105410810917318844146871468822914422041381761421971181597257161164521171432351849876705828139117114184181631464078229163210508550448114813884592620718312631235247114571386122358871051489850245148227133108123191919147163205967955126248150203241134235951391003413723415410656170124198188878610718219560659225703915414613022131205211227144701831411611161101242317117724329631281651012218328587523415718424917286230197202181492382266390236121247132416184218241428215216414961562493596119192207602377619620920010112116823311039781661082241621292306321820425381101571331992221042431639774162324719424341516711135601972356960109193163145325481212216153190211421459919324220082502341542241152184017611487241952371141623811114217799922924641031304558701901921142362391962172381724983965317962272378611617646531881095110116513423973011013810122362152147872182381012690856111716518184130226106136226235602229912991091546719947118196177772992206392022352322051352091481341391021297166501049812513551729791106189181161561431991591942421857051581821731376824124425210521625319015919566498613625213118124241180021060991041042422319124122113619719136238881123219187202718926224167109221114819311225530240230192148153111761162011241841258576133187881672520220788441111851344201721371459723811821082212053508212851631019071832402541181021073620225018523724612722623923124156127185169231150917622225523522038839615320196208819949149116121149217225582291348121985081396615717282145466615719091110249601512023518534201821388211416521014174168369518322024211715023911046149102178245864117512322115517612712723151745113529219114243178590228117014269372371742061775820114980137172431511671372820225315979411458213699173781487988418893642121142421211741331002051091832531507513315320424317315185220116211191115169561496219229158239741342518682795742169175822432232911021915515215215228109134251250240223239126346632473618018355651918491401022894774010922517892122191772191099218251842162172141766531381363225514218011325386236221186954187316330108617412418320965631165024821716529168245561856013422223224622917979198172174976030142803410016771671601851441527767150801116047149194169303112310720410197137211202157121116831802371002542822025522424082204418320621522821923720891542289320991831574676272171543923530101391522071411113218371491981631721117120510592351936918514735193125602929109141768341311234012719586798747214364025184552212511131741672021521437420910213921623024388311386412315419417563145194322359411196289712511181184106139135160150240153789913622921522217961187748132961813712363233542273118279182253244121136130198202118241712054911617213411810616896144199525915613624321810846942199815619519713814519682153154120127518922275192157131131216243166247331242012192123819917322720911310355187140401722152052463521621914147622091338020213024421421311262245392482502473556521361285199728219121914135211318721110782051931931718440207170171178210841941761751271442071003923619061561132141815617612092521632361821089329128258824720426252191129102116159118292151992318134245195752352401781055392514925143411761429914101120951691219713881731351223416558691331681641633721281250242151639582192412670292021146714074691627716613143148476949232593114975209342501744137317111612023110016852106692041535113922925521519546139403770132210170164221149167239124231155711892211111340247127142114341651619990157281741968084217117215189137121811317352146511223510210723519324360859022811706022613312219020369227411577421894249120621261530110219155152152152281095281244223631273560149625024441112185281681731112007015888249199782936195642089981175622416212981753022522532186246116982218317197115123140971142374511715218511649622141252229208168224586862178164261671838160818028192981931741494324024787941311581202618920232621838212133215124851468798913414218520812119211018816225022422324713816826783949192522382630501642134810120498175271611001381304602151296946151145182232228246219356523613968225172117999513024246150130518019518978395871473925414261212178195214238238651081421792218912751713520810621521924511522261162263495149171731804514564152130110145219133237177562544852413227148216210196238858659235446712001551362367519822522721322121220208156863912118824014310172124148311514513139194976712414967243158772296116918334746842301073952312541201941048711017081327213188941107472691541051302501812411719619012027108292431211961932402106015184160205671611501939915781138351103611818729239115175672441532188254240356121122112304715213312218957146117381251921701941341415920822363196245521342515917104152130197752216017016662287182238114818719209162031231112534312612523471441051521421245210824513115312025325290174153152140199208819949207629189103393111719442157107387116517202491482342021227147159443112514467811723115711924618414156134231169211166122411353433110189245183227206207103178292202826150511032064446101243831742435617131542212121639238351711428110896857129371421651184768371776197403944138113442132011451442414725329341451491872471322021625085663714625488126190159207182473988143682191551521521522877701341342402321272211216737105204209212217217139158158126761592091494515592201051383413111802111141311924716218318331235215111711281991591132462011041576372622621518510939581831101991881792071967250796911136431501413310512627190126110512367823215198176176211255217182118843513129137201977415434422056120822361467315422821665105501952381941371105515440122831142283512937251793315419221114548101682639809489248951382152331373911357101157531111743818923324023142161301021133612539724454521951472312137361241542610616155330203176152791722131891724469217118209402061411964013444198208188179188945221610920601481312414022827091652411712541108771961411836018280120233287329189193811919111938981881994415222911627115139451182514018713821520514714517249211178244211324510018720616292205471312161775961156059111863318061198243247492232613020218195197210401621711332371851352472522542331151625319620714422512552258868252247692371681179017612524574424723719219072391965710315968891654314397161236203100821481972091188151131211081611322425614076262091251722476624423623519417515010919821115122319618149178217113421711421073838227495214113206100135557711856147144252405547207684223316877164179115636919312338851586716515696171164131171206953719524242229801017116576381017118366220218185372235881062479884584115341352421889611151472114213513834158174187238539242204145146241496083711307423418814618828233231187210127601206215971369148444419814510612319191914716369311971951922325144781562179872407716173174771322263428142962311747812121235307924010432502201412039524910642617122511618722417417010219921965937194254237592412201471718112321422918457178132125240672353412123622252128157255265559240121884064302492091272271902071259131169180493677209874194712424231173117114223249941913366522817619814514988218151671158912517717127756130116216237152651932101517416015966672331582301142432312421999492202291431631157924376638685131331352031663019915210013616650152214902071659927122146194243701611781032394899313926150173218102195731723522112789717985143252053150651516522221122548150812868174739673361065417024586316318154722017210718920517620910219723322242941694818843013143641810425229483018119123019558155981096516520620313516727215126582057104159238311374313901401131671621831161592402032482122191571041031231101366849220220142200167127137185128123422316378102241721691171241189821618825212696231262481667851171493317084822014213920520122924121622011825422817204167219151211331332085117722616139240319321120911423310718537135511115687131235231522203228967612911715651153127173151112405325574413851223863717161978021219210016320238753719527432332241702431672251017116216316958837148631462261048073185426524714613458150154224928434176196177210238197120190134235230115561459514982731572841137334139491153616520868422114814960747228243253124601514912876282109111989898114180144192902542377922717237511457810321617917719423424032291519423817419417979612031911912381942011674719418023329240140254302142859867413392556235236110551221182381989515111119695781253115176115235228735011319182141243167171227451494870140130228150511517141361612011881471487691380201432011661241801661851539423824783176100807127162121147166571572271621171828120422162521321857823462468783102164172281213342152125241564624487492318516312921193401581701652042357916343281977210913246164109168114141149552475982462121021015817724314285841952492752231431187117793697233238194171410322017097152109201242351849204177185412391817233731641213418416433120795195198166019121313411020216148183245179461171411474451894180182351011728313517718148703040176415514119922701952521248611166179237166231688130167163391491942187213224713723817512581999923216924211122913519020992341131401061501631332108311512319717060881172131872091122091177287120111791751782271872379531642238343306923423325114426232198188121179961771872481401334117588192521401311172214170225171173134155207871851212281621481082232532492552251694363139110951183161152149283961532019820881995714725154837313516524183222250391381363111416960135277352153507715074235160146141745811026661162117715922921816135251641802026914128936172124917484702267162641711874171201491044161118255222247126192586112497481457421918924135341472026954851942091741920511786781702873137161232346147135123255216624710037242742815207183218254133254611203621922219619619622810420821321914323712724854102528383762322108821717722217811723230451587117519794254401411823421763230544324423412715521120617319224623154225871076176250140119210821618510124220416911322417123116112105601385218525320325512971191253756812110916123217166242741041391351629717720312917484218136250145176112176281154023226281381522382426193250120201751721691291519117813035142511047158137134113572553115986981632201374811824313821331054152230173148284920225917236151005416118519452215209241017913911812310538619776101235237209158241812512517222448942271731301599179241248402519856209227198942021732227610106225206366233108160208751151691501176019618624160122201951151661791261544114532528019166878327532191983622668180253161208482119812317766157769213013795720819040175145225254121468719381721247012015601610976119714420614918420269932119520643214512071549975105152171918410720920381115249155225155621512071119482462038206252221125205121388322287201415825420923144981150206153574217634148871881015917913756221118416618035171413354250861948212117245226173183174128243117159129141247174110688396153201952088199572341615012324512214692014826468213820111622414368135702158319924172701078421810519149118112852066713720620116197741061512011181101572215117021967149818512217236741005027518820823794138201143560148971801331201612352287275127384149167220243854118684220310012618329472071831581771551102501269218145191521472497134352212463838383871154611235824120412722314051788919214249193932617121111187199206301435823589114275216221307444238395921511119823158251921921212392262411652126497201092431535115517616820919918124117218523911112023235311975112312322418321716771651616132417021197825215719873204657129371944416216420057624752201247207250251177208229193183039118835276163112225978877121112101213248571761261572697231143233243127431832631191861318534124782021721002651581541021422917713811418620015314116882190159216611284010120252851209956140902141193569755169139141133951591362916875788212161814216113824523620910233179102240108481301518787813810223595729618114110441253816210915829623391109149672332421431291621755218049200131230822420616432227988124637188827137225185882049150209149751681286948124780238240136139101186246321619017515109239459122720100884713396222411651791551761442471792342452142232552179247172198140898397113184145102612341411591334150183214712799358220411910096128917419522824124499207224253143694925129317115420715941176761389710172231149142392512512231114727109811387458240234763023448197137168163171571551418124315267186911520776166147531531417456148104913223821992511122182288057212186205239252170115125164515056212188776821515810818715122623163175124144913255915622513119121332352281047312691171706022912616714866341741464017813728792071832189481120135250382042819982219155152152152284118217212020189152221382551216174720816515340176209229242120145781981851342362791791871761092213812423111179992471171832087024115673242246249126188982221932421671711711925511524521382372371961547241171483315411691194371352304922631318951111612031411492098206240120176637996105241611341401852171931597024124119113167198492642182533071155211120710412938101722386810171146495640169122153230110119614366113918912089352421701982392252182411331151801401721242441172453419812717224554183225902149714922114241148122138160218151721623914722612922797209177542019720713312151197222841091226499293831951814936176102178158117691259816925265154217109255814815089198944161535512723223713112612623530208219177591726114864171402281161721551411645718712212025522591263417314232182372172511351511321472152185611126661241421452372321202292191441521185024728204181115106240230811371802411371018824520323922414675206544227051160249174821772411171701212292341031162405775345428685814922421421010010420419025321521248722160254130871522203164401661921221780731321285847147219192091244822958812341801491558310317811624212766186238178101143843623413268154345024415017467233927718213143148791816918557201212233622121242910520221163123711179142202672371702061111263620120918885721211320722923724910624782168125431411186018195711113401173421212620220716121220120915024146671221902036111157202131645415076612128183227241249214245115109951692445922023122510418318913713713720122517822620719171195240861201892368079132146199234244100522201201431329761971632521821952332431127915010917121522711514311068240202207233967613419724546124226140221847169651428840136951252282915212125551882228494138151215317339171021359322112293736792451505945159232114251952512148264451171871761431781691532356625121181359178391581281411016021523116520872194193991701851586722351141058135149391442913713281172245225152495724883862724658932205119820424669950252747349111549424715212924556210221131401657353203126102481401152161982371477204141081381991720515315160226169201581393820865241162232382541931914814121115711020424256185541581332056138230202177591140136371611751276135413751240805621789233122163161230146181382122118112141151482192184034791608422622665132822010717748122403137175212238252320520718114334171632015422912241362102443875181146141203941351572128105176204591201431082421841663239748847120512202375140146120811664778111114225147103181251712594255151111273778632353621253541031978536918722312910072119242242617891631893869443220215791455312612749134186250240142127236662451858722753231156138215207175229861914724115222032281841621471575611722236791142362231911591572181087186157219571151022415115510747282021592288019020823979159991499812186522092257014528461997518763159188216234681147882174881218415010815314191601353417624281301161432506031188216218222196196196228801852472551251511561351128127668130202226112829610113556185613088703517136176236467481031181592161781142911012210635146151125129391512112991761751423195505245163162447114018991972471901222347254140335812916734333524216915019439541065952811239542133651263617652220109172031621891229122291488912552315318030188204115228150133195184192235713376595421219623296142127613112011711701187197216174243123181056019812413212025312340536619821444245853021261701841162529810321761232501713737248143568512055205692521992816113724321519716288325284177206704019851229157815121519722688192186215541317125221120089420652106236545621710224944176187224281919113744454149812152031943513617614224315209118181219162192181111816611115020424010610911071508036106127621062417119433196120207232602011711241802182071259122749462171199779725014616011894215205242228208190322292312307220155314111220560172411794613310722551761044617076101191881222282441394240221223250342218356224224115227128435257619223811524012174331477624315399138250195991072181542242245123233316442172311494212823111021618231311231681123925421639112253194102110524925143411767676767676948228174192504949494957542481971911913123451104740176132205237227199147371332211491411827437216225103239199225245194202781891592061551589013115515822013224414995228585584128122813190901351391662134020133616217252253119191195148911901401216521711514812219163113202139521704017682542411892014186405423081170531422021707720884520112733088591864519912674152231184255124191223120147225108150957123224125196223409622220816058877014620288112215200169886271101178015416806811110115622286631692321719917207254221232308342261121631932271975989188411484542103634520815088120156841830101574023511537101215341832032166366971158760136215186171140117723569245236227125164186154778923222718213724011413616644120642139109173232431612324769971371741002813118167145174162180166571087059102143281631478211493565923114923020342703919720994221211371128917215219512316465117193245281869970179136467419158108413811241181062723617518412255151224183471591301063110122121234791911932222291192272201157813416318613812643109122320170996796141226162188242532123554601406836194451491615215022325186011578195571111225910820414713773621661925049494949121739710441919191472376318722585184228162518074961851712207228149144192210271029158188225115236197111124124376211624762482222462199189182221357240249115591845213423025324922395253168325524786184119118812610124020796200136200916583168179219161551887723612810513913116265239211147176232163281362422481281009179195636250190471567717514211410810371511552492131642362434096921981719225319317156224246224122398821721120881272626194611090147225143811066078525441845213422613190724719322717897231722612392117104169414884243241947712918118710716859423161422278585213176179463715581321781542241661201080138418461135100210421017289462323518216217996155223130112272086220151671456912674172982757286253991321814123716757176526084187423138501051107919320311819122191651432033924960168181881415575482104412291351959712833885491599047618928214681634435111531352307521119028141188239230791688781501937512292312124422601051812910513883139191831815496219511119520322182225230559410922819112323564425124610324117875206135221235524150230174178185178229153722211481416498113686718486577411524925314334611254117412221525118519719610012839615315215215215218816448515013713713720124179156157246223254235271132011971032417861331441922422158320417624345502082521155195113321141961282515560250201101881197589129165142192512155617121713715520610453222152150352914322522219125313772552515116415922210068147104222171167351722715648133148147162969811037582062431211771371571257721810922722912560119276974272431544717636672545250132861552115616620923852164137114331458520711420511358177421869139211134836121723225177151194228110202180229213213819714717010942031301502301221202814810392158532121395714857117731662002536621530182391771702021291321490248221133133225111411032554623623428128191169301113416320120461108518910388151113163286611112824417629525515068861462192024154221233501341523810118923997165159151148822614313221692183271176019124181501381002021574313716554146100138272471282131615512221116442299215135416617172471972101814823719940176201932292053782130221188199186146217554917821316018518124420547180481257348932435220276231911151682122122105177138531381505218011740153706314325521910111119247254253621218279691302472471752222464218823453871932291674210118616910414620721719659587577115191431773422021519918120133692412483143999921613315124227187220989814619720883838383838474176129101989898114252512162131375963253192122201153244771331232491181833119025026246120198239183571087019958135206127110249101242481292924025320315118112991112112321822261565415222118983133207882624414882542401148425324520772254229255184174136279669521301262013430162136152621381343874133124244230193751702528821722205528162128200246725554822107315020816524666611616782184555613025142322913914915117780742161224114622685502047232071091612127582220156654915099275217111517323611212116751661412533016729173771812004815711524623819952949134100282202218714221098221701217221712812341136501543523380966913219481248124716215417118711916117939311218488221392191521037411681382453816516917810456159906822617614910920996183991154410205211651041731182209621752110338121159240248137204167208429231301672276510447317196425912714962186102481499659902489522213179341761022411262121212501047222782197019577352153133213208120148147714044237766524274195848516662198818616215310547245120141721513419476175766816101298995121122224822520798202236572482192312551351154253104108105532301917419921117658148131131241215213178459281512194152281261464015924722111363122210110922471694733208212204453847117761291019898989824214619420883838383819963187158126415254232155208810325181671617421802209415920917206631989323771505412622216061171215225109119237642452451592302181201161261892031388720624420322922422623312481578270891482462232552502352117239682506312712820692015195645814139679767138168139175281168314252821542282081823730551661411423923477164241964010476234621927819115914617220911053206151169119512424716714610416524822442699691359317752227153229118989552134215179143674196157353524839191712522171512437298213213248802292432241562211572321602408115419724158943215244252412610021238169173135157146108508823722212117120225246371761191251568213127143321891893104235235654022419953225212129114111136371405420171107177209109245547235541331181017262202467717819019714919810569421444151231736916414123423925414516020994154446319427706682233244382272401766118144209861991822039172289122711318417311818017922120316118104206174253201163514815515455173174136922112141852074154234415113513740311951691215813913314120121924518113764215229232261721191903119020032158252253792402028719128182947461521361392422128787135858642622541212713513318597297736197242362274110893191912719024717188235171631961721977518519922816514041176767676767694821522203196196196228248103213951111971542551872115192124382151035129165551661691151081151426925272961652175721412485341497216110721110218811425482451705511420324236187227210419452120522122021302031032121945965942522271741239621918926251190254310040641301373619423697412341037101132415113523310464154206844150134238931101195249236232432672208252241101014417202477315178166113425151206235165761203418661634527113197671412371958614022675146108994413815515415515278134219442488912715158106104807144718113616521023210410719620425418956451721487414711356144252232711621719026219238251786912352251142181459612123711820215820950201321871801871661775161681522625399672361424732142516425516218712220922811797177134641461214217222421912820319814568891991746104561661622182468150117176621831865156571457799342112811076415023919147194631347122498972332352086973401371976911650315314899571094412517516312018024025213346167177941022110315418375243161105249718590213222102621911521615015818818822821630139243158752424758171196241221682161691621921651181685215191152011032381992187934791921996119781244858583352261933222616117755552319917724218522618917010352774959498243261423377137211376824123563254211752532484588112122241103222228197151271272411104949494949491211379610441919191472271591231272401396255102449056135107517688225109168101392206612116518514421627395413822713314418664169681309121673309981202551269212112724212819216224719284191131392792104242100135227412424248582231434673626193190117171176115111391822222444116413513513225161627620921321482687282869971057331152072371606424090173203378441027195199231232100135125895610072173231981715623824119220322945241365751942458152139301818114832249231591211084519721622370134240153230861041842191152094023814013317616918615819950511641702021352672401702061269914166178240522037311161641124417221612821915510614517657203104469942176114562311581392286415162219214112235145692751012402372231371052121235198217188108103157105238177981682213540111238399223317519846150165158130112752147369486451012096622167921581361826172891631372001572041301621753617721294671693621911344772212720514391661762381144063171217866013109783915421711819780689415277822518916425224448239171120110371041901801021581671211832262048714823238161212237161100115177252452041471352151821156347195231336733199123621571322511883712021716523116317416914197134152301681552101295215917924019204371411011772181202271771261202112407994266070479020014510015822635217245100521322192391272115471211346121253271851972281651364117676767676769482152220319619619622824823122217512710292138621221421411217308659252131202432181506023678723614870236533124702426241941702531311841211813531039519714601122498431234220543534741572471116768079145149355260132932721498215158157822224213122452451772391574916217547919551145136241157131142192646711171216105151136122991094517040102422095712731148212210017615966161141146195675717913124922171217160225131138282028120511797103154114213824216918289112119481365161624411318717749301991951534824685536674661957167181432501702316713417934175341523942710012016122962232466401778823098243227598214201782443779129123214661321599165831781177801131695289116221158222152212213322081811977113111021678474961255220611145101209609720441151198249793238986115923917166130131743313218741176223116219212256207013810944129375219617543153524150155109148163152192122602897918218242881896180115871132453220571665590942322471951992461027722413711215221516917211012118612920628731651771312264015119691110615856691664115627445738418919749115238664461105621021595615150821952812117510434119436989184183151171185438236231732291312091132267100101881432093219115319112229251461136024622858761872261221561162091656020622816513441176767676767694821522203196196196228248702212432511101227230205159924723215523038981175881213212196165241216932088220103971356025851647563593125882113119618325116799218194831771641931414239592346062641111322518003720188716117922720118723964631658020711112713320417017313420891981996880555922059227491122436572961851521581321921815353152741691507936101193178240813014819122831572426514312897741442381161077862722913384712213714225161881451281522342001014316789622371071636418455561402502647981481192511099421689254581019024312311816345150219614710195452401281871531143385849669988124815418810415512338661412432241523719917059110699316013812314348108203230190931041671921061378917614314678191782312002131532343631771581751611311152811018017617488146195188815133667217923712023528641920124717715811619122982411861542272366822219518517313821212314622621114511917441025923515118719849194226184120991048170162163132222116184156277147200871381621318319616319825316616117421268765920560881602171789222016625185111481089821710312392232611215811018422514117680242150194238641159769411001471778183161661071152012611024349134202421914337144140100219812352331001220315063139182119412921117519067810901471511416619250494949491217397104419191914722715561272159920547190142165391571601901126552762089122319216549172148548620229679617751110192174802551421571209691233093244781562172262257011023023113022392126311721859973130662301519125211062532131361262491552416620418351212427423622412247592191331601191282227487111119966133201281511071561961083961097569177531813513415810530173582306168169160104161701044109875834391005228172158130161222136198201138136103348122712310334138182387435221081551892613122591632211425523922213511617774441311332422282468615134227945688175133486152501021932510398184125169784813424910918525371168165148972128891522242042249476237741952055821620139832061409368811079020321387141061812822222321091431811081475821422711058145662751112498368210822229592608109433617636135521801154769861202441901448099173225228188180130928819758992461452111381467121112020710650245124361761882201181239209124246381821616141251621831818224015830982541142421061522471532343231213251191639024516318215895133552232401182125221511310711315644155191190301771451619723921660881341929812514867194426992525166252982211046114713817916951188183982161021051951651111255914352121169961044191919191471512016619250494949571902171851101312223925437218599018586243951473980205165492012537201981591617717711922161081411862091251982716033751387257191133292454231133203881327358171992391272496714010892112392233064501548015912292228851422051487816513411424524358759211020216271561481613961943534752332371011227312617516112482362051152414022081382014672208252691464957180771048161222102168731891331824615712242262502188842119110610401281572060262622401987024017030202222386320148254189115167332341731611762331952082542469867818780176140132491192335268221881015024488938818655341909951301894210111384681512231381201521121160982041601929020815770140203107162172118336262101673313112510815227130100154211141964212923314870192091725092228247272231920924538143320181001182179106971193413316691404150143215631932379859103211213157180146243215134575211986432438320352114104211991722431242175510923020817187120151731391971405442197964214110924115211319015139246143230147139716199148955510123416211150982462521181561162468914819419717598163236171105105102213166172526225511641502252461052277212552402209681691682382311210241172821123318724624416024520218316199222211049121419610441919191914715120155551116514412717421972362171798085229231146137137137137201177198179183254202381939316815732168141922381411831859149915815744188711030175916517323684311281992382231762512549272141561246110280152441721191932292461142158855732097020761182127922224221102965314616324386233144322112047114666181301871381822613775220302124822124151721626857131343420523725115215810019814210022531482943419817012015622210216722513121010213822420214519881102381552371801151112210918914350197792254819611457152231160197141071077247023716965156223256144129117199210832255824111623625219917324018740156607819635105881532231259325315217710038188167921078140287813817922516711019972951226122561721205831952526182161916211591111881124470111207015038135177521065313411211016115214524146128294111932211725123182835686169158401501708814324518871217247237311391412713319915722524219497213222131891985879176188571291651756213816158214137801581821962261887827059159234241242231541489322318611914823113712015217519939982771788142222151518218024221211323211620116939195973520566104184225218104212184951176113952361661841071833184983937511599137897516696218172869211320553176581392131105431181237109921601161651922021335180216120312428341138188138133163136131325231102152207482152532521872183235186113221205952303711653147235916619250494949494949494949495711088117219207802723513421189184163453226163192178837616817116314217314950194198227237469015060180191159255176241135244441882492102431055810824012218822051134206239901891843110254818171182336893162317119521124871451001467110120921026741132519138126182502103913534106524924652135221241901651681756994151661159317889269875813718917736158165192242831261049416211811822219515352247102133135230742029449142891942141631483315522681441041716648739102165010516180322372331715618210784694243801441222502172012311612371482431623289135164391287779611401501544246110276893139319725513710492114581432819514512992531571911353569185230247991627106172177971074412818583272091911233513321613231382082155912843356552176172141991472321630204214202351342458482321911817420313771846314324719816688204104195141352111688262461671152492310171822151211901061841091332432452016514522814517417314320621357132623561383415718219840100152196105305551461336643123188415023827254571365820216525108472378341502221041211902559612914935201617983244761406212117244102741894064247137486472391756138212981052331701494791202615610489184162391252032131761211891342244582111511922101449313357637226721799319619623441486717144411381722324816510760130721322232041151032394878255224232241641654121241991044191919191919191919191472271344512725049124201171383717420192982114238117252182179195285113443149188825186175195134412312272121472229361751961822120317723413111225193923335236254751147615624742197207198104140114345921521068366611420411610223112814619622615124181682047330151018613421520024145862519996022924321614017157213741291612491752019716323573622321091346617681898220101160601749812654178179223862391352191056920822567188545955881393514183542381296347170103502008925211020628212931202910618621496168105161492411181161202425111923719719410243182245682081782322016414641362261131844123336418317422212819777105236220240561726538198180196724814015410655188471231150272386410415119142238431354214171163658417989861792201132141471311141111362371612614620154136230151210124861221231592222142482016572152245443614952687922670115991051361671601821962185531083918210511372456840138174817335651641161868947211291494143277121714572987934129249188391251086716536177521131417212452192134430175200619441254311417520601281222441711203114017629180190139109209147744961213116100621331591214513423465275718489237152114238761561252462171526111118220970154952069022417313222242202190154426213991966717164408413314911710616111615712138196138132194726918814312821041651771092071267619122617315211523412081106242226196208838383838383838383838381991310712725257522122230230173976921314111724021321411545195781158696217532552137653312924522017819922456239131521772246811025351952062505163251381822232422231762018614432211148889812729195208813816020980496981237136199481941117311981324314711280201587141143916320066202182718310813619718423613038715243220581585621373225198992501685118236160632110975359253512946106432117924339972161341361141911012341310258199486471016955371972221161814212813917813310518220496193178711641202534313558225267619383964095571822518312017018513195771671951972431552215611232109731701582051558051109652471504861561012452481882201552211756723725130692072021360143821642011298095122451178651789933194143254171771452361441791147210024424713226181233402822514817738571129891951241731611614678202231365790236787611521817615624720510510814753177402195020511820218215368161208151218782373620916822515914114853181002920163138168243901781171841301948119169171109116472329119250235237133186875225187904419720710222267138160211921041621561921854166551472471361902112911797137817213740138175155226236238145172304513397521720711122919919918074333390203123761111068424495186197131169394719623517419013612382031061171711251851472169221718232229912921422238206325856194198103217249921068225100515072371478117247801501662491881354950186611620273562431542151151752011392983961531521521521521521521521521521522823132227731225224127198228208133484866745124117245701355767121351291011158023177131174922018193203661155161120219255225180255248229212120987214196821412422435822224704423612810782143221126302371563912115834162614710524417735616665332291613312525267571444910019364901547224219510672223721515522318212213678158175225129154227741753177116662218119138126234125518317313719611212710481115730216153111137713720117253149158196130155878152151210229461319314840241140515720491422246420222970172190149123178714025523121390481012212542094514722716113458685922021618015118231196165112781551571751591959811932188107116667321661628888127521361041582106624932125195188111951291932052078019880142134419221283207661942381158188193251187153815170128365153157117120193158189176385121667732117020916221118741605217515217415247177180561431171621832381332177851156781721427014111794421311133201611812082294921877109239227554713710213848112351871431211455617298264417781183320113249252791191731511942092071556521974170119812301042416321443178866192461832402520827173935176148207714168117127741662451761102481336166192271972451141289721413323811918964642511142408411624089170177811622426213871131119953222247206235972275439229169203871951631788888873441372276475179241291113414410225313612175161103235801361424141104174145193136216214791082321962191902531923849121177991044191919191919191919191472271301811522114323015814972177393136884411068123561899420241118144217105543810910315119985532218114910219993219531722331592088231272331671368228562203068541091941861518932014593227382341021191572911925342322917637174721551087119116588211498635923482412612619715622410014321913620217234202111136198140552091051392306521011959243862052062531614919821811212203195358823611667209951549575195190154406836722504171361801061212529461972121002099123212422271188052104911721663073952115119816816211258103195541262199729205833740102332062141228822045519715999241537224012294214113120132146345213619219014924084859923316224917212621817230982271421312010291618111221611701903016145235176119793960291152084912315420978676112513647251955625394182831342311497121711384622816215715714813710510421844137371612462172821112479201252177769084361562022999246601487457129165161116601883221862155109817565163845165432516418214821621720724620848208021971215861872472406210416225222537169825011588223661451232181669915252278313719218146881115225575422088761815713752214681951982423215912291852211132401491402532042191421201402292032424921016202571631624520212519594202188128731123223912242261252282281992292725598518755435237176178207911462264120445135135230195101513414414081198241249121112217179120195183127918312723625551211139810441919191919191919191914799301179021425323015510411611518564233820578532512161681061095334180212201181581782435910581611952272252101209867195216248215720824423879989620711868158188151871912437351947420978141141553324381784126551342551496718522076948681531021672215220212418159157134128162111498020150157235141541713310369536667824673194165131724572401006887390869945383882012092361671882172071781061824714135195241621982052010310513815524106902212416216125105157142137240828814814296202206949924161131194175281465112711110568200702412251401632231790512076223155158891355167451982461993119553167182194778116712476682152814692411671031224923918014741251993153178109612102731717116098181721311651379492210111195150841233214105141651741045269277352229741682396911014381151665016718129373615167142138311371580203160227213118154957411716440631892582132827324888952207724914719892221143922142411466521141180250415818194169192146561072272532444711718170186229824318620341143116111691211342381731822095020671171621511872982051601808321215317416552134153952351165515044629471872241165612025518425299178819498215220115542125255193198123836824820425137283822512933101772014620916861732171321652392484901032062263014723511661925049494949494949494949572309715925931272519442253317429767896213180235173103541102567191845918971117296794725418016211243217852231222192391452332812819910213123051210252701377626161762021526022110697620030202136851618375874264189685521402617129154239741674915571341791052551348828115401683688201331651805365247121126631505712402078016752206223823112523524914613117120410319815214891115201051591392317413817381358122123419396441331451821532077612026012139131932322321421957392251647243701409816810317023119418988122226928692041662085716815562132715994139582310174621051423351198562481541861061112230150245121208204115115120351892162532402917616613823122532883917423818912010321013311810147713422511327568401071828336429874117441161331972088170391611181686896105123155351234516123255222122240114852170155507721511166147208208812058516524920222088612014191109602156525196147201027187153341692052381962188810082217115410924520618658222171601614218187622651689415215321342471731083510947133815412621912063197406837117372201323425523478108642048313124718922510611097126234278965217253194194252217925418412512612010717911443193123502587236224225145781981713831974963125157932423456211679512637247152188152495150137137137137137137137137137137201492079612763662472541301572511942212394417121113123416621813141501952271342211491411985805922712725321310912025215871113668714421037273319227791255223647194239410113213213622228881971424983225136209137215177149160227526010913616213095112836722872108120185192637020143349016680100721301042415613213822214011923524032521932467616721913617420211725337983610011452591086020613845241132581212081002282783113525218717719116613910180981841072365610512031234182682259658202161139101774895146239230452012521111101731931151817815612115331247147111278173272552488981117412371581232447392581991338921159152343715416722541351353155215198200164188142382261465127951771246253935221371621901651712311923671752071892423377252371691741067767617021624669972218858247226515455202431811562406813714814317010571761451121053019325112963172252206143192146168145192210492294150230130106160192827614578872517356170237186120109916256211209621106615675858643246801867623118521392174150165226206162034011178914922315202541931451623914124127512183126115112552071635222712116725118856199171971322208014014052477135209207542816412815719910333631896613215315624219275801642504814820480136134407518514511689832325616152929211112198233139225243121224103254424617723374010205230177195202242621821915215230146159232208824730621779614411719523111756132721523619727632551171105312149195223109188131767676767676767676767676142972461092236219831271027152435721672111125106224173206701222282272421231415712019819320624521873019322363255832041604020279150125118104254169361912139326136394154501988017718117740552126155221144187084841736345840165150122188134156216195116204510176182061251541674139161522091843821186122113947598671912610725438692395221921211981477081105148191287722019111611615222861381523919481244219893911778101728636758442251421649471871227158126216244246639495151752417118020213922818854236240213351952071705391112202732517290237132167198135214514719817019125215519024510138174521701061674969158924205137212821613720527549724911232304593192173221321591210179231236198170716818387131122159112754246193752098420230175126239110124216225512342282251122417230973417021115797317217272148252891961182151452621016923974586513714822225415213916282273824817321315619214624821216423276154237100492421662462431784510712017415110947527922221164624310323139251113127472153718118450138196216681642328462052272132021237613021116712209627239456913238751981412271992352211318193401252051511813419979233154205641113414171411776863211108591733103158121226020921091411216291446871151112213151811858524217712117621624820793323245130135139230185139401731201018322112163110248238175224161204511212419810441919191919191919191914799261178821425224010252213314416711468201972112096710181628613829235921671932062494719024635224222103160552489937122264311895483120593180422470152826622672103232184261553245163231231163225867560238314710016715224818919332122405625220241381601462082001611652452040831567816677105196110154134162237721961771482101612012331928207205712266967201132174114174175102068121716018323629713734902371921901541181104114313321967817918222444431081413814919915621623013898231230118020717419724419157120252254481562432066823522018560198197742038030102208117255312411868794895965882169201085234681682511531661208142371291312152512062917111221010115116016611151541759214237103184176229105279010220419622229171144141691003796297822318311239182251891071921781621913624586136162431855330547757314814119216299129143311571612491581161402181662460141822101019217121711053190691525921230187194199206433312919720525288160183251538394241165256156148159902021822553207240122208200123245206225172361411991211431012481594875411119731131751344074194413755239169115125201819220613516722715914860219981131042061722618211157842291801992110202186177250103541775430195182104281312666184176911118625418188190252259211823321710610102289030577078988521321524121720413820010044134423920735653426230117452022018714594116572215611861831541888849515013713713713713713713713713713720149205809531662472542886118134139171371962095299421332138813591561881102164113314130292549194251331801369161723933237160979767846249170104361451961741201893201566968541875251372322020414613534161141821301716531427781672824124018412452191210189353320217212371501971449224912822522362251811665717811124212272358669671202519721222021761571481624940215571851618247162321444811701191434177223147193246166221961085202951308834109188851121521947881561811818556239213946066193179522381931382296115212220117120955801332182301221016952172219159196983154481172183424423622314013423021776418735163481732531878798717986712914204923919722354714824720451177127195703610811018054879924718218920010890134218166524417159331891381713737112217254469249261211791469810047165951902820471209772511477311624351143130198206109114585812683447424953622501691614111871248615524138194156166754813912267164381392152201051061512419118193678216517410671239179901583117610115113316219552602451081016812321611013820221870811642511711620215841512381875778746816218518836168150801321132410221201061431341952321631122102081931147213623422210797301511221781151822299654161551134615717715324766235105512412462351741941943214224140512283126218808591207351992002051312291711731331392292031716516821125285135751382451411161461431795143172311961652391851459177941721522203196196196196196196196196196196228152166107251102888622113911660204301259254203198171185170165149142361912517819384229227190156102242072058712701152171118412058170168302163762192222104281872271134024274417592541108214817185142148114831031791631291596923624479167842001982072820454101513935217732243717713223019721018648740157194819153209183174185382619313746159419811410813619814060206634102495863586429919395135649220225192679271158223617222624424415272422028723719624417160216711291671832091855186563016114810417371220187012989179141225961821571712092321391794486842157719721214289721774424914041351772522171031295716799120221109256167141279019011794618623464187691942126118721416117310261218103100240192159344491225246193520862392322381978211186142172166200212132237302141051421345932111180401775215721011395421420510516613617229601111321172389794882123762090141547234281182301392332422272261262962194276524276130146139172175180331616625211023118919369320117538158159672107619239952262472251582253215692214144210158148100241540130423260222107575225224420109122113592521742477910211157448735229864515914582232248325130176911131851722382031243441139113127234165414313366120249372431132331498798219246221168175111601906201672111151111108241611761231784781240215215113452031451401941387119419811715924240226194871901349176941728823217511615915415215215215215215215215215215215228147172250227472081061431122339621024181823623618740111170154155216195252351161072481461626210917284341372071902506715215176833014011723613516930164931461481021940140614621757141202411466734392028577220455271145174112771091323080138148227222968157188190382432141493730148166230951865742731491027413514124116817132432342341062021724017887602469142205242184491492312361641121234424198208236011821819815233170148125251251209545512816923149152254183100975481181198138190125332122056219174891122511421811398120515423922114212941231791101916810239195146118202511351162711730165218115123118979160128145199238192191188249117176101226248201291439622222917598194206114855222145229232931875231922116020413796201128132715916622416184416815222925240372052015091108140382405216515923017714612820924060213153150133214371831481543839151172101772181831973488758918514927410916912332712462044478174721641107519417722254385019786138251652053621716615471392292261197207201225100187183592870681917919499886322012618522314325113165105113933212182198162811495491161564862541794942523614323942301715115819417880161311056924557141602524042018315715947231362037015216912146232301871993410115125083138884148214102622716719110854941262458587116220868237942221271814525415404314125256967823714271062182181201091587621020199241801321712172451953315776240186192134244204462247603518204228197137411767676767676767676767676142896624120246252250751681091042282181931001461132272051181741869018453140766121781236785910823614091111161041471486595121205714815724320419018210280210224591331212928391405198207314616758254121104152151349612017012913129246243171253887216148150131194244512531911424141227361772444581161225109571621881822302212342271191312131341073110150226275122686782112924510440204115511201821971311261116124776158129129175295241928093156107991217414032186491382305847781232177660184169383231207194156248461849311810821918914752315612959151175135123234602125253102155132245184241177392411385116616318116121974541674513623925324662422156134169115103981601070117131271291171437237179210120602819520317022124819947251808759621702310161971243717225161178236138371139511215224532165551341781604039213111912249816620616119221068232662316327214682317322271069525432154761911438275250849310310986148892721131783741162156227162187522442071941311162072322222522557186711701202923239179722718322836155180196159218239681831120781124115998481491981269491121401322386391721377213624215211138642438924524124910417857149279120184952314325514114893663486219151120189208111024216118719451177401869891056112461962268811420928921262291491488722121413163548013152396515521120510311271902212356413517914122646713418651462332998220144145170541202293126323967147233916619250494949494949494949495710212124425523819222021230101246172111441988190230701043118156243403717634207219112620339225167240249721594169235168221236801071810913314712814413640706351472305311424023622138128902021632431249467321486612331161100218187980241041411941362261323012811464185200162552223879234242248414323123411903621392163199721724812019013139741115623724324312422412914516186189105172106157643211562064117682235622517331147124110911324463296625321353112592361525910019913413621404102997885241411311021805582662051626417716018712315254240251633398113224162179151224196197103192227176336541191512327324622718720881812088209112203977169194208214720831301292319247170418620921321210719323016782203744220410613570240312411772485691912197134140816913772521055616120824252088154809510417948639219651457319209126157155226299714515620180108165821986116313644541291294922014824713323817722646129165936217410720642181411471931806024116411720120302391593316616920121753167149208164255251889514692249232286915310518410633116223110143714919218823218612514810924520410362445243411371066743197146368518720312983221227223202411822421851201108416010634248103217942151902377415611621012412040222250251135961799181223216204279241143199234210252881184170179111912010515085345714980433130169681401536317158153391955421816638476276129101989898989898989898981142041782382472237114721574958018421934129371232241111721672241607817616813917347111082088266288104182471451933322024318220716033157651321052397336240121651465825021720198208144419116124914211422199110543411752228170142178691951975216423684175215216871073142191801902493119946315286228152432042061271462261957521716040175301044772022374653820137177150751551551411011312910810325207243248120301765022197741072891591021681951993538714020651251812912378721932151442165227133212956113218213117152862271926313512120410210369411523720866761812391962261213919422524416018910922207966117761861741211624310345166184177195199991531858620492022119671761182279060578014314223318712818115724307416110356122391081381991217892932396715614924424467176875011280156229832112131357917625218582106242309561352173054174141718272146701121710312112510411288185148101192391292051451046512914914338253631591621141273413710335971821871977279233107104104632393313720140115165121172361363617668246394814917853631352614288203123392002512091992518927623223130741773020230861951116634212210886171291653316927881991242184620221436234172227235461351066412114519612210913371475422816122515911957118019250741961207361631842481811512271625122194235117671111137198104108105229257991171781428524042922767195771474962195761551271449761281025138751201701715911314106234234707510924298131191207116155152152152152152152152152152152152152289113213413517723855223198244246701742170220374812298316714998337178969189153481272321462422222313191223253121180178191220171402374269185723612822010521176919716817916412112921211387234249275194201195107206162601622232255722072462422511216023138144729122417610217660241948610143145841305209481961771473617613440175134153793136314710020019377134164161386315465335019710116724203241953145141301081721072291132179942377017496018702371213012218173240531012351762392461720415769105179535171431412331151061773219815953128211431991771686214118575223576163183962066612131516019017417207174121202432314465872076276235152131238253914059250208806352016841538426127221248791202793726351140222253334195171802071296159471301701961134204571992391942501995024233814314119423720518724722619546207129822468310022051201321342492292181692410382965322991722371484123588126937919688151864623021813317119818614115913921719898111601373211721015010412333020820354832282117119318425494222159291481431065917311238194201352351921176815210916925318620710011411677125201771653312312210716236107621888511388172332141951981201212622255138178210486822117518613462212612272086093141201091518685256686101204177145207198861507934871147718715876711131973775112217165231952271138132101208221219143182418321744589826021585227657775518724296190188120220481821243014821416196971692389021113517122324630568861472331166192504949494949494949494957388925319218910423493743564495020124286231605322723172823918614819223422218032231212472316020117219910712944154431371102032419016597105185721501561921469215222711483340932015290401231161882301790226118163121661642086836177250834125235561301267414136784154249402756720852844411920528188121751672251058284251562001072341382191841132222128454822616922515020291339981211719322518119312293711823813982442174912419948218167212962011857819667224425519112692112934515023917467168107422431506512311261150156118181226704814319420983552115521517313014110951123250922362211852627183172711491871245131251209179994310844912232101394012917017616012251122246131601862061391582371724424613178109511522552466116701471886112126181271432231581571762191281116711122212987231181189222162491432251603313011678491481969215119243221148479222931483912267164809375969201156220186210149172602159151834531324110717821914018290197115159165023510118723476137163221188127902377822712218611913224653839616993115729673862491722179217145243209189165183923418428202751615717613242141101017522021244451532141981887636396623182250848112053811321582281645610086180103694013015776439622761621592471215226672391862239451571518315513020610219519219248234154154216445813021522824154151134118215916414820597672212441423887110198163249176114364153718238751681751519112610215622481372071532235691384117676767676767676767676761425782201361582502338749179181142125217226931507638131271255337213248142185228851741639272961098918111591212232314182223372146836431148785116202246120220232184107569561211155202244208535122822043592371103032129852032531671231415871401352282122112226722251032532536014215712311024748141124366936176366218028176421347020322723123017018357481472292113419217021315524540135901021681301841816035193823413412322424591492392502512046150482281402422016197437899610420013010330138192113170292382052516440842215653513161298825322817918450217133611482275889174151242427541751972001906252206152142198186582122151833449521282372472521792471981123822922115721310911276931301981851074839106193134216523021761111312125118314019211316911246262131421321445512475917724318536215821520722117811878610316316113242146371201953121129165331297981164176234140253252501441921464421061193691201211911562272059442051531016132119861343588193522443820165230691959155237141041139113239240143651921067129239193312936121212305718154302011071012471407119923678196140123764079165421410218279254611651237210120122269994057612924340100133246542411265821722913321314619815720130122625316310121220719114142247255249332122121002311802422511892088671128116425017031482068662119601461212018881889531731311285141181215115212646187521574739877146221911199621799207225173255245211130195134771421277612910198989898989898989898114204171612202321882537123624107222164226402021959122799103899324049236174177117135199195159121176791891051972612424335951672327381705741159216217306911472107154180592322918013750641158320511418614116845692252283613114223516419623496135932439610515817075252213176891858212872138391977216253147193941044088862091001451681451002084870201102297124235119189124184217136417110215836197214812128124818423622101721531781601626015312994248144192162271661690184111361095156821102006107103152178196157911718157246526610734112186236821225120818313520317923096234222141232236235135189189251909312518422493111697721912417294113471223024872061902412438239223137189152211412114860676117441611942198021313014216575145232911291451611278612452041472717281409616422313810010966720482238205126391162191761152923721342451162452149356397913616451222521091002412520751171486516515219412322810010233810916167882122712851432491681425314079275104253821821754150230135218151741601258470105816222210016818517214813514917716154408721319821735178104941722201551816310835197108694018817018422120210991743915313417624222022010024312251229246682201681391142107391432111251487955243218762251537757139150912362041518323120818286741722613913107120791218812669161922922811912518924820521562140643227253230247123144226512082132211352461698314122518815418493504613521213113198169186185137107522417713711215211601501012151121942012402286779961192078222240181311935421830384746761291019898989898989898989811420417797217324023991738182184131158195229115193233271479222118180213249205238854118154199189137144292292452031591942476324961118239452327719820870137851959912042133169815837973814726102296135184135291066917672284053697022923210123193147112211253961521371562372471621372337736391752441156734130187135711233323315035391767040176524157147681286616080151220103177981582191011641612012321319212219610713116318626222398818914834307916018111955154222120217017083148117988118167144236170133203191931301471558917525108239142162392119522499316862195133174229175211620419823814429237612073312848158307219375241113106123131661821812245141721861882422018412917810723134402132461102171062122391852224301685791392391162181802325101611714712353214237220129150214941964191541737819411011346259142942141979674610812311624411517209100105511811899263784149165741631831982272071992471281708721584932301041142321731456218257692021599208815809610525417082232254882321139918667363129174682620514131644118819017316719621011824172561962511321465318397206990233771371861916834194511311150551981257485462011450605443215401474019314819014423221815013624194180984651501827918821136176182177141164722916323523324825223713848156193188406319217181432612114722817323025317222023225881091392262307918827126214159361492112331281411211416898240842131922062311972386156611371736413923839221177197731793024515066772341581025916724912414966121881262156389151781882301392234115519020124113741176767676767676767676767614241210206415222114352246156207181210120235170199699121628118158159230182241931221353675918562529425322422724822910312641894578111138272257114550117607971229162109244198185196130521791151261274872201144166232202118142243165132162104522321484741451269017257148102391041141072382032915014787983214719614716116214197164441981673718516092104662499720252321593922071519257218294620214110812670120252211148792192352358015513819421721478991632820396973482205512821717917149227924713031056024320816461881822593591468856231181661933733626651441142321826322114141175172131611066524813756671661887662325034120562326640145129207101199162831503469153516060414319913920515518248149441032502271484846196230951287017219924025424122123135176224180864415412522282034141821074421113396122351502531811917922214160121186292072531143966245173232271022616614532166229737821319631081671812091684981186178461052111577624245169117125841491541312343613816867416025188111842392478040106178242821042479217511114011713222240572002511621411057620881389410113191342281322062137124918024112217242104160166180146100170143135245240222251151792522712240231150255246127225992545312812312288091714016952921491831551795320216011194469131068161214243811001591512191151041891981065110088627411812514024923112613782173434518984965120324518179222128412945176242252092193337177244675205137229240841015862383649186922112126816920412521160185177361675247150100864950169425425215521917562291011842506131224221472335166192504949494949494949494957166216189113344171238545819616517681146120170124176176243157671458716910023432129101167192827121612822310770515010084861121641610116763197941822302828712138372121161263614224871559811317216415620811242137130124233365225514838244148110218080444010437410522918010218792261623816414866870240122112342295337192362201662351361561162166716916657148201253585146219159671459611153875918324315246176121524818872240218234230181182522422319720857492021671341065524682762056217714187106227561871971397025169241648106821224209471192542292391521211381922159412511228979110431341237967589491176535170351209251212163561073613825512939474140725212942271978617913203123211725661136709918413034236153422318213340186402232814812686223480239197240644204628220541511561193015490154152203122502102031626999237839248515448105236239142262432254823512223662812217496732816922814681154143741467216817421318258142187402693134322122218210117925178732476741180183131121621972352298222772501757324911795604523319410998115601429711014381213712952691692059781615720111146881982194615316823020412242181962261653922619123825439124254422442382161371751882261062362201892711718820711519514531531871552314622912518961257114410920973013217445169182531452188192091569118813321774252651801743314224312147229163122144483206243832098927163331242331892159719820411821284231230193242801121023999175170109482182121942467719983208156881381422121791672321682182465486100541911652082531712315473209155136100101111331462042312552512251111132502352231372431741891429176941401522203196196196196196196196196196196228152982212211831633318821523218415019422911919315355762061061511349639135292291259244185117491103044166187230222199240227472528514034521118514615574113924639181041195611313822313515352412201170117232111312616172162188226532328940442481311681476396132194232195145519117524431252226429190422270471012111471454819713822865971291815315396158181522301128354140237207161249146521718554235179411501929911711662019248175229415024615688227197150217141562175021994431910954230150218180106452366211246239216143222193321562049640148128932271997285192133955182205152143517958209161341271882457917681192156224112971601711522557179491192096612237219137173193331562103116421611232572471162206512924815018318826189125253216189107471302411892161861707411382397682415610910415985135576019041806912161351405313815822410616415911899229512711214721913910674200282123518411512015213048108180151228148681591761159562461741582242421762375019861160227247812508888255109118721912924717143436832031235410197142401791734017512226710716311374169180172553156739787341102041991652448814170154188522301856171962081413817411711313847741689560252322215612261831422412446124722412762250781162382813013110585832105182481391258570901794471981481917263691173718419020424190104225189994920220020521619960106191341802011737116175421751888188957362212141961621881993724819818210710512360138551912525292116193153168174242278188182061182147556762012352471792532202172511433988249156251471861432261142482521426118722972178126187618324235159941411351582171381832552157980147247867414723231661925049494949121201240196197916219112702392112301882221881422041392814912320515418113624095132699393292222441665511220119636755628193671545671231234322479419645383847281464779127253163152621032215113835185229924896163108202199741533311316512117636178114140198814762249250274818843142412368824380561219413592252051183956824101541541931424884215152246160163192335339924211718914577219531567421937645212112310350105684411701021229210202021672858238105103020585213203227214199179175076194162757652293022118212950691111661552025236911167614942062009519516880181542812569117192241901671109437210770131723523141131022455224814751485021213939301231021179244224177251122413644208362262081032072355326792271322431704916724992116180542261771993016514402291931223622221514115195126251622076013059541751604124216016310554206169159615116311436318612246510521213518815221917782091001617111817319324639251216141886430222423917023593152222493124323204671561302411692311581981901411571527841246239105167339613213481101411971764218195147435149802437921671034511618789223217178105242246205601913915722812122104178243615523712802037114512315463139859719283177581222412161356719514873128138162201220159229253367323330618610411358219799073247663123916923720124622479522319417122324562238205162225176186215245209532542492111112261779522213410386175552301991861821862141527975233229354925024714597462331262621917112311131235702158318973981051111441781701411012371601242041722918218117713151502321622361562232221401518824790679621712017436150196163230193114821345761943057134941849611516986889520471931232715920922623751301198193160493121465481731272522493121648161951351272525912028149166105114188971044147352022471902473254478632535215611319810592504949572221211776021514656191253237311844204153511131252224191114233197143218111243230173922616315712797252248199632023714763253233118236219183151091091091202051079420545149161251105197138391854921152051712082092092061654984239981782331908012424517122319622218925118446711030207207186201241207206213207194183229971641731385742159213190250106118154179292262854104111713824526126155115762491401988118271902452099117624517724515223017699145219331211201132452351003912112352106720109153239242162142347134227137112241571371481712937922522104818128123226113180581562082282352452361761072422616213851303435741054815616284225185911209210350113649673132229144481440911914326175826664091617914411120522314818711613211823621715213423014923887014819555916333244499516913378156861798148713130351487314361142161801568717680238105184217216117853522019614236482291626885510280213236642071744810220415913514715144192253119223139291253510410710819413323115813812921210236942291922022051872401751111271631541424136325021323715221322613018120113817315317881193696233101173511092914720757179911773113921262098512098243672422021197692512501128152197218570821601089971282274188120980185217016798240501481401101822532164925118923622518515418492251215353155162411912381334230249621751137982917122516210617571353570591071552381921992434221791992462297082776522162441152421262216615321721022014021918210822915824119612017518412031229721781242358717319314725525094367251209572419613720113532089185242423124741351411611344267629021973137181145247871123945291719713218695167829610519120814470772261742511457921183100971716010419772421331111262502910410617216719867311592079984427235212771851025210230198188881632168916623416670468570602066138207222685255214157191191316116657120219205952241818534147233516619250571621242326721714209218792198207229925049495786217178101431272181181181168175175227829794442072459311922120520761922269570611101182161912041659911691937216681371431951411820347115939323714116181722202427515723912624771981794812324644222235149752052521862532247223714158155759922815815520116625166241241143127138291424015114225510322122824810320523912712822175133253222210221201871991167203193301359215236116231208288816216419222657143221113631262511419522717010663106109227371522083623823519494192012220957957160225852441888781372292284913818211317816362214181231239114118166187406561211901432531047736206471632111596723579801062329120986138188262031694755144237204126254213194235431467219519611452801262049624911423324616721021667924716165128952198912724924324138322614117911511165532031562342221431421064718221744240922387191116547810759116111216432156313453792361311316667167143102199321082071924921513320472262541922111224490169325665615819453175123523410617016143133177982053513613210622517824516318210530230761091962961247226196158895624924437769184255190123208217181642482011601861951291291014411187413718514216541971991371792177515496201522252815827688253177391725112791241782541915019725320366977418810825323212367441022121512341832017989951222511001421262021611091086393153695521011248311792161428512198687515184249224302213812116522711722217924148122120255731073124109136691418392296925123366141246861962167620217713519519572831229424520325124117720322163206109553415411472887358421043711461172301128820922318523251239254351181242251238827143271921120711912114025110177341301091081156914710111557134242186147210108993413841118151145636999105342472208525021141108229495863959641507553221149140227164230382202482255532809310116441129165123781958291481312381883319066811455415047135199239131391622482121244102194884820416524110420618721912612143239931281076224817110491211779810441473574238472362309512677761421254212594436123888711142321831912533250251251891422031422019782155551111932471902476746211503414737391033623662251217793118216123491461711632011381662315519282681532022122222221106896153247138201111979611923246253223207208809519067235240572171291831151375012915712720591361142107342342521073411934617512222449124231832557798110168157228176915170879315736125755024437146232991031261582031331291002615134661481722163991751044224516852521715516957144822498795251371593641148158575272095114860822013819282681421501151041551326615211178492214144159162116521911461422272337018626198150163135157248101204123183167101101872149101732502619133121161302301711782191175459252172103232299212314929591072714519012813011010058206110951001361462191112514366442272087212621837716727196191052162062412101580231521861776024195235791721932232542813423536202153534176105153134165394719647238250117815919124392079114412575332071911551941081272621719015518223664991792915714212156109148479113981126728142181811642061163524284817418452225118872601913323813721120758545109173819713124812324011562482199418821522713238801271522432021887554739617331218817075931872419521448235771915117921412361061481422181781332451671363723721123121913121320128342471347325322024143801437162021001216118014724769236320213924623516320018920510813112821320618274160255236879824625119121121912213420713013916624811221784636010818323625204112031492286116146124681091932461038335661133722514921624628246255253207882412191911601117915501471581636021117688165343821413316220525012095731954210210862133261475238151215164244591527120148109203193282411411013220768173221129272232555876159222102188538220715321523570130207121551331301061941248422011124722811414716518617712920723721651881214959585219416524123622117813203311202821323191222151902499518419722819713841176761424018519117617111512060119116777694108425018886122156201225115164586174237224590136119189235646153761962088383819914266116199551901282432218032149741157510592854616321146113371293744148602666168249175822366421921324910313589168991574717611817388133155622528520243716682244231240177351757227205127100209565716220250411745244109190219133591341341412012222352161212151002172342322352371171384181131181773617316469102815273116229179391719962743312434624213515102234523222649158246122156118194921166218818262221226117162153201882227221841796719111423616548249107321288815622916618024217630234106171157219012482619310413670224161192234108104134415043821431515515967971471932232542548720217881721675920925313512624822120196047651531019322864178431371331151892167012981215236128125185213510338494354133183713310311917513553724154165171391662056693163735131491721201065316211717180791122425517911930011828851862541111421475313816315610914115611536251912182973196963161952187176441762217221714920422618321675216372488204154100761163225140121956965722514537217741501492271401022302062052251571911757483211234238219352012428821210395221142138516778852472442491111171171011791361092196482121596710497262012173317104164221126591321245013796135441112003212573512421912019621824414204157179161792312061485822241212202135482541612452482198822171051721405358781701102492552331243012124916614340106185193246239121525110472108216802047530178178312467014258226166467320371581532391059823168241518122297631217425275241147147173239147118163886924840332258127100219761779159239154131253125528741092111001072919089179513019217168200902163019522620616410814825522912013888692332235169112423014531233178214246164216677482396123587982038725423631212526260249248427519610614624313222563223182200199388931178901241972181372221167751272297267661931161712121331941551571461641678021643226219162233211176236227872812015655145136201191114787194214401729085450431541832522478197100189941341301113718011111513028685236342441714318522723813520887822513220322213717979597324624142851401281015616216827118192322612993119123117122311613419523113318176762191859944413197236801483212222779190140214166180172121135401561258209842315713018152831843418696854614810061342351781781598517225325124717322314015255223791301431171571547830404995174128111114107179799122561342301227611010124320020814487191771138214999759361842311132201671951832171135971170240241636270200117197250826521271081117187117110711918113011314516222240222247971239121731872472262411551273610221523119723423193160751321362019717234361891623995192352372372001391761937187344226910711253121488355601351372271992258722916218223208132985614311511231998210315587385252108213237405213380252109618188012099511422721362061403419112482255749204561639189253982072143618211810011319720420316465106114124137917212224169847625111835219916583103459231100177112223731205824944214322820921230192211143236177382221431571566817245132254123714456531015718124612092418719849248235144621091823020794140241291981162412402415315224140755160187261733168136237517238196711622038816313186741272261831721221088831949717161164159236715233172442281641310169131171201215613413816957207217137210159142231771668211721591451412512251557217871481286916123110517197136106115382239046224172249832412121071747021910517514445441971536856136552041061981532279915214814139160256418288523159437463441377921671210169131219591871195511025421011712025419911916382241849491317857551469827173201731231131328884108139743092179422223237161912381462541681082142252529820101191491398219948222253206139113254233245716741961492296098255272828669020647157963633348693116866868561071542084146112247122560881651087874175137884519023177187103111814362249404618823611111319413713937149225881978884712482161111117421322817013211515324023117175332549118210869944622011318517611811777145452451094386172148165581562001192412266917822814318912312345912482247194199825617717917867221176311699616916723123317245158591191822112120651271092198663702053319510912431511105525323153239143197825416361441951325017217517594462111811016361106190176323757262362453722122119931232712696932172141631811451991447024342491272467916225216216012723662999619111022168917021922654127152431651316318191135199235147941791577111515824822980250552357119129234121173251150129591614724981216109112581752452463294101182467325112123362537924458581931861761591711822461159417118827245792302051802505721216814211823623722621323153150237202239219110187831820151956260491203595232208246701091721831298321948152211831081233915278247147159543217239235171215203222167786325321213124297121186931631091939232352141292531265266211145161761162231916685176174108715531205153512351605021172143126139918748111149143191706019418058186157106311834595254232129182962525025312831216151041712021312318243183183187225175135212472201332061251076914410203154551861282113821419125188171571754094233235109319222612458255240186159821564617511010718230119822042212043851767215218141981981261299999177132116321324516518238302619216081960140656319940113153351171842062011864196492489519681401787919371212569813923313618176118731859922825522311112633130205892481942311741951721572351132471831263334936117691791472264957166190174184952251103591992512217610210821713617421722724015115022769088195114572320746205199172233114512341036325553234150237216551362169941584016150891961941181714862280156271952194610819747158246896851137758256621222822361027523819221110730197212201221241618718619818313921913523720514811424825331239651652819622224032130207878089206732422371788519617878241253515841431391611259728123127901921131995599114199602041585131852521612625023611124119872473214617563206383891143115181013628129851491011384420220778216544166228136366225410313591152312191491641651097916651471948975401289225136866124413923224318424814798351971571528661561215711882481652884144126194188154632402584207124451061931441081091213317111636136412011625423717213740739522616838134245244177147128165242828196198135126143159126253171216126223198625530471177972158124193422317421745125139111183220824122647217130136108692331071802489617882465441229922522015318425416323917630651651281975518616423825411472439814164202141164155228601661831357318318232154118183959213992223128442121691381272517417252244241117725227184228141151962261562491781991121729841724912111141272431551871132391892472032181933618943329714422713212683126213858722676324816121482192251001908793245462072791194160202201222186527104139186971031761632221671616223199221182024520221872104472431031217824069531193642511101862332191421214924018522613819811512524424417214425025522049152307912346188240124895924612002492101516211145115155292301632521201685223451207215622215016519512822624621923920631476358172231197239522823451191125642457966191232208632441924923610363992171956216196159182713214123616645239211215817122119617115727245187209192246972531141851561721411322299212624927164111118203218193401912097601758910322155102463924612712391235190117195222301221559411219324924821418311011824451109119187150216207751831921551682428871123591962181881585721764216702362317810917324210293216392365220215511724410631194186222114203143282511721913323116203215812372341341554715624021119812227208941891094070221114203151011092412315922418119817323914570215268595214139253152621192502511961073425369220254617777220250157311169125225015223212616622314863211701751852297531242771337419623018883236187101496314311924217251144189151796123239167107119718718823161875815827170609811111118914311215987571801371821212092321222055410321927254186200101620924323720799862151204324110683617653638986540346511261240156968661466415680192341561517142662018382244210544126255250596319287191122394611010917145331289218546774857197171747913768499119616019350208874522515366172471025182026266129687418321011419036206135294108991103321719064417217623683603516237122924018418420198124182231115729224111969424394220248154121152152142224198175125320725325039200612441482437913312534961571567434462461021972221562020292312391452532196925222672291382820399898115911071966135208100275179224185231209368520492482112399227241244179911132101941102287716231797250228241248233157119962461642332420413961605513525216997842511714017520433124701010315714419895126831921802463624628159718712126206106636510645215142205155208255252742041202445710023014219514811959913722164804522422523661120246254121062092619423569285994681431002081815717617113421025044661791631046353133254199101525614819210510315813073833889221415931124019917512214137826442220114713323813519416719611319197164102151131361472432071361422017654136802179114519811812924913810010018123792241578324256182351912498823325082201185192112431138110715917285101321117614118215220132218252831012072329720715815610971228341275139141217173917194148212068022821818512315301872278622024920912765854441428023513870177190881968417225467455757423316734526214922991822923915021676209141143177146162124232320625318291681721328424563621133716679159122062052123334424137139160851472431138156317539242122547251491659710427223742418155281759116117186419724721224311224721519012824612124324116624725218910853282032411071409819117737188137851082211868511028235191885040119122691831268320615585222248242215772222361923883481689018624426431572947911202431701829512524571113195139514437222192301249923723678188578656149692201101122452723717117412215122824735235881892381862552481162131318395124105111098248612536911631502409609871151010447111250249755339202371864513254123519994232175658710120894218571886197181149831258987218711271747159125232673111623647421041072127842553612136116116159177127223119223159100105164611226412036236230241122112236214239262131711723675180872258614251182511482922955301991222401888610977184792252122144415531162210234254341861111372221666013465167126121834115620236250121233202362351682428871187452015212015716119182379622123332186524113317617315144169231163163242102932362372001601545417018815339243864812713391291221228688130185130118240671872441902001261739518312724617959100255542176322015120282537318417216724713023720315815421179170189817569939324518623310967191168115792131591182351111081002722011621120517818911016774714021817717413218221179170282918931211182229203311791901051632383194107342512817531228918075249147101459323425255172171864524625423013312615798612372536524553183124249119149245347823118720215919921155244172255025368497423919524610711251122536624411822524637752341822331682421362531541722471721485452115416223179216191248552189251121701231481571221551141871471571349915121312725032182461721822122636821149107662421441367182102001674686414096169117190118159243107113125132128372369218717203174250551161381362093621913524712831457917386671193414116816418410316895194246323020721522334724068811921625665118151751521814216242203201801861631131715684106621621501511242352851726517116212725554207124141228851951439563773425216126241189111227207223249111126018585236150313318885023116483104151253342259710317313291131212362001501710674139483424921431361361361971838114144111331291132945344413236135585121417219922864431677619867219511041491072032722211295410921913311416931205451917611179475423789371214240212679117625513390781001396133418768152241811047525231191185312726202163488419451691794917311714653210321311715919919468181561792351452111436724789103211241082221891715692541305727147216188115818754121601241881205517194220241491722191587110469113311420205231712083014524622216192252185139481152461161082161892212724824311418811020562761631721494517732059116514319216213619681791011099155136911962151751041561051917618214820221472556328232272810365411231272252243224136171622331192812919962196712423482302379774218724911621817823920247121353896233148694022622010387302234666862013921816321013568112148114156874218222189123240147171175198159126246832331393316416512711214821622318018089118111402296984416013725372142225227149971692823122227203105082631017776199227206152492115924823119118123420719121716111288148229402501182396691911471567117899632815721148243871273533137681631042622341751472198186128197586018218215207622407111619123735623719411975618249221424133193121112147311924734235102801582371411122024525368221148243198144551382046719116116448197279462142652481841985922224154892613711011211921262491653513042222162102223378865713265144126992372310820188111942371941461892228793117176216671231201157618823412622312524581481002382202171148312611212819327109620313224648200232234154341071171041512572631923811911668237233238629423625233676113314710120317414516520919319213318216182147189452332325014219312921112621413311716519124871351902153501872075612214110523616816017381318025314721613137221311962332880248177251182219238561625257217213211514458176157153135942220316023984191990167151225231891271191193192391821724712314916325219819019658511512322321423523521221410191109165210177761851331515047292092078938251158215181132117832311658318911684121121422371292552471911272351291865715711118614315724617118815723418810821711718132247202821256371155233231412351921261921152002376085121176472421541629547232391891091504661248186205502522502011594245852321011815832368711010123519411243181251137215342141471269815997612452531648163166772022154213251212511582021392542122511576115191409115625015523250117202169173148239157242165221244191132341676820715917625410867123159332441511066724661941952362465258119244242236215228145249391725849152132213224581237785612286223792161022159412315716424111918918211189134991511141691321872542471155699661391722493201966819298112204571128231801013467178841031641288522117125412085188574519975625120123623719512745189221611491313424820062356250132243214114702551191536576221132348917402420020346174823422231169349238204440150441486461451301471301154449776814624570348472531466931110014314835101931595551985217247240143191135592552339514443201001431041146311091844814918220237124140241107181160871297901801342051611483796171026156204157240491741801242039175219136176208212525528602459694515777152216493225230547627223142932532525223823191704915267112652825123823571236124241951891382251228154208861419924222042301482439576701691751381856719922713224951240196157183225196205125241562191301661159414110644129135541736623913217386511569276163121922543239175160105664143101251172607225473185158100755624118014780252367112725502301591828671313216601055124611020622777191219133221732215710139531675616444446243176314917524467513611912292231181747231989834131131471714524021766811502651592629331441715018194250711751801412532415910612047105879518144221411936245785246288919482236101179210120205172861801377236103128108117102231186103240197119191131071592181284122613912134232117199165318517024883541312308080132482411572167656250143203229250425420357252151194162482132171223119417860241566816495243521931041857105631078914221122562171358161152200185251247199682447611718020114613217616619218187126126231239177103874762112211791001392258819988899206971882522814116225319887161139437855238234166156562373918889188225134207751922131031491172532451591451731954811219124621823510016930112187189197741831334816822514124610416045441395518212160242522171111269211121217172223104192221002191112122125013251858718975681531108926705106252197251234171632301041581351591561309018912473123419357117611611777145372551682272520232163371162161672481612481002391522325223020572651752428557196431041072127244254105151502522501402481819114923121210314823219216020423712421125115715522423351438725321917178245116159145116121199116170301962031992031501251981782131691901019110916521017167243682258516612694582452729851588312316818211424214113016259237562271408315178852291091755125320612619919019623513319079135105842231802475525358232118221975755221116179924321817211580631581401987912611217117514294381753175151126202245901992351994534190161831914368207211731322402111431179524311119414637245186232208159159248196167100169241181194131011398312724366183207169173148239237249210127244351132353968207191812212322391232392531472129915724420314357138921002171782505710618313723222921717520120495181392514620311223435122307811783127632162071201318124712713312693951862449616121511223611320724719014119146251801169101173491931048241164888201752467191121001491288545872289521718212715798221131817674197181901762289514521922014311695811825614717329120310116413065236442349814172221149508622817910421113214797115414218438821331014224016112819755205811208217245223221416340669223821891129142233178861674321194879557253128128117239199631338816962207144108661551361113969168323579729419110228241761609491418318134138211728681841765649885389159521131562457710263183209181811821585621243102159140663244254232199241199157471232352401091111192552251271452219369887825118177382102189122302422501741980736013523715513121652373991234212242341606819410412534136841232241244841724360432454533212428213821669166109769986183727420476621836121347347112589843020423279997011942491252051522131176062423710822124644342091182362788143197247174671075644137135161216721132321281283715385100932315321816414424122513618010517121811021021366322721086124140148112842091702531629735387224922716415232481512052101025919612717079401966013911720125010621116932476741674714645471211323319227183318810765517815221210813716078148197214199126126271902542473119814090012419225228726825018424485892141431381381592161911481286923825982230945412628254246192396676250412511515254130210255725024613812815414820195419611112920824012131202131412315573119116324212747236228246132001911175616125119156314223111491882516370254237502815524123537142186651181002127757111201892182531342111262117433771411021041161916911076137147611412241325345183252801501561311296117361160214111180221130305131313722240215109125212136301402182031762112115160130199110187238951751241161872371212486522124059137104141160318416104247131291661172432524123414758170127181231912111251022391161041391782194172214971232106368314916218322121016522212592239119141210218209143117261531601632152232382722111194249232121184217234183173845861742031502132532371329416622118220924411185158831441891002015317412520715422397011711819517130250621751152211161151232541351301592502341015458143134175512221251291681902343610417012519622287201869394246171188156250139311424512018919159181149242189158471751188221639129717120722323728304517025315625454234229217175591229112021717325523222921210275150124742062231561086312015914215814315180106565423221917729143127247758860111170172249131143157034179138135395532181382401456561942017220219721011971282351181171901692242715925415108891892123712323534145157178124867316223431306717942277653932242189182402553763132781717912092902462411551363635162917219215922144473634518146237121732441392001821691792912531249381461916620015058220119197188102188101971351012311316325046238255231127699219616194253139226411801332351172241911272001022411398881871069719666117177196143128531151957022422838180159531715253601312382111022271481474665772341712133442231210262081792429415611519827240135952211293922710737128132531891232034117321618318734987921249230138401664106189216178981619199167692444216388149721014016158251753067169101661595027593591367961133713016623021734170108196195247201761795114314212111324417420199225248121241591111931842062331688474725375155713121618124312117747142632542423018878682495417785135230101170162251652541523821541461784582231021634194919118537741591379653402453310589231232341096245452221807394156822215811815922820119982372150667619623074171472552231431615411818817218917617663381652234410813922431221839712411520210667291013915361187177250238223162244163239962051591591982391012176181771432261731581542264425317012017014419209174322316724255247178151225101231573523110588501320018526183303510810910962208255441721253523911202388219698219521433114314489710190120161144201901112322918525322015413200245245972021651271351375123172101951771421717694194232193187211205160223155114222762431661542161111948530785518711812212213413303912326161110172411841851413221011311100245271096311840225205301001691551211912461689619794166202135216131229253134221158135311161771455525118823324713987311121942051031962051511884223341181912482451531101831512082291331701391596278177613715494651561917012755583113722213523723716125221420022215815822524320915813519411191169116221221222163641882022441701472985158147175148312011611366842239701171181951711426822979331532461411827914219879126802461202131195210117025226993686363237249170126236117125213237162472212189022922921295252112168199235215411232531362421492021511901607913615923513515819121511711252168811971961581678712112291562138571213219222231244115103233210198130156262172202321869912010519512116912223825329102150183341592052032212719682349620124535176255145188128422115619293193732195734139168209871967319298401162435321522723318127208188711324721714914815225215629240552013822416312920281621781451657816209106871851321893410616996138115641242165117515222819419921520672371773290127193331372522421322412321892262117211920512814220135175952081291371823221122211714361140159190233453496213235331551129860141201411610021191282042242061162185138216183191222782228114718613513464911325146762491911392402361982620660233223623422113524911781498419217325525153188233157239193227152231439312321413814448112912425143244175671845710814925117857771041051098125791621916623180921520812711914199205140352615962071424122114759172024116953211991328321949174451372991512161571741611099810167781416080577312425020214238429623519034162211163216187381432115815448123226165882472048315254117610220415314315721986161107250137881891667155546114015311917319656105123113219856152161934641772910423523011465681662501681811741122161221081442031646725211511460137391148910845811224341142121541626311393514910269235121235100165127175150602441459558236799110737204248226237401172041451811637173582182121162423988216142513820024936984825113913012579254199206231214226799525363025222211914414924617574255981272301962471621338916215213024518939593210991565916513871262401573415211832159477425497201386916422874313814458157151563115078802186815416062138175107507984217429582704915517920611162222522202341812482452393019885952493015490903613322588199888471712011520522415313077125146211156220801741516111723655138196239771852151411691229219946185711318421409512321110233189234227132219771871854241365410528243332461861151878325478184221248251129130230181215214717017138751248414425422519943882414114119643189223581682463524660188242215241155206111011992251821153584571242521122062823962201115785186246192932291955421325118929632311292231822421552061717617512511884121781172122433310855189159591412282098112155170112071671092191827312124562202711791841411181194169302363117079181014110819112218720715045222232245115202127180248169175223502451162461262331322545519346216248233199122121941182492012031396761941111073925114823915347175191234156246106112961255209942231201911921902021995121612251032031502507522024660189202243219226821321994796112712518727244232371662557021146134151222172361615825319517548621792514518424724591392091466456541566220141291112418019548167824420382291424213853165100105366325221855241151636214213884077189283192162184176711321761411972561751461301911211913801491441531559135251213110931922261681714118228183132353413405116381283954512232513622115962112618211523211722175014019622824823810716616121726129181922341673019510917519120411720283125590108988146809613722373229241199761237177183145128696698155200211528929662341891151620184177226119251112238432231407223152204182552542472362135151191226124212426510822018628167157112623012525279881771175522624322772136761132252203819614634161371912541464198199237131152189561421731716810020012981145735209102018512913081351482421282316677136551974897901924610820122721111773495589149202954880170226121105131109253117177142531082173413021122822236217841935917425001821089013310912325011219841231226166471271715110822314215414819318316146188283625513911717670801313715184206246224721681801641573898832217511790196632338147150020081682196919698591734124819176181462311082012111581502262171020120775192218137101662532474780104157381074714983817492144194153832194949197732231011631320693117207215621391671912471117212110218113685532332556568229211342312221207906214827146243166132102171642222402021924114218318811851246524613611243342351581892512082092224210726226632514044157104581421501372276922898934747518724222016620024613515925530155382041931492392531449271941782151121729941724912111245712158223502148251141342411238320611422011076221110682212410912229245104129159952461372613719301132011461221851961716278244244122554217214322681254274522122135127452141112182376512915719524131971921202117719514714123520879123279632535221613125220921672188124236183141861272371012501811991115847212175252163165812532364019114022123572021111351159443148772465023624877231851662156259170601835850472461153721423480204226572001902381322022191734612154571542097915911217113522247117148168204314156142351721559563249161811251372235025316621111343223796324691158159188188562122272451181181787921322114698725417317795135237232249251185190241250255155223220451272111581501153539911413435222212121992072111716019110965841892371091742316326702194613415122859130312482341919919314886137126195178197312331134518204821621681636362168163143190341102214175110253530250253932161901220519812416328392244697871856226711353517782185624313131179168872111472102322214204104412418014011234236892091861282458418013018722325557410315632123143836101223252234105721072214237151921381001653412318525596123519880614315083407457118113952197234118232761691001641854824113111517610616813621119492362175632914779702472447812424919119012824119203120253197111195551912411091561142225721618810621182238266422418084694208140148561069317714089146255831914799202130030255227321703406916434179186199891941992183911913714322819190020512421998165140931935620618818421251122203232882161322468021101177235151792456717056761601385713151113209691756988124184123247381487451401594827631912452191202172182316872209151441181517917410171432422242208710851210332375335261831241661634441221394121513822419424612742159593212412165239461362137121523352181762008617176102252247139439641401187878133113205201452421522052178292461951997411524222719411163183201711112532150342242384021491372311312817679132214213226247189349877105752241311111273514291569114214816614825321310685132172164172141196181761001912728113213218536520611717103714311465250145180231512725117712211547941192132511714375219202541951771411717619840121622481841291305515712411756231292254718520351841741262211822234018191552299455166110551621101405418920617810124520110125220532623769220234231853139241721707123915046291261726522917512423923182141461922335523724616019220622524879135191190179941219424920997240116213852395832212145209216721162092072389919111780254372465025321822755157232021422091825151812625216225219411515210922423150193143662171072392471182521567202166701092295515787153942512361682422621314525324014571301476219021318611823211219621112322211537236341292022191694618823024221817180109197115154249208302261673028173181124249163982272111501257452801846123059266324919317119010191101250771672278619015912623618360631211211611421039147271972521292502451992016285119194235112199216510325522836230942322495518619024115479952331942125365209180171107178855524699254232227150167871211262191301681222192199220715918224913311823512783131992214982963248216123491192181202041545131262242197163201148442132256823712110157176118822515242171146221889253200227248241456319395302211321472281882178844988022411626714819617881565723318488921647561088172494415012420334442051461788314910126241151596522524811225134232623541721497960130223941225713014671377414419172417216413512819723246831641408319973192146361521572371952481271521351171851817024722112242233476791231116241195195562451961471771022432372002361561309072234572401242594381484165643137751861551931371881275915219515316581821721397401471931481741975616912315813677411721231105102799113685143631421211392333362268116514819924610959240224125152012232386576155219132211467416392226136262242154361282303210125244464845951932032071261911363092201172311432402304322214113523825529102207631631842255112071361062496413571246139475691237021817173218133143188197131652012181582615220922711624959791591612615201241633124192106171042161885217202118167255197204174825315610412518120296322141509055119152544445311115621918198226206362223534363155180679714691215632487160115207312401892071259111642071792152412296596810022086462251091392312252261191891105171514059132164127198227497353146702150133283114271209529728341467117710916619635636548631281152222482228119210987312748282192411071219495811494819715594621222252461681342191413481552291888124418616924718649851638356162653185228132158143147611412401071751944518911071332655223412441551062531661571115022785622224814338168177227150191199423712116848144230227791224425188166475150212203341861411101942235232233237117242917213126196158135872545812621112116123617624716335141421992071852281332021671451892501219663175211262192021115817550189246217812295317016314175155244139181101372111047814918318946201744096171583118823823434175985224520816119264251216103149152229116125582122522211121711751422235089753715614723711821638234111153611891591262362154663121121161142391631851421681911719623356229123254291678819725416430773978253831351251972392457725317338108107253692158941211222372432192268213155118232125206431271959547201761102532482514899114592302051594591188225814210091906817113617221396919521411859156775189141801773196681961382012107224620124924324547126324763176623734112100366011411144134681692032472411772505770129130105197101742215005387132154132424810108816174518918100239184244227863223870123601322795209101981148741223019031119190233451602138120150228226212848224621216152114402222334010211321022320719613876113763135491232096616483211208243212191361333232236156136213207621301161152271551348014566203272028791573291287514211119718296918723945991021192193194527623715413113107214226249932531842321301151612201452921613522113112380437345162205152221213142942498324821619512766211184221232219101562521382015812216613266123251151981971122551386517716564549172497651158932491262322151516363114311425911017182108120221432222461118889271377124818410378423190111413113679237161162181651914822822921935187344915462130137349615733215761255971139221147251961581142512414811611969686221778196131502235726142176237231137128691131392409523019713722412316412780192226186199981192821362492101591284322180227205115911721211971562242491192351676212995255247874910719118420419018781252189189841961651373820459231120766123712036167142716868231144180139162844235267932161382009032282521113663431571472411243813814110786225205312501841361401341912214012853620931691711742612121111119923770145168155242705524594551662344961254138107159172219143715314620120115870232552461261101108522123735182244250521016136242197191232111213210235227712121139952552371707813522663632321151222214616119535170262455716225013322110368771742232212374521240191191879525225010818011859161250157159621265612251236240481229183195571752112625115522311694101234226771301135213819209221320341262132091361152183247311831861682461612161761161692519191189234232793212233238622482857220252237184213871035210117025223621593392441911018795612521205424121114325321822939474724423514187571182122814523651781920943952331181771271153411721363411482343544117116187236253216142421712092236021320713761791752422521825811822162511561581991619417513199301632117624811817812058142160136161891517222161722001221482001419743138885825016313412415648201412021461961961491011019022519111221110912770821821673664118130101110442148852021679665148128197209878173208301299114148831281517916592702411317519715820362131128833941801976624821843187685616175234247232207126140223254195639013073886215616323520171761847824812516828616890193169231179711771222371711941525310130866118729147166417625020193152504313429271141681884413216129195249412061581496616063136124541401251252136217315212322076204158125222023492172121250977615749292172221892162081551931921421571842241012311621032131222362211865241214102122441096523519626198205172226551717113250252201302101081517520672919257221105108187551402032232506260442262131001721342226151189125219208243227592415597206230371257362284987162411383519523216718921071142261401442361632451876880161128197117306722317391171444311913123021619823976181138126105191120151472032041312192172181155734791821925420313720624983939130103582331652143511810461772527734967725517595162220628521419846162171226134115381601713746198211242145240691022324821663972212471111451264016217624813713011091721883514922920055190165179218154194140243229925019415322422712613718413620234104113571507290661502760311781852114129402211229925489231162111231781807715232123131274524110712162223681229391226410419181361261112342451557425114116930128120221104192221481719143157236105132467052427523151236129145943113818751519422723467611521802232482352511882110194160682492189415022215824616019214221914119131104175178656161057124714118917314924052119174247163454471249197238511622501571518016323165236126251412072522182052541651961872471882312023237164159711412502923710222418512024134892729250185100247189292181482072311731821801632522031251351229443252246551912332614916924224118631166357213145190972531892067117525416310817621519717595245188157234200602167918825014587891411245690220234171511545014902102322187421222343916121920371019111824920120311246411171310411629812322532121736343223219237982551842251342079121545250145117235234154341237016224753123632142092371111161383162271772312338515822318232170222781257893175221124166673121111911012720712199620176126402861151231920656971291082413820914614832862213264801302221126815068281361321922491805615318719425424832315122822713458201901721789178239214472221322351902531176209720277192342517285639210156104926813718612819781817798889019617541179216101187130243951091873352511812516821314417826489841502281852521676319422131250136371181445417712118028690417212812421922567962112303649112138821469670321081374591114851801101402261851671199732917025217220191431282332071541536610440132619112814718747192248411117223713814920760133185211167161144235199163433019225167931388450451232341481652531272501892556516418513424910313424125110371132019452161866214371710828484515666121752812371784015111862211667814233342371912311378518452152178706197364551722217163102751911608811611110220018176201561711051562367513915892071462361397358391107644170251613570108831122771871771351313656201201204797939173819513814628159171141243112245201178461104119610023614623722725424315172761564210799271424623674135113221185831441367225514810958571851192532537795193195255249101413869172696137186255755155692241544423119834249209135194302281562216011760178227571599301571919916118153141105211186167916516531201129225323522020610262091791053120612623125120949101170156235972171032481071968889916621874200185234422479541245816785513812611123418911076412049212310925320511820364022575441882098455243196201306344918615972032351661585523518015111512524081159377523455203101896213255243188169183195186491928262100221236229413112221767881192501284493586014322241101023612022124812319312872966781621466631129101175175190143254162223156184233166155165143624575721514916817771967324817925115721625350261592491771551015019299224230207617111513723776191216235164208235238374659811832252439867159216224126461710115177215952452011955717521170191531038851867025317881153203150213207111194250119117132476316215921919694711589960215136919119229631671454911011720925114591219242609963822462172351682471251836021615212817923811023917887823120710411317117514294166189781182441802446321919392537161671782532449918944471872522282138149724117023233233893325324071725019321016579571372421891479312222122017471631851417017818817425512212619615816719022319079183215171451361781971692212452431406216617515720825114383581821931382143229285822224530201240210128221417331127472183412115611817424724514265110162121248602095441336219420214312869342421833117825316795249541102522144717211676197175211821716742159205165258165926266200116791391285335182181361001372629146151162191821933017712322418631160601101501081052811877111102271123118891602312525023313522313321363254173378414578172017814823513317814021927988146212102091764414116416590647116013257239153133631513756362191363671113119211311192391598018917991931858521268722002471001451522121321154616191137981801156914153124114612722718716139140443540628918124215232154562924722024512318824117323914811813920215897158921264711815172678391131471662154524820513113120016617086239109216956542226924013224198205109986501301351911831513787166112234207182224211931645325042341907413751403182104217371702141896719535168728613216417623622791243401082011628442861211951132419718718412511719013653133130441216720910612252130197177164172141164401654723191249202211717623435182196441285431501361914817818320211924817911918836444698825212482103282399421212973233168212692528016417513022612717238250251176117195902442522549460122199292161832385721790679156138875516515156352018472736094106773424355175651902669105176151561446122168322185814147142591783231591302301427823363108291959551701922613148192811621731066492502052711136121991990772251161631681102001571101581171521592151411691263520127237183191253457210208862221402421981519814617820120130632321821764423016321515714410981129311125018718616620021048122302023814215218523617855308501521341111072262320226118211951588135127411034820118042208961922051241481682252281072501984540176227117227223821322213219923411823423768156236100262148591224660236621151791452331482559125175222124200992171591203199246101219161879510416795159531781551091952528489781931621914519449759243156163184160242224254219111191211178159481271672542108221551726312516815119525323622320286167114845959181161142438210157157215689611321262272321922248216207411912531788115310872131741322311925172251852051523519725017462351171009112393271211901781572162301962019418318623218224318619312616225219211457234136109163174611969471123301807922379187232322911525124110537469213145215173182182250116070139911251171161872211082102096982462594911491752166188781764592531761007322162963253216175931262421064237230117132126396063471882406017194147397919818210921917212617612412112598126525113722271171482392212362261811441251382081432461459523643234124105116298435227821915321514117939722121212165818721320915816787121126219130168122592455725014412686215107943104171234219180117249242199196142250223422542241122452133159802319423517718694191672510195757108863186225583611825252311902422133418818413537145684177716022613222458201245631221691484234182804624382017572023724822118311555126247243952252471836212823110721916716560201143981361422281382227489132146162213712821336982091829892053442113126165258119019317612620414414819183142200253219215144237588518218421577712317617024218510224641641793419020162226522235166681415102227174222736969240147252116402257644103168956251571036917686686323016721624325144154612811459819413922960148157229713419223120113039196209381017810791621812532015622012542661614866251692042001631799913088865244601213110220615212922979253116715925010216414641121323714724318619717022722715221143222236514013924542551800122692322492211111231723783524484652101361571770904610715051759158148186173146313471071995763218142191179514010810523311242121389564143124228161071571052467321981184982191024321171796856145245511971661052101195620912317924814312625067381312545014311413512183192904424778211354989279517253197285413695105131664513959241156136891252152211342281964689123233192186115422321714714618410878112218019914445861452122068115719319018921645247719711727802822039912348410320619817243222138230150868927731891213197367019226163240230255150253351322096961631101261571102025322221225118549213712256193155982062716370225621722723631171031211519512616999224961751512516427039562501321212335520058188892301363311721123963536322461241203523822202162411862411114111252252452178147190163157785525217243125239229476615912114121620939239174186234931818825320123415919623815120924814020823815511018624964802281341512212361191832211187167255241124186234170225711671112031611432720922112524023228114362072351581582252091581013838246185192252246756310123416215329246776171215238317723284713915515711259311892342102325871244235174832927245125133832491016762226228116312021387225167221116406624092105228431835432126250177951872522282297947123211918325416919519074127821281136724922220317414519421120054262051171441825525059197246160962361501678712112621913016812221923516316017312625276311792552162558621720715471720948246169732011425187190136161531432242268794322351781931331041866287142252004314219221022523217016013615164824213912853504712511615015782182128271112481854601832510754139065516914416915013416112869193130914774552252488828191262818023086106136948856850150588017811621447123325331712232172391444525416112824523321190209220212140921691361273063171472262512312521890130651563816277189166182042012312461291212622214866185826968124323819446961716718517636181136886715224317092165437134933425441222501182531601514515413658103212231120421371282192032501699521111719823452241822286815611523423311422214632501971822041224516219111123387715413314920725258338787012371151236101262411632122292072031271331732355420210613391904214092165382541721602311231231618471363341130252588462461092021602495345562517159240150244193222125243231124302072311392141906122918250684020275251726766202229183987836138221717556114171531870913213610311520139322551371052516313212143184141253225921719221822812059124112252301061431651274931592041071752161811152332553452109145172189522251692141815227111231552272135123519416419324066171441391391165719588132551401887317972291881691632241942754175276919155245441992071414137161101181231526313158222100122217512612013120327105117991756717130653203115194941594183166136221779125210115162244993919733222220211301231281922461606113524221439591352356361504414316341562362287240230235100167130121220119223253344822112780301212888872501731760158311891911761751761102369917012718187958871916283208110302318411921820511427611061622182172228782511123520620722519425477223184149195541142431772422712512136206107166227121173714775151142124362021111911009414120211610739158215204155229170242220234216200127108351261568012118721313318249111221541941244192114486163582429016911180582361391889458291671953215718216824319973882446716325018632372301322217051755324419121953145248233199126237242147151952166321755217723624534172911192473417112693932061271312020224794118177601079234252163184175174832442371041741311881262411581291901761958178108127942192212422444220711191168511117562199122211222502171261744131243621991692552408822951158792018515621025945810893243443025423917111319369231391342253015036911472421112925123243162118424619971371902237836157198187472551618211022233341492446717484011280196210201214170150164945181951551549117271121911911111751811571918718313712019619919740106202232454721612522227372452321601282452393496113142159166100188718118098154252139618513222620357118110748131311381521501382126961138879819465196691201621921011031221854621845188116383076141244931181418113792080593310214113242109463419016313890248811223813721624323617915212719457120226241149184252173239180381611672191381651815894253563879156134150120211336617127184251151842522372396916534829617313871262471155279157142211522313515023020781867221872236254213832531686286191542281121441861701918713810825322471121419710852332111465623939349653165451457413553252131248100167812221919614222210689182722531659318315113923210718914051912313823918129641892212285180419999185100611742011821029596233289339855901433723166210136742221181528711118113222911422121014383240136178228249236167254722515117612811701692031672071561281473812159171619514519888847124172491042261356514021514122720964217672481525320623102221681102211868515023480140106116163234118163205155123206129682321997019313527204951135624918820823223768148317013194215671091072292476741255805718118235121188802371082392231351062351456418121120918012912514828142111951681189819060127152396313514623914510495213461261741254722202701141681902613917612717815240195122145163121295984841234018719911422333202207101916210261711236225198385955172199931599113021518925021341065613537193104824110076150234216544142188226844226252248967241722417020781082518517215188243991201242296107361422340727511620965142196206114916739821041413411219013622205425416711147166711621502161492381134243250100174248392361251979171282392310882812969106673248228130692321461158922536962535051132239137208194199420196161442553014015213616610412514815266170128132212142243977711011342522301691201181684012323419666143117297219115251128197731965822002205113611418113452212272412202022215622714939160127123221397962191932183215421810396804164137227912412082532472241841971394422510821325030761591141541174423124710611114224143156314293219158704183195171222581423587100209243208066824694613635125162180189216736238201321803213412011581032541207222209124176128693323422249179813988120254148821481642071821381285349281292001081783810947159227226913223517122201892141491388610206151538521815120325280196822081643816919957201166131108321801312532301515314511511341104153117992113135172227101237165757552128211691842502404122710110921671619514519888813499146158782150193964824126131971081779925358252230115159192235461182317698233242122766734212887414061974313888849202197146108257336172322513899104156971345625322855161262276072177523617614719171321112615623758898531339293204227473419282228216441301992021762248166159623137872012102321724311310610320255114198688468104219180106372542431014719918021617696231369625390417211113995210134441822193373313015815723010617209902513979157132392312152434513965242633814938824122794212901317215715819419217578014741752536319240232311341005713014720758132011126249161502302059340720214514613419185871654622818515871492511962118140213561116215890177621951214514317610779024395145196211119244752021221221818548137196414515336175236154421381071351762482425410823817322416431110195255771671416417413681219165291582062324088621079721757483623716625219710922621075917221539136128165242322351396924413721620154103581389128181212322323520010217175156313136251170101164233220157252414519113018511330174167632542238204115301212558264902616911216223186104154244652142029612022548215022515219588861311939648241247131341388525223415424722610123115842154135115881811114213916341291774251150128101676130200227431971452261339110231423811024045132191255249221248135165956975361383817925627513566198120174190229211361182402051171757655991216213119913417834244212481851659123222246126121562455457226208571159828715919881441922429119013723912622826761377010117314214712811712746139175416334301364236120988682041511807251164181901921961744016619012223020122100203481532937206917242148249861921762281764533446235129632232231431154656339471541431662461692002441091463516416129233441967123511923669155216216214222342331022251616325520187552396670681672482282418219717940222631321121811267685218161237109771681372468821691692541192536477234604114015092161111122113843246118859203851722263128610722491254158211713823710016736114757019641375819737201341717684207147852442281154023822319281117204159158157191417315865107157233401081895021312496842215169472132178141162612419361673210711001311411601244412353163135192241103203218751549311733490455911521021813710013919324019498444195491351717612613119396482494268010824921719925522476324341968377178101361611202162612521150143253209651331817628231190138202629178221819922724823115941392236021813173281013525223761676813714016839771782371321841367017841392916513822171905692491151291642175561518746254410625169145677020212419721220222531915411692473555126132239518620147278882471021792481542161742301921627927145203313735147236844353188234202241120180801485313169246206952463514514922925322874211161821652092091491961548512311321716523972261962411781671417912710620574847425310410515713115314719999104211381802068913616120494236242501915818463131220411688298187885131632351513229961612182967235241210230822461927925081912067203194184373215792186524112315511315388812420322317919721086219112238169422141381282294179222814197667225013320844254156231391778112069118142159167417224182178164160207571122159110100311612165767682071052102551842814723713117815712177101341452133173932022499310224064126146196250162302322396111722953815925312216939143124105332302271809732522351531910120596120225492150225152195888613119396482412472925425224523517612520517956231252511007734981310882869211391991620145102418611352471433622691724924665291422549237223239451681541242222522501911951341892514881242167112691131306622133182061151179034416631761639219862176320211112043138175122552021451324074341864915418209228176145178117123525417522213615944912148019290944213812819713522123424817176136211919891491921920221611824118431301449823224934114127266652824718942190225818624114721812910814192301801605721413016917914219919624610286737171852261371481807719350246137167238691701053024624462141245153121621169184107262219751686082641608214522722143624123375154165253240244851452238118019643507813218625215917056111245547623209240249822011785334253132150237421511762172142311664581822022156127217184112125153244851708847981521525822469372482419514218616324821346126167151569607112413841712145825117251107123717341206819217073311462544071243561094732493817122225316915116412814914814716289132208175189178112252531174924941041401281015623048215019396482412619575135237433019514718322013623819142677619634157112343417111679166441932019782109421225129341502061291851779213613616116223207127135794625158567517719611325443625016830356049158647368137221237772321252295981572532116818077212451663412314348341128019225019124369184174923079223252612617723621817286761821591517413712036190171912002551354496197197631451445810615268581401961072111361391742111837125218616713623218824205195190181514830206342613162881741623212623253916923842102298421891569975196174125691714917015260189831242168622151032518712312330109109226211898568237215882159129711382488611281194639195919518422719093104146252987798128661422113200981381361234311022213115110113448891423924512723517243150686011424713123715520170251116126441341482141751822213921678177715027497312422218146623820312212215020481231191851367873179864177332338310217101332104474210239661272518119694117165236247851214972915468200252228105157886062371076195209193888134991425320595992532377561311939648241212723720361109525363215226249117271122461851038819317769641301248167341458194218682301185620220262247149117443131116332414163804022625315125261861026173178710514213814511114211442137152485130199962351201089222014120821962452142100250663424995563713743231801361761919611962242126108186253871042136856142505861158182681966139868410184811241641822492117623210320615521148114117242919025013878172118617610975251311272464219229205811419440161508419719015915962102411732162201791510113812114671831151122467697254105146135881822422073120166391356939301351167147178189101172941812722513749362061401631768313216671243136141484910197272301591919770177189791324720102291242122922110119616713721636235229866135815023519017923175252029815617221144177012173351398815320713984143462441371841491481821421392051169192138519611511416025214324513360250169145412841230701214414358241102299143419617314560716463113272251779216688202229210223188112255512468132621692477513221488811115821114055206109147531312252329744413119396482412613119324016217811922790252234186371202494320767846859813787346612113787842561935971962331122282171961851773165112255791271292552471852393544209808119613118517713224524243115198571147191165917518411272331739610023847163410418811410618127203178816116190241129247962231752387084108225351142811314914412215718799780682478727830207232402435231115148413095175225244409723124822180191581322372291011825336143200661601092551248416490172972191512320953189525321913544127871701922461907810513912216220523512822121990802362191311474610351508962159912324120013810101455610622942170165189010213314558992281550892061741592396711611420109167394581173382492382198019611322141172186121143379677172371372408837962412051441012491181311262193522618712202051917423412619239122320191248166194701762168911417215112819771251991371281811827281140221421329841751221102095715224913717573253188172305920887179901622482265147165162244132193112244482150193964824126131193961208116984422482051672541423717310520489489541391541367681196831052172351423119242219719592142324391801578693423222321113911112425412724122436134342124849207060241783039911472072251899524879188246170247161401942162232211792567165421147817514659130416425214315620813417939197819681122131561371521491113611719510019747157342041132544113890220183731321462291091731354496133691457268701381251211717417424822420220221159671138791251191522615611911898931739813755164239222341547419224617331525912560665118424815729242361712262542232381982039411841230205911361081101622325525411911224122336682321022417423924634177996215641137121331647912991127592337321010225116910217121612521962761201031872445224361713930250694710173111615721614010963221137139135114152281749167121136222231160122174802402017620015011412276617171762262249284171132925318316212924816516016524360132852012381281282457633143761412214195199741150138201216216148196140111447117384148181177132212923177242230139166341102355161952091928886131193964824126131225691032471502051842432236213020346123165890534361927911918220230202125497212820555231861773381132271911272163185243143243113716213723369150731391441771738419219125225214116159127332021961124824415911998203801211481501401410883161177131037714016322142226178230521661381921461013319273194251682282198341971821081632481931789242632481981897114671923417241651562341321981565109216113822151170976012623530206917573791423221814564987880236574185422026764112121013978137331548992371957188229292391991861038716018599215410021922218959145203238195243918634222871961795910232437329382381281681622371725298453372179997460132205632666781321682241324066115195146127891961751619415170145253936149291217519215418019115741158119226208123989171402341585624245701931892261992273411311672251512816613652172541721482011882665161115134282356203872214832494468231179224404720686198502343722710610120418624589171761017854118137138248152142424111110378196236214250407313122510499444131193964824126131193240162831738611321523163141230226942041575519161104216914210217742343413395661451762867922596341374238184249392482428712714023072451163491161372001761908468323019516723819123191032051501483512110825132190242212942362058312212012914412294119230562041111411601814022414117377232813510113513673412412137563517030221992273412921222524714516176725842126171103978140851657411292282362498169161141891018413853100312966243217345618113436149136882261471692191462161871812321123119948173253667623615413112017869246821361234151311942212472221346454132125123119962352461251361131968560129214243195168237312215457181941327624247221190115317769254731291081551441967323180224158952396840391056928122754619195120146190353110882197537108453144522421776519073801468898322119522221834121195181732282032181918925012115216251201941202335511048191941771452214147349611315711222243221541502451241101621123921614090494710799192182171813224237341061901188617117225124714701925024126131193964824129913076190132951262442912024920379167218132681156641691688821171771641715620815735183156819998232185239974425322887161465239361465647153198211133443020122924022531124231679525258732332042272196241229158237819622619512111919019011131249501542111131887419618291772507223610820104154681521552727419661934496691231871817614851923478243971313718421224918610213291684421895200142159237671991071541773617236159611411128115222151761037113111671882614324660128112120345859218241236211791621695113013317979192158222157401355496243389621520426649201802348530181591386455572919318631247332531863810012653136154152115220201227481139001525417823197194126417219633187128851441241582349111119101127266554129111149368218903625316472204154243236130841019195812442142028841237191173921931153434113821191662451621451281971459425314950154669760832001371288613524982196210217146207962022371551981801282132211225111230542271465710221011819513913917176126131193964824126195152225214207255778109451601012201201123424712050233911922261568816296201210725623921321112712622552541115516215043981908671757418388219924223616142251244191226146247189952142201712552239017771272181546511197248173114711010881911201958414843532126816858552219715611614723614517822919524234825518712818116280647912315537202145195171761563037228124912426310177267819016219916996171236171972472212514824910923740237174989095182112301370217951971402061512272331811433318718313416715812262393246586157152631172158219178222251661411842511991871441241171920212942501272043215617312911167204214372189601412122284062142281453014097168183136909512610017921844419742241197222101896919317510624914116469521544466168154116157251787437483920151532064586193477717717488231455619318627226107691352093822614827891720040901771881493496415913661239177469618119713056174611291431593823116324475131225197681743711453492412613119396482412134490231194250245103151224213231561301041155116213746634245234209137208538228329717130122301202095249194247176121199941072122131211693884172484012820219112412175188234125178220152821851303715110199218125347988199315714812869161204263314813631161762017176323013624816610041264720723117718216325313688836382868413244591851468856531301421115419682160183391352101342210231166209182341301411552461601816113711611573422922181031481771071231419390921081076575584121961771092211621417523718324240150688108916212111351662131010677168391322091803713217324723714924614858201255722532961372192401001901283324129535201132365315716189067338927134715375292077954292161901839019815725325117617982247311831352910231246121811389724514590921672481667517289169113110020474941552281951161023025146132109117314590187106715224216353866299132141715117194215942091011371556195139141171761261311939648241261951522261519525511115621615623241421331207518145886634231372502211441252142324359182336024620322322747119222143139111999129815115162975224168736019023714651241214271901331121962531131761311688524117534981732344389111416082802301842271818348361308411717631111156491983109111971401381045021938966186409615788813819521176136125624469174801932762569143100103446112312615967238185336815415516452294817743129246137974456533725094021915924192164147692401462041522542061112387073124150431506819617333917682319121968251729712418046116569218121246182121786757891151933896241161651051066046219401014513223622721937891821571848991561802552046821824233225288811910164840130211144441513786917140661911522811469222322211693416818213848198995663891422231781577899126371720910210795024222143249216225200442462824150114821511502072552413313711101203216129163173409412524919420113669282064513122569192888613119396482412613197761771232352225225222362132759425510416317132993319614635197281579640136961844612888136138481841193130251245125168221254326106211401189183119161221399821525122213325524314514313723019245163163884222723471189622764209185314248120998190245178113989616187215174198187207607831873217511401471281171871364613313714710016920614516176136211124881651142110923116517157306912112724892341711611693913223115822314113925520784180142163523518213701782432416214063105120210239231122202120244177651482438989390207723557631341971494823824922546107244899013217225389187824314924070171714066137219172199245120200211342541776138139327397201131421902261002381991394815421825512042235115207208128136821782262119241179882502071217669133174136917242100711779411710752878919617129149106100191277782118772103617525350610215739911986226267611113822413923179668819658131971729644413119396482412613119348230248209132551428319821320822062781961693282237173188876822011289536224141392086910614942254114199239240196791271431211651601171402361981421141791203372041882289892244153207342212174191151571171255124226129109348421271230284674192741388018322517431224159254207223161101127157207822141093496212788813772200122411252136219687626419411224420133169112232221371674237171124254147959570211250814623316162201022156216672116161189592104159482361561992392391992502458514811534962012302012392321921841201610723820035146241241131019940155199149821261678731641333107132212147341067318213233162277822113144163181154696834287724591241101163227185127177180193140104125254443924613796218208226161108691682364421316420624281132100959020222915610221913851642541134111815925270217243226352051371842441517915821813714738140208013134232735962519860217108142031516313868341295120656771822412134191862381892471262492318424019424322995195177198218181235176110221615612625016923223224126281989648252117505256128123174251402065723510084171341661401077032528280209137196163216241220243120226182223352481246314212325522399932552218018211613824197058153642152039413416621454731251001601361812442252372001511074013814411756204111139226250243187192732111592502221511122377631331488958782214237153126203878150165587822231716320854905623914512582119230831457912070451207108661111681341292455156554912924193811721243612818539212161823710924317010226205858410117331771111112517125011413614375043755623814610268215617722617761813916820208683047242217225443266783112216182231435603719415031166681943466371777168481901371441124214239134622891866022423812121061126888109129162382726681751169418241107389416241138223195108452217251192631632392041832022181391391161917118963118114397815914814645619521619488899148459118222624621923914837111230204153115204223232127243155559919713816710191202051074614620717110120124082227203951908125413324421521114016105563619025525391692041267615012811465615111122211165178100562824419153151932467011611777145165237218114195139514437886388921272531031002019648252181243245791264115191014462225120132147171968310521758181035851421742181497110923424123215217916241884129112127324912616189181591392353122314176177343415010856682301811381281171932048581872531867922621427110687643629391235219341644147416820312189115221765614642836012018731561221392152292062551492038711225422922717611810721147331307147149751521191222414524176734172150206321181101416118118914017327102001374516519785121361281492191486911717581081774019421334131832011604919792195144224881612262419262192021417115317713252091362484912971179251561571081781963710881912319313716317818822494191351761261512519616088836442531481011441844443541391281491222477176247130171100237197131194908336136151571001964319521669174172512073419515213019166127249203951473712744941888879224186362291511659914147125233702496912618944812525621239120199219100233216134129926215971603012781320235201135632524924924721619335766112219182109178476158602491526071436234281111071071152122824510765119247341882471898720214622511220825521412423267311922201851151002332002272311542142111792552212441094015046189198181472521811602501872151219748282351484321922432302152262261910397166921639039180352484163146106401481072002452473521511742230159121142108123113881893913979631781115382931725620116123512762249332202551812398914323541178178189934155893415840152246594917176827713614917817819789192582813034182164162202231719571191632335246190172694198266246212144106139623138171516820410615720182182710111721120210118108168982531502219818724471641834200213170242169175251193731922261041671291069925517914814783911651631203463132832274175192226351362017610851661121351232317527204119171762169823513857761492531912314343544912715717612456137612111744721482251782479925127223391074714236102233720316211360206152108196431952166917419163184822414226122806520919823319811723721824571101102011484114737024922449236421123183221118392182192191132492291111162441971771341021223120415345194207710120375159998519298255842312341141028235248233312065110185229135178418825323711111721661225457902532152395314116323618211022110214121052143137250594712134191618217595135632552261038839661193626115939602371491751961321055120822053291091572271717172311972301536167248228675969152174968621631011908881592451617674178157143204233222231109186371546448221881921381322402913897130151136851141011271311782614318539167316193108824372519102133691841701621696102341422017654629119815029123228200582051774810225132136578568202521722678491461441222308020121241249722121222113241138172244717139232143702401361158241180619512036591321919146167212225721188836896163771246797851822331322291951091561041261318882051512542925022824398641235723121319979301037094251986070192261632481342562502272292322123511823017715499319119322275137995316243123174261885786251199882311042452239924115411852482311331932402102271294531842411699420684026237156881751582619922315752731501281556325347248253231904222222915018610498913341801849881821633862069716022444966967652351771916713322213344291076244491741891896914041225164111551924116515459312022821513156251146382011642392144225024613417797774721818105172223178751325857802242271371247617724142311201282167261441141072189224214520181653342433725216788820128871572538119639631812274917573559110511913696150235110213621684214763152205961591531779135113114194892361616920773613813416215012885146117251991377619515109161128149120213911451212511821750502211114118494155243424191100131193481341452351562371085014097027849212725323117395173205188331996199981761191726981636187132062817125399172115180250239177120775926152243194961201051781221192215912512423501972091378823117197241254147392011824024537127143719011313988835551871281972521111373716181139417021201786717811648135439617738105155136197372062532132221466689242787034862577227352161891793122739180136803723368135235154331271191222022161471717343510551721205244286222574171612347211744277107851072442124771651424917233174151178194986570196173222114979229111461864923722613511514777861251964475641701188176222262168716920014655191943315646661561924420119874115712982543216226203201211926156151391918743117124920415116123939520392111381636772127771130248240732017515619756131971729741724920210413113871301212122613769188210115196221318138931382462465443168240251104222222189189214136175921742541173341718323016324112360313901779816544213972496022223720971218601545713412212215830811911851151039124524366476716522954190253801753939321118419013019921179189189125178861351431215012716760152942172401791592219721312923324517117141234207182229163165106311731451086315016325266186187143111248561518332198126206551424125222899199222312171598823170253145245104523915972541251252455410019010117601912491364322535174421757024925012912621421914725312924322118516124733213871042552422291432011505824419119761992428412710112723923824612794192501301211681823294125144101422238222432124116140311331261728325320110251120109602205823321543189131162511175915512357126251177206161922511201418625317311324316919108119162207213164312392471542301481432724425211171254230215103601342321012081525018110420615689351242255235201608963523516925020110420925114915924319414237225538123924776127184215351311934858214244230177236225292001501712148376323222141412552521602442059169248171496535251298705238751176432125236158685622144107342468420240231178178116481621498898210225192199162272251444413195445921815449148205353934821828414545641153413810837128904013874110162091122167491174137120351301477883140286220181752488114819449235177194154249510197235215088616992125517725517720993146215785710283971001581102041387011212444417522619249601562072241721202618015419193111478717223794521378118161136967824021623124611882821198582195172136212167342191481281172528916722416924712711156112361041620352199865124961131671532432022401461948889920222761875217823223317518623493114227220457519524013424619025125413218723825017317257195249702412818719360126240131319065146191215022224315843714355818024115091126365521318917854181422899249781935314383117243242197931192211091899863151203201218722342431031892253219140244501902441652079165476991671884019056217169160159248864723022542352022278995292216552202342071788812739223541701879510422345462377121625494111492115172114656312232502142051462311222175018218203622361501431306530251163833013219330237113235143121225116501762432617194115134190372362710117188271412422451301478922311821920729125237214127821972245332462162122361995812229721632542023218820911348846203971217818418116923891551161238914294632539217623935156162202332811021255819714591110249161991574078112190193251238187255128253186157163193171281941182461864619218112361741252441551517924512511824424315521572162312391346195167124236208103236179135122238235101120931392162061412309016322323325567241189271636147201412062297021510413119311222889215871923931216134821812541529335945517925239233238161451691341752522271872412001191111359319210613133495718145371065341408424711881691801366065791139194839419615319513335166248200311725319715411543219163261413588204213694317743443415391901079911402522501991447255161152296636246817452448217379617714106464782970161701506820013813914414971852422271041729591822271542067315011214947151177836218743855719427113153532558571484475117122106756498615920025314522014489835109115162145128181931081106623212812869175243113791334696109451492281901133425424211111989163203142621115534248244153192081581382021541932402101938889920253198223126131239132158158552201881298724016624620395190113681281962249017711723586185249174255130237541351506115254210611012022091662272145412681112482521621737622812382176199151273311084190945555952203411601262111742341991606621770236190812162038020342311091808519312814612916529187159232312507316111302466024148814322023924622712114061248224491216220202102123221121172942221041601112339952191591932520920316118417811623353718163209131702501291163946318714322121813820887108351507711612314823981835793968980244151151208164714712220816870148208612619246105250128112217222151253962475324381121210945125673123323225315223118691071622527622392127253117178165142532002431461903911012610024975151581831712219461152215520422723417163122961961122517725216855525312016218314194631581672501816422371191401551482558871189127209631102371952352134534214210126162219164252194124412385724513191208255180891491956024997254447121723521221410214832491441766319230169124792202061272211119462181239179163159223741209825312012534172152351652501621301181171171317559229163195601051923571156218134208143781271391369461271441611592441248495362201981262351481517512461151402491762212446012013261411361972462281351681241524710981232231524125021916324712515811111127251917010114319396566011419750150253121398624521459713822613427175157145198851395917311695249240149248227119239648019634513118213716116166681631041749423566756641591751321632148442382471817640581131162121121421356143159220217981378713366913712076108150107213196562146317975196166466161016678139332213163231185482251182962141881132142528835974146131228352523622017979132284631057391136164164313201946977132173361622292820216116837941134150181765420243168410621644342639751116872624775167197111921701791618819292172235613725120266222351393717114213222321249201652201721367567347017814816823656611451462531783211215721999242221332991751807782218230332491231971461702428121503617740741261131722811875155205157531794425320511429617724415016881322253225423525273104142711001391932402101948889914820941413255187121001366118930128243166254170171174281768218111124151466124821322912451212242229143201826122417676612224912102361291991781012152011311617522060199197190151428888825410918322111332255165757115022320023122253186187238924621714310316165234231148721116850120131796349962122431697181636016321252461791595740168185233166155379312513226223301212492291511427219581672441811038156242321261972121868113048173221102150711551882342228230113237181215201181251918323419612890135226125762201321215221019112621572521951261961906431512925113019015917619122011219523196135117209133117246178135109185100731891082919162214251151147721612471576724117514215823237102952142439991232237105151402452271378330581951152311971731152141269423512622823213158187581081124613182399789246602161666011182192522923912015544291402343178215151339463187175245125236591224823721558166161255216191813313717417422510717209235681911761432342531392512132004315019511619616911152130215237228210861896268191238218235752441902172211252482156225112617512511826181159223243205433125022211121916167627584251086322220624326162159712462431401261812471071661614513223125203209175852201752421602401801082175317811724440911572521611951782122233016622920050221158158158225191951725525119022287126195111401363125511124946172236431616363441422161212531722218812381187361752261912552251111772467111913756511561546521924410412116848138754617319385484748838233195208368220242181761201245018667868172195101981231479283101687421718126115134101195144921391391461255280127116178163451426119736342171891361671552083924719228153211451545234152148198246451318227185467518920221435131121171691701785150104211692080147010157346686942102144894417215141271437713327411424010217210561678456200124135225154236150352341646816124101170694371815216824616232235179165236212494415847149144151122101196134161745324277107569017044101240722301875638247117878181781432291126612014542145149118224929728205379030226178172224492521684518921013411903524248250211820011347498221549933204108138224831671437166196661312251651361717619840163928136101321369320970201641484489821912518219515510911751206155952511411781011625361892471898720215013122517520920102206562272121719301274916722464244023211351301291997755221445525010996160160714994190208237246101401522551355124222178207411522082031601387952531771762842321163839323210325015510118424916916710388116178111610191193222146371591461551351561035821425321810763352332422265923112820611182312351975785156130108133178153193145211139484327018825014522222781307116354802081026239196410852461222491422322295713720186189246254579011616111923321079572466518216723420312156151442524617111013987633818612718823624674199243143254972239691562451011621149786236170127569312720122253236182232251188252215211511242545714916521910647671352155953250134184213203116311725423055111182234195126174219662233123310715918919094251236521701392232432054331189109401922321273911621639213572031267322323316850136219531521268321577251121702445015046292491631391302542271851951451221186520147202863912740881421063918331168175229234111177211181213964818817624014518617524724422517715725236202851012031939260531422471575273681611025425317887342472401062122178996312218226835152183127254381787419614923569361371361202127219234281331173644414215021052251396648134211207238643686195166167115242183106165123114367414398781522158696221134157345051623595013350166791111931667725334130114510026124235347133811803421304024015521924870194801731302462372192401182491871824687196160164223336211234182223701421341386671041452529521184127316113016317186212286257261833893127182176191108203227117177424011419544518345220637151130169118217122119791851001411882184623720982305865417919091871899628612344136133237113124226140137178102481881164922142469191331092056240615365385715615521037751741771102141571101281514525114021011711918711151102321171131122188208143183251130245102253137125159291075183220242678958562482092031121012020121066224113779201146119642251331596025241236161195129248210165206114866247147932246082232115783481752492102009462372069156196483724212024970177108891892235851601261247626213752395914125016023122112233213773792071075803812225520910910514813518165253925121218119379903925224463213632202069162215207238107125159211537671149229116612432191912442431525624513472442271892342361342388318747236248189246217243241218103712492121734612620755175124148962231683121018374180115106998566922210120323410922413246152217219871914618424523335129178213201311010139133785522586161210146232101101311932247685162174167119101240165191236193781551363718724055179146184982094751922501831519512824223411721411851517914624311810640427511794441107250164142362382720491699415218150110742272281511671452982241697118989518213019227968178534081167216186501319211163422268218498444992181802223622038219105147868209842116522223119722660886813087249399698887136128181944172156136639168481141634421416919924740962931758821501523616286097249126881245443181922516940162147216342402417619411611818419946961710881647921833441991114411310815155334197162136114123126112228544142254226721761275816929231771091454561957527185623663203129910611122242321761224322522451575523112232235231230213132222402432151246778113418208237177143102105132186923180138882462501201612511943068169160200731601761955818651409410121681117177231225239316811220367213203169452042162418324720921223980209711642161316116225223019994612242142372131252157216033122144185116233722092041431431371581358318914214811124511414531762441071117531602239207199701621785825525318015719122221220236822531952371563294245211247532342711010963218254165252661562507035148487216115023716021516717170141416824114168215621751251182618115917821523811559110249232182208871412501722152457214920920022189223218243232233252541129253132147163312025721981011712213158427735971431402141436131225133972292383312424120118924448514514915976416644414221425018315195136210234181214118569147198291165163178841031802866842778421271618186155198335411316618110833194711262475441791238041228101931822132556512311518125131121739067582617823610811110770211248038767522547247239646295193148137227481108676236146122636182286453314316317656210719814086236216501281565318518888823310224918313410441392351171139240205132197722209982216911618225245235113971782512418722314410023854275336913810485179302291552322912487117401082091752812918172416933892239242138132222402439113948791088161235121171762665110714618022717415530708027931191846869189138726925422318514749171533891121341516270192261632325515312696962011281711711711774819632130129263167250164183574111118923616922711683207244421763520162248884211242211232198931548237229141513110522724194232190176781234232497035462010621292032122352328513429214412052013265227182109219442232092152352141731471734410721621511012124892468426182531687017613136911531261612486531242672231791523722121939130106175236173991524613695191172507624555612002677591717524420212794623824415523418778245242429952404913223119814637117951412219118223223321611921613518896223852532142017106312519520546632536718321915814321562591101096315460721631902098931683710812324611763215695382236133188246121237179211168253220124110199453122121512642221581589712920162234761492092002218976167246851178223212719245242147101171221311025415781226164223311512622910548241421421951371241272459460184163128741652541761541817618425420917920765982277010718734361598383731401570100169206429229174471511488822566230128402306868681411839167178171101591302281568380171148101776743124971254151601562337118192681731441971968031146233601542111132362351731110220529113236221621322419377882432284618018013620820136882868910826220831961902215713268851371964111373111420564219201321013140244239177303512134358149118612119311422156180157661504174214351322257412052191832251721001945179303322892831261041461222041431991524818140106261511197218919913519421643190220332541031909420812237964111151311821771971372126180200107100152130286824186210127253102455771822830180352614971101152421515761179789542414221228583210315297204161714110240151119190101136552052212211396011123215331127141861471885819317922090120243237116832076011018623310243141157185115103203175191167891931762712248160195209717231276111810144881742421336113626237141184105623611724442195781635025562092154222418316325276220242112179831032171781220599022020224413065182351961282197915378193943519121711374175247331675023612018117131311477010112214949262522182271339591216718511263902366224021155244622391021518312321924117015921562591101902143120324335146522342712696153204712497113521569108478117241227472918358123249205107159157702461841491111994531250104521902461789314920920015070101178239831281642401081351621761066312522823110481182218253161240170167271412425224127114590211831732371999327717271102235251113641921862502361791721724818837704040154156155741616919628661452291931141722314468126544142124138135672002041175232212161081591382121721910081501161291920455229119984014870126205131881769628617422013710056136174571092322218519220413317312023024129401352261522162871251140241381851011811020233161759611264681642272102161904613119323023316854779820620023812030177120202251421691789416718623414340133234130936425221148581181963168611876103371541004317671196162126241153311541316520413919716418058201762321736111460253271492532713952031839424024822768192226491181782261911568826714942118138184214810882052421572481991277023941872002101616718759196515651185923923823814453131225216194888991486718541117131129371111782112384112481022714153127245231582111729121556192962407533140105249241631413317224718823174215192143552522031516310629207209252461601411913024387100294795140246702204513624242195142871532509943682491546216679248611032061563191152592296522023621281354284251261612002001439521610228131651391917271337118255191105391315617596207203111118881662421725132515971766326129193171932532481525210981892022413126237241194175451225821315012620910999592415182361351014915923427923917060551872522441522111012362942512361842491542155437236532021315223427126161311212542401862002091102462353420787142176213241227472918358123249205107159157702461841491111994515920925021820311885703591252150201145135188541771262501856412014188253237111174917191214701431782132381513387612211041481671939656186482021921815919923159234197226182809319242149176228228191722218121518742020752698818111491651247824618414713811425416997973716103521649132011742491781949210913611236134162176111151861867216188167128902233815611423010060246200461714919413685111526217529233214152149197234199118162441351177810919713294914868842192459214173191821618410239162209122293847561420717222113021624419144219185912998620115339200158581241568228610018317371561871129169402178131071477192262314997036114192175741924272291191382392181958122322142201041249862141986217739405723619171071671518740966916525217443222137205175249184108575222616118645159611032102183391012019656246144235129921712991426718541117130129145182401162169559174227551922082251415914322520518718611323117520612491157312481682414310316016013018217117412215122820945751171881241771088912514611014222210652247781163150569877159216215171125911055255172111333066113144116791621101214025218013315952711302392391591071392082071801511941672918216187176167234204602618114991123184109119195751442402351917024526173771101687185711419525416656191248181197111186702321301091192473418519018820917711124841792451518311513012022922718120714291219235121216175677823223113483223568412045161125188174242250702329137228183796251571591367422322123725521823118120778163246115243185291831242321137944793581146259392443111023623385251411081051162381871932351419720022920323512513134223199212109240139178213238152963105202506112915924461312252324980168963215519924816624202229501502818301451931562362516646963769192218633473627417216488819319811596145116444428615315420982271673558125177405085249200618967334238108123221652542211682296801718417696653921010917228171932161394501316917114668149179402382201282534782291151487537164219192162441084758198531611815113710012324187158207991601213025054173671882081351744145216178109169314715417712617587324111821224610967176994214614710212219351769419724514398134148143236161781071595932962371491251241328012775160271471951776142132197238587419222610313188783358117214923970572411205511392439519716545134170852481531966146254174136405524317387962112351502001502091932521982167831986924022219715723272132101139193112108984172492021042747244124265100106621697055245110168013714023010215980883147741191192511517670192442351012161316517550236184511122176991515223618422916124019236169224217792211571912536617519183251171582511778715862524811711777145372395411666238823635182252248152406319167122141166239120161215121233822392542271349591702357155148155720210620114612225158161215205205462136322020692268563175125118148221246182215131123622502131041104137136191671901131842081581071752531401561277632181255217412525062102421106312620878229551832461152431852918312664817925364224101139661571832522252302502352351178716850262172102321542148189223219253238231011712213158234101022122135255118582092112274623427121341776517488703315119314613324314542201613141761211251861971891136172301617640246681551001591363914141723875192170160421994681289115461691501371784466744114310623922846919697022716210785171406816189713535187219348130225144409577341564682164235213214129982398684165220142166565045514962188131619613531711454111204882269177242136183116321541383518411139170343016534821902283919796219222652282025368349743434212771521321611964132194178462452819124741169116162412221572322191781123113712885150124119139131872023775810619644177161772028340113919016411253892461111441111741236515179147180124362091451721522121552223911310390471641183496854923520511119821475255851821401422411371617488208134877611114618170150271247109140128537020931351951852012121111601891309861192113186169103240192224195235692191217183151197998913487208225222241202496625514922119020714215112594101216113114024425218913029611281762311611122431331421587935113146190167184200209113163197173190118248401531542472031692544231210200199742422472542512721414880218401121038020562772412054117683623811811375161231651562345315419022752191361011457019023012177241130124232671952539952182248245359795227991702505767252620674763211011816925422585119175250121237179163218222233252821941617795391162441071511323427141224117149109224231186722445024424227213871915421723522822955246127377612114124421024311910763851539159235120245131101203234351102312061574518218623165187121462411881171789114920920022189941862399203961254014420515759236515917044167250248193207241250249101111955923458771872371941581939624592362332351991912855232331146421413417173717517175511117813895149114248172341301222322423171192747067401501714013912019519925519413716410821493951322551419571181739213691681133912811462139112188126312117214816169150812197140212688422627411347257811917782091522288216736544131136352455877262231386123713914417513416118420820918318145220166215621431168120227132233155683626201200143128535926691392121396210023413024812820313214316386912021890423012075161157170124814317011881175910563109331892261311828019612227225154989482541349822225151189184322252242239141272051571592172361504025424524478164227941091004828592411071402262184140661314714567221212182517761131873714812025313817223116122323623555215946612910148186187716195122292361902241132159491311611926415616311715624210316020060242082162357118820217622722808084809816191301801511269820874236121408417619958121137112031502133581661151715997153170109220218192138513421540276115238122251431482238243980234100135238713925523210157237874813211181671901751516711291635811621686632481931516525521519712226844718923912015731126802377821615893938310010536201865618133125121522311381571581582252431545421111839120238176609831149164236101123468950220190581867719620546213632361012322321212172432412181037121722123290192122241113104187322082111796625021514317254805624513472442091291101092056272223832041812192021257122721818310889253252394419511016715863113593924519139419082253192413193802262492022432149253220119170147421952013158122121118155149120235371661771591681151402312320717920916210811718226201883880176352521451301252149250132190339423115319396120241201121422619511414110617361001091521681729417298820961261442032241741128415010019179175116151641629712222021788663142148243578469196331242796322001870795359136120132227138722212181548901972401931271673414934741611862531648220012911512824149713063113665971511371122014425020213016201102144892476020676164101132144016720988811023356981381569238148242431781741471732092169135124819116713534721362419823785249112273141220466210819223851001431597189211156114226217882452092710116949105815125525413211356103138180147148105482521819641724974163160985216827109206195193155104253166159229481361671601949510015320612683175774132121240141131428822620524323718322341552352456422312616320550849324162421201896260142129210932246250234199219247176172963219919271213145182115210120633121768819917117525421665110516350116846419311424401391268065132876125140429521824380482910938127284224195182209209237862372192216125270742382552051112381502392451781181046513911011253122241197232924031235188124249991782551831785414061216352021112441321915422318087249136121209866891961052441496691619620138189631181191432012120761191951315963208221268217175153151312421232392531472138660941412001131702317715999204163173173254146132209160219196188216238108512131582441320787246101982391711081112133123625115620871271771592091437416024011523823234321431912361781222219143167641951901939989392261022151781011956691979230191431991521667188234231181207142234636015924410715713054179222102461415711523072291148657236191236159236271723511323527110176173213245130109205126195190172965724445203342441371901592814110715923811218201252217214132253145312501452543618019323315410223943236219100242228250114620234582251501432657721527207158539214133215144702155985623711810612713394119123251234251883112322318325112623321079141168167951504527624721671120622162071116221919525420211512123822012291210302468316633236187236111359814319396565880192250224244233232121379547882162601893421312496271011529168192250205971088281011971784201761682211361162297198692321051362281745231812218717012914410814450680170582283919340665317712125518894201801342281581291547690108108107109665290223167873157103621911919916718200151171120922362381738414414425213944135105686082841979924489742468319222681721241499170821791118136248684910872242920012721235200589213820218238113965820198341851907921241141351746100471952341291145207231392141261741752433396165165178191968717311791981701431277718256191724781184902201531961231421116791162222238619595191142051445120348230224141184878049262496168959322122414162131263378552451802311661551101501552411221623466992542610919149214712712022520180176236701902408371617252101218233120631014084240227100171315924136170527812116628205084224162112261193501111872371421341091951181012532371092118218194179223631110176221153191106991231767111619149791492149688180213948751431111001916119264127187213153190831092254143165136165267167122171671242321525112122871381031729116324616410920191167021114392532002431542311892360119156940193227105171875916899149127220236210197245692512541628725318824621710536961718216921912116525039197191701251951115016125222613325371129631211761310417514779262491738127511111383374140227249237118771152021999416612615711220213519431251172613159946283101120181631612242272141901102451776725524011116221918117217126206111336220220513941711212375684123126195209129221471667819524872116132248225369625316814419717513034150200178379614969122022511917614204131211290351741164216598131717278399222342064036240180709821722516847138102117216810278017129412111992101321443315143111219190183250107566315715021219295114571715820282175024214618244201717110122810015348141989752142184164112011673423597249161662283512727138121571440203222491307212172138127822421051814446223132251102686623214221510980112121125491352011451522288319723916445153151291010820218194987247382285921153112192542451872106433217501461043614021723332222187120282301821971011391932402151379271228765314057265211631332494920017711341881851021441929517827511712281206723911613120412814219345243114131552262821319450236240166154191465921314718225124152114921611220215919312109831911442192251771262023242248113111768879142521762511546298292494091163608253205124243643120602192021469151421121121072715019324657842417249152119202159253133193241125247221111249159216131619817551251181091821141084310301101621471424396023922810725013715970561812314316717521786441951719410218193180423114286185254250207200210232972195147551272111357812511652253881352371921431789313523719324611459119216551041711473273912544834244991518391232143188122213207107159157702155852351981455260191104192191481639156821435417722212625013423180155121208305918846178155558119189242104212126601821452232327158255188222332314324386231170253252118662291632471071231221912492401221956217121967120238242564715916950261811271632468511824022010325517621122123725410220620919254178255253941862121211744321866191216133532541731039518622413024317324650241299271088239238154138169209152371104056242231101541235214194161262714290130793621310097024618517215672696740861064085170142222719911384214225804622816137197197942025823821268192102816176164943420222975101177491409227219449723401782822317725115251755639149178114238201231177173841783878215225190821811381939069196418922752213679673468113108219128248140208143132107277451071291942103617713711154148213131224182572098142139371011053623568192154237788143292541228019656217214810883193897231181636645522361398840128166104161512041061982291791551972161451175224254218482214952512196248723632459623622496197151881618648159174462551912302421661272352141731788413519138592211363142246252151811421351392425325173143236208223126243969019711229912141392462811025442631971611822131452401811781331471493178128712411371302052252301631203321921114217893491545840255177292166135991711789952229191245218567013124215922680252103207227802073947120174145675719911621617521779145531218195627114197103711022114242662449311794248169167747514213215913619520913322141493496771917769152122183533156277931216702252291231853360148743283403536981771771418619234145849018033230120100985138168132162178228133157441342353513913021310242217337512815421021713012060387519513217813156979131782311315810515820010117717192577219217819518017518145175412017870117416323460372262172506611376121241216238100285167351093574192226244237201765617817117113171766629109120246511831632217423121717159886107121596010923416135223546195751735962512613119311281687118256186197188209205964824127110108811123110714215123525124933604013024916188812414011064142352812919714588583531237595210618117024586194242126171391113617241951785214610457392869324815137128149191139164227177626223382492001381621193178233291921052422471511622071962372211071967245718424785233381801201368327435220631526591232962711710420657201365866725110311797819919982214136175187511312008423534161234117761156142992451311933152722251961421685320721314823018616810348242342412039648241213425311220192236220117441561872001092013247243131292811721122123725216201311939648241413324579621421593240114442065741521216668194565715814616558148155141174227124436194652442031131174167234143312342126812017713990135130415682144092692281872346015359107422331062512476913967200204313613914122721891161431311696724255248188190204129178861249282468622824864810935113914719222322018323147197143941765255110716588822134964920512521765236201131731712410049144140162237235191194155791551396922740922099813119316035215191858224126131193961282548832231160226287024671241562071621116871180220230142502412613122580248229551111968763246928317588191254340961171991462141642241222456130234230204328652165692362515712869154989714817153228741171291331471922352121702117176220197158209161692080114120220781031321843733106113104208170255113411451836896171196988139774591559881491421969192226227121792291797176192981544723922113725209145226161292381073696209246717925108432157118523317628190245144163180104122652341331004255179234895218118220194131193224132171761261311939620880143642234115142131113821517493472551467129139147992712613119311216424824577951991413118926243247118859215401125213924050411814611716044219170341316080429710391171379617138801241081751802551760341159252351461372459325534201767416215822824714316226177587198341192953207851644498214254121158188401372481958196173129101665119812302119034242001481129238132179248216163164251117166312517226261931801264172175246238198521721891142286255110712537143571611860182781501592420291249181102717214820939237732411412351322517164158119109216132182142148951241278200245762062813119396482412716814317826126171164291902371421118852351751261311931121642492451831901421752542112132431101633218717819625108915716116186162245712194012042292431351628882371732002243168138112217718320021414541072113243379252152139840133186216691139145327121132086601496653224462382846441591821761224516816029125142172112493924542332810226561001001148103921225124621177402719841241148229131187691922341931531301059545286186129128245237125123208441948422110103882182521046868198131223662481401368611247118859426960481481493796159180651598114201741561602024616525123819515614778146371311932241321717612613119396112129111151219186117155889189178623517766190971742099122412613119396568419024019324722521423912415831954921219970213153281499821325071291050191231291352867841721388687828664164148104105248771697419222625282156111391918583184225104432511642372131148918212173571631312150416076842591243971171911926849431512051382451921407254521321661817014420384112124541166419218675417213128652161767096379319651197221672531201748820127215197665582193329415010621251671791861461951131611321015524712511195175889371123629215931452532552542212551971531512531411722412639228250331031381939648241261311939648249411619024824723919947191123111981336620010714521818072241571541926825134221418221422202032131861282132121069335812419531716121313316101382496017014924211139201249834231207226609058124132239727622817483412281713770441552361321703717183134235882051018017472189801971308030934517201344256532319411317718612824543171762526066242024523218123310236268882071361252471213981862486771141838037113226245871361286997761037516512817480122532262271671157601522966935024416642131772282039519220325524642132105172193965683596251261311939648241261952412922141732232541745327215212102713410421370678113416112818133149708041431381365628452114215632141981779245571672263424510018513614686819710864917176162349681562542214199122213711121315190452117180957711307241135821961211261731121651361141689410269432142202982212241151521562219345956136143332451276918673190121148228452451481702031911174025137271777912424619112324798158136121146661821381891781511917451149361776220413324919724723171170146230153114301253482461372401501472158472180148239701121581791192522532232252212552411213596251246241203964824126131193964824198820176126402227191133441691641421551281819444416698802312137128149242217672172841591317319324047351302121155199194354172805210212594104106149178681626524915918124969555358433498861618017619654202738343251401394491154812810524124166136241191191021921511281491641282132121322373420223742874832130145842915390852422297741562414512719417812411111820815443139190145367160248693313916317538419512099751711817714197250741107114510844224865196199144108228177219164607821822281088111255192851201991914469170205768596485697444131193964824126131193962435401171674441422528112098810251844822618493890231325612112269196161124621031375515620015780192162881914850194177145351631701651461812537222715017541683498113501192381132822008835204728318113612120016367417220616610172181291391948366416712217097114341024117314169841738192833481751248223315267722142518839816215156213253234661452491025825317651508016193139105184245164120288335492362165110831778107661242176389182113632178146971832361116817790197137231156128127253254292421521741911261312918562200891024824126131193964824121342329379618113219421423230194128109110524221940177122437115512869162233102249119241088817319541196131341744575712216110420511119717882045995174162841451258216612542151173165881122824116563702422143180127164221091575321213922743171802005413883612491721367912492121601141622481967321113718146248125925211098818640229196243345810941212082617211124118409614937255185985915124941138882223171412861391244311873945912510882437815213311925225371113214155222134104762131989648401401281014824126131193964824129943796696918810623651374896912413935181127361816920019825175711881323420197401341222017634137202154248852021024411391471841155011916222278104231929410419422922022251459877776832861541432424210913213392141692531632008218544206169159195281552526924613741227323873742522011211732343024516695196168135115252407714411020810715623261104191952504314917662271441721754723459118922460892331002239248240251241154171621362149191011711939620849215019396482412613119396481401714812821322138321829528971921022317656194232177114251711477118813222615694213346761311881171762349875174846518590115124122411331961091622482502282434975192102025013334250972522241101568414116385196559019092444122692131483517774226275916317176248152224311791311582223161164128197178117178341263718117882016621423691641918718896186152180217235223244692252152551361213915942911361311421717612613119396482412613197140641203254226612631472267566191765611312179165140854621501577250133741774022684661917613471962296919242731582019034622436082148134616775373611352352340100811393725176349020620122329345335421214324310711368197231802521717176248173160806849200206104444138971513614324840323157116344621939598886734961652285652471754222845187261931801797992128247124234211562451621391012059648232200245192225236542412613119396482412619581199731921621762092914391147149436691281221868219374191981471321253317112426920616851352491153044194571765623221371642108136224115180967220273221672091453517756250170181231120147226248741414923620811434313027197161971752127150571376916317176152223106201553912111319044174431112086720415723528129197145975824617882207527157108821121520316114151229216203191127512061242373717821396482322412039648241261311939648241988201762488225184112681962220231205596137472341456617817592198831820217324543961851602226872212608824657179142622992214122124811271564882411602013873208906918015618313215814219318918416022115201762488837313311613022620812424116115990497101326113344586964227582196414514713921573818221871104131381282133634148130123215212432001381097824081196241161482101141271117771481227724919924722723725517812613197367019250241261311939648241213449194237952534712424623412765135888177525416813939199197183411820020212611815175216423421422723322212682485684156444162207153117180401012501714525012836718482663724171171254249710910481518710615012818117582211131681762237514154420635166210186651511220878562792311415236226187179217143203754912651722311971982549085150705065210537359511373729414766651324758213124923847100139193962084922142422910363187321918210919522820114724116655934291946030121228814495254168441312502087229951958810044245251311939648241261951612411711551901347925522719917212114814816162118810613024215734941014221603666838513214367374213073108255608835303576166162169525420916215620733222017421541481815812982308199441171185901802301925818315017641722541062110711254417223096162431631138917067638622815517624612413214322621314422816911412019084641672481921818014108291021242161671283724920886194127591006322384241781773934137392022461821914319925112611514310115119396241988889914847125233701729118330115230204198135632526521724222611321593191149207221178681876247255261983499169207241261311939648241414195126243702522517162461307416237161250232168136124221982352435581482252282351551396948146251101601218828680142776923513011115252166310139111342283512571211771651562337184202173198146178121460881624113635177164186214817255237311291811718419438172421041833495171903414515711334962051811391211441885614322271902097244491434523779643310812318541901354841109811442451861511341533222231184482071781242108222243166727011814913824146101138861733494177603918411766561321131152297233239253201910220414845613165974172492028818351401282452109644245251311939648241261951611771136915621242381211508021326168753877341249215278651162717181234143156173402281771798419215981131775184229208162972417297161428344911942413790143243237955774201356165721717218341601371282317286172185176206521725513474224128128181217389614517288111821869841621286956821399883190661131210413768883617814913810817588194836668171140124151361282144416283652461914214617018310208421091451461242115624461871733441219361535247115110171611461193512020418072823357831122421461271978917512716310849241210359614181198146249741721516991692072412613119396482414141161193652522372121698137128507842850572819612120123017351391582041012099141225150195201768719616981652814552841721394520924420915971719046891431814668746859172412129182518411814238198203273201715317133742164034150291661791955717610271999623418687129169177816613316215064200122175231611403433115813663232145245217281661979912038876819114819992207392118821921622081682001373286146117142178154209163591506813066155136108151001353613355204105653413419018248942453125513317994103444131651998889914817736702412351651938823451613119396482412134671631482072271091939891301461511282451201108277519719512613214413269100736823422713840228401139111412139641185220954420619321731651716824245132245109169161654413716620887451391517821680441381282317676363320631382559915013687167388234561372483624954137160197641523121047249237172213711002336015820122518016646101481906816418255228197301089932441432281671682001901842285985202162963873441187315723824333961452492017624269204248200251241174107174149456131659741724913814724177119111471504712776150234180183183161187123171462011321722499920315017388177981654421315350101178851348730942221092342352351473788249144172252741779819721123223717311116715722021520920946107135141092072033124412060142174174411781659462203202229242178230175621181044712518911723554891479512218113431585134951042231041257588541051071075922416315815816715216671861871431111041438315911313112699902137017251251146422239648241261311932402262243696205776811382361216416920023113525312319373192127113444416219114180617024813712836162207209134222133441818272485697180842317614618134254179862321386233623820838113119671701302171451678735289203782361702017711113268882311531614423024312694124156478744177473922344115178888147195156371711471132113593124321221743219255485236757195244132143301782447322516250362551858792130143126249127165881491949648241107140982335110185229135214219023736189921262492711319825167201154596161431122191096323193162872147019460461882401241882305323201218193120988246125442311509112636130822531514014109188236178555420116220176251132229178124591412341631956023818924712671123231206157109217219725616211219724620953951099718921770110124248195311471279721712319352312279122318625107215214694529109811112725191932371772511999138117183223126167999534139234719421871882451442192009648241261311931121201486814424963513835146175291617623019616356575882192250241128220215203134951391921161645445018412750247232274966134168165161658917019731661717315016172851725551261639031221228871923417934331562186419223414925257412516417746681651631717220117183132170785715819982883613114670988220784084113246171182253237166241441241275956923119414511021249222356693701551791391116123615124523313918724114912323967804601311938019988899209314016014466161133163100166761691392391183110212091656223413612423267311441161151002339640868096818081611766688134130661151859201378862161721651632391872502341432262039525415421614927811341104318312723267316036129682479133150219110187831822023111689871121911941736213266142462023319016520016770381453522591182225123222115165991891171751411881141791351219511721318736191131237209253227369681104187233166111759418917838191121811832011676222674111351501771162335314218226126131193964824948820216534222541276221252531582214111135250177731961551352104516823623851476266200209691037961133411714212858218148178252121701951947852149701721566336113910523399988247888203788019221842190143134130214724314613813217717180661111651405251239141149128197481549821522020824015513419669131655256617854766541692231006811489913821310118865681124125196149588620944199393722392914311093253123417715210853241219688899203770807616032681132275317512118123625702314340684491118141441411321621971355124651502342261071223322673137163161961992408531106358122579422210920022917834176925716212138691832211181991291993179632538418822729111147165209161251132801289789250991111722077755221441307612552212858718975196174110892620120712611872381872397917849211219312115011111719310223721811786622011788158147160163251150130191092411705520312121115546149165145401139229176173233159203471911166812120202152151151612026311022142452151272222421110910112557747713535209216238555101416131193964824121341637516592198149391571362521501091742222492212081288881216020821213888361329216946186284211811392491491718216213641209100218250622181481146716885234245162109241104202132521619019025511320213197283020325119176230199345649150178150157200137160180186144181132415920722138114124841501281662322001993231251161764086253176191151236884374226202129351413428675481321891450126188113199847130120104481408514012853708198411319622005519112124312411373516018618616620021048952542421413419817218319615817117525421665162135661372720161236661524682121988196107180823591271612511961716220142110184225243224168371386121595255252175814046605791311013888288170156210412238216162216227861597024586222233238941322471902477489582422130167621612522273696233226148872724977103482412613119396120971688642248192185231160239153537417214722711320413714113722818315312610846222092713961251785531715210229170236575215211917924624971698269126127126209841476814218958186112304420613516516020054362472502232365141246174211235733122210552722691651672422517176100691311216315747226561717185108231762301329821499131682317618413315915734726233194216992426763215271614172140136939512125010514015958851822612698417249138183520010363251257116113423216213493112224104164107175189781502207134415611921314735246124116145202751922262003317514585186617827635116159561412021122513637245104159189621062442169176101203623791220812261971175458950445223311711318183116244180782452145441751823820277866163218231369641129178812714537751741777012224973107482412613119396562424418524482601192232537417214768192154171988206612614521713529197181181322725413324111637333412247285820176248386124922326241521762554966502223019474696720013122241661668621739177804923923517665049281941212013889114134286791262001541552022062061145157114124801502372214180962121222433281286928211046231767010821945286147180353111960562311311052219139228248148285124720511119619919111314710853241219688899203770521889116113196461642321631052361941471974721772311631398424612424412514168371622341012313225216014237751519451226209655928133245137792122531021752071781012151292436457137731182201241681111192685101719977819414724218714724010071232302362294225521624320925172353314712021710648241261311939612022524922822915199253312392452017612614623367191888792036111387371311031447017782314911716811225416713689867197138124717381881019013471941458871153981026425429381482072262501008215012833241200356757145123261471897232162845119482153911611713423512421247387315324711817176562232131202411379319215424140160578012710011279165136453712642216874616342121198165131911423624319726106195254116163892103813097177551361612522724125319987202861311936421629520116910524107184137177840119646212121435210611140441713881196158151834314574231131361902076221020196118961175704015916631991708171246199242148191562072111565722224682232162104682442501411823094233149611181915922553226782491992221032449921615216311888818311015728227223207613119396482412134352032101191892117123924845198133351508811711434142217145145221477125187162212122920114211875402011491071354596121178133161812313014525092807111391235147201569016423824419915913417821411935343412189582213698183716913116112818166417276181134168561841766383891321848668169342219816279881476819274741581711112124422819622413938235132101114137121108147227247844317822877761422331620943452214214120126312323857132343520352242549049221424197771401121947708112114022123153942261391901752092271116879111207171171706211825122011274175143204264518696164704124929731661432161782512011732531562082372311322522506823678245376161195143135142150209182145193964824126131225240249183255251861082482492392084416217197153912351911231191625324194353412042182181722491759472113968146412121641402242091884164110197193125921447929108831193341462192321597229254184228351641651441161138351822511973759201761502311346817258564711089392213924118437962092072121710233592478442232458714417514817126145146118169143201170672351191491392142197371853920176381335724313213161321901911063715421959100143193964822142419777140112194770811211121462414183166200221278014820931173243181572441252467121815620821121924310613217015237911781649410347841222211351860196199512714170210161961642342472532392231061899314419925112120478175247225888250424424671541572347524417882442939182247139158143193964824126131225232112237187222138531192541445342081448322912612615038968113024917522293104214923019011651341451642213231184229134358699916813615219783610120311751131769534862026319513269192122183248133163164218679717220023802020713614039123221225222871651551729210157160180228389611321920212414589110171595117514616439281251491659216381566314036681961785188173226249829725581352255659149315172241146951711248613715963247219223982098910320230131225255183119231651461582459719915923310723889237174864336176144196331922495241129154811812819669799813529131812171334315211418510815619432176739768168128732171491021147428311322519198131131140113401569613117616516321473321161071431532171851861672432512452041872192195921594240381246284791912532462192392512462191627425321324319014112885832191971361731082364134793322075100217206112124251417819520713143802187821126210232186118832914718015121586215186261892424911819923510812191239189236203782038725117915110711413199168209227932915920912710211812213002452431031111237512122323919116520418190145547412119824420432214845014325224114577163124254622214681675313687121599583237102571772141391698432052111751318525139104211142125186216707931762517694221432291772492202421148913817518019241961872113836093158262516027239417923715510722817722156197471092117686341022222393271401765822223914978441896322684399495201145821212252461561151722192976239379622919046247243228207211101192186170157191108242553019118682126231632531131212501399518143011711661821391791169220010414425621092371982711919023224978118138471952072298165225832181828269165189188175812134973187141246261901122492321261892251311113812556114198181177206709423171186152250941628018123957234107244162252213231151163163118278954124188111188241244207180218198232177221233880080631272542461831492553025525454232091064430127223100158661521632322512292321221191655222249240310195681521271562218718624118417225354764126161532799131209939110519625418116616699183182126254922298721222224282892392295959221104192186531505926113402371802318523614917378153106108196166148161233210882152132271575030115632749172312557515691842519041641061511411751715617413622959171591702098621115514321117713693157890185222811211542272387151723520119675184101522031992494123124410644147251118851719324298243119172247202207252235231499512621191202228236926032232224172154218467010816510321631107569214062554279173171182551241229126142385951722217012213143458151144822914718021910416522525326141932132001805212258223168220231602291102482454114387117422262328175811951591958623918725025221011049172101289119717423424822810356250207761176525122162163116235173159137245951219028302241553932141879525519865820121120330231107581301988268149122822118422118856311971669523859112217321301242352282152011771931681721264151230196198191915521922724155159597241190867944122387110119212212168163124102571942188735502372292262321212203021125475117152242432406618838472061583317014723513925122718988024162242232323923919881142232291811821142371771045718652372341181872045421922968761672251281811823588143200532521924149351871901881821821927172549414712799251177230193126196125202249157193228122185250417946215254216151501272452342234115130622824322421915512885835919713681850217428285235201814711310052196841341632061415519024618012049281311181088105171641475024818824315712752136401217717422325423722360109271238118915120210415217022811716250148454545691365751244127165239250174239445522024024215258832381154618322112225424479791571457122611707417499183247931251264118324317087253218150811092485121823456871991031711271021101892452121332202431172492501732281771711741771819136402242261202391272482472297911025218913625279722815411816722852031559924132100240184121241120841491268914219971349893121151917317817621814347141235179498163103169172511571919215219710210813916817917321621410661864510019212273281511061111902216123315823810676237441181619227110725523012644199541342291631878687203821321632891497162792432711811111118160166539446137247116182143143223931071711772465018422285142194202838431731842291221022272541692071251181852381532551886022910394802542342912780126226691918030121221192272524824638962132127849988421641821088251071101862331091797150351607614226691341374214410017624819272545821991032272097064121205107542148725142845951726061467920520314424317963123253201109228401666014949357821810663247162583818515714823941677611017514616724622918250581652373421524012623112320625320115285201227145235201209782331342794222076357166782015624519855190411821812451772912522318517518520416823424320325320010124362151173709822910315215981190183148207143126701695862219253518325311498202247250236103632432281772012472422411432235056381212361821391090092124312513112789222240194151150188158821861101241887611178167140492399156302133728660561782551947172137869911213172149246212965925148585111513123318119139145962261071007623921788236104449517399322311093318311711415333147237102891551594747138208147242213952391741491111961095518523611918019920322587818523014077121952012331756996202832531145822910713410111215414012562212108716892143571231588185206598651962452031378838229188220701421782031788191771581592542363843023676151159124209471493125215120745753978148723918616360741922117117411813917195170017893242027214916312850180236361952008616312713499207781235134279454152206817915722178183219201240492012471541631721181782211681682022401361661571001482181103621094143237782352425425250362371807924925229136177131715196163211133115917325415320111719123593127508810239251751262382311581832271773022422624925023110431912422536388218155209106529622921212314331137152210405117311818512511022763240941217386179523816699234762538492532052357911715122227111230152189271392471481673086261572062242314171117206108941561902132168811122215956118252100192742471171872291742381067623723811217985174106119342115782141196202191851922187823821320212218392596221161421622221224762163102153137247145118108857170235431074313124510389113724756212032051974579771404723022920219521122923942432502421481591402552082521521991971711289724125514724812710181179911402454286418210884171241100108202175616317737131691421212221821112625214012014924211725166210781437981204107391892359310370146285314925111862811002441522288167247188231207741422502615020723117716870482372282149163836225222519127172119212942151479740143671429626611821851421676325319920223223217397163159951744347192631881742521401582522282392813216517362163521221241821472352062192321137525241153118210100001241151242331471594019125422720713656181293930631825194242215243422495238189199314623710218792576194110109207141501871522428771359921115019819861422458655238991022202067761712528519612419114916514512824596196159175701202181396717139174142992171392331274195242209157171431312311185031209234234861031122092522813318191192202191351862298120064150215184202499413949239146107174426325215623115019572461491672532441152033531255132881021614212824510940195793779125171783559232591134386211235015285167223157239544221951542851491671891651887224918519615114080119223125119761092001618393402182012401772212351901406172521866321311318914413463163116174239250128112351501552239594255243473015666152225227922722717695434739092239151247472841253241169178124248811014579185139401142091978719965200261052591388817915023991525322211010516812162801421082615019113056622023986231231203139359685752913724512610510937166118119481422251811571376516458215128181241292342181186172708914212021413825121723019824121688825350172192172417318130203229392421914210186227241209235309119025171158909424975519792224108888156151237221419717693192250127221861110128111959524916791202171127252251651720935141158661201641839462184120172172717289185226209165187186862501712725565247155331271651756153147192411041435419111817424712216518750180175155243435723410618821340139171155411692181982301141572291922924117154158203317021207299523914947196227189152139229315162571361301631107611821415713110784237443521316524189180999341215114160213142191271673517470224170174137149752361432072407226632322071425320393207123118121193272559315315415513910312817937961139441722433996104823617115925068121245143254682513924814511810881115128422056787151222189183199183187763822360213254851541211069312335230236851422042021751642218831491021881431772411371205914114721923271168234116151203202241249242194152952914117998819177222397019220253102108262212349184200250110242851731842051972311451774220552913779271562391741492452161832171202381381181796097124170236139249249169220215934525395126105121225235127191522261212242369881562312352529880012271488256315824143797517160208237150255121981263596237598821825146432351891818286222272175124521486163188124111902461975427177143235171181541212232351981721261321742469615911422264132165102103981122211721021321718840102158413214242209163229121113845066229177201128245229882159422881721079859249186110220134229136172188702131101982271971391772367617243247242961961717114011920276172117124442464216221422739387191441841451835424624375173882472452074155188245157241856232222316919258127222001951181188247174173149143444515612882056721514819820217750221291671401579011088254178951341642223071439381411365916953572112724717095250205136761892131932441761182049162242112249181896199342045247214203177888121172476078187251432322441848888588266282111131242381392271791471652162301001729937118235732411536097114162236139227125891152271511324311818822313980223310783142236743123446149103223244230242180232539860220613312819712117176206159128501921762212869410825222720339744732142201292105612085212157140624310125316118774123114581902332294379899356301271919981871211251721841113163672262411981967250165591175623019922873249160959013924719712521625220221814224718320123522117925171742175911171116816719115363621206914216220212116311421799235253146191012010910360221223320322816913315197122142701962187470168234537262052422328819924768188202793623130222128841386942394224722716122290185359899631942152219925324220427959115824317117513816512811533961139413412720123898255138932451071312323487132351622502291941892541063300255127219459622117123517943203101161213584596165254234137210127248174210154152421412141982451681862037513120987239112310618622847202463815198552052202432112453523619624918111999221165210926226831715421478148133991996117131143211209126183124112126227151141191477122723321117247741636018019086621911885056294832148722615246711042614921910519616714423109207211615918223119246199123921371014714322759212391055830872389195452471721741492511231891931392434022810513517122723724220212718416592249136195171803418019717321159471761192220064141236379612546110199227249209128149218237102891902435117148102787017211612434721462224910611220517017622215314121920432218108254185321982141871651212261292101402516013311225423217724295231785172192539424919225212413792180171601502071541572914014420223312831524711422885175220601276023824323419920266196169786015115411318317520913810421340227113123116132168203154173242169165229193401722171201104214219517721619179708425225020210615314120737942222510610824025018825584124124239248199791512031429401993012417622012725110922913763246191772017687222006414112423467551512159425524316517333619923260622214240175161264122621310917752218324129531695241198167382032101516389901717717816611615178253202223249106196118115132871652231544018913725349117176876170783720417882351992320231205204157128810724125271151222022532215171791412022152522322128418516218112124124877185142143444614816556110912515825119624178217231592032311508720211719227171862622920618114924222921318165682031458924920313124918522916817318020972362001811511511552542343522920812912522923821919148241724729791241146011236149128500803512725424618314911919125414116557214244145199117198203926814514873228127454715011118019975171187186117192101571851312412502451781202514516517210390185112582111791773518539155986318721113599226662351512141941891131911611791908626711431502552421923919922714889239671391992031311895138646511801513215116218229251391667207855096253245194124571151327235168228186158602091371522164415244123165279516519118618854184246861015321414915985142186202229211317171174121233243203175190249152032206817122024913347148107159244164120656272220064141252225175191162252159247252197201120146167170205108142192202401142032349024964220551512218213881692092381482412531511491652071271801721754619715611995296245384745253230198169138231163177186806191164242391815517111022972259159181223135102581012342222512032352261892462271132021891846122221916715087782062032357514119725422987221942202181771902021901988812121420419014720316614078312898812120924614981273921421520311444188191217401152058612121023081722071751721961095716679127223185189106180927017215625020284179252228439481942521552551821803516022124121720715019912524711919951192217161760001062281171912441622422402512551181689502086011710617092571162182191031507914825522011014823820916359617213991656112373201107734512524131202886815211165217253122078271672014722121743981799913113917511115690216223136832539489239197109539921123018870115176236122103227180192137313575631502336224021321015659849025114197220136821071711019812217060239159629217415415240215116389923813471222497513224317155122131211248502624599157205882271001722556817247312314112525149158631197323314053226217133934962531094172124156171074915095141169722662131842062072359220569152186461822539618391142197115952391741491991167819718060178203177124198198252220114631141852061171434420725555191811902392502314817721412012124824620715017119024341241441125444400128261211254172135543862501581363814329103715914012824519123231203109491032471281811615361231771051781722211259123330187631909102985795253210154152142251746311097240211799521415078148701231882441551572101561522619617021424437171711027423114667171155024913292124227792201092227148218152206219134245152247163951901851889662231158154191221472552372166710197613870228156234157118983479255203832521909916293174138253202235855322688124962541202331985015247186101331622111246817381251922461976222817522166251351529321710615186204171228105133251764215444715123912723324522922923924847101509022121519111291185244138432032362543241441125444400128262174596221178180886218918888621851901902311281811619516646127116891262322222102517022817514052179763422812162866316621551229132281731499523171101182145167235149866817011816724424763423055202228101143138103134228502314324610124618219147479112656301481782016141838147214253119243113722220515876199174236139240148227164226931512178782471721731422225017756166571491671611010158182181631428517298321632188418819014635182154177762065717492361381993144632529155149103942552202101102292141281153796100212200104192122204681671241111032342282271288311392191091716022246294420575316124229180871411365519135302518110117322818117715031188167180861421481261961521406857191223281432302021124118421515343157253151149230248169211246421215896352269099124421909386892312268825219887202254163247149151204223271294118229243114208213177810895932052361161661102042058181105342239520019115168116154140641832014516914616317411452874794179931922341961231883621414716734118154205502232371498883721515123520523511245247123229519125127229233175252173506118515119282366819220016814520912824520011817925220022823632216164128815991894631139208180152123520821316522356218124636982052481297114886941441259617217211987203250202198692119121125122611137246228912481814971138452211152312241262551772512032431427119213811418118218579153160238949161355845197242195115114122382268310218215319888105131665422811557250421432411101431751351177399995285158114120121142601392331481631741663596205199254252212471901649225523018315010217185102382439097192249161760001063632143239251802515615423145427229167166231611337101192250226202742492322181148922012716852206379610926107526167211981987493245351015718424720615242131128245156991717622610710821176242239317223230351061320313917914310671180202209832279916576701361702284324718176114110158665619235721711132031079822911717624221219328129117217225203203532156316318824811755149217233201561802720322317119220016814512882472522292231481181961652121422542411791791511222673202128245185888159909440711494942615193115206117121021711910510520712143186170137136631399525582761085616123589712395745482292121778711524512249117202861432294017220156166227113952517299151432298172315515977172166204199178179491111622174439214187229231126239119203191262241352029912722416924144112161888000531461235107127241193502565362291752236110710238162203198227128818346471511751178720229251151491771951431391852311111722174283151952183531823912556966122624832297130190591821170116170442472511311117710312817044711922612692201128149215192261176028655238207389616512101211241217100192582521952239112622923723944143184246177241121123398800053146123514288851176882126972511692171531149617221831651243422141671511513496173701921864422145140371714090147511011242552251201449125421491915690861436184202250902491031512519060106241212721711284171241149542472442221451281491742992121681251411021531412475723492386110191251711079212117618824523015151678762502302231541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002121541285000641739880000212154128500064173988000021215412850006417398800002122182555228143124241951012282480000736978681746696130