124225242242422324222242212422024219242182421724216242152421424213242122421124210242092420824207242062420524204242032420224201242002419924198241972419624195241942419324192241912419024189241882418724186241852418424183241822418124180241792417824177241762417524174241732417224171241702416924168241672416624165241642416324162241612416024159241582415724156241552415424153241522415124150241492414824147241462414524144241432414224141241402413924138241372413624135241342413324132241312413024129241282412724126241252412424123241222412124120241192411824117241162411524114241132411224111241102410924108241072410624105241042410324102241012410024099240982409724096240952409424093240922409124090240892408824087240862408524084240832408224081240802407924078240772407624075240742407324072240712407024069240682406724066240652406424063240622406124060240592405824057240562405524054240532405224051240502404924048240472404624045240442404324042240412404024039240382403724036240352403424033240322403124030240292402824027240262402524024240232402224021240202401924018240172401624015240142401324012240112401024009240082400724006240052400424003240022400124000239992399823997239962399523994239932399223991239902398923988239872398623985239842398323982239812398023979239782397723976239752397423973239722397123970239692396823967239662396523964239632396223961239602395923958239572395623955239542395323952239512395023949239482394723946239452394423943239422394123940239392393823937239362393523934239332393223931239302392923928239272392623925239242392323922239212392023919239182391723916239152391423913239122391123910239092390823907239062390523904239032390223901239002389923898238972389623895238942389323892238912389023889238882388723886238852388423883238822388123880238792387823877238762387523874238732387223871238702386923868238672386623865238642386323862238612386023859238582385723856238552385423853238522385123850238492384823847238462384523844238432384223841238402383923838238372383623835238342383323832238312383023829238282382723826238252382423823238222382123820238192381823817238162381523814238132381223811238102380923808238072380623805238042380323802238012380023799237982379723796237952379423793237922379123790237892378823787237862378523784237832378223781237802377923778237772377623775237742377323772237712377023769237682376723766237652376423763237622376123760237592375823757237562375523754237532375223751237502374923748237472374623745237442374323742237412374023739237382373723736237352373423733237322373123730237292372823727237262372523724237232372223721237202371923718237172371623715237142371323712237112371023709237082370723706237052370423703237022370123700236992369823697236962369523694236932369223691236902368923688236872368623685236842368323682236812368023679236782367723676236752367423673236722367123670236692366823667236662366523664236632366223661236602365923658236572365623655236542365323652236512365023649236482364723646236452364423643236422364123640236392363823637236362363523634236332363223631236302362923628236272362623625236242362323622236212362023619236182361723616236152361423613236122361123610236092360823607236062360523604236032360223601236002359923598235972359623595235942359323592235912359023589235882358723586235852358423583235822358123580235792357823577235762357523574235732357223571235702356923568235672356623565235642356323562235612356023559235582355723556235552355423553235522355123550235492354823547235462354523544235432354223541235402353923538235372353623535235342353323532235312353023529235282352723526235252352423523235222352123520235192351823517235162351523514235132351223511235102350923508235072350623505235042350323502235012350023499234982349723496234952349423493234922349123490234892348823487234862348523484234832348223481234802347923478234772347623475234742347323472234712347023469234682346723466234652346423463234622346123460234592345823457234562345523454234532345223451234502344923448234472344623445234442344323442234412344023439234382343723436234352343423433234322343123430234292342823427234262342523424234232342223421234202341923418234172341623415234142341323412234112341023409234082340723406234052340423403234022340123400233992339823397233962339523394233932339223391233902338923388233872338623385233842338323382233812338023379233782337723376233752337423373233722337123370233692336823367233662336523364233632336223361233602335923358233572335623355233542335323352233512335023349233482334723346233452334423343233422334123340233392333823337233362333523334233332333223331233302332923328233272332623325233242332323322233212332023319233182331723316233152331423313233122331123310233092330823307233062330523304233032330223301233002329923298232972329623295232942329323292232912329023289232882328723286232852328423283232822328123280232792327823277232762327523274232732327223271232702326923268232672326623265232642326323262232612326023259232582325723256232552325423253232522325123250232492324823247232462324523244232432324223241232402323923238232372323623235232342323323232232312323023229232282322723226232252322423223232222322123220232192321823217232162321523214232132321223211232102320923208232072320623205232042320323202232012320023199231982319723196231952319423193231922319123190231892318823187231862318523184231832318223181231802317923178231772317623175231742317323172231712317023169231682316723166231652316423163231622316123160231592315823157231562315523154231532315223151231502314923148231472314623145231442314323142231412314023139231382313723136231352313423133231322313123130231292312823127231262312523124231232312223121231202311923118231172311623115231142311323112231112311023109231082310723106231052310423103231022310123100230992309823097230962309523094230932309223091230902308923088230872308623085230842308323082230812308023079230782307723076230752307423073230722307123070230692306823067230662306523064230632306223061230602305923058230572305623055230542305323052230512305023049230482304723046230452304423043230422304123040230392303823037230362303523034230332303223031230302302923028230272302623025230242302323022230212302023019230182301723016230152301423013230122301123010230092300823007230062300523004230032300223001230002299922998229972299622995229942299322992229912299022989229882298722986229852298422983229822298122980229792297822977229762297522974229732297222971229702296922968229672296622965229642296322962229612296022959229582295722956229552295422953229522295122950229492294822947229462294522944229432294222941229402293922938229372293622935229342293322932229312293022929229282292722926229252292422923229222292122920229192291822917229162291522914229132291222911229102290922908229072290622905229042290322902229012290022899228982289722896228952289422893228922289122890228892288822887228862288522884228832288222881228802287922878228772287622875228742287322872228712287022869228682286722866228652286422863228622286122860228592285822857228562285522854228532285222851228502284922848228472284622845228442284322842228412284022839228382283722836228352283422833228322283122830228292282822827228262282522824228232282222821228202281922818228172281622815228142281322812228112281022809228082280722806228052280422803228022280122800227992279822797227962279522794227932279222791227902278922788227872278622785227842278322782227812278022779227782277722776227752277422773227722277122770227692276822767227662276522764227632276222761227602275922758227572275622755227542275322752227512275022749227482274722746227452274422743227422274122740227392273822737227362273522734227332273222731227302272922728227272272622725227242272322722227212272022719227182271722716227152271422713227122271122710227092270822707227062270522704227032270222701227002269922698226972269622695226942269322692226912269022689226882268722686226852268422683226822268122680226792267822677226762267522674226732267222671226702266922668226672266622665226642266322662226612266022659226582265722656226552265422653226522265122650226492264822647226462264522644226432264222641226402263922638226372263622635226342263322632226312263022629226282262722626226252262422623226222262122620226192261822617226162261522614226132261222611226102260922608226072260622605226042260322602226012260022599225982259722596225952259422593225922259122590225892258822587225862258522584225832258222581225802257922578225772257622575225742257322572225712257022569225682256722566225652256422563225622256122560225592255822557225562255522554225532255222551225502254922548225472254622545225442254322542225412254022539225382253722536225352253422533225322253122530225292252822527225262252522524225232252222521225202251922518225172251622515225142251322512225112251022509225082250722506225052250422503225022250122500224992249822497224962249522494224932249222491224902248922488224872248622485224842248322482224812248022479224782247722476224752247422473224722247122470224692246822467224662246522464224632246222461224602245922458224572245622455224542245322452224512245022449224482244722446224452244422443224422244122440224392243822437224362243522434224332243222431224302242922428224272242622425224242242322422224212242022419224182241722416224152241422413224122241122410224092240822407224062240522404224032240222401224002239922398223972239622395223942239322392223912239022389223882238722386223852238422383223822238122380223792237822377223762237522374223732237222371223702236922368223672236622365223642236322362223612236022359223582235722356223552235422353223522235122350223492234822347223462234522344223432234222341223402233922338223372233622335223342233322332223312233022329223282232722326223252232422323223222232122320223192231822317223162231522314223132231222311223102230922308223072230622305223042230322302223012230022299222982229722296222952229422293222922229122290222892228822287222862228522284222832228222281222802227922278222772227622275222742227322272222712227022269222682226722266222652226422263222622226122260222592225822257222562225522254222532225222251222502224922248222472224622245222442224322242222412224022239222382223722236222352223422233222322223122230222292222822227222262222522224222232222222221222202221922218222172221622215222142221322212222112221022209222082220722206222052220422203222022220122200221992219822197221962219522194221932219222191221902218922188221872218622185221842218322182221812218022179221782217722176221752217422173221722217122170221692216822167221662216522164221632216222161221602215922158221572215622155221542215322152221512215022149221482214722146221452214422143221422214122140221392213822137221362213522134221332213222131221302212922128221272212622125221242212322122221212212022119221182211722116221152211422113221122211122110221092210822107221062210522104221032210222101221002209922098220972209622095220942209322092220912209022089220882208722086220852208422083220822208122080220792207822077220762207522074220732207222071220702206922068220672206622065220642206322062220612206022059220582205722056220552205422053220522205122050220492204822047220462204522044220432204222041220402203922038220372203622035220342203322032220312203022029220282202722026220252202422023220222202122020220192201822017220162201522014220132201222011220102200922008220072200622005220042200322002220012200021999219982199721996219952199421993219922199121990219892198821987219862198521984219832198221981219802197921978219772197621975219742197321972219712197021969219682196721966219652196421963219622196121960219592195821957219562195521954219532195221951219502194921948219472194621945219442194321942219412194021939219382193721936219352193421933219322193121930219292192821927219262192521924219232192221921219202191921918219172191621915219142191321912219112191021909219082190721906219052190421903219022190121900218992189821897218962189521894218932189221891218902188921888218872188621885218842188321882218812188021879218782187721876218752187421873218722187121870218692186821867218662186521864218632186221861218602185921858218572185621855218542185321852218512185021849218482184721846218452184421843218422184121840218392183821837218362183521834218332183221831218302182921828218272182621825218242182321822218212182021819218182181721816218152181421813218122181121810218092180821807218062180521804218032180221801218002179921798217972179621795217942179321792217912179021789217882178721786217852178421783217822178121780217792177821777217762177521774217732177221771217702176921768217672176621765217642176321762217612176021759217582175721756217552175421753217522175121750217492174821747217462174521744217432174221741217402173921738217372173621735217342173321732217312173021729217282172721726217252172421723217222172121720217192171821717217162171521714217132171221711217102170921708217072170621705217042170321702217012170021699216982169721696216952169421693216922169121690216892168821687216862168521684216832168221681216802167921678216772167621675216742167321672216712167021669216682166721666216652166421663216622166121660216592165821657216562165521654216532165221651216502164921648216472164621645216442164321642216412164021639216382163721636216352163421633216322163121630216292162821627216262162521624216232162221621216202161921618216172161621615216142161321612216112161021609216082160721606216052160421603216022160121600215992159821597215962159521594215932159221591215902158921588215872158621585215842158321582215812158021579215782157721576215752157421573215722157121570215692156821567215662156521564215632156221561215602155921558215572155621555215542155321552215512155021549215482154721546215452154421543215422154121540215392153821537215362153521534215332153221531215302152921528215272152621525215242152321522215212152021519215182151721516215152151421513215122151121510215092150821507215062150521504215032150221501215002149921498214972149621495214942149321492214912149021489214882148721486214852148421483214822148121480214792147821477214762147521474214732147221471214702146921468214672146621465214642146321462214612146021459214582145721456214552145421453214522145121450214492144821447214462144521444214432144221441214402143921438214372143621435214342143321432214312143021429214282142721426214252142421423214222142121420214192141821417214162141521414214132141221411214102140921408214072140621405214042140321402214012140021399213982139721396213952139421393213922139121390213892138821387213862138521384213832138221381213802137921378213772137621375213742137321372213712137021369213682136721366213652136421363213622136121360213592135821357213562135521354213532135221351213502134921348213472134621345213442134321342213412134021339213382133721336213352133421333213322133121330213292132821327213262132521324213232132221321213202131921318213172131621315213142131321312213112131021309213082130721306213052130421303213022130121300212992129821297212962129521294212932129221291212902128921288212872128621285212842128321282212812128021279212782127721276212752127421273212722127121270212692126821267212662126521264212632126221261212602125921258212572125621255212542125321252212512125021249212482124721246212452124421243212422124121240212392123821237212362123521234212332123221231212302122921228212272122621225212242122321222212212122021219212182121721216212152121421213212122121121210212092120821207212062120521204212032120221201212002119921198211972119621195211942119321192211912119021189211882118721186211852118421183211822118121180211792117821177211762117521174211732117221171211702116921168211672116621165211642116321162211612116021159211582115721156211552115421153211522115121150211492114821147211462114521144211432114221141211402113921138211372113621135211342113321132211312113021129211282112721126211252112421123211222112121120211192111821117211162111521114211132111221111211102110921108211072110621105211042110321102211012110021099210982109721096210952109421093210922109121090210892108821087210862108521084210832108221081210802107921078210772107621075210742107321072210712107021069210682106721066210652106421063210622106121060210592105821057210562105521054210532105221051210502104921048210472104621045210442104321042210412104021039210382103721036210352103421033210322103121030210292102821027210262102521024210232102221021210202101921018210172101621015210142101321012210112101021009210082100721006210052100421003210022100121000209992099820997209962099520994209932099220991209902098920988209872098620985209842098320982209812098020979209782097720976209752097420973209722097120970209692096820967209662096520964209632096220961209602095920958209572095620955209542095320952209512095020949209482094720946209452094420943209422094120940209392093820937209362093520934209332093220931209302092920928209272092620925209242092320922209212092020919209182091720916209152091420913209122091120910209092090820907209062090520904209032090220901209002089920898208972089620895208942089320892208912089020889208882088720886208852088420883208822088120880208792087820877208762087520874208732087220871208702086920868208672086620865208642086320862208612086020859208582085720856208552085420853208522085120850208492084820847208462084520844208432084220841208402083920838208372083620835208342083320832208312083020829208282082720826208252082420823208222082120820208192081820817208162081520814208132081220811208102080920808208072080620805208042080320802208012080020799207982079720796207952079420793207922079120790207892078820787207862078520784207832078220781207802077920778207772077620775207742077320772207712077020769207682076720766207652076420763207622076120760207592075820757207562075520754207532075220751207502074920748207472074620745207442074320742207412074020739207382073720736207352073420733207322073120730207292072820727207262072520724207232072220721207202071920718207172071620715207142071320712207112071020709207082070720706207052070420703207022070120700206992069820697206962069520694206932069220691206902068920688206872068620685206842068320682206812068020679206782067720676206752067420673206722067120670206692066820667206662066520664206632066220661206602065920658206572065620655206542065320652206512065020649206482064720646206452064420643206422064120640206392063820637206362063520634206332063220631206302062920628206272062620625206242062320622206212062020619206182061720616206152061420613206122061120610206092060820607206062060520604206032060220601206002059920598205972059620595205942059320592205912059020589205882058720586205852058420583205822058120580205792057820577205762057520574205732057220571205702056920568205672056620565205642056320562205612056020559205582055720556205552055420553205522055120550205492054820547205462054520544205432054220541205402053920538205372053620535205342053320532205312053020529205282052720526205252052420523205222052120520205192051820517205162051520514205132051220511205102050920508205072050620505205042050320502205012050020499204982049720496204952049420493204922049120490204892048820487204862048520484204832048220481204802047920478204772047620475204742047320472204712047020469204682046720466204652046420463204622046120460204592045820457204562045520454204532045220451204502044920448204472044620445204442044320442204412044020439204382043720436204352043420433204322043120430204292042820427204262042520424204232042220421204202041920418204172041620415204142041320412204112041020409204082040720406204052040420403204022040120400203992039820397203962039520394203932039220391203902038920388203872038620385203842038320382203812038020379203782037720376203752037420373203722037120370203692036820367203662036520364203632036220361203602035920358203572035620355203542035320352203512035020349203482034720346203452034420343203422034120340203392033820337203362033520334203332033220331203302032920328203272032620325203242032320322203212032020319203182031720316203152031420313203122031120310203092030820307203062030520304203032030220301203002029920298202972029620295202942029320292202912029020289202882028720286202852028420283202822028120280202792027820277202762027520274202732027220271202702026920268202672026620265202642026320262202612026020259202582025720256202552025420253202522025120250202492024820247202462024520244202432024220241202402023920238202372023620235202342023320232202312023020229202282022720226202252022420223202222022120220202192021820217202162021520214202132021220211202102020920208202072020620205202042020320202202012020020199201982019720196201952019420193201922019120190201892018820187201862018520184201832018220181201802017920178201772017620175201742017320172201712017020169201682016720166201652016420163201622016120160201592015820157201562015520154201532015220151201502014920148201472014620145201442014320142201412014020139201382013720136201352013420133201322013120130201292012820127201262012520124201232012220121201202011920118201172011620115201142011320112201112011020109201082010720106201052010420103201022010120100200992009820097200962009520094200932009220091200902008920088200872008620085200842008320082200812008020079200782007720076200752007420073200722007120070200692006820067200662006520064200632006220061200602005920058200572005620055200542005320052200512005020049200482004720046200452004420043200422004120040200392003820037200362003520034200332003220031200302002920028200272002620025200242002320022200212002020019200182001720016200152001420013200122001120010200092000820007200062000520004200032000220001200001999919998199971999619995199941999319992199911999019989199881998719986199851998419983199821998119980199791997819977199761997519974199731997219971199701996919968199671996619965199641996319962199611996019959199581995719956199551995419953199521995119950199491994819947199461994519944199431994219941199401993919938199371993619935199341993319932199311993019929199281992719926199251992419923199221992119920199191991819917199161991519914199131991219911199101990919908199071990619905199041990319902199011990019899198981989719896198951989419893198921989119890198891988819887198861988519884198831988219881198801987919878198771987619875198741987319872198711987019869198681986719866198651986419863198621986119860198591985819857198561985519854198531985219851198501984919848198471984619845198441984319842198411984019839198381983719836198351983419833198321983119830198291982819827198261982519824198231982219821198201981919818198171981619815198141981319812198111981019809198081980719806198051980419803198021980119800197991979819797197961979519794197931979219791197901978919788197871978619785197841978319782197811978019779197781977719776197751977419773197721977119770197691976819767197661976519764197631976219761197601975919758197571975619755197541975319752197511975019749197481974719746197451974419743197421974119740197391973819737197361973519734197331973219731197301972919728197271972619725197241972319722197211972019719197181971719716197151971419713197121971119710197091970819707197061970519704197031970219701197001969919698196971969619695196941969319692196911969019689196881968719686196851968419683196821968119680196791967819677196761967519674196731967219671196701966919668196671966619665196641966319662196611966019659196581965719656196551965419653196521965119650196491964819647196461964519644196431964219641196401963919638196371963619635196341963319632196311963019629196281962719626196251962419623196221962119620196191961819617196161961519614196131961219611196101960919608196071960619605196041960319602196011960019599195981959719596195951959419593195921959119590195891958819587195861958519584195831958219581195801957919578195771957619575195741957319572195711957019569195681956719566195651956419563195621956119560195591955819557195561955519554195531955219551195501954919548195471954619545195441954319542195411954019539195381953719536195351953419533195321953119530195291952819527195261952519524195231952219521195201951919518195171951619515195141951319512195111951019509195081950719506195051950419503195021950119500194991949819497194961949519494194931949219491194901948919488194871948619485194841948319482194811948019479194781947719476194751947419473194721947119470194691946819467194661946519464194631946219461194601945919458194571945619455194541945319452194511945019449194481944719446194451944419443194421944119440194391943819437194361943519434194331943219431194301942919428194271942619425194241942319422194211942019419194181941719416194151941419413194121941119410194091940819407194061940519404194031940219401194001939919398193971939619395193941939319392193911939019389193881938719386193851938419383193821938119380193791937819377193761937519374193731937219371193701936919368193671936619365193641936319362193611936019359193581935719356193551935419353193521935119350193491934819347193461934519344193431934219341193401933919338193371933619335193341933319332193311933019329193281932719326193251932419323193221932119320193191931819317193161931519314193131931219311193101930919308193071930619305193041930319302193011930019299192981929719296192951929419293192921929119290192891928819287192861928519284192831928219281192801927919278192771927619275192741927319272192711927019269192681926719266192651926419263192621926119260192591925819257192561925519254192531925219251192501924919248192471924619245192441924319242192411924019239192381923719236192351923419233192321923119230192291922819227192261922519224192231922219221192201921919218192171921619215192141921319212192111921019209192081920719206192051920419203192021920119200191991919819197191961919519194191931919219191191901918919188191871918619185191841918319182191811918019179191781917719176191751917419173191721917119170191691916819167191661916519164191631916219161191601915919158191571915619155191541915319152191511915019149191481914719146191451914419143191421914119140191391913819137191361913519134191331913219131191301912919128191271912619125191241912319122191211912019119191181911719116191151911419113191121911119110191091910819107191061910519104191031910219101191001909919098190971909619095190941909319092190911909019089190881908719086190851908419083190821908119080190791907819077190761907519074190731907219071190701906919068190671906619065190641906319062190611906019059190581905719056190551905419053190521905119050190491904819047190461904519044190431904219041190401903919038190371903619035190341903319032190311903019029190281902719026190251902419023190221902119020190191901819017190161901519014190131901219011190101900919008190071900619005190041900319002190011900018999189981899718996189951899418993189921899118990189891898818987189861898518984189831898218981189801897918978189771897618975189741897318972189711897018969189681896718966189651896418963189621896118960189591895818957189561895518954189531895218951189501894918948189471894618945189441894318942189411894018939189381893718936189351893418933189321893118930189291892818927189261892518924189231892218921189201891918918189171891618915189141891318912189111891018909189081890718906189051890418903189021890118900188991889818897188961889518894188931889218891188901888918888188871888618885188841888318882188811888018879188781887718876188751887418873188721887118870188691886818867188661886518864188631886218861188601885918858188571885618855188541885318852188511885018849188481884718846188451884418843188421884118840188391883818837188361883518834188331883218831188301882918828188271882618825188241882318822188211882018819188181881718816188151881418813188121881118810188091880818807188061880518804188031880218801188001879918798187971879618795187941879318792187911879018789187881878718786187851878418783187821878118780187791877818777187761877518774187731877218771187701876918768187671876618765187641876318762187611876018759187581875718756187551875418753187521875118750187491874818747187461874518744187431874218741187401873918738187371873618735187341873318732187311873018729187281872718726187251872418723187221872118720187191871818717187161871518714187131871218711187101870918708187071870618705187041870318702187011870018699186981869718696186951869418693186921869118690186891868818687186861868518684186831868218681186801867918678186771867618675186741867318672186711867018669186681866718666186651866418663186621866118660186591865818657186561865518654186531865218651186501864918648186471864618645186441864318642186411864018639186381863718636186351863418633186321863118630186291862818627186261862518624186231862218621186201861918618186171861618615186141861318612186111861018609186081860718606186051860418603186021860118600185991859818597185961859518594185931859218591185901858918588185871858618585185841858318582185811858018579185781857718576185751857418573185721857118570185691856818567185661856518564185631856218561185601855918558185571855618555185541855318552185511855018549185481854718546185451854418543185421854118540185391853818537185361853518534185331853218531185301852918528185271852618525185241852318522185211852018519185181851718516185151851418513185121851118510185091850818507185061850518504185031850218501185001849918498184971849618495184941849318492184911849018489184881848718486184851848418483184821848118480184791847818477184761847518474184731847218471184701846918468184671846618465184641846318462184611846018459184581845718456184551845418453184521845118450184491844818447184461844518444184431844218441184401843918438184371843618435184341843318432184311843018429184281842718426184251842418423184221842118420184191841818417184161841518414184131841218411184101840918408184071840618405184041840318402184011840018399183981839718396183951839418393183921839118390183891838818387183861838518384183831838218381183801837918378183771837618375183741837318372183711837018369183681836718366183651836418363183621836118360183591835818357183561835518354183531835218351183501834918348183471834618345183441834318342183411834018339183381833718336183351833418333183321833118330183291832818327183261832518324183231832218321183201831918318183171831618315183141831318312183111831018309183081830718306183051830418303183021830118300182991829818297182961829518294182931829218291182901828918288182871828618285182841828318282182811828018279182781827718276182751827418273182721827118270182691826818267182661826518264182631826218261182601825918258182571825618255182541825318252182511825018249182481824718246182451824418243182421824118240182391823818237182361823518234182331823218231182301822918228182271822618225182241822318222182211822018219182181821718216182151821418213182121821118210182091820818207182061820518204182031820218201182001819918198181971819618195181941819318192181911819018189181881818718186181851818418183181821818118180181791817818177181761817518174181731817218171181701816918168181671816618165181641816318162181611816018159181581815718156181551815418153181521815118150181491814818147181461814518144181431814218141181401813918138181371813618135181341813318132181311813018129181281812718126181251812418123181221812118120181191811818117181161811518114181131811218111181101810918108181071810618105181041810318102181011810018099180981809718096180951809418093180921809118090180891808818087180861808518084180831808218081180801807918078180771807618075180741807318072180711807018069180681806718066180651806418063180621806118060180591805818057180561805518054180531805218051180501804918048180471804618045180441804318042180411804018039180381803718036180351803418033180321803118030180291802818027180261802518024180231802218021180201801918018180171801618015180141801318012180111801018009180081800718006180051800418003180021800118000179991799817997179961799517994179931799217991179901798917988179871798617985179841798317982179811798017979179781797717976179751797417973179721797117970179691796817967179661796517964179631796217961179601795917958179571795617955179541795317952179511795017949179481794717946179451794417943179421794117940179391793817937179361793517934179331793217931179301792917928179271792617925179241792317922179211792017919179181791717916179151791417913179121791117910179091790817907179061790517904179031790217901179001789917898178971789617895178941789317892178911789017889178881788717886178851788417883178821788117880178791787817877178761787517874178731787217871178701786917868178671786617865178641786317862178611786017859178581785717856178551785417853178521785117850178491784817847178461784517844178431784217841178401783917838178371783617835178341783317832178311783017829178281782717826178251782417823178221782117820178191781817817178161781517814178131781217811178101780917808178071780617805178041780317802178011780017799177981779717796177951779417793177921779117790177891778817787177861778517784177831778217781177801777917778177771777617775177741777317772177711777017769177681776717766177651776417763177621776117760177591775817757177561775517754177531775217751177501774917748177471774617745177441774317742177411774017739177381773717736177351773417733177321773117730177291772817727177261772517724177231772217721177201771917718177171771617715177141771317712177111771017709177081770717706177051770417703177021770117700176991769817697176961769517694176931769217691176901768917688176871768617685176841768317682176811768017679176781767717676176751767417673176721767117670176691766817667176661766517664176631766217661176601765917658176571765617655176541765317652176511765017649176481764717646176451764417643176421764117640176391763817637176361763517634176331763217631176301762917628176271762617625176241762317622176211762017619176181761717616176151761417613176121761117610176091760817607176061760517604176031760217601176001759917598175971759617595175941759317592175911759017589175881758717586175851758417583175821758117580175791757817577175761757517574175731757217571175701756917568175671756617565175641756317562175611756017559175581755717556175551755417553175521755117550175491754817547175461754517544175431754217541175401753917538175371753617535175341753317532175311753017529175281752717526175251752417523175221752117520175191751817517175161751517514175131751217511175101750917508175071750617505175041750317502175011750017499174981749717496174951749417493174921749117490174891748817487174861748517484174831748217481174801747917478174771747617475174741747317472174711747017469174681746717466174651746417463174621746117460174591745817457174561745517454174531745217451174501744917448174471744617445174441744317442174411744017439174381743717436174351743417433174321743117430174291742817427174261742517424174231742217421174201741917418174171741617415174141741317412174111741017409174081740717406174051740417403174021740117400173991739817397173961739517394173931739217391173901738917388173871738617385173841738317382173811738017379173781737717376173751737417373173721737117370173691736817367173661736517364173631736217361173601735917358173571735617355173541735317352173511735017349173481734717346173451734417343173421734117340173391733817337173361733517334173331733217331173301732917328173271732617325173241732317322173211732017319173181731717316173151731417313173121731117310173091730817307173061730517304173031730217301173001729917298172971729617295172941729317292172911729017289172881728717286172851728417283172821728117280172791727817277172761727517274172731727217271172701726917268172671726617265172641726317262172611726017259172581725717256172551725417253172521725117250172491724817247172461724517244172431724217241172401723917238172371723617235172341723317232172311723017229172281722717226172251722417223172221722117220172191721817217172161721517214172131721217211172101720917208172071720617205172041720317202172011720017199171981719717196171951719417193171921719117190171891718817187171861718517184171831718217181171801717917178171771717617175171741717317172171711717017169171681716717166171651716417163171621716117160171591715817157171561715517154171531715217151171501714917148171471714617145171441714317142171411714017139171381713717136171351713417133171321713117130171291712817127171261712517124171231712217121171201711917118171171711617115171141711317112171111711017109171081710717106171051710417103171021710117100170991709817097170961709517094170931709217091170901708917088170871708617085170841708317082170811708017079170781707717076170751707417073170721707117070170691706817067170661706517064170631706217061170601705917058170571705617055170541705317052170511705017049170481704717046170451704417043170421704117040170391703817037170361703517034170331703217031170301702917028170271702617025170241702317022170211702017019170181701717016170151701417013170121701117010170091700817007170061700517004170031700217001170001699916998169971699616995169941699316992169911699016989169881698716986169851698416983169821698116980169791697816977169761697516974169731697216971169701696916968169671696616965169641696316962169611696016959169581695716956169551695416953169521695116950169491694816947169461694516944169431694216941169401693916938169371693616935169341693316932169311693016929169281692716926169251692416923169221692116920169191691816917169161691516914169131691216911169101690916908169071690616905169041690316902169011690016899168981689716896168951689416893168921689116890168891688816887168861688516884168831688216881168801687916878168771687616875168741687316872168711687016869168681686716866168651686416863168621686116860168591685816857168561685516854168531685216851168501684916848168471684616845168441684316842168411684016839168381683716836168351683416833168321683116830168291682816827168261682516824168231682216821168201681916818168171681616815168141681316812168111681016809168081680716806168051680416803168021680116800167991679816797167961679516794167931679216791167901678916788167871678616785167841678316782167811678016779167781677716776167751677416773167721677116770167691676816767167661676516764167631676216761167601675916758167571675616755167541675316752167511675016749167481674716746167451674416743167421674116740167391673816737167361673516734167331673216731167301672916728167271672616725167241672316722167211672016719167181671716716167151671416713167121671116710167091670816707167061670516704167031670216701167001669916698166971669616695166941669316692166911669016689166881668716686166851668416683166821668116680166791667816677166761667516674166731667216671166701666916668166671666616665166641666316662166611666016659166581665716656166551665416653166521665116650166491664816647166461664516644166431664216641166401663916638166371663616635166341663316632166311663016629166281662716626166251662416623166221662116620166191661816617166161661516614166131661216611166101660916608166071660616605166041660316602166011660016599165981659716596165951659416593165921659116590165891658816587165861658516584165831658216581165801657916578165771657616575165741657316572165711657016569165681656716566165651656416563165621656116560165591655816557165561655516554165531655216551165501654916548165471654616545165441654316542165411654016539165381653716536165351653416533165321653116530165291652816527165261652516524165231652216521165201651916518165171651616515165141651316512165111651016509165081650716506165051650416503165021650116500164991649816497164961649516494164931649216491164901648916488164871648616485164841648316482164811648016479164781647716476164751647416473164721647116470164691646816467164661646516464164631646216461164601645916458164571645616455164541645316452164511645016449164481644716446164451644416443164421644116440164391643816437164361643516434164331643216431164301642916428164271642616425164241642316422164211642016419164181641716416164151641416413164121641116410164091640816407164061640516404164031640216401164001639916398163971639616395163941639316392163911639016389163881638716386163851638416383163821638116380163791637816377163761637516374163731637216371163701636916368163671636616365163641636316362163611636016359163581635716356163551635416353163521635116350163491634816347163461634516344163431634216341163401633916338163371633616335163341633316332163311633016329163281632716326163251632416323163221632116320163191631816317163161631516314163131631216311163101630916308163071630616305163041630316302163011630016299162981629716296162951629416293162921629116290162891628816287162861628516284162831628216281162801627916278162771627616275162741627316272162711627016269162681626716266162651626416263162621626116260162591625816257162561625516254162531625216251162501624916248162471624616245162441624316242162411624016239162381623716236162351623416233162321623116230162291622816227162261622516224162231622216221162201621916218162171621616215162141621316212162111621016209162081620716206162051620416203162021620116200161991619816197161961619516194161931619216191161901618916188161871618616185161841618316182161811618016179161781617716176161751617416173161721617116170161691616816167161661616516164161631616216161161601615916158161571615616155161541615316152161511615016149161481614716146161451614416143161421614116140161391613816137161361613516134161331613216131161301612916128161271612616125161241612316122161211612016119161181611716116161151611416113161121611116110161091610816107161061610516104161031610216101161001609916098160971609616095160941609316092160911609016089160881608716086160851608416083160821608116080160791607816077160761607516074160731607216071160701606916068160671606616065160641606316062160611606016059160581605716056160551605416053160521605116050160491604816047160461604516044160431604216041160401603916038160371603616035160341603316032160311603016029160281602716026160251602416023160221602116020160191601816017160161601516014160131601216011160101600916008160071600616005160041600316002160011600015999159981599715996159951599415993159921599115990159891598815987159861598515984159831598215981159801597915978159771597615975159741597315972159711597015969159681596715966159651596415963159621596115960159591595815957159561595515954159531595215951159501594915948159471594615945159441594315942159411594015939159381593715936159351593415933159321593115930159291592815927159261592515924159231592215921159201591915918159171591615915159141591315912159111591015909159081590715906159051590415903159021590115900158991589815897158961589515894158931589215891158901588915888158871588615885158841588315882158811588015879158781587715876158751587415873158721587115870158691586815867158661586515864158631586215861158601585915858158571585615855158541585315852158511585015849158481584715846158451584415843158421584115840158391583815837158361583515834158331583215831158301582915828158271582615825158241582315822158211582015819158181581715816158151581415813158121581115810158091580815807158061580515804158031580215801158001579915798157971579615795157941579315792157911579015789157881578715786157851578415783157821578115780157791577815777157761577515774157731577215771157701576915768157671576615765157641576315762157611576015759157581575715756157551575415753157521575115750157491574815747157461574515744157431574215741157401573915738157371573615735157341573315732157311573015729157281572715726157251572415723157221572115720157191571815717157161571515714157131571215711157101570915708157071570615705157041570315702157011570015699156981569715696156951569415693156921569115690156891568815687156861568515684156831568215681156801567915678156771567615675156741567315672156711567015669156681566715666156651566415663156621566115660156591565815657156561565515654156531565215651156501564915648156471564615645156441564315642156411564015639156381563715636156351563415633156321563115630156291562815627156261562515624156231562215621156201561915618156171561615615156141561315612156111561015609156081560715606156051560415603156021560115600155991559815597155961559515594155931559215591155901558915588155871558615585155841558315582155811558015579155781557715576155751557415573155721557115570155691556815567155661556515564155631556215561155601555915558155571555615555155541555315552155511555015549155481554715546155451554415543155421554115540155391553815537155361553515534155331553215531155301552915528155271552615525155241552315522155211552015519155181551715516155151551415513155121551115510155091550815507155061550515504155031550215501155001549915498154971549615495154941549315492154911549015489154881548715486154851548415483154821548115480154791547815477154761547515474154731547215471154701546915468154671546615465154641546315462154611546015459154581545715456154551545415453154521545115450154491544815447154461544515444154431544215441154401543915438154371543615435154341543315432154311543015429154281542715426154251542415423154221542115420154191541815417154161541515414154131541215411154101540915408154071540615405154041540315402154011540015399153981539715396153951539415393153921539115390153891538815387153861538515384153831538215381153801537915378153771537615375153741537315372153711537015369153681536715366153651536415363153621536115360153591535815357153561535515354153531535215351153501534915348153471534615345153441534315342153411534015339153381533715336153351533415333153321533115330153291532815327153261532515324153231532215321153201531915318153171531615315153141531315312153111531015309153081530715306153051530415303153021530115300152991529815297152961529515294152931529215291152901528915288152871528615285152841528315282152811528015279152781527715276152751527415273152721527115270152691526815267152661526515264152631526215261152601525915258152571525615255152541525315252152511525015249152481524715246152451524415243152421524115240152391523815237152361523515234152331523215231152301522915228152271522615225152241522315222152211522015219152181521715216152151521415213152121521115210152091520815207152061520515204152031520215201152001519915198151971519615195151941519315192151911519015189151881518715186151851518415183151821518115180151791517815177151761517515174151731517215171151701516915168151671516615165151641516315162151611516015159151581515715156151551515415153151521515115150151491514815147151461514515144151431514215141151401513915138151371513615135151341513315132151311513015129151281512715126151251512415123151221512115120151191511815117151161511515114151131511215111151101510915108151071510615105151041510315102151011510015099150981509715096150951509415093150921509115090150891508815087150861508515084150831508215081150801507915078150771507615075150741507315072150711507015069150681506715066150651506415063150621506115060150591505815057150561505515054150531505215051150501504915048150471504615045150441504315042150411504015039150381503715036150351503415033150321503115030150291502815027150261502515024150231502215021150201501915018150171501615015150141501315012150111501015009150081500715006150051500415003150021500115000149991499814997149961499514994149931499214991149901498914988149871498614985149841498314982149811498014979149781497714976149751497414973149721497114970149691496814967149661496514964149631496214961149601495914958149571495614955149541495314952149511495014949149481494714946149451494414943149421494114940149391493814937149361493514934149331493214931149301492914928149271492614925149241492314922149211492014919149181491714916149151491414913149121491114910149091490814907149061490514904149031490214901149001489914898148971489614895148941489314892148911489014889148881488714886148851488414883148821488114880148791487814877148761487514874148731487214871148701486914868148671486614865148641486314862148611486014859148581485714856148551485414853148521485114850148491484814847148461484514844148431484214841148401483914838148371483614835148341483314832148311483014829148281482714826148251482414823148221482114820148191481814817148161481514814148131481214811148101480914808148071480614805148041480314802148011480014799147981479714796147951479414793147921479114790147891478814787147861478514784147831478214781147801477914778147771477614775147741477314772147711477014769147681476714766147651476414763147621476114760147591475814757147561475514754147531475214751147501474914748147471474614745147441474314742147411474014739147381473714736147351473414733147321473114730147291472814727147261472514724147231472214721147201471914718147171471614715147141471314712147111471014709147081470714706147051470414703147021470114700146991469814697146961469514694146931469214691146901468914688146871468614685146841468314682146811468014679146781467714676146751467414673146721467114670146691466814667146661466514664146631466214661146601465914658146571465614655146541465314652146511465014649146481464714646146451464414643146421464114640146391463814637146361463514634146331463214631146301462914628146271462614625146241462314622146211462014619146181461714616146151461414613146121461114610146091460814607146061460514604146031460214601146001459914598145971459614595145941459314592145911459014589145881458714586145851458414583145821458114580145791457814577145761457514574145731457214571145701456914568145671456614565145641456314562145611456014559145581455714556145551455414553145521455114550145491454814547145461454514544145431454214541145401453914538145371453614535145341453314532145311453014529145281452714526145251452414523145221452114520145191451814517145161451514514145131451214511145101450914508145071450614505145041450314502145011450014499144981449714496144951449414493144921449114490144891448814487144861448514484144831448214481144801447914478144771447614475144741447314472144711447014469144681446714466144651446414463144621446114460144591445814457144561445514454144531445214451144501444914448144471444614445144441444314442144411444014439144381443714436144351443414433144321443114430144291442814427144261442514424144231442214421144201441914418144171441614415144141441314412144111441014409144081440714406144051440414403144021440114400143991439814397143961439514394143931439214391143901438914388143871438614385143841438314382143811438014379143781437714376143751437414373143721437114370143691436814367143661436514364143631436214361143601435914358143571435614355143541435314352143511435014349143481434714346143451434414343143421434114340143391433814337143361433514334143331433214331143301432914328143271432614325143241432314322143211432014319143181431714316143151431414313143121431114310143091430814307143061430514304143031430214301143001429914298142971429614295142941429314292142911429014289142881428714286142851428414283142821428114280142791427814277142761427514274142731427214271142701426914268142671426614265142641426314262142611426014259142581425714256142551425414253142521425114250142491424814247142461424514244142431424214241142401423914238142371423614235142341423314232142311423014229142281422714226142251422414223142221422114220142191421814217142161421514214142131421214211142101420914208142071420614205142041420314202142011420014199141981419714196141951419414193141921419114190141891418814187141861418514184141831418214181141801417914178141771417614175141741417314172141711417014169141681416714166141651416414163141621416114160141591415814157141561415514154141531415214151141501414914148141471414614145141441414314142141411414014139141381413714136141351413414133141321413114130141291412814127141261412514124141231412214121141201411914118141171411614115141141411314112141111411014109141081410714106141051410414103141021410114100140991409814097140961409514094140931409214091140901408914088140871408614085140841408314082140811408014079140781407714076140751407414073140721407114070140691406814067140661406514064140631406214061140601405914058140571405614055140541405314052140511405014049140481404714046140451404414043140421404114040140391403814037140361403514034140331403214031140301402914028140271402614025140241402314022140211402014019140181401714016140151401414013140121401114010140091400814007140061400514004140031400214001140001399913998139971399613995139941399313992139911399013989139881398713986139851398413983139821398113980139791397813977139761397513974139731397213971139701396913968139671396613965139641396313962139611396013959139581395713956139551395413953139521395113950139491394813947139461394513944139431394213941139401393913938139371393613935139341393313932139311393013929139281392713926139251392413923139221392113920139191391813917139161391513914139131391213911139101390913908139071390613905139041390313902139011390013899138981389713896138951389413893138921389113890138891388813887138861388513884138831388213881138801387913878138771387613875138741387313872138711387013869138681386713866138651386413863138621386113860138591385813857138561385513854138531385213851138501384913848138471384613845138441384313842138411384013839138381383713836138351383413833138321383113830138291382813827138261382513824138231382213821138201381913818138171381613815138141381313812138111381013809138081380713806138051380413803138021380113800137991379813797137961379513794137931379213791137901378913788137871378613785137841378313782137811378013779137781377713776137751377413773137721377113770137691376813767137661376513764137631376213761137601375913758137571375613755137541375313752137511375013749137481374713746137451374413743137421374113740137391373813737137361373513734137331373213731137301372913728137271372613725137241372313722137211372013719137181371713716137151371413713137121371113710137091370813707137061370513704137031370213701137001369913698136971369613695136941369313692136911369013689136881368713686136851368413683136821368113680136791367813677136761367513674136731367213671136701366913668136671366613665136641366313662136611366013659136581365713656136551365413653136521365113650136491364813647136461364513644136431364213641136401363913638136371363613635136341363313632136311363013629136281362713626136251362413623136221362113620136191361813617136161361513614136131361213611136101360913608136071360613605136041360313602136011360013599135981359713596135951359413593135921359113590135891358813587135861358513584135831358213581135801357913578135771357613575135741357313572135711357013569135681356713566135651356413563135621356113560135591355813557135561355513554135531355213551135501354913548135471354613545135441354313542135411354013539135381353713536135351353413533135321353113530135291352813527135261352513524135231352213521135201351913518135171351613515135141351313512135111351013509135081350713506135051350413503135021350113500134991349813497134961349513494134931349213491134901348913488134871348613485134841348313482134811348013479134781347713476134751347413473134721347113470134691346813467134661346513464134631346213461134601345913458134571345613455134541345313452134511345013449134481344713446134451344413443134421344113440134391343813437134361343513434134331343213431134301342913428134271342613425134241342313422134211342013419134181341713416134151341413413134121341113410134091340813407134061340513404134031340213401134001339913398133971339613395133941339313392133911339013389133881338713386133851338413383133821338113380133791337813377133761337513374133731337213371133701336913368133671336613365133641336313362133611336013359133581335713356133551335413353133521335113350133491334813347133461334513344133431334213341133401333913338133371333613335133341333313332133311333013329133281332713326133251332413323133221332113320133191331813317133161331513314133131331213311133101330913308133071330613305133041330313302133011330013299132981329713296132951329413293132921329113290132891328813287132861328513284132831328213281132801327913278132771327613275132741327313272132711327013269132681326713266132651326413263132621326113260132591325813257132561325513254132531325213251132501324913248132471324613245132441324313242132411324013239132381323713236132351323413233132321323113230132291322813227132261322513224132231322213221132201321913218132171321613215132141321313212132111321013209132081320713206132051320413203132021320113200131991319813197131961319513194131931319213191131901318913188131871318613185131841318313182131811318013179131781317713176131751317413173131721317113170131691316813167131661316513164131631316213161131601315913158131571315613155131541315313152131511315013149131481314713146131451314413143131421314113140131391313813137131361313513134131331313213131131301312913128131271312613125131241312313122131211312013119131181311713116131151311413113131121311113110131091310813107131061310513104131031310213101131001309913098130971309613095130941309313092130911309013089130881308713086130851308413083130821308113080130791307813077130761307513074130731307213071130701306913068130671306613065130641306313062130611306013059130581305713056130551305413053130521305113050130491304813047130461304513044130431304213041130401303913038130371303613035130341303313032130311303013029130281302713026130251302413023130221302113020130191301813017130161301513014130131301213011130101300913008130071300613005130041300313002130011300012999129981299712996129951299412993129921299112990129891298812987129861298512984129831298212981129801297912978129771297612975129741297312972129711297012969129681296712966129651296412963129621296112960129591295812957129561295512954129531295212951129501294912948129471294612945129441294312942129411294012939129381293712936129351293412933129321293112930129291292812927129261292512924129231292212921129201291912918129171291612915129141291312912129111291012909129081290712906129051290412903129021290112900128991289812897128961289512894128931289212891128901288912888128871288612885128841288312882128811288012879128781287712876128751287412873128721287112870128691286812867128661286512864128631286212861128601285912858128571285612855128541285312852128511285012849128481284712846128451284412843128421284112840128391283812837128361283512834128331283212831128301282912828128271282612825128241282312822128211282012819128181281712816128151281412813128121281112810128091280812807128061280512804128031280212801128001279912798127971279612795127941279312792127911279012789127881278712786127851278412783127821278112780127791277812777127761277512774127731277212771127701276912768127671276612765127641276312762127611276012759127581275712756127551275412753127521275112750127491274812747127461274512744127431274212741127401273912738127371273612735127341273312732127311273012729127281272712726127251272412723127221272112720127191271812717127161271512714127131271212711127101270912708127071270612705127041270312702127011270012699126981269712696126951269412693126921269112690126891268812687126861268512684126831268212681126801267912678126771267612675126741267312672126711267012669126681266712666126651266412663126621266112660126591265812657126561265512654126531265212651126501264912648126471264612645126441264312642126411264012639126381263712636126351263412633126321263112630126291262812627126261262512624126231262212621126201261912618126171261612615126141261312612126111261012609126081260712606126051260412603126021260112600125991259812597125961259512594125931259212591125901258912588125871258612585125841258312582125811258012579125781257712576125751257412573125721257112570125691256812567125661256512564125631256212561125601255912558125571255612555125541255312552125511255012549125481254712546125451254412543125421254112540125391253812537125361253512534125331253212531125301252912528125271252612525125241252312522125211252012519125181251712516125151251412513125121251112510125091250812507125061250512504125031250212501125001249912498124971249612495124941249312492124911249012489124881248712486124851248412483124821248112480124791247812477124761247512474124731247212471124701246912468124671246612465124641246312462124611246012459124581245712456124551245412453124521245112450124491244812447124461244512444124431244212441124401243912438124371243612435124341243312432124311243012429124281242712426124251242412423124221242112420124191241812417124161241512414124131241212411124101240912408124071240612405124041240312402124011240012399123981239712396123951239412393123921239112390123891238812387123861238512384123831238212381123801237912378123771237612375123741237312372123711237012369123681236712366123651236412363123621236112360123591235812357123561235512354123531235212351123501234912348123471234612345123441234312342123411234012339123381233712336123351233412333123321233112330123291232812327123261232512324123231232212321123201231912318123171231612315123141231312312123111231012309123081230712306123051230412303123021230112300122991229812297122961229512294122931229212291122901228912288122871228612285122841228312282122811228012279122781227712276122751227412273122721227112270122691226812267122661226512264122631226212261122601225912258122571225612255122541225312252122511225012249122481224712246122451224412243122421224112240122391223812237122361223512234122331223212231122301222912228122271222612225122241222312222122211222012219122181221712216122151221412213122121221112210122091220812207122061220512204122031220212201122001219912198121971219612195121941219312192121911219012189121881218712186121851218412183121821218112180121791217812177121761217512174121731217212171121701216912168121671216612165121641216312162121611216012159121581215712156121551215412153121521215112150121491214812147121461214512144121431214212141121401213912138121371213612135121341213312132121311213012129121281212712126121251212412123121221212112120121191211812117121161211512114121131211212111121101210912108121071210612105121041210312102121011210012099120981209712096120951209412093120921209112090120891208812087120861208512084120831208212081120801207912078120771207612075120741207312072120711207012069120681206712066120651206412063120621206112060120591205812057120561205512054120531205212051120501204912048120471204612045120441204312042120411204012039120381203712036120351203412033120321203112030120291202812027120261202512024120231202212021120201201912018120171201612015120141201312012120111201012009120081200712006120051200412003120021200112000119991199811997119961199511994119931199211991119901198911988119871198611985119841198311982119811198011979119781197711976119751197411973119721197111970119691196811967119661196511964119631196211961119601195911958119571195611955119541195311952119511195011949119481194711946119451194411943119421194111940119391193811937119361193511934119331193211931119301192911928119271192611925119241192311922119211192011919119181191711916119151191411913119121191111910119091190811907119061190511904119031190211901119001189911898118971189611895118941189311892118911189011889118881188711886118851188411883118821188111880118791187811877118761187511874118731187211871118701186911868118671186611865118641186311862118611186011859118581185711856118551185411853118521185111850118491184811847118461184511844118431184211841118401183911838118371183611835118341183311832118311183011829118281182711826118251182411823118221182111820118191181811817118161181511814118131181211811118101180911808118071180611805118041180311802118011180011799117981179711796117951179411793117921179111790117891178811787117861178511784117831178211781117801177911778117771177611775117741177311772117711177011769117681176711766117651176411763117621176111760117591175811757117561175511754117531175211751117501174911748117471174611745117441174311742117411174011739117381173711736117351173411733117321173111730117291172811727117261172511724117231172211721117201171911718117171171611715117141171311712117111171011709117081170711706117051170411703117021170111700116991169811697116961169511694116931169211691116901168911688116871168611685116841168311682116811168011679116781167711676116751167411673116721167111670116691166811667116661166511664116631166211661116601165911658116571165611655116541165311652116511165011649116481164711646116451164411643116421164111640116391163811637116361163511634116331163211631116301162911628116271162611625116241162311622116211162011619116181161711616116151161411613116121161111610116091160811607116061160511604116031160211601116001159911598115971159611595115941159311592115911159011589115881158711586115851158411583115821158111580115791157811577115761157511574115731157211571115701156911568115671156611565115641156311562115611156011559115581155711556115551155411553115521155111550115491154811547115461154511544115431154211541115401153911538115371153611535115341153311532115311153011529115281152711526115251152411523115221152111520115191151811517115161151511514115131151211511115101150911508115071150611505115041150311502115011150011499114981149711496114951149411493114921149111490114891148811487114861148511484114831148211481114801147911478114771147611475114741147311472114711147011469114681146711466114651146411463114621146111460114591145811457114561145511454114531145211451114501144911448114471144611445114441144311442114411144011439114381143711436114351143411433114321143111430114291142811427114261142511424114231142211421114201141911418114171141611415114141141311412114111141011409114081140711406114051140411403114021140111400113991139811397113961139511394113931139211391113901138911388113871138611385113841138311382113811138011379113781137711376113751137411373113721137111370113691136811367113661136511364113631136211361113601135911358113571135611355113541135311352113511135011349113481134711346113451134411343113421134111340113391133811337113361133511334113331133211331113301132911328113271132611325113241132311322113211132011319113181131711316113151131411313113121131111310113091130811307113061130511304113031130211301113001129911298112971129611295112941129311292112911129011289112881128711286112851128411283112821128111280112791127811277112761127511274112731127211271112701126911268112671126611265112641126311262112611126011259112581125711256112551125411253112521125111250112491124811247112461124511244112431124211241112401123911238112371123611235112341123311232112311123011229112281122711226112251122411223112221122111220112191121811217112161121511214112131121211211112101120911208112071120611205112041120311202112011120011199111981119711196111951119411193111921119111190111891118811187111861118511184111831118211181111801117911178111771117611175111741117311172111711117011169111681116711166111651116411163111621116111160111591115811157111561115511154111531115211151111501114911148111471114611145111441114311142111411114011139111381113711136111351113411133111321113111130111291112811127111261112511124111231112211121111201111911118111171111611115111141111311112111111111011109111081110711106111051110411103111021110111100110991109811097110961109511094110931109211091110901108911088110871108611085110841108311082110811108011079110781107711076110751107411073110721107111070110691106811067110661106511064110631106211061110601105911058110571105611055110541105311052110511105011049110481104711046110451104411043110421104111040110391103811037110361103511034110331103211031110301102911028110271102611025110241102311022110211102011019110181101711016110151101411013110121101111010110091100811007110061100511004110031100211001110001099910998109971099610995109941099310992109911099010989109881098710986109851098410983109821098110980109791097810977109761097510974109731097210971109701096910968109671096610965109641096310962109611096010959109581095710956109551095410953109521095110950109491094810947109461094510944109431094210941109401093910938109371093610935109341093310932109311093010929109281092710926109251092410923109221092110920109191091810917109161091510914109131091210911109101090910908109071090610905109041090310902109011090010899108981089710896108951089410893108921089110890108891088810887108861088510884108831088210881108801087910878108771087610875108741087310872108711087010869108681086710866108651086410863108621086110860108591085810857108561085510854108531085210851108501084910848108471084610845108441084310842108411084010839108381083710836108351083410833108321083110830108291082810827108261082510824108231082210821108201081910818108171081610815108141081310812108111081010809108081080710806108051080410803108021080110800107991079810797107961079510794107931079210791107901078910788107871078610785107841078310782107811078010779107781077710776107751077410773107721077110770107691076810767107661076510764107631076210761107601075910758107571075610755107541075310752107511075010749107481074710746107451074410743107421074110740107391073810737107361073510734107331073210731107301072910728107271072610725107241072310722107211072010719107181071710716107151071410713107121071110710107091070810707107061070510704107031070210701107001069910698106971069610695106941069310692106911069010689106881068710686106851068410683106821068110680106791067810677106761067510674106731067210671106701066910668106671066610665106641066310662106611066010659106581065710656106551065410653106521065110650106491064810647106461064510644106431064210641106401063910638106371063610635106341063310632106311063010629106281062710626106251062410623106221062110620106191061810617106161061510614106131061210611106101060910608106071060610605106041060310602106011060010599105981059710596105951059410593105921059110590105891058810587105861058510584105831058210581105801057910578105771057610575105741057310572105711057010569105681056710566105651056410563105621056110560105591055810557105561055510554105531055210551105501054910548105471054610545105441054310542105411054010539105381053710536105351053410533105321053110530105291052810527105261052510524105231052210521105201051910518105171051610515105141051310512105111051010509105081050710506105051050410503105021050110500104991049810497104961049510494104931049210491104901048910488104871048610485104841048310482104811048010479104781047710476104751047410473104721047110470104691046810467104661046510464104631046210461104601045910458104571045610455104541045310452104511045010449104481044710446104451044410443104421044110440104391043810437104361043510434104331043210431104301042910428104271042610425104241042310422104211042010419104181041710416104151041410413104121041110410104091040810407104061040510404104031040210401104001039910398103971039610395103941039310392103911039010389103881038710386103851038410383103821038110380103791037810377103761037510374103731037210371103701036910368103671036610365103641036310362103611036010359103581035710356103551035410353103521035110350103491034810347103461034510344103431034210341103401033910338103371033610335103341033310332103311033010329103281032710326103251032410323103221032110320103191031810317103161031510314103131031210311103101030910308103071030610305103041030310302103011030010299102981029710296102951029410293102921029110290102891028810287102861028510284102831028210281102801027910278102771027610275102741027310272102711027010269102681026710266102651026410263102621026110260102591025810257102561025510254102531025210251102501024910248102471024610245102441024310242102411024010239102381023710236102351023410233102321023110230102291022810227102261022510224102231022210221102201021910218102171021610215102141021310212102111021010209102081020710206102051020410203102021020110200101991019810197101961019510194101931019210191101901018910188101871018610185101841018310182101811018010179101781017710176101751017410173101721017110170101691016810167101661016510164101631016210161101601015910158101571015610155101541015310152101511015010149101481014710146101451014410143101421014110140101391013810137101361013510134101331013210131101301012910128101271012610125101241012310122101211012010119101181011710116101151011410113101121011110110101091010810107101061010510104101031010210101101001009910098100971009610095100941009310092100911009010089100881008710086100851008410083100821008110080100791007810077100761007510074100731007210071100701006910068100671006610065100641006310062100611006010059100581005710056100551005410053100521005110050100491004810047100461004510044100431004210041100401003910038100371003610035100341003310032100311003010029100281002710026100251002410023100221002110020100191001810017100161001510014100131001210011100101000910008100071000610005100041000310002100011000099999998999799969995999499939992999199909989998899879986998599849983998299819980997999789977997699759974997399729971997099699968996799669965996499639962996199609959995899579956995599549953995299519950994999489947994699459944994399429941994099399938993799369935993499339932993199309929992899279926992599249923992299219920991999189917991699159914991399129911991099099908990799069905990499039902990199009899989898979896989598949893989298919890988998889887988698859884988398829881988098799878987798769875987498739872987198709869986898679866986598649863986298619860985998589857985698559854985398529851985098499848984798469845984498439842984198409839983898379836983598349833983298319830982998289827982698259824982398229821982098199818981798169815981498139812981198109809980898079806980598049803980298019800979997989797979697959794979397929791979097899788978797869785978497839782978197809779977897779776977597749773977297719770976997689767976697659764976397629761976097599758975797569755975497539752975197509749974897479746974597449743974297419740973997389737973697359734973397329731973097299728972797269725972497239722972197209719971897179716971597149713971297119710970997089707970697059704970397029701970096999698969796969695969496939692969196909689968896879686968596849683968296819680967996789677967696759674967396729671967096699668966796669665966496639662966196609659965896579656965596549653965296519650964996489647964696459644964396429641964096399638963796369635963496339632963196309629962896279626962596249623962296219620961996189617961696159614961396129611961096099608960796069605960496039602960196009599959895979596959595949593959295919590958995889587958695859584958395829581958095799578957795769575957495739572957195709569956895679566956595649563956295619560955995589557955695559554955395529551955095499548954795469545954495439542954195409539953895379536953595349533953295319530952995289527952695259524952395229521952095199518951795169515951495139512951195109509950895079506950595049503950295019500949994989497949694959494949394929491949094899488948794869485948494839482948194809479947894779476947594749473947294719470946994689467946694659464946394629461946094599458945794569455945494539452945194509449944894479446944594449443944294419440943994389437943694359434943394329431943094299428942794269425942494239422942194209419941894179416941594149413941294119410940994089407940694059404940394029401940093999398939793969395939493939392939193909389938893879386938593849383938293819380937993789377937693759374937393729371937093699368936793669365936493639362936193609359935893579356935593549353935293519350934993489347934693459344934393429341934093399338933793369335933493339332933193309329932893279326932593249323932293219320931993189317931693159314931393129311931093099308930793069305930493039302930193009299929892979296929592949293929292919290928992889287928692859284928392829281928092799278927792769275927492739272927192709269926892679266926592649263926292619260925992589257925692559254925392529251925092499248924792469245924492439242924192409239923892379236923592349233923292319230922992289227922692259224922392229221922092199218921792169215921492139212921192109209920892079206920592049203920292019200919991989197919691959194919391929191919091899188918791869185918491839182918191809179917891779176917591749173917291719170916991689167916691659164916391629161916091599158915791569155915491539152915191509149914891479146914591449143914291419140913991389137913691359134913391329131913091299128912791269125912491239122912191209119911891179116911591149113911291119110910991089107910691059104910391029101910090999098909790969095909490939092909190909089908890879086908590849083908290819080907990789077907690759074907390729071907090699068906790669065906490639062906190609059905890579056905590549053905290519050904990489047904690459044904390429041904090399038903790369035903490339032903190309029902890279026902590249023902290219020901990189017901690159014901390129011901090099008900790069005900490039002900190008999899889978996899589948993899289918990898989888987898689858984898389828981898089798978897789768975897489738972897189708969896889678966896589648963896289618960895989588957895689558954895389528951895089498948894789468945894489438942894189408939893889378936893589348933893289318930892989288927892689258924892389228921892089198918891789168915891489138912891189108909890889078906890589048903890289018900889988988897889688958894889388928891889088898888888788868885888488838882888188808879887888778876887588748873887288718870886988688867886688658864886388628861886088598858885788568855885488538852885188508849884888478846884588448843884288418840883988388837883688358834883388328831883088298828882788268825882488238822882188208819881888178816881588148813881288118810880988088807880688058804880388028801880087998798879787968795879487938792879187908789878887878786878587848783878287818780877987788777877687758774877387728771877087698768876787668765876487638762876187608759875887578756875587548753875287518750874987488747874687458744874387428741874087398738873787368735873487338732873187308729872887278726872587248723872287218720871987188717871687158714871387128711871087098708870787068705870487038702870187008699869886978696869586948693869286918690868986888687868686858684868386828681868086798678867786768675867486738672867186708669866886678666866586648663866286618660865986588657865686558654865386528651865086498648864786468645864486438642864186408639863886378636863586348633863286318630862986288627862686258624862386228621862086198618861786168615861486138612861186108609860886078606860586048603860286018600859985988597859685958594859385928591859085898588858785868585858485838582858185808579857885778576857585748573857285718570856985688567856685658564856385628561856085598558855785568555855485538552855185508549854885478546854585448543854285418540853985388537853685358534853385328531853085298528852785268525852485238522852185208519851885178516851585148513851285118510850985088507850685058504850385028501850084998498849784968495849484938492849184908489848884878486848584848483848284818480847984788477847684758474847384728471847084698468846784668465846484638462846184608459845884578456845584548453845284518450844984488447844684458444844384428441844084398438843784368435843484338432843184308429842884278426842584248423842284218420841984188417841684158414841384128411841084098408840784068405840484038402840184008399839883978396839583948393839283918390838983888387838683858384838383828381838083798378837783768375837483738372837183708369836883678366836583648363836283618360835983588357835683558354835383528351835083498348834783468345834483438342834183408339833883378336833583348333833283318330832983288327832683258324832383228321832083198318831783168315831483138312831183108309830883078306830583048303830283018300829982988297829682958294829382928291829082898288828782868285828482838282828182808279827882778276827582748273827282718270826982688267826682658264826382628261826082598258825782568255825482538252825182508249824882478246824582448243824282418240823982388237823682358234823382328231823082298228822782268225822482238222822182208219821882178216821582148213821282118210820982088207820682058204820382028201820081998198819781968195819481938192819181908189818881878186818581848183818281818180817981788177817681758174817381728171817081698168816781668165816481638162816181608159815881578156815581548153815281518150814981488147814681458144814381428141814081398138813781368135813481338132813181308129812881278126812581248123812281218120811981188117811681158114811381128111811081098108810781068105810481038102810181008099809880978096809580948093809280918090808980888087808680858084808380828081808080798078807780768075807480738072807180708069806880678066806580648063806280618060805980588057805680558054805380528051805080498048804780468045804480438042804180408039803880378036803580348033803280318030802980288027802680258024802380228021802080198018801780168015801480138012801180108009800880078006800580048003800280018000799979987997799679957994799379927991799079897988798779867985798479837982798179807979797879777976797579747973797279717970796979687967796679657964796379627961796079597958795779567955795479537952795179507949794879477946794579447943794279417940793979387937793679357934793379327931793079297928792779267925792479237922792179207919791879177916791579147913791279117910790979087907790679057904790379027901790078997898789778967895789478937892789178907889788878877886788578847883788278817880787978787877787678757874787378727871787078697868786778667865786478637862786178607859785878577856785578547853785278517850784978487847784678457844784378427841784078397838783778367835783478337832783178307829782878277826782578247823782278217820781978187817781678157814781378127811781078097808780778067805780478037802780178007799779877977796779577947793779277917790778977887787778677857784778377827781778077797778777777767775777477737772777177707769776877677766776577647763776277617760775977587757775677557754775377527751775077497748774777467745774477437742774177407739773877377736773577347733773277317730772977287727772677257724772377227721772077197718771777167715771477137712771177107709770877077706770577047703770277017700769976987697769676957694769376927691769076897688768776867685768476837682768176807679767876777676767576747673767276717670766976687667766676657664766376627661766076597658765776567655765476537652765176507649764876477646764576447643764276417640763976387637763676357634763376327631763076297628762776267625762476237622762176207619761876177616761576147613761276117610760976087607760676057604760376027601760075997598759775967595759475937592759175907589758875877586758575847583758275817580757975787577757675757574757375727571757075697568756775667565756475637562756175607559755875577556755575547553755275517550754975487547754675457544754375427541754075397538753775367535753475337532753175307529752875277526752575247523752275217520751975187517751675157514751375127511751075097508750775067505750475037502750175007499749874977496749574947493749274917490748974887487748674857484748374827481748074797478747774767475747474737472747174707469746874677466746574647463746274617460745974587457745674557454745374527451745074497448744774467445744474437442744174407439743874377436743574347433743274317430742974287427742674257424742374227421742074197418741774167415741474137412741174107409740874077406740574047403740274017400739973987397739673957394739373927391739073897388738773867385738473837382738173807379737873777376737573747373737273717370736973687367736673657364736373627361736073597358735773567355735473537352735173507349734873477346734573447343734273417340733973387337733673357334733373327331733073297328732773267325732473237322732173207319731873177316731573147313731273117310730973087307730673057304730373027301730072997298729772967295729472937292729172907289728872877286728572847283728272817280727972787277727672757274727372727271727072697268726772667265726472637262726172607259725872577256725572547253725272517250724972487247724672457244724372427241724072397238723772367235723472337232723172307229722872277226722572247223722272217220721972187217721672157214721372127211721072097208720772067205720472037202720172007199719871977196719571947193719271917190718971887187718671857184718371827181718071797178717771767175717471737172717171707169716871677166716571647163716271617160715971587157715671557154715371527151715071497148714771467145714471437142714171407139713871377136713571347133713271317130712971287127712671257124712371227121712071197118711771167115711471137112711171107109710871077106710571047103710271017100709970987097709670957094709370927091709070897088708770867085708470837082708170807079707870777076707570747073707270717070706970687067706670657064706370627061706070597058705770567055705470537052705170507049704870477046704570447043704270417040703970387037703670357034703370327031703070297028702770267025702470237022702170207019701870177016701570147013701270117010700970087007700670057004700370027001700069996998699769966995699469936992699169906989698869876986698569846983698269816980697969786977697669756974697369726971697069696968696769666965696469636962696169606959695869576956695569546953695269516950694969486947694669456944694369426941694069396938693769366935693469336932693169306929692869276926692569246923692269216920691969186917691669156914691369126911691069096908690769066905690469036902690169006899689868976896689568946893689268916890688968886887688668856884688368826881688068796878687768766875687468736872687168706869686868676866686568646863686268616860685968586857685668556854685368526851685068496848684768466845684468436842684168406839683868376836683568346833683268316830682968286827682668256824682368226821682068196818681768166815681468136812681168106809680868076806680568046803680268016800679967986797679667956794679367926791679067896788678767866785678467836782678167806779677867776776677567746773677267716770676967686767676667656764676367626761676067596758675767566755675467536752675167506749674867476746674567446743674267416740673967386737673667356734673367326731673067296728672767266725672467236722672167206719671867176716671567146713671267116710670967086707670667056704670367026701670066996698669766966695669466936692669166906689668866876686668566846683668266816680667966786677667666756674667366726671667066696668666766666665666466636662666166606659665866576656665566546653665266516650664966486647664666456644664366426641664066396638663766366635663466336632663166306629662866276626662566246623662266216620661966186617661666156614661366126611661066096608660766066605660466036602660166006599659865976596659565946593659265916590658965886587658665856584658365826581658065796578657765766575657465736572657165706569656865676566656565646563656265616560655965586557655665556554655365526551655065496548654765466545654465436542654165406539653865376536653565346533653265316530652965286527652665256524652365226521652065196518651765166515651465136512651165106509650865076506650565046503650265016500649964986497649664956494649364926491649064896488648764866485648464836482648164806479647864776476647564746473647264716470646964686467646664656464646364626461646064596458645764566455645464536452645164506449644864476446644564446443644264416440643964386437643664356434643364326431643064296428642764266425642464236422642164206419641864176416641564146413641264116410640964086407640664056404640364026401640063996398639763966395639463936392639163906389638863876386638563846383638263816380637963786377637663756374637363726371637063696368636763666365636463636362636163606359635863576356635563546353635263516350634963486347634663456344634363426341634063396338633763366335633463336332633163306329632863276326632563246323632263216320631963186317631663156314631363126311631063096308630763066305630463036302630163006299629862976296629562946293629262916290628962886287628662856284628362826281628062796278627762766275627462736272627162706269626862676266626562646263626262616260625962586257625662556254625362526251625062496248624762466245624462436242624162406239623862376236623562346233623262316230622962286227622662256224622362226221622062196218621762166215621462136212621162106209620862076206620562046203620262016200619961986197619661956194619361926191619061896188618761866185618461836182618161806179617861776176617561746173617261716170616961686167616661656164616361626161616061596158615761566155615461536152615161506149614861476146614561446143614261416140613961386137613661356134613361326131613061296128612761266125612461236122612161206119611861176116611561146113611261116110610961086107610661056104610361026101610060996098609760966095609460936092609160906089608860876086608560846083608260816080607960786077607660756074607360726071607060696068606760666065606460636062606160606059605860576056605560546053605260516050604960486047604660456044604360426041604060396038603760366035603460336032603160306029602860276026602560246023602260216020601960186017601660156014601360126011601060096008600760066005600460036002600160005999