012345678012345670812345607812345608712345608172345608127345608123745608123475608123457608123456701823456071823456017823456107823456170823456178023456178203456178230456178234056178234506178234560187234561087234561807234561870234561872034561872304561872340561872345061872345601827345610827345618027345618207345618270345618273045618273405618273450618273456018237456108237456180237456182037456182307456182370456182374056182374506182374560182347561082347561802347561820347561823047561823407561823470561823475061823475601823457610823457618023457618203457618230457618234057618234507618234570618234576018234567012834560712834560172834561072834561702834561720834561728034561728304561728340561728345061728345601278345610278345612078345621078345620178345620718345620781345620783145620783415620783451620783456127083456217083456271083456270183456270813456270831456270834156270834516270834561278034562178034562718034562781034562780134562780314562780341562780345162780345612783045621783045627183045627813045627831045627830145627830415627830451627830456127834056217834056271834056278134056278314056278341056278340156278340516278340561278345062178345062718345062781345062783145062783415062783451062783450162783450612783456012873456102873456120873456210873456201873456208173456208713456208731456208734156208734516208734561280734562180734562810734562801734562807134562807314562807341562807345162807345612870345621870345628170345628710345628701345628703145628703415628703451628703456128730456218730456281730456287130456287310456287301456287304156287304516287304561287340562187340562817340562871340562873140562873410562873401562873405162873405612873450621873450628173450628713450628731450628734150628734510628734501628734506128734560128374561028374561208374562108374562018374562081374562083174562083714562083741562083745162083745612803745621803745628103745628013745628031745628037145628037415628037451628037456128307456218307456281307456283107456283017456283071456283074156283074516283074561283704562183704562813704562831704562837104562837014562837041562837045162837045612837405621837405628137405628317405628371405628374105628374015628374051628374056128374506218374506281374506283174506283714506283741506283745106283745016283745061283745601283475610283475612083475621083475620183475620813475620831475620834175620834715620834751620834756128034756218034756281034756280134756280314756280341756280347156280347516280347561283047562183047562813047562831047562830147562830417562830471562830475162830475612834075621834075628134075628314075628341075628340175628340715628340751628340756128347056218347056281347056283147056283417056283471056283470156283470516283470561283475062183475062813475062831475062834175062834715062834751062834750162834750612834756012834576102834576120834576210834576201834576208134576208314576208341576208345176208345716208345761280345762180345762810345762801345762803145762803415762803451762803457162803457612830457621830457628130457628310457628301457628304157628304517628304571628304576128340576218340576281340576283140576283410576283401576283405176283405716283405761283450762183450762813450762831450762834150762834510762834501762834507162834507612834570621834570628134570628314570628341570628345170628345710628345701628345706128345760128345670123845607123845601723845610723845617023845617203845617230845617238045617238405617238450617238456012738456102738456120738456210738456201738456207138456207318456207381456207384156207384516207384561270384562170384562710384562701384562703184562703814562703841562703845162703845612730845621730845627130845627310845627301845627308145627308415627308451627308456127380456217380456271380456273180456273810456273801456273804156273804516273804561273840562173840562713840562731840562738140562738410562738401562738405162738405612738450621738450627138450627318450627381450627384150627384510627384501627384506127384560123784561023784561203784562103784562013784562031784562037184562037814562037841562037845162037845612307845621307845623107845632107845631207845631027845631072845631078245631078425631078452631078456230178456320178456302178456301278456301728456301782456301784256301784526301784562307184563207184563027184563072184563071284563071824563071842563071845263071845623078145632078145630278145630728145630782145630781245630781425630781452630781456230784156320784156302784156307284156307824156307842156307841256307841526307841562307845163207845163027845163072845163078245163078425163078452163078451263078451623078456123708456213708456231708456321708456312708456317208456317028456317082456317084256317084526317084562371084563271084563721084563712084563710284563710824563710842563710845263710845623701845632701845637201845637021845637012845637018245637018425637018452637018456237081456327081456372081456370281456370821456370812456370814256370814526370814562370841563270841563720841563702841563708241563708421563708412563708415263708415623708451632708451637208451637028451637082451637084251637084521637084512637084516237084561237804562137804562317804563217804563127804563172804563178204563178024563178042563178045263178045623718045632718045637218045637128045637182045637180245637180425637180452637180456237810456327810456372810456378210456378120456378102456378104256378104526378104562378014563278014563728014563782014563780214563780124563780142563780145263780145623780415632780415637280415637820415637802415637804215637804125637804152637804156237804516327804516372804516378204516378024516378042516378045216378045126378045162378045612378405621378405623178405632178405631278405631728405631782405631784205631784025631784052631784056237184056327184056372184056371284056371824056371842056371840256371840526371840562378140563278140563728140563782140563781240563781420563781402563781405263781405623784105632784105637284105637824105637842105637841205637841025637841052637841056237840156327840156372840156378240156378420156378402156378401256378401526378401562378405163278405163728405163782405163784205163784025163784052163784051263784051623784056123784506213784506231784506321784506312784506317284506317824506317842506317845206317845026317845062371845063271845063721845063712845063718245063718425063718452063718450263718450623781450632781450637281450637821450637812450637814250637814520637814502637814506237841506327841506372841506378241506378421506378412506378415206378415026378415062378451063278451063728451063782451063784251063784521063784512063784510263784510623784501632784501637284501637824501637842501637845201637845021637845012637845016237845061237845601238745610238745612038745621038745620138745620318745620381745620387145620387415620387451620387456123087456213087456231087456321087456312087456310287456310827456310872456310874256310874526310874562301874563201874563021874563012874563018274563018724563018742563018745263018745623081745632081745630281745630821745630812745630817245630817425630817452630817456230871456320871456302871456308271456308721456308712456308714256308714526308714562308741563208741563028741563082741563087241563087421563087412563087415263087415623087451632087451630287451630827451630872451630874251630874521630874512630874516230874561238074562138074562318074563218074563128074563182074563180274563180724563180742563180745263180745623810745632810745638210745638120745638102745638107245638107425638107452638107456238017456328017456382017456380217456380127456380172456380174256380174526380174562380714563280714563820714563802714563807214563807124563807142563807145263807145623807415632807415638207415638027415638072415638074215638074125638074152638074156238074516328074516382074516380274516380724516380742516380745216380745126380745162380745612387045621387045623187045632187045631287045631827045631872045631870245631870425631870452631870456238170456328170456382170456381270456381720456381702456381704256381704526381704562387104563287104563827104563872104563871204563871024563871042563871045263871045623870145632870145638270145638720145638702145638701245638701425638701452638701456238704156328704156382704156387204156387024156387042156387041256387041526387041562387045163287045163827045163872045163870245163870425163870452163870451263870451623870456123874056213874056231874056321874056312874056318274056318724056318742056318740256318740526318740562381740563281740563821740563812740563817240563817420563817402563817405263817405623871405632871405638271405638721405638712405638714205638714025638714052638714056238741056328741056382741056387241056387421056387412056387410256387410526387410562387401563287401563827401563872401563874201563874021563874012563874015263874015623874051632874051638274051638724051638742051638740251638740521638740512638740516238740561238745062138745062318745063218745063128745063182745063187245063187425063187452063187450263187450623817450632817450638217450638127450638172450638174250638174520638174502638174506238714506328714506382714506387214506387124506387142506387145206387145026387145062387415063287415063827415063872415063874215063874125063874152063874150263874150623874510632874510638274510638724510638742510638745210638745120638745102638745106238745016328745016382745016387245016387425016387452016387450216387450126387450162387450612387456012384756102384756120384756210384756201384756203184756203814756203841756203847156203847516203847561230847562130847562310847563210847563120847563102847563108247563108427563108472563108475263108475623018475632018475630218475630128475630182475630184275630184725630184752630184756230814756320814756302814756308214756308124756308142756308147256308147526308147562308417563208417563028417563082417563084217563084127563084172563084175263084175623084715632084715630284715630824715630842715630847215630847125630847152630847156230847516320847516302847516308247516308427516308472516308475216308475126308475162308475612380475621380475623180475632180475631280475631820475631802475631804275631804725631804752631804756238104756328104756382104756381204756381024756381042756381047256381047526381047562380147563280147563820147563802147563801247563801427563801472563801475263801475623804175632804175638204175638024175638042175638041275638041725638041752638041756238047156328047156382047156380247156380427156380472156380471256380471526380471562380475163280475163820475163802475163804275163804725163804752163804751263804751623804756123840756213840756231840756321840756312840756318240756318420756318402756318407256318407526318407562381407563281407563821407563812407563814207563814027563814072563814075263814075623841075632841075638241075638421075638412075638410275638410725638410752638410756238401756328401756382401756384201756384021756384012756384017256384017526384017562384071563284071563824071563842071563840271563840721563840712563840715263840715623840751632840751638240751638420751638402751638407251638407521638407512638407516238407561238470562138470562318470563218470563128470563182470563184270563184720563184702563184705263184705623814705632814705638214705638124705638142705638147205638147025638147052638147056238417056328417056382417056384217056384127056384172056384170256384170526384170562384710563284710563824710563842710563847210563847120563847102563847105263847105623847015632847015638247015638427015638472015638470215638470125638470152638470156238470516328470516382470516384270516384720516384702516384705216384705126384705162384705612384750621384750623184750632184750631284750631824750631842750631847250631847520631847502631847506238147506328147506382147506381247506381427506381472506381475206381475026381475062384175063284175063824175063842175063841275063841725063841752063841750263841750623847150632847150638247150638427150638472150638471250638471520638471502638471506238475106328475106382475106384275106384725106384752106384751206384751026384751062384750163284750163824750163842750163847250163847520163847502163847501263847501623847506123847560123845761023845761203845762103845762013845762031845762038145762038415762038451762038457162038457612308457621308457623108457632108457631208457631028457631082457631084257631084527631084572631084576230184576320184576302184576301284576301824576301842576301845276301845726301845762308145763208145763028145763082145763081245763081425763081452763081457263081457623084157632084157630284157630824157630842157630841257630841527630841572630841576230845176320845176302845176308245176308425176308452176308451276308451726308451762308457163208457163028457163082457163084257163084527163084572163084571263084571623084576123804576213804576231804576321804576312804576318204576318024576318042576318045276318045726318045762381045763281045763821045763812045763810245763810425763810452763810457263810457623801457632801457638201457638021457638012457638014257638014527638014572638014576238041576328041576382041576380241576380421576380412576380415276380415726380415762380451763280451763820451763802451763804251763804521763804512763804517263804517623804571632804571638204571638024571638042571638045271638045721638045712638045716238045761238405762138405762318405763218405763128405763182405763184205763184025763184052763184057263184057623814057632814057638214057638124057638142057638140257638140527638140572638140576238410576328410576382410576384210576384120576384102576384105276384105726384105762384015763284015763824015763842015763840215763840125763840152763840157263840157623840517632840517638240517638420517638402517638405217638405127638405172638405176238405716328405716382405716384205716384025716384052716384057216384057126384057162384057612384507621384507623184507632184507631284507631824507631842507631845207631845027631845072631845076238145076328145076382145076381245076381425076381452076381450276381450726381450762384150763284150763824150763842150763841250763841520763841502763841507263841507623845107632845107638245107638425107638452107638451207638451027638451072638451076238450176328450176382450176384250176384520176384502176384501276384501726384501762384507163284507163824507163842507163845207163845027163845072163845071263845071623845076123845706213845706231845706321845706312845706318245706318425706318452706318457206318457026318457062381457063281457063821457063812457063814257063814527063814572063814570263814570623841570632841570638241570638421570638412570638415270638415720638415702638415706238451706328451706382451706384251706384521706384512706384517206384517026384517062384571063284571063824571063842571063845271063845721063845712063845710263845710623845701632845701638245701638425701638452701638457201638457021638457012638457016238457061238457601238456701234856071234856017234856107234856170234856172034856172304856172340856172348056172348506172348560127348561027348561207348562107348562017348562071348562073148562073418562073481562073485162073485612703485621703485627103485627013485627031485627034185627034815627034851627034856127304856217304856271304856273104856273014856273041856273048156273048516273048561273408562173408562713408562731408562734108562734018562734081562734085162734085612734805621734805627134805627314805627341805627348105627348015627348051627348056127348506217348506271348506273148506273418506273481506273485106273485016273485061273485601237485610237485612037485621037485620137485620317485620371485620374185620374815620374851620374856123074856213074856231074856321074856312074856310274856310724856310742856310748256310748526310748562301748563201748563021748563012748563017248563017428563017482563017485263017485623071485632071485630271485630721485630712485630714285630714825630714852630714856230741856320741856302741856307241856307421856307412856307418256307418526307418562307481563207481563027481563072481563074281563074821563074812563074815263074815623074851632074851630274851630724851630742851630748251630748521630748512630748516230748561237048562137048562317048563217048563127048563172048563170248563170428563170482563170485263170485623710485632710485637210485637120485637102485637104285637104825637104852637104856237014856327014856372014856370214856370124856370142856370148256370148526370148562370418563270418563720418563702418563704218563704128563704182563704185263704185623704815632704815637204815637024815637042815637048215637048125637048152637048156237048516327048516372048516370248516370428516370482516370485216370485126370485162370485612374085621374085623174085632174085631274085631724085631742085631740285631740825631740852631740856237140856327140856372140856371240856371420856371402856371408256371408526371408562374108563274108563724108563742108563741208563741028563741082563741085263741085623740185632740185637240185637420185637402185637401285637401825637401852637401856237408156327408156372408156374208156374028156374082156374081256374081526374081562374085163274085163724085163742085163740285163740825163740852163740851263740851623740856123748056213748056231748056321748056312748056317248056317428056317482056317480256317480526317480562371480563271480563721480563712480563714280563714820563714802563714805263714805623741805632741805637241805637421805637412805637418205637418025637418052637418056237481056327481056372481056374281056374821056374812056374810256374810526374810562374801563274801563724801563742801563748201563748021563748012563748015263748015623748051632748051637248051637428051637482051637480251637480521637480512637480516237480561237485062137485062317485063217485063127485063172485063174285063174825063174852063174850263174850623714850632714850637214850637124850637142850637148250637148520637148502637148506237418506327418506372418506374218506374128506374182506374185206374185026374185062374815063274815063724815063742815063748215063748125063748152063748150263748150623748510632748510637248510637428510637482510637485210637485120637485102637485106237485016327485016372485016374285016374825016374852016374850216374850126374850162374850612374856012347856102347856120347856210347856201347856203147856203417856203471856203478156203478516203478561230478562130478562310478563210478563120478563102478563104278563104728563104782563104785263104785623014785632014785630214785630124785630142785630147285630147825630147852630147856230417856320417856302417856304217856304127856304172856304178256304178526304178562304718563204718563024718563042718563047218563047128563047182563047185263047185623047815632047815630247815630427815630472815630478215630478125630478152630478156230478516320478516302478516304278516304728516304782516304785216304785126304785162304785612340785621340785623140785632140785631240785631420785631402785631407285631407825631407852631407856234107856324107856342107856432107856423107856421307856421037856421073856421078356421078536421078563412078564312078564132078564123078564120378564120738564120783564120785364120785634102785643102785641302785641032785641023785641027385641027835641027853641027856341072856431072856413072856410372856410732856410723856410728356410728536410728563410782564310782564130782564103782564107382564107832564107823564107825364107825634107852643107852641307852641037852641073852641078352641078532641078523641078526341078562340178563240178563420178564320178564230178564203178564201378564201738564201783564201785364201785634021785643021785640321785640231785640213785640217385640217835640217853640217856340127856430127856403127856401327856401237856401273856401278356401278536401278563401728564301728564031728564013728564017328564017238564017283564017285364017285634017825643017825640317825640137825640173825640178325640178235640178253640178256340178526430178526403178526401378526401738526401783526401785326401785236401785263401785623407185632407185634207185643207185642307185642037185642073185642071385642071835642071853642071856340271856430271856403271856402371856402731856402713856402718356402718536402718563407218564307218564037218564073218564072318564072138564072183564072185364072185634071285643071285640371285640731285640713285640712385640712835640712853640712856340718256430718256403718256407318256407138256407183256407182356407182536407182563407185264307185264037185264073185264071385264071835264071853264071852364071852634071856234078156324078156342078156432078156423078156420378156420738156420783156420781356420781536420781563402781564302781564032781564023781564027381564027831564027813564027815364027815634072815643072815640372815640732815640723815640728315640728135640728153640728156340782156430782156403782156407382156407832156407823156407821356407821536407821563407812564307812564037812564073812564078312564078132564078123564078125364078125634078152643078152640378152640738152640783152640781352640781532640781523640781526340781562340785163240785163420785164320785164230785164203785164207385164207835164207853164207851364207851634027851643027851640327851640237851640273851640278351640278531640278513640278516340728516430728516403728516407328516407238516407283516407285316407285136407285163407825164307825164037825164073825164078325164078235164078253164078251364078251634078521643078521640378521640738521640783521640785321640785231640785213640785216340785126430785126403785126407385126407835126407853126407851326407851236407851263407851623407856123470856213470856231470856321470856312470856314270856314720856314702856314708256314708526314708562341708563241708563421708564321708564231708564213708564217308564217038564217083564217085364217085634127085643127085641327085641237085641273085641270385641270835641270853641270856341720856431720856413720856417320856417230856417203856417208356417208536417208563417028564317028564137028564173028564170328564170238564170283564170285364170285634170825643170825641370825641730825641703825641708325641708235641708253641708256341708526431708526413708526417308526417038526417083526417085326417085236417085263417085623471085632471085634271085643271085642371085642731085642713085642710385642710835642710853642710856347210856437210856473210856472310856472130856472103856472108356472108536472108563471208564371208564731208564713208564712308564712038564712083564712085364712085634710285643710285647310285647130285647103285647102385647102835647102853647102856347108256437108256473108256471308256471038256471083256471082356471082536471082563471085264371085264731085264713085264710385264710835264710853264710852364710852634710856234701856324701856342701856432701856423701856427301856427031856427013856427018356427018536427018563472018564372018564732018564723018564720318564720138564720183564720185364720185634702185643702185647302185647032185647023185647021385647021835647021853647021856347012856437012856473012856470312856470132856470123856470128356470128536470128563470182564370182564730182564703182564701382564701832564701823564701825364701825634701852643701852647301852647031852647013852647018352647018532647018523647018526347018562347081563247081563427081564327081564237081564273081564270381564270831564270813564270815364270815634720815643720815647320815647230815647203815647208315647208135647208153647208156347028156437028156473028156470328156470238156470283156470281356470281536470281563470821564370821564730821564703821564708321564708231564708213564708215364708215634708125643708125647308125647038125647083125647081325647081235647081253647081256347081526437081526473081526470381526470831526470813526470815326470815236470815263470815623470851632470851634270851643270851642370851642730851642703851642708351642708531642708513642708516347208516437208516473208516472308516472038516472083516472085316472085136472085163470285164370285164730285164703285164702385164702835164702853164702851364702851634708251643708251647308251647038251647083251647082351647082531647082513647082516347085216437085216473085216470385216470835216470853216470852316470852136470852163470851264370851264730851264703851264708351264708531264708513264708512364708512634708516234708561234780562134780562314780563214780563124780563142780563147280563147820563147802563147805263147805623417805632417805634217805643217805642317805642137805642173805642178305642178035642178053642178056341278056431278056413278056412378056412738056412783056412780356412780536412780563417280564317280564137280564173280564172380564172830564172803564172805364172805634178205643178205641378205641738205641783205641782305641782035641782053641782056341780256431780256413780256417380256417830256417803256417802356417802536417802563417805264317805264137805264173805264178305264178035264178053264178052364178052634178056234718056324718056342718056432718056423718056427318056427138056427183056427180356427180536427180563472180564372180564732180564723180564721380564721830564721803564721805364721805634712805643712805647312805647132805647123805647128305647128035647128053647128056347182056437182056473182056471382056471832056471823056471820356471820536471820563471802564371802564731802564713802564718302564718032564718023564718025364718025634718052643718052647318052647138052647183052647180352647180532647180523647180526347180562347810563247810563427810564327810564237810564273810564278310564278130564278103564278105364278105634728105643728105647328105647238105647283105647281305647281035647281053647281056347821056437821056473821056478321056478231056478213056478210356478210536478210563478120564378120564738120564783120564781320564781230564781203564781205364781205634781025643781025647381025647831025647813025647810325647810235647810253647810256347810526437810526473810526478310526478130526478103526478105326478105236478105263478105623478015632478015634278015643278015642378015642738015642783015642780315642780135642780153642780156347280156437280156473280156472380156472830156472803156472801356472801536472801563478201564378201564738201564783201564782301564782031564782013564782015364782015634780215643780215647380215647830215647803215647802315647802135647802153647802156347801256437801256473801256478301256478031256478013256478012356478012536478012563478015264378015264738015264783015264780315264780135264780153264780152364780152634780156234780516324780516342780516432780516423780516427380516427830516427803516427805316427805136427805163472805164372805164732805164723805164728305164728035164728053164728051364728051634782051643782051647382051647832051647823051647820351647820531647820513647820516347802516437802516473802516478302516478032516478023516478025316478025136478025163478052164378052164738052164783052164780352164780532164780523164780521364780521634780512643780512647380512647830512647803512647805312647805132647805123647805126347805162347805612347850621347850623147850632147850631247850631427850631472850631478250631478520631478502631478506234178506324178506342178506432178506423178506421378506421738506421783506421785306421785036421785063412785064312785064132785064123785064127385064127835064127853064127850364127850634172850643172850641372850641732850641723850641728350641728530641728503641728506341782506431782506413782506417382506417832506417823506417825306417825036417825063417852064317852064137852064173852064178352064178532064178523064178520364178520634178502643178502641378502641738502641783502641785302641785032641785023641785026341785062347185063247185063427185064327185064237185064273185064271385064271835064271853064271850364271850634721850643721850647321850647231850647213850647218350647218530647218503647218506347128506437128506473128506471328506471238506471283506471285306471285036471285063471825064371825064731825064713825064718325064718235064718253064718250364718250634718520643718520647318520647138520647183520647185320647185230647185203647185206347185026437185026473185026471385026471835026471853026471850326471850236471850263471850623478150632478150634278150643278150642378150642738150642783150642781350642781530642781503642781506347281506437281506473281506472381506472831506472813506472815306472815036472815063478215064378215064738215064783215064782315064782135064782153064782150364782150634781250643781250647381250647831250647813250647812350647812530647812503647812506347815206437815206473815206478315206478135206478153206478152306478152036478152063478150264378150264738150264783150264781350264781530264781503264781502364781502634781506234785106324785106342785106432785106423785106427385106427835106427853106427851306427851036427851063472851064372851064732851064723851064728351064728531064728513064728510364728510634782510643782510647382510647832510647823510647825310647825130647825103647825106347852106437852106473852106478352106478532106478523106478521306478521036478521063478512064378512064738512064783512064785312064785132064785123064785120364785120634785102643785102647385102647835102647853102647851302647851032647851023647851026347851062347850163247850163427850164327850164237850164273850164278350164278530164278503164278501364278501634728501643728501647328501647238501647283501647285301647285031647285013647285016347825016437825016473825016478325016478235016478253016478250316478250136478250163478520164378520164738520164783520164785320164785230164785203164785201364785201634785021643785021647385021647835021647853021647850321647850231647850213647850216347850126437850126473850126478350126478530126478503126478501326478501236478501263478501623478506123478560123487561023487561203487562103487562013487562031487562034187562034817562034871562034875162034875612304875621304875623104875632104875631204875631024875631042875631048275631048725631048752631048756230148756320148756302148756301248756301428756301482756301487256301487526301487562304187563204187563024187563042187563041287563041827563041872563041875263041875623048175632048175630248175630428175630482175630481275630481725630481752630481756230487156320487156302487156304287156304827156304872156304871256304871526304871562304875163204875163024875163042875163048275163048725163048752163048751263048751623048756123408756213408756231408756321408756312408756314208756314028756314082756314087256314087526314087562341087563241087563421087564321087564231087564213087564210387564210837564210873564210875364210875634120875643120875641320875641230875641203875641208375641208735641208753641208756341028756431028756413028756410328756410238756410283756410287356410287536410287563410827564310827564130827564103827564108327564108237564108273564108275364108275634108725643108725641308725641038725641083725641087325641087235641087253641087256341087526431087526413087526410387526410837526410873526410875326410875236410875263410875623401875632401875634201875643201875642301875642031875642013875642018375642018735642018753642018756340218756430218756403218756402318756402138756402183756402187356402187536402187563401287564301287564031287564013287564012387564012837564012873564012875364012875634018275643018275640318275640138275640183275640182375640182735640182753640182756340187256430187256403187256401387256401837256401873256401872356401872536401872563401875264301875264031875264013875264018375264018735264018753264018752364018752634018756234081756324081756342081756432081756423081756420381756420831756420813756420817356420817536420817563402817564302817564032817564023817564028317564028137564028173564028175364028175634082175643082175640382175640832175640823175640821375640821735640821753640821756340812756430812756403812756408312756408132756408123756408127356408127536408127563408172564308172564038172564083172564081372564081732564081723564081725364081725634081752643081752640381752640831752640813752640817352640817532640817523640817526340817562340871563240871563420871564320871564230871564203871564208371564208731564208713564208715364208715634028715643028715640328715640238715640283715640287315640287135640287153640287156340827156430827156403827156408327156408237156408273156408271356408271536408271563408721564308721564038721564083721564087321564087231564087213564087215364087215634087125643087125640387125640837125640873125640871325640871235640871253640871256340871526430871526403871526408371526408731526408713526408715326408715236408715263408715623408751632408751634208751643208751642308751642038751642083751642087351642087531642087513642087516340287516430287516403287516402387516402837516402873516402875316402875136402875163408275164308275164038275164083275164082375164082735164082753164082751364082751634087251643087251640387251640837251640873251640872351640872531640872513640872516340875216430875216403875216408375216408735216408753216408752316408752136408752163408751264308751264038751264083751264087351264087531264087513264087512364087512634087516234087561234807562134807562314807563214807563124807563142807563148207563148027563148072563148075263148075623418075632418075634218075643218075642318075642138075642183075642180375642180735642180753642180756341280756431280756413280756412380756412830756412803756412807356412807536412807563418207564318207564138207564183207564182307564182037564182073564182075364182075634180275643180275641380275641830275641803275641802375641802735641802753641802756341807256431807256413807256418307256418037256418073256418072356418072536418072563418075264318075264138075264183075264180375264180735264180753264180752364180752634180756234810756324810756342810756432810756423810756428310756428130756428103756428107356428107536428107563482107564382107564832107564823107564821307564821037564821073564821075364821075634812075643812075648312075648132075648123075648120375648120735648120753648120756348102756438102756483102756481302756481032756481023756481027356481027536481027563481072564381072564831072564813072564810372564810732564810723564810725364810725634810752643810752648310752648130752648103752648107352648107532648107523648107526348107562348017563248017563428017564328017564238017564283017564280317564280137564280173564280175364280175634820175643820175648320175648230175648203175648201375648201735648201753648201756348021756438021756483021756480321756480231756480213756480217356480217536480217563480127564380127564830127564803127564801327564801237564801273564801275364801275634801725643801725648301725648031725648013725648017325648017235648017253648017256348017526438017526483017526480317526480137526480173526480175326480175236480175263480175623480715632480715634280715643280715642380715642830715642803715642807315642807135642807153642807156348207156438207156483207156482307156482037156482073156482071356482071536482071563480271564380271564830271564803271564802371564802731564802713564802715364802715634807215643807215648307215648037215648073215648072315648072135648072153648072156348071256438071256483071256480371256480731256480713256480712356480712536480712563480715264380715264830715264803715264807315264807135264807153264807152364807152634807156234807516324807516342807516432807516423807516428307516428037516428073516428075316428075136428075163482075164382075164832075164823075164820375164820735164820753164820751364820751634802751643802751648302751648032751648023751648027351648027531648027513648027516348072516438072516483072516480372516480732516480723516480725316480725136480725163480752164380752164830752164803752164807352164807532164807523164807521364807521634807512643807512648307512648037512648073512648075312648075132648075123648075126348075162348075612348705621348705623148705632148705631248705631428705631482705631487205631487025631487052631487056234187056324187056342187056432187056423187056421387056421837056421873056421870356421870536421870563412870564312870564132870564123870564128370564128730564128703564128705364128705634182705643182705641382705641832705641823705641827305641827035641827053641827056341872056431872056413872056418372056418732056418723056418720356418720536418720563418702564318702564138702564183702564187302564187032564187023564187025364187025634187052643187052641387052641837052641873052641870352641870532641870523641870526341870562348170563248170563428170564328170564238170564283170564281370564281730564281703564281705364281705634821705643821705648321705648231705648213705648217305648217035648217053648217056348127056438127056483127056481327056481237056481273056481270356481270536481270563481720564381720564831720564813720564817320564817230564817203564817205364817205634817025643817025648317025648137025648173025648170325648170235648170253648170256348170526438170526483170526481370526481730526481703526481705326481705236481705263481705623487105632487105634287105643287105642387105642837105642873105642871305642871035642871053642871056348271056438271056483271056482371056482731056482713056482710356482710536482710563487210564387210564837210564873210564872310564872130564872103564872105364872105634871205643871205648371205648731205648713205648712305648712035648712053648712056348710256438710256483710256487310256487130256487103256487102356487102536487102563487105264387105264837105264873105264871305264871035264871053264871052364871052634871056234870156324870156342870156432870156423870156428370156428730156428703156428701356428701536428701563482701564382701564832701564823701564827301564827031564827013564827015364827015634872015643872015648372015648732015648723015648720315648720135648720153648720156348702156438702156483702156487302156487032156487023156487021356487021536487021563487012564387012564837012564873012564870312564870132564870123564870125364870125634870152643870152648370152648730152648703152648701352648701532648701523648701526348701562348705163248705163428705164328705164238705164283705164287305164287035164287053164287051364287051634827051643827051648327051648237051648273051648270351648270531648270513648270516348720516438720516483720516487320516487230516487203516487205316487205136487205163487025164387025164837025164873025164870325164870235164870253164870251364870251634870521643870521648370521648730521648703521648705321648705231648705213648705216348705126438705126483705126487305126487035126487053126487051326487051236487051263487051623487056123487506213487506231487506321487506312487506314287506314827506314872506314875206314875026314875062341875063241875063421875064321875064231875064213875064218375064218735064218753064218750364218750634128750643128750641328750641238750641283750641287350641287530641287503641287506341827506431827506413827506418327506418237506418273506418275306418275036418275063418725064318725064138725064183725064187325064187235064187253064187250364187250634187520643187520641387520641837520641873520641875320641875230641875203641875206341875026431875026413875026418375026418735026418753026418750326418750236418750263418750623481750632481750634281750643281750642381750642831750642813750642817350642817530642817503642817506348217506438217506483217506482317506482137506482173506482175306482175036482175063481275064381275064831275064813275064812375064812735064812753064812750364812750634817250643817250648317250648137250648173250648172350648172530648172503648172506348175206438175206483175206481375206481735206481753206481752306481752036481752063481750264381750264831750264813750264817350264817530264817503264817502364817502634817506234871506324871506342871506432871506423871506428371506428731506428713506428715306428715036428715063482715064382715064832715064823715064827315064827135064827153064827150364827150634872150643872150648372150648732150648723150648721350648721530648721503648721506348712506438712506483712506487312506487132506487123506487125306487125036487125063487152064387152064837152064873152064871352064871532064871523064871520364871520634871502643871502648371502648731502648713502648715302648715032648715023648715026348715062348751063248751063428751064328751064238751064283751064287351064287531064287513064287510364287510634827510643827510648327510648237510648273510648275310648275130648275103648275106348725106438725106483725106487325106487235106487253106487251306487251036487251063487521064387521064837521064873521064875321064875231064875213064875210364875210634875120643875120648375120648735120648753120648751320648751230648751203648751206348751026438751026483751026487351026487531026487513026487510326487510236487510263487510623487501632487501634287501643287501642387501642837501642873501642875301642875031642875013642875016348275016438275016483275016482375016482735016482753016482750316482750136482750163487250164387250164837250164873250164872350164872530164872503164872501364872501634875201643875201648375201648735201648753201648752301648752031648752013648752016348750216438750216483750216487350216487530216487503216487502316487502136487502163487501264387501264837501264873501264875301264875031264875013264875012364875012634875016234875061234875601234857610234857612034857621034857620134857620314857620341857620348157620348517620348571620348576123048576213048576231048576321048576312048576310248576310428576310482576310485276310485726310485762301485763201485763021485763012485763014285763014825763014852763014857263014857623041857632041857630241857630421857630412857630418257630418527630418572630418576230481576320481576302481576304281576304821576304812576304815276304815726304815762304851763204851763024851763042851763048251763048521763048512763048517263048517623048571632048571630248571630428571630482571630485271630485721630485712630485716230485761234085762134085762314085763214085763124085763142085763140285763140825763140852763140857263140857623410857632410857634210857643210857642310857642130857642103857642108357642108537642108573642108576341208576431208576413208576412308576412038576412083576412085376412085736412085763410285764310285764130285764103285764102385764102835764102853764102857364102857634108257643108257641308257641038257641083257641082357641082537641082573641082576341085276431085276413085276410385276410835276410853276410852376410852736410852763410857264310857264130857264103857264108357264108537264108573264108572364108572634108576234018576324018576342018576432018576423018576420318576420138576420183576420185376420185736420185763402185764302185764032185764023185764021385764021835764021853764021857364021857634012857643012857640312857640132857640123857640128357640128537640128573640128576340182576430182576403182576401382576401832576401823576401825376401825736401825763401852764301852764031852764013852764018352764018532764018523764018527364018527634018572643018572640318572640138572640183572640185372640185732640185723640185726340185762340815763240815763420815764320815764230815764203815764208315764208135764208153764208157364208157634028157643028157640328157640238157640283157640281357640281537640281573640281576340821576430821576403821576408321576408231576408213576408215376408215736408215763408125764308125764038125764083125764081325764081235764081253764081257364081257634081527643081527640381527640831527640813527640815327640815237640815273640815276340815726430815726403815726408315726408135726408153726408157326408157236408157263408157623408517632408517634208517643208517642308517642038517642083517642085317642085137642085173642085176340285176430285176403285176402385176402835176402853176402851376402851736402851763408251764308251764038251764083251764082351764082531764082513764082517364082517634085217643085217640385217640835217640853217640852317640852137640852173640852176340851276430851276403851276408351276408531276408513276408512376408512736408512763408517264308517264038517264083517264085317264085137264085173264085172364085172634085176234085716324085716342085716432085716423085716420385716420835716420853716420857316420857136420857163402857164302857164032857164023857164028357164028537164028573164028571364028571634082571643082571640382571640832571640823571640825371640825731640825713640825716340852716430852716403852716408352716408532716408523716408527316408527136408527163408572164308572164038572164083572164085372164085732164085723164085721364085721634085712643085712640385712640835712640853712640857312640857132640857123640857126340857162340857612348057621348057623148057632148057631248057631428057631482057631480257631480527631480572631480576234180576324180576342180576432180576423180576421380576421830576421803576421805376421805736421805763412805764312805764132805764123805764128305764128035764128053764128057364128057634182057643182057641382057641832057641823057641820357641820537641820573641820576341802576431802576413802576418302576418032576418023576418025376418025736418025763418052764318052764138052764183052764180352764180532764180523764180527364180527634180572643180572641380572641830572641803572641805372641805732641805723641805726341805762348105763248105763428105764328105764238105764283105764281305764281035764281053764281057364281057634821057643821057648321057648231057648213057648210357648210537648210573648210576348120576438120576483120576481320576481230576481203576481205376481205736481205763481025764381025764831025764813025764810325764810235764810253764810257364810257634810527643810527648310527648130527648103527648105327648105237648105273648105276348105726438105726483105726481305726481035726481053726481057326481057236481057263481057623480157632480157634280157643280157642380157642830157642803157642801357642801537642801573642801576348201576438201576483201576482301576482031576482013576482015376482015736482015763480215764380215764830215764803215764802315764802135764802153764802157364802157634801257643801257648301257648031257648013257648012357648012537648012573648012576348015276438015276483015276480315276480135276480153276480152376480152736480152763480157264380157264830157264803157264801357264801537264801573264801572364801572634801576234805176324805176342805176432805176423805176428305176428035176428053176428051376428051736428051763482051764382051764832051764823051764820351764820531764820513764820517364820517634802517643802517648302517648032517648023517648025317648025137648025173648025176348052176438052176483052176480352176480532176480523176480521376480521736480521763480512764380512764830512764803512764805312764805132764805123764805127364805127634805172643805172648305172648035172648053172648051372648051732648051723648051726348051762348057163248057163428057164328057164238057164283057164280357164280537164280573164280571364280571634820571643820571648320571648230571648203571648205371648205731648205713648205716348025716438025716483025716480325716480235716480253716480257316480257136480257163480527164380527164830527164803527164805327164805237164805273164805271364805271634805721643805721648305721648035721648053721648057321648057231648057213648057216348057126438057126483057126480357126480537126480573126480571326480571236480571263480571623480576123485076213485076231485076321485076312485076314285076314825076314852076314850276314850726314850762341850763241850763421850764321850764231850764213850764218350764218530764218503764218507364218507634128507643128507641328507641238507641283507641285307641285037641285073641285076341825076431825076413825076418325076418235076418253076418250376418250736418250763418520764318520764138520764183520764185320764185230764185203764185207364185207634185027643185027641385027641835027641853027641850327641850237641850273641850276341850726431850726413850726418350726418530726418503726418507326418507236418507263418507623481507632481507634281507643281507642381507642831507642813507642815307642815037642815073642815076348215076438215076483215076482315076482135076482153076482150376482150736482150763481250764381250764831250764813250764812350764812530764812503764812507364812507634815207643815207648315207648135207648153207648152307648152037648152073648152076348150276438150276483150276481350276481530276481503276481502376481502736481502763481507264381507264831507264813507264815307264815037264815073264815072364815072634815076234851076324851076342851076432851076423851076428351076428531076428513076428510376428510736428510763482510764382510764832510764823510764825310764825130764825103764825107364825107634852107643852107648352107648532107648523107648521307648521037648521073648521076348512076438512076483512076485312076485132076485123076485120376485120736485120763485102764385102764835102764853102764851302764851032764851023764851027364851027634851072643851072648351072648531072648513072648510372648510732648510723648510726348510762348501763248501763428501764328501764238501764283501764285301764285031764285013764285017364285017634825017643825017648325017648235017648253017648250317648250137648250173648250176348520176438520176483520176485320176485230176485203176485201376485201736485201763485021764385021764835021764853021764850321764850231764850213764850217364850217634850127643850127648350127648530127648503127648501327648501237648501273648501276348501726438501726483501726485301726485031726485013726485017326485017236485017263485017623485071632485071634285071643285071642385071642835071642853071642850371642850731642850713642850716348250716438250716483250716482350716482530716482503716482507316482507136482507163485207164385207164835207164853207164852307164852037164852073164852071364852071634850271643850271648350271648530271648503271648502371648502731648502713648502716348507216438507216483507216485307216485037216485073216485072316485072136485072163485071264385071264835071264853071264850371264850731264850713264850712364850712634850716234850761234857062134857062314857063214857063124857063142857063148257063148527063148572063148570263148570623418570632418570634218570643218570642318570642138570642183570642185370642185730642185703642185706341285706431285706413285706412385706412835706412853706412857306412857036412857063418257064318257064138257064183257064182357064182537064182573064182570364182570634185270643185270641385270641835270641853270641852370641852730641852703641852706341857206431857206413857206418357206418537206418573206418572306418572036418572063418570264318570264138570264183570264185370264185730264185703264185702364185702634185706234815706324815706342815706432815706423815706428315706428135706428153706428157306428157036428157063482157064382157064832157064823157064821357064821537064821573064821570364821570634812570643812570648312570648132570648123570648125370648125730648125703648125706348152706438152706483152706481352706481532706481523706481527306481527036481527063481572064381572064831572064813572064815372064815732064815723064815720364815720634815702643815702648315702648135702648153702648157302648157032648157023648157026348157062348517063248517063428517064328517064238517064283517064285317064285137064285173064285170364285170634825170643825170648325170648235170648253170648251370648251730648251703648251706348521706438521706483521706485321706485231706485213706485217306485217036485217063485127064385127064835127064853127064851327064851237064851273064851270364851270634851720643851720648351720648531720648513720648517320648517230648517203648517206348517026438517026483517026485317026485137026485173026485170326485170236485170263485170623485710632485710634285710643285710642385710642835710642853710642857310642857130642857103642857106348257106438257106483257106482357106482537106482573106482571306482571036482571063485271064385271064835271064853271064852371064852731064852713064852710364852710634857210643857210648357210648537210648573210648572310648572130648572103648572106348571206438571206483571206485371206485731206485713206485712306485712036485712063485710264385710264835710264853710264857310264857130264857103264857102364857102634857106234857016324857016342857016432857016423857016428357016428537016428573016428570316428570136428570163482570164382570164832570164823570164825370164825730164825703164825701364825701634852701643852701648352701648532701648523701648527301648527031648527013648527016348572016438572016483572016485372016485732016485723016485720316485720136485720163485702164385702164835702164853702164857302164857032164857023164857021364857021634857012643857012648357012648537012648573012648570312648570132648570123648570126348570162348570612348576012348567012345860712345860172345861072345861702345861720345861723045861723405861723450861723458061723458601273458610273458612073458621073458620173458620713458620731458620734158620734518620734581620734586127034586217034586271034586270134586270314586270341586270345186270345816270345861273045862173045862713045862731045862730145862730415862730451862730458162730458612734058621734058627134058627314058627341058627340158627340518627340581627340586127345086217345086271345086273145086273415086273451086273450186273450816273450861273458062173458062713458062731458062734158062734518062734581062734580162734580612734586012374586102374586120374586210374586201374586203174586203714586203741586203745186203745816203745861230745862130745862310745863210745863120745863102745863107245863107425863107452863107458263107458623017458632017458630217458630127458630172458630174258630174528630174582630174586230714586320714586302714586307214586307124586307142586307145286307145826307145862307415863207415863027415863072415863074215863074125863074152863074158263074158623074518632074518630274518630724518630742518630745218630745128630745182630745186230745816320745816302745816307245816307425816307452816307458216307458126307458162307458612370458621370458623170458632170458631270458631720458631702458631704258631704528631704582631704586237104586327104586372104586371204586371024586371042586371045286371045826371045862370145863270145863720145863702145863701245863701425863701452863701458263701458623704158632704158637204158637024158637042158637041258637041528637041582637041586237045186327045186372045186370245186370425186370452186370451286370451826370451862370458163270458163720458163702458163704258163704528163704582163704581263704581623704586123740586213740586231740586321740586312740586317240586317420586317402586317405286317405826317405862371405863271405863721405863712405863714205863714025863714052863714058263714058623741058632741058637241058637421058637412058637410258637410528637410582637410586237401586327401586372401586374201586374021586374012586374015286374015826374015862374051863274051863724051863742051863740251863740521863740512863740518263740518623740581632740581637240581637420581637402581637405281637405821637405812637405816237405861237450862137450862317450863217450863127450863172450863174250863174520863174502863174508263174508623714508632714508637214508637124508637142508637145208637145028637145082637145086237415086327415086372415086374215086374125086374152086374150286374150826374150862374510863274510863724510863742510863745210863745120863745102863745108263745108623745018632745018637245018637425018637452018637450218637450128637450182637450186237450816327450816372450816374250816374520816374502816374508216374508126374508162374508612374580621374580623174580632174580631274580631724580631742580631745280631745820631745802631745806237145806327145806372145806371245806371425806371452806371458206371458026371458062374158063274158063724158063742158063741258063741528063741582063741580263741580623745180632745180637245180637425180637452180637451280637451820637451802637451806237458106327458106372458106374258106374528106374582106374581206374581026374581062374580163274580163724580163742580163745280163745820163745802163745801263745801623745806123745860123475861023475861203475862103475862013475862031475862034175862034715862034751862034758162034758612304758621304758623104758632104758631204758631024758631042758631047258631047528631047582631047586230147586320147586302147586301247586301427586301472586301475286301475826301475862304175863204175863024175863042175863041275863041725863041752863041758263041758623047158632047158630247158630427158630472158630471258630471528630471582630471586230475186320475186302475186304275186304725186304752186304751286304751826304751862304758163204758163024758163042758163047258163047528163047582163047581263047581623047586123407586213407586231407586321407586312407586314207586314027586314072586314075286314075826314075862341075863241075863421075864321075864231075864213075864210375864210735864210753864210758364210758634120758643120758641320758641230758641203758641207358641207538641207583641207586341027586431027586413027586410327586410237586410273586410275386410275836410275863410725864310725864130725864103725864107325864107235864107253864107258364107258634107528643107528641307528641037528641073528641075328641075238641075283641075286341075826431075826413075826410375826410735826410753826410758326410758236410758263410758623401758632401758634201758643201758642301758642031758642013758642017358642017538642017583642017586340217586430217586403217586402317586402137586402173586402175386402175836402175863401275864301275864031275864013275864012375864012735864012753864012758364012758634017258643017258640317258640137258640173258640172358640172538640172583640172586340175286430175286403175286401375286401735286401753286401752386401752836401752863401758264301758264031758264013758264017358264017538264017583264017582364017582634017586234071586324071586342071586432071586423071586420371586420731586420713586420715386420715836420715863402715864302715864032715864023715864027315864027135864027153864027158364027158634072158643072158640372158640732158640723158640721358640721538640721583640721586340712586430712586403712586407312586407132586407123586407125386407125836407125863407152864307152864037152864073152864071352864071532864071523864071528364071528634071582643071582640371582640731582640713582640715382640715832640715823640715826340715862340751863240751863420751864320751864230751864203751864207351864207531864207513864207518364207518634027518643027518640327518640237518640273518640275318640275138640275183640275186340725186430725186403725186407325186407235186407253186407251386407251836407251863407521864307521864037521864073521864075321864075231864075213864075218364075218634075128643075128640375128640735128640753128640751328640751238640751283640751286340751826430751826403751826407351826407531826407513826407518326407518236407518263407518623407581632407581634207581643207581642307581642037581642073581642075381642075831642075813642075816340275816430275816403275816402375816402735816402753816402758316402758136402758163407258164307258164037258164073258164072358164072538164072583164072581364072581634075281643075281640375281640735281640753281640752381640752831640752813640752816340758216430758216403758216407358216407538216407583216407582316407582136407582163407581264307581264037581264073581264075381264075831264075813264075812364075812634075816234075861234705862134705862314705863214705863124705863142705863147205863147025863147052863147058263147058623417058632417058634217058643217058642317058642137058642173058642170358642170538642170583642170586341270586431270586413270586412370586412730586412703586412705386412705836412705863417205864317205864137205864173205864172305864172035864172053864172058364172058634170258643170258641370258641730258641703258641702358641702538641702583641702586341705286431705286413705286417305286417035286417053286417052386417052836417052863417058264317058264137058264173058264170358264170538264170583264170582364170582634170586234710586324710586342710586432710586423710586427310586427130586427103586427105386427105836427105863472105864372105864732105864723105864721305864721035864721053864721058364721058634712058643712058647312058647132058647123058647120358647120538647120583647120586347102586437102586473102586471302586471032586471023586471025386471025836471025863471052864371052864731052864713052864710352864710532864710523864710528364710528634710582643710582647310582647130582647103582647105382647105832647105823647105826347105862347015863247015863427015864327015864237015864273015864270315864270135864270153864270158364270158634720158643720158647320158647230158647203158647201358647201538647201583647201586347021586437021586473021586470321586470231586470213586470215386470215836470215863470125864370125864730125864703125864701325864701235864701253864701258364701258634701528643701528647301528647031528647013528647015328647015238647015283647015286347015826437015826473015826470315826470135826470153826470158326470158236470158263470158623470518632470518634270518643270518642370518642730518642703518642705318642705138642705183642705186347205186437205186473205186472305186472035186472053186472051386472051836472051863470251864370251864730251864703251864702351864702531864702513864702518364702518634705218643705218647305218647035218647053218647052318647052138647052183647052186347051286437051286473051286470351286470531286470513286470512386470512836470512863470518264370518264730518264703518264705318264705138264705183264705182364705182634705186234705816324705816342705816432705816423705816427305816427035816427053816427058316427058136427058163472058164372058164732058164723058164720358164720538164720583164720581364720581634702581643702581647302581647032581647023581647025381647025831647025813647025816347052816437052816473052816470352816470532816470523816470528316470528136470528163470582164370582164730582164703582164705382164705832164705823164705821364705821634705812643705812647305812647035812647053812647058312647058132647058123647058126347058162347058612347508621347508623147508632147508631247508631427508631472508631475208631475028631475082631475086234175086324175086342175086432175086423175086421375086421735086421753086421750386421750836421750863412750864312750864132750864123750864127350864127530864127503864127508364127508634172508643172508641372508641732508641723508641725308641725038641725083641725086341752086431752086413752086417352086417532086417523086417520386417520836417520863417502864317502864137502864173502864175302864175032864175023864175028364175028634175082643175082641375082641735082641753082641750382641750832641750823641750826341750862347150863247150863427150864327150864237150864273150864271350864271530864271503864271508364271508634721508643721508647321508647231508647213508647215308647215038647215083647215086347125086437125086473125086471325086471235086471253086471250386471250836471250863471520864371520864731520864713520864715320864715230864715203864715208364715208634715028643715028647315028647135028647153028647150328647150238647150283647150286347150826437150826473150826471350826471530826471503826471508326471508236471508263471508623475108632475108634275108643275108642375108642735108642753108642751308642751038642751083642751086347251086437251086473251086472351086472531086472513086472510386472510836472510863475210864375210864735210864753210864752310864752130864752103864752108364752108634751208643751208647351208647531208647513208647512308647512038647512083647512086347510286437510286473510286475310286475130286475103286475102386475102836475102863475108264375108264735108264753108264751308264751038264751083264751082364751082634751086234750186324750186342750186432750186423750186427350186427530186427503186427501386427501836427501863472501864372501864732501864723501864725301864725031864725013864725018364725018634752018643752018647352018647532018647523018647520318647520138647520183647520186347502186437502186473502186475302186475032186475023186475021386475021836475021863475012864375012864735012864753012864750312864750132864750123864750128364750128634750182643750182647350182647530182647503182647501382647501832647501823647501826347501862347508163247508163427508164327508164237508164273508164275308164275038164275083164275081364275081634725081643725081647325081647235081647253081647250381647250831647250813647250816347520816437520816473520816475320816475230816475203816475208316475208136475208163475028164375028164735028164753028164750328164750238164750283164750281364750281634750821643750821647350821647530821647503821647508321647508231647508213647508216347508126437508126473508126475308126475038126475083126475081326475081236475081263475081623475086123475806213475806231475806321475806312475806314275806314725806314752806314758206314758026314758062341758063241758063421758064321758064231758064213758064217358064217538064217583064217580364217580634127580643127580641327580641237580641273580641275380641275830641275803641275806341725806431725806413725806417325806417235806417253806417258306417258036417258063417528064317528064137528064173528064175328064175238064175283064175280364175280634175820643175820641375820641735820641753820641758320641758230641758203641758206341758026431758026413758026417358026417538026417583026417580326417580236417580263417580623471580632471580634271580643271580642371580642731580642713580642715380642715830642715803642715806347215806437215806473215806472315806472135806472153806472158306472158036472158063471258064371258064731258064713258064712358064712538064712583064712580364712580634715280643715280647315280647135280647153280647152380647152830647152803647152806347158206437158206473158206471358206471538206471583206471582306471582036471582063471580264371580264731580264713580264715380264715830264715803264715802364715802634715806234751806324751806342751806432751806423751806427351806427531806427513806427518306427518036427518063472518064372518064732518064723518064725318064725138064725183064725180364725180634752180643752180647352180647532180647523180647521380647521830647521803647521806347512806437512806473512806475312806475132806475123806475128306475128036475128063475182064375182064735182064753182064751382064751832064751823064751820364751820634751802643751802647351802647531802647513802647518302647518032647518023647518026347518062347581063247581063427581064327581064237581064273581064275381064275831064275813064275810364275810634725810643725810647325810647235810647253810647258310647258130647258103647258106347528106437528106473528106475328106475238106475283106475281306475281036475281063475821064375821064735821064753821064758321064758231064758213064758210364758210634758120643758120647358120647538120647583120647581320647581230647581203647581206347581026437581026473581026475381026475831026475813026475810326475810236475810263475810623475801632475801634275801643275801642375801642735801642753801642758301642758031642758013642758016347258016437258016473258016472358016472538016472583016472580316472580136472580163475280164375280164735280164753280164752380164752830164752803164752801364752801634758201643758201647358201647538201647583201647582301647582031647582013647582016347580216437580216473580216475380216475830216475803216475802316475802136475802163475801264375801264735801264753801264758301264758031264758013264758012364758012634758016234758061234758601234578610234578612034578621034578620134578620314578620341578620345178620345718620345781620345786123045786213045786231045786321045786312045786310245786310425786310452786310457286310457826310457862301457863201457863021457863012457863014257863014527863014572863014578263014578623041578632041578630241578630421578630412578630415278630415728630415782630415786230451786320451786302451786304251786304521786304512786304517286304517826304517862304571863204571863024571863042571863045271863045721863045712863045718263045718623045781632045781630245781630425781630452781630457281630457821630457812630457816230457861234057862134057862314057863214057863124057863142057863140257863140527863140572863140578263140578623410578632410578634210578643210578642310578642130578642103578642105378642105738642105783642105786341205786431205786413205786412305786412035786412053786412057386412057836412057863410257864310257864130257864103257864102357864102537864102573864102578364102578634105278643105278641305278641035278641053278641052378641052738641052783641052786341057286431057286413057286410357286410537286410573286410572386410572836410572863410578264310578264130578264103578264105378264105738264105783264105782364105782634105786234015786324015786342015786432015786423015786420315786420135786420153786420157386420157836420157863402157864302157864032157864023157864021357864021537864021573864021578364021578634012578643012578640312578640132578640123578640125378640125738640125783640125786340152786430152786403152786401352786401532786401523786401527386401527836401527863401572864301572864031572864013572864015372864015732864015723864015728364015728634015782643015782640315782640135782640153782640157382640157832640157823640157826340157862340517863240517863420517864320517864230517864203517864205317864205137864205173864205178364205178634025178643025178640325178640235178640253178640251378640251738640251783640251786340521786430521786403521786405321786405231786405213786405217386405217836405217863405127864305127864035127864053127864051327864051237864051273864051278364051278634051728643051728640351728640531728640513728640517328640517238640517283640517286340517826430517826403517826405317826405137826405173826405178326405178236405178263405178623405718632405718634205718643205718642305718642035718642053718642057318642057138642057183642057186340257186430257186403257186402357186402537186402573186402571386402571836402571863405271864305271864035271864053271864052371864052731864052713864052718364052718634057218643057218640357218640537218640573218640572318640572138640572183640572186340571286430571286403571286405371286405731286405713286405712386405712836405712863405718264305718264035718264053718264057318264057138264057183264057182364057182634057186234057816324057816342057816432057816423057816420357816420537816420573816420578316420578136420578163402578164302578164032578164023578164025378164025738164025783164025781364025781634052781643052781640352781640532781640523781640527381640527831640527813640527816340572816430572816403572816405372816405732816405723816405728316405728136405728163405782164305782164035782164053782164057382164057832164057823164057821364057821634057812643057812640357812640537812640573812640578312640578132640578123640578126340578162340578612345078621345078623145078632145078631245078631425078631452078631450278631450728631450782631450786234150786324150786342150786432150786423150786421350786421530786421503786421507386421507836421507863412507864312507864132507864123507864125307864125037864125073864125078364125078634152078643152078641352078641532078641523078641520378641520738641520783641520786341502786431502786413502786415302786415032786415023786415027386415027836415027863415072864315072864135072864153072864150372864150732864150723864150728364150728634150782643150782641350782641530782641503782641507382641507832641507823641507826341507862345107863245107863425107864325107864235107864253107864251307864251037864251073864251078364251078634521078643521078645321078654321078653421078653241078653214078653210478653210748653210784653210786452310786542310786524310786523410786523140786523104786523107486523107846523107864521307865421307865241307865214307865213407865213047865213074865213078465213078645210378654210378652410378652140378652104378652103478652103748652103784652103786452107386542107386524107386521407386521047386521074386521073486521073846521073864521078365421078365241078365214078365210478365210748365210784365210783465210783645210786345120786435120786453120786543120786534120786531420786531240786531204786531207486531207846531207864513207865413207865143207865134207865132407865132047865132074865132078465132078645123078654123078651423078651243078651234078651230478651230748651230784651230786451203786541203786514203786512403786512043786512034786512037486512037846512037864512073865412073865142073865124073865120473865120743865120734865120738465120738645120783654120783651420783651240783651204783651207483651207843651207834651207836451207863451027864351027864531027865431027865341027865314027865310427865310247865310274865310278465310278645130278654130278651430278651340278651304278651302478651302748651302784651302786451032786541032786514032786510432786510342786510324786510327486510327846510327864510237865410237865140237865104237865102437865102347865102374865102378465102378645102738654102738651402738651042738651024738651027438651027348651027384651027386451027836541027836514027836510427836510247836510274836510278436510278346510278364510278634510728643510728645310728654310728653410728653140728653104728653107428653107248653107284653107286451307286541307286514307286513407286513047286513074286513072486513072846513072864510372865410372865140372865104372865103472865103742865103724865103728465103728645107328654107328651407328651047328651074328651073428651073248651073284651073286451072386541072386514072386510472386510742386510724386510723486510723846510723864510728365410728365140728365104728365107428365107248365107284365107283465107283645107286345107826435107826453107826543107826534107826531407826531047826531074826531078426531078246531078264513078265413078265143078265134078265130478265130748265130784265130782465130782645103782654103782651403782651043782651034782651037482651037842651037824651037826451073826541073826514073826510473826510743826510734826510738426510738246510738264510783265410783265140783265104783265107483265107843265107834265107832465107832645107823654107823651407823651047823651074823651078423651078243651078234651078236451078263451078623450178632450178634250178643250178642350178642530178642503178642501378642501738642501783642501786345201786435201786453201786543201786534201786532401786532041786532014786532017486532017846532017864523017865423017865243017865234017865230417865230147865230174865230178465230178645203178654203178652403178652043178652034178652031478652031748652031784652031786452013786542013786524013786520413786520143786520134786520137486520137846520137864520173865420173865240173865204173865201473865201743865201734865201738465201738645201783654201783652401783652041783652014783652017483652017843652017834652017836452017863450217864350217864530217865430217865340217865304217865302417865302147865302174865302178465302178645032178654032178650432178650342178650324178650321478650321748650321784650321786450231786540231786504231786502431786502341786502314786502317486502317846502317864502137865402137865042137865024137865021437865021347865021374865021378465021378645021738654021738650421738650241738650214738650217438650217348650217384650217386450217836540217836504217836502417836502147836502174836502178436502178346502178364502178634501278643501278645301278654301278653401278653041278653014278653012478653012748653012784653012786450312786540312786504312786503412786503142786503124786503127486503127846503127864501327865401327865041327865014327865013427865013247865013274865013278465013278645012378654012378650412378650142378650124378650123478650123748650123784650123786450127386540127386504127386501427386501247386501274386501273486501273846501273864501278365401278365041278365014278365012478365012748365012784365012783465012783645012786345017286435017286453017286543017286534017286530417286530147286530174286530172486530172846530172864503172865403172865043172865034172865031472865031742865031724865031728465031728645013728654013728650413728650143728650134728650137428650137248650137284650137286450173286540173286504173286501473286501743286501734286501732486501732846501732864501723865401723865041723865014723865017423865017243865017234865017238465017238645017283654017283650417283650147283650174283650172483650172843650172834650172836450172863450178264350178264530178265430178265340178265304178265301478265301748265301784265301782465301782645031782654031782650431782650341782650314782650317482650317842650317824650317826450137826540137826504137826501437826501347826501374826501378426501378246501378264501738265401738265041738265014738265017438265017348265017384265017382465017382645017832654017832650417832650147832650174832650178432650178342650178324650178326450178236540178236504178236501478236501748236501784236501782436501782346501782364501782634501786234507186324507186342507186432507186423507186425307186425037186425073186425071386425071836425071863452071864352071864532071865432071865342071865324071865320471865320741865320714865320718465320718645230718654230718652430718652340718652304718652307418652307148652307184652307186452037186542037186524037186520437186520347186520374186520371486520371846520371864520731865420731865240731865204731865207431865207341865207314865207318465207318645207138654207138652407138652047138652074138652071438652071348652071384652071386452071836542071836524071836520471836520741836520714836520718436520718346520718364520718634502718643502718645302718654302718653402718653042718653024718653027418653027148653027184653027186450327186540327186504327186503427186503247186503274186503271486503271846503271864502371865402371865042371865024371865023471865023741865023714865023718465023718645027318654027318650427318650247318650274318650273418650273148650273184650273186450271386540271386504271386502471386502741386502714386502713486502713846502713864502718365402718365042718365024718365027418365027148365027184365027183465027183645027186345072186435072186453072186543072186534072186530472186530742186530724186530721486530721846530721864503721865403721865043721865034721865037421865037241865037214865037218465037218645073218654073218650473218650743218650734218650732418650732148650732184650732186450723186540723186504723186507423186507243186507234186507231486507231846507231864507213865407213865047213865074213865072413865072143865072134865072138465072138645072183654072183650472183650742183650724183650721483650721843650721834650721836450721863450712864350712864530712865430712865340712865304712865307412865307142865307124865307128465307128645037128654037128650437128650347128650374128650371428650371248650371284650371286450731286540731286504731286507431286507341286507314286507312486507312846507312864507132865407132865047132865074132865071432865071342865071324865071328465071328645071238654071238650471238650741238650714238650712438650712348650712384650712386450712836540712836504712836507412836507142836507124836507128436507128346507128364507128634507182643507182645307182654307182653407182653047182653074182653071482653071842653071824653071826450371826540371826504371826503471826503741826503714826503718426503718246503718264507318265407318265047318265074318265073418265073148265073184265073182465073182645071382654071382650471382650741382650714382650713482650713842650713824650713826450718326540718326504718326507418326507148326507184326507183426507183246507183264507182365407182365047182365074182365071482365071842365071824365071823465071823645071826345071862345078163245078163425078164325078164235078164253078164250378164250738164250783164250781364250781634520781643520781645320781654320781653420781653240781653204781653207481653207841653207814653207816452307816542307816524307816523407816523047816523074816523078416523078146523078164520378165420378165240378165204378165203478165203748165203784165203781465203781645207381654207381652407381652047381652074381652073481652073841652073814652073816452078316542078316524078316520478316520748316520784316520783416520783146520783164520781365420781365240781365204781365207481365207841365207814365207813465207813645207816345027816435027816453027816543027816534027816530427816530247816530274816530278416530278146530278164503278165403278165043278165034278165032478165032748165032784165032781465032781645023781654023781650423781650243781650234781650237481650237841650237814650237816450273816540273816504273816502473816502743816502734816502738416502738146502738164502783165402783165042783165024783165027483165027843165027834165027831465027831645027813654027813650427813650247813650274813650278413650278143650278134650278136450278163450728164350728164530728165430728165340728165304728165307428165307248165307284165307281465307281645037281654037281650437281650347281650374281650372481650372841650372814650372816450732816540732816504732816507432816507342816507324816507328416507328146507328164507238165407238165047238165074238165072438165072348165072384165072381465072381645072831654072831650472831650742831650724831650728431650728341650728314650728316450728136540728136504728136507428136507248136507284136507281436507281346507281364507281634507821643507821645307821654307821653407821653047821653074821653078421653078241653078214653078216450378216540378216504378216503478216503748216503784216503782416503782146503782164507382165407382165047382165074382165073482165073842165073824165073821465073821645078321654078321650478321650748321650784321650783421650783241650783214650783216450782316540782316504782316507482316507842316507824316507823416507823146507823164507821365407821365047821365074821365078421365078241365078214365078213465078213645078216345078126435078126453078126543078126534078126530478126530748126530784126530781426530781246530781264503781265403781265043781265034781265037481265037841265037814265037812465037812645073812654073812650473812650743812650734812650738412650738142650738124650738126450783126540783126504783126507483126507843126507834126507831426507831246507831264507813265407813265047813265074813265078413265078143265078134265078132465078132645078123654078123650478123650748123650784123650781423650781243650781234650781236450781263450781623450786123457086213457086231457086321457086312457086314257086314527086314572086314570286314570826314570862341570863241570863421570864321570864231570864213570864215370864215730864215703864215708364215708634125708643125708641325708641235708641253708641257308641257038641257083641257086341527086431527086413527086415327086415237086415273086415270386415270836415270863415720864315720864135720864153720864157320864157230864157203864157208364157208634157028643157028641357028641537028641573028641570328641570238641570283641570286341570826431570826413570826415370826415730826415703826415708326415708236415708263415708623451708632451708634251708643251708642351708642531708642513708642517308642517038642517083642517086345217086435217086453217086543217086534217086532417086532147086532174086532170486532170846532170864523170865423170865243170865234170865231470865231740865231704865231708465231708645213708654213708652413708652143708652134708652137408652137048652137084652137086452173086542173086524173086521473086521743086521734086521730486521730846521730864521703865421703865241703865214703865217403865217043865217034865217038465217038645217083654217083652417083652147083652174083652170483652170843652170834652170836452170863451270864351270864531270865431270865341270865314270865312470865312740865312704865312708465312708645132708654132708651432708651342708651324708651327408651327048651327084651327086451237086541237086514237086512437086512347086512374086512370486512370846512370864512730865412730865142730865124730865127430865127340865127304865127308465127308645127038654127038651427038651247038651274038651270438651270348651270384651270386451270836541270836514270836512470836512740836512704836512708436512708346512708364512708634517208643517208645317208654317208653417208653147208653174208653172408653172048653172084653172086451372086541372086514372086513472086513742086513724086513720486513720846513720864517320865417320865147320865174320865173420865173240865173204865173208465173208645172308654172308651472308651742308651724308651723408651723048651723084651723086451720386541720386514720386517420386517240386517204386517203486517203846517203864517208365417208365147208365174208365172408365172048365172084365172083465172083645172086345170286435170286453170286543170286534170286531470286531740286531704286531702486531702846531702864513702865413702865143702865134702865137402865137042865137024865137028465137028645173028654173028651473028651743028651734028651730428651730248651730284651730286451703286541703286514703286517403286517043286517034286517032486517032846517032864517023865417023865147023865174023865170423865170243865170234865170238465170238645170283654170283651470283651740283651704283651702483651702843651702834651702836451702863451708264351708264531708265431708265341708265314708265317408265317048265317084265317082465317082645137082654137082651437082651347082651374082651370482651370842651370824651370826451730826541730826514730826517430826517340826517304826517308426517308246517308264517038265417038265147038265174038265170438265170348265170384265170382465170382645170832654170832651470832651740832651704832651708432651708342651708324651708326451708236541708236514708236517408236517048236517084236517082436517082346517082364517082634517086234571086324571086342571086432571086423571086425371086425731086425713086425710386425710836425710863452710864352710864532710865432710865342710865324710865327410865327140865327104865327108465327108645237108654237108652437108652347108652374108652371408652371048652371084652371086452731086542731086524731086527431086527341086527314086527310486527310846527310864527130865427130865247130865274130865271430865271340865271304865271308465271308645271038654271038652471038652741038652714038652710438652710348652710384652710386452710836542710836524710836527410836527140836527104836527108436527108346527108364527108634572108643572108645372108654372108653472108653742108653724108653721408653721048653721084653721086457321086547321086574321086573421086573241086573214086573210486573210846573210864572310865472310865742310865724310865723410865723140865723104865723108465723108645721308654721308657421308657241308657214308657213408657213048657213084657213086457210386547210386574210386572410386572140386572104386572103486572103846572103864572108365472108365742108365724108365721408365721048365721084365721083465721083645721086345712086435712086453712086543712086534712086537412086537142086537124086537120486537120846537120864573120865473120865743120865734120865731420865731240865731204865731208465731208645713208654713208657413208657143208657134208657132408657132048657132084657132086457123086547123086574123086571423086571243086571234086571230486571230846571230864571203865471203865741203865714203865712403865712043865712034865712038465712038645712083654712083657412083657142083657124083657120483657120843657120834657120836457120863457102864357102864537102865437102865347102865374102865371402865371042865371024865371028465371028645731028654731028657431028657341028657314028657310428657310248657310284657310286457130286547130286574130286571430286571340286571304286571302486571302846571302864571032865471032865741032865714032865710432865710342865710324865710328465710328645710238654710238657410238657140238657104238657102438657102348657102384657102386457102836547102836574102836571402836571042836571024836571028436571028346571028364571028634571082643571082645371082654371082653471082653741082653714082653710482653710842653710824653710826457310826547310826574310826573410826573140826573104826573108426573108246573108264571308265471308265741308265714308265713408265713048265713084265713082465713082645710382654710382657410382657140382657104382657103482657103842657103824657103826457108326547108326574108326571408326571048326571084326571083426571083246571083264571082365471082365741082365714082365710482365710842365710824365710823465710823645710826345710862345701863245701863425701864325701864235701864253701864257301864257031864257013864257018364257018634527018643527018645327018654327018653427018653247018653274018653270418653270148653270184653270186452370186542370186524370186523470186523740186523704186523701486523701846523701864527301865427301865247301865274301865273401865273041865273014865273018465273018645270318654270318652470318652740318652704318652703418652703148652703184652703186452701386542701386524701386527401386527041386527014386527013486527013846527013864527018365427018365247018365274018365270418365270148365270184365270183465270183645270186345720186435720186453720186543720186534720186537420186537240186537204186537201486537201846537201864573201865473201865743201865734201865732401865732041865732014865732018465732018645723018654723018657423018657243018657234018657230418657230148657230184657230186457203186547203186574203186572403186572043186572034186572031486572031846572031864572013865472013865742013865724013865720413865720143865720134865720138465720138645720183654720183657420183657240183657204183657201483657201843657201834657201836457201863457021864357021864537021865437021865347021865374021865370421865370241865370214865370218465370218645730218654730218657430218657340218657304218657302418657302148657302184657302186457032186547032186574032186570432186570342186570324186570321486570321846570321864570231865470231865740231865704231865702431865702341865702314865702318465702318645702138654702138657402138657042138657024138657021438657021348657021384657021386457021836547021836574021836570421836570241836570214836570218436570218346570218364570218634570128643570128645370128654370128653470128653740128653704128653701428653701248653701284653701286457301286547301286574301286573401286573041286573014286573012486573012846573012864570312865470312865740312865704312865703412865703142865703124865703128465703128645701328654701328657401328657041328657014328657013428657013248657013284657013286457012386547012386574012386570412386570142386570124386570123486570123846570123864570128365470128365740128365704128365701428365701248365701284365701283465701283645701286345701826435701826453701826543701826534701826537401826537041826537014826537018426537018246537018264573018265473018265743018265734018265730418265730148265730184265730182465730182645703182654703182657403182657043182657034182657031482657031842657031824657031826457013826547013826574013826570413826570143826570134826570138426570138246570138264570183265470183265740183265704183265701483265701843265701834265701832465701832645701823654701823657401823657041823657014823657018423657018243657018234657018236457018263457018623457081632457081634257081643257081642357081642537081642573081642570381642570831642570813642570816345270816435270816453270816543270816534270816532470816532740816532704816532708416532708146532708164523708165423708165243708165234708165237408165237048165237084165237081465237081645273081654273081652473081652743081652734081652730481652730841652730814652730816452703816542703816524703816527403816527043816527034816527038416527038146527038164527083165427083165247083165274083165270483165270843165270834165270831465270831645270813654270813652470813652740813652704813652708413652708143652708134652708136452708163457208164357208164537208165437208165347208165374208165372408165372048165372084165372081465372081645732081654732081657432081657342081657324081657320481657320841657320814657320816457230816547230816574230816572430816572340816572304816572308416572308146572308164572038165472038165742038165724038165720438165720348165720384165720381465720381645720831654720831657420831657240831657204831657208431657208341657208314657208316457208136547208136574208136572408136572048136572084136572081436572081346572081364572081634570281643570281645370281654370281653470281653740281653704281653702481653702841653702814653702816457302816547302816574302816573402816573042816573024816573028416573028146573028164570328165470328165740328165704328165703428165703248165703284165703281465703281645702381654702381657402381657042381657024381657023481657023841657023814657023816457028316547028316574028316570428316570248316570284316570283416570283146570283164570281365470281365740281365704281365702481365702841365702814365702813465702813645702816345708216435708216453708216543708216534708216537408216537048216537084216537082416537082146537082164573082165473082165743082165734082165730482165730842165730824165730821465730821645703821654703821657403821657043821657034821657038421657038241657038214657038216457083216547083216574083216570483216570843216570834216570832416570832146570832164570823165470823165740823165704823165708423165708243165708234165708231465708231645708213654708213657408213657048213657084213657082413657082143657082134657082136457082163457081264357081264537081265437081265347081265374081265370481265370841265370814265370812465370812645730812654730812657430812657340812657304812657308412657308142657308124657308126457038126547038126574038126570438126570348126570384126570381426570381246570381264570831265470831265740831265704831265708431265708341265708314265708312465708312645708132654708132657408132657048132657084132657081432657081342657081324657081326457081236547081236574081236570481236570841236570814236570812436570812346570812364570812634570816234570861234578062134578062314578063214578063124578063142578063145278063145728063145782063145780263145780623415780632415780634215780643215780642315780642135780642153780642157380642157830642157803642157806341257806431257806413257806412357806412537806412573806412578306412578036412578063415278064315278064135278064153278064152378064152738064152783064152780364152780634157280643157280641357280641537280641573280641572380641572830641572803641572806341578206431578206413578206415378206415738206415783206415782306415782036415782063415780264315780264135780264153780264157380264157830264157803264157802364157802634157806234517806324517806342517806432517806423517806425317806425137806425173806425178306425178036425178063452178064352178064532178065432178065342178065324178065321478065321748065321784065321780465321780645231780654231780652431780652341780652314780652317480652317840652317804652317806452137806542137806524137806521437806521347806521374806521378406521378046521378064521738065421738065241738065214738065217438065217348065217384065217380465217380645217830654217830652417830652147830652174830652178430652178340652178304652178306452178036542178036524178036521478036521748036521784036521780436521780346521780364521780634512780643512780645312780654312780653412780653142780653124780653127480653127840653127804653127806451327806541327806514327806513427806513247806513274806513278406513278046513278064512378065412378065142378065124378065123478065123748065123784065123780465123780645127380654127380651427380651247380651274380651273480651273840651273804651273806451278306541278306514278306512478306512748306512784306512783406512783046512783064512780365412780365142780365124780365127480365127840365127804365127803465127803645127806345172806435172806453172806543172806534172806531472806531742806531724806531728406531728046531728064513728065413728065143728065134728065137428065137248065137284065137280465137280645173280654173280651473280651743280651734280651732480651732840651732804651732806451723806541723806514723806517423806517243806517234806517238406517238046517238064517283065417283065147283065174283065172483065172843065172834065172830465172830645172803654172803651472803651742803651724803651728403651728043651728034651728036451728063451782064351782064531782065431782065341782065314782065317482065317842065317824065317820465317820645137820654137820651437820651347820651374820651378420651378240651378204651378206451738206541738206514738206517438206517348206517384206517382406517382046517382064517832065417832065147832065174832065178432065178342065178324065178320465178320645178230654178230651478230651748230651784230651782430651782340651782304651782306451782036541782036514782036517482036517842036517824036517820436517820346517820364517820634517802643517802645317802654317802653417802653147802653174802653178402653178042653178024653178026451378026541378026514378026513478026513748026513784026513780426513780246513780264517380265417380265147380265174380265173480265173840265173804265173802465173802645178302654178302651478302651748302651784302651783402651783042651783024651783026451780326541780326514780326517480326517840326517804326517803426517803246517803264517802365417802365147802365174802365178402365178042365178024365178023465178023645178026345178062345718063245718063425718064325718064235718064253718064257318064257138064257183064257180364257180634527180643527180645327180654327180653427180653247180653274180653271480653271840653271804653271806452371806542371806524371806523471806523741806523714806523718406523718046523718064527318065427318065247318065274318065273418065273148065273184065273180465273180645271380654271380652471380652741380652714380652713480652713840652713804652713806452718306542718306524718306527418306527148306527184306527183406527183046527183064527180365427180365247180365274180365271480365271840365271804365271803465271803645271806345721806435721806453721806543721806534721806537421806537241806537214806537218406537218046537218064573218065473218065743218065734218065732418065732148065732184065732180465732180645723180654723180657423180657243180657234180657231480657231840657231804657231806457213806547213806574213806572413806572143806572134806572138406572138046572138064572183065472183065742183065724183065721483065721843065721834065721830465721830645721803654721803657421803657241803657214803657218403657218043657218034657218036457218063457128064357128064537128065437128065347128065374128065371428065371248065371284065371280465371280645731280654731280657431280657341280657314280657312480657312840657312804657312806457132806547132806574132806571432806571342806571324806571328406571328046571328064571238065471238065741238065714238065712438065712348065712384065712380465712380645712830654712830657412830657142830657124830657128430657128340657128304657128306457128036547128036574128036571428036571248036571284036571280436571280346571280364571280634571820643571820645371820654371820653471820653741820653714820653718420653718240653718204653718206457318206547318206574318206573418206573148206573184206573182406573182046573182064571382065471382065741382065714382065713482065713842065713824065713820465713820645718320654718320657418320657148320657184320657183420657183240657183204657183206457182306547182306574182306571482306571842306571824306571823406571823046571823064571820365471820365741820365714820365718420365718240365718204365718203465718203645718206345718026435718026453718026543718026534718026537418026537148026537184026537180426537180246537180264573180265473180265743180265734180265731480265731840265731804265731802465731802645713802654713802657413802657143802657134802657138402657138042657138024657138026457183026547183026574183026571483026571843026571834026571830426571830246571830264571803265471803265741803265714803265718403265718043265718034265718032465718032645718023654718023657418023657148023657184023657180423657180243657180234657180236457180263457180623457810632457810634257810643257810642357810642537810642573810642578310642578130642578103642578106345278106435278106453278106543278106534278106532478106532748106532784106532781406532781046532781064523781065423781065243781065234781065237481065237841065237814065237810465237810645273810654273810652473810652743810652734810652738410652738140652738104652738106452783106542783106524783106527483106527843106527834106527831406527831046527831064527813065427813065247813065274813065278413065278143065278134065278130465278130645278103654278103652478103652748103652784103652781403652781043652781034652781036452781063457281064357281064537281065437281065347281065374281065372481065372841065372814065372810465372810645732810654732810657432810657342810657324810657328410657328140657328104657328106457238106547238106574238106572438106572348106572384106572381406572381046572381064572831065472831065742831065724831065728431065728341065728314065728310465728310645728130654728130657428130657248130657284130657281430657281340657281304657281306457281036547281036574281036572481036572841036572814036572810436572810346572810364572810634578210643578210645378210654378210653478210653748210653784210653782410653782140653782104653782106457382106547382106574382106573482106573842106573824106573821406573821046573821064578321065478321065748321065784321065783421065783241065783214065783210465783210645782310654782310657482310657842310657824310657823410657823140657823104657823106457821306547821306574821306578421306578241306578214306578213406578213046578213064578210365478210365748210365784210365782410365782140365782104365782103465782103645782106345781206435781206453781206543781206534781206537481206537841206537814206537812406537812046537812064573812065473812065743812065734812065738412065738142065738124065738120465738120645783120654783120657483120657843120657834120657831420657831240657831204657831206457813206547813206574813206578413206578143206578134206578132406578132046578132064578123065478123065748123065784123065781423065781243065781234065781230465781230645781203654781203657481203657841203657814203657812403657812043657812034657812036457812063457810264357810264537810265437810265347810265374810265378410265378140265378104265378102465378102645738102654738102657438102657348102657384102657381402657381042657381024657381026457831026547831026574831026578431026578341026578314026578310426578310246578310264578130265478130265748130265784130265781430265781340265781304265781302465781302645781032654781032657481032657841032657814032657810432657810342657810324657810326457810236547810236574810236578410236578140236578104236578102436578102346578102364578102634578106234578016324578016342578016432578016423578016425378016425738016425783016425780316425780136425780163452780164352780164532780165432780165342780165324780165327480165327840165327804165327801465327801645237801654237801652437801652347801652374801652378401652378041652378014652378016452738016542738016524738016527438016527348016527384016527380416527380146527380164527830165427830165247830165274830165278430165278340165278304165278301465278301645278031654278031652478031652748031652784031652780431652780341652780314652780316452780136542780136524780136527480136527840136527804136527801436527801346527801364527801634572801643572801645372801654372801653472801653742801653724801653728401653728041653728014653728016457328016547328016574328016573428016573248016573284016573280416573280146573280164572380165472380165742380165724380165723480165723840165723804165723801465723801645728301654728301657428301657248301657284301657283401657283041657283014657283016457280316547280316574280316572480316572840316572804316572803416572803146572803164572801365472801365742801365724801365728401365728041365728014365728013465728013645728016345782016435782016453782016543782016534782016537482016537842016537824016537820416537820146537820164573820165473820165743820165734820165738420165738240165738204165738201465738201645783201654783201657483201657843201657834201657832401657832041657832014657832016457823016547823016574823016578423016578243016578234016578230416578230146578230164578203165478203165748203165784203165782403165782043165782034165782031465782031645782013654782013657482013657842013657824013657820413657820143657820134657820136457820163457802164357802164537802165437802165347802165374802165378402165378042165378024165378021465378021645738021654738021657438021657348021657384021657380421657380241657380214657380216457830216547830216574830216578430216578340216578304216578302416578302146578302164578032165478032165748032165784032165780432165780342165780324165780321465780321645780231654780231657480231657840231657804231657802431657802341657802314657802316457802136547802136574802136578402136578042136578024136578021436578021346578021364578021634578012643578012645378012654378012653478012653748012653784012653780412653780142653780124653780126457380126547380126574380126573480126573840126573804126573801426573801246573801264578301265478301265748301265784301265783401265783041265783014265783012465783012645780312654780312657480312657840312657804312657803412657803142657803124657803126457801326547801326574801326578401326578041326578014326578013426578013246578013264578012365478012365748012365784012365780412365780142365780124365780123465780123645780126345780162345780612345786012345876102345876120345876210345876201345876203145876203415876203451876203458176203458716203458761230458762130458762310458763210458763120458763102458763104258763104528763104582763104587263104587623014587632014587630214587630124587630142587630145287630145827630145872630145876230415876320415876302415876304215876304125876304152876304158276304158726304158762304518763204518763024518763042518763045218763045128763045182763045187263045187623045817632045817630245817630425817630452817630458217630458127630458172630458176230458716320458716302458716304258716304528716304582716304587216304587126304587162304587612340587621340587623140587632140587631240587631420587631402587631405287631405827631405872631405876234105876324105876342105876432105876423105876421305876421035876421053876421058376421058736421058763412058764312058764132058764123058764120358764120538764120583764120587364120587634102587643102587641302587641032587641023587641025387641025837641025873641025876341052876431052876413052876410352876410532876410523876410528376410528736410528763410582764310582764130582764103582764105382764105832764105823764105827364105827634105872643105872641305872641035872641053872641058372641058732641058723641058726341058762340158763240158763420158764320158764230158764203158764201358764201538764201583764201587364201587634021587643021587640321587640231587640213587640215387640215837640215873640215876340125876430125876403125876401325876401235876401253876401258376401258736401258763401528764301528764031528764013528764015328764015238764015283764015287364015287634015827643015827640315827640135827640153827640158327640158237640158273640158276340158726430158726403158726401358726401538726401583726401587326401587236401587263401587623405187632405187634205187643205187642305187642035187642053187642051387642051837642051873642051876340251876430251876403251876402351876402531876402513876402518376402518736402518763405218764305218764035218764053218764052318764052138764052183764052187364052187634051287643051287640351287640531287640513287640512387640512837640512873640512876340518276430518276403518276405318276405138276405183276405182376405182736405182763405187264305187264035187264053187264051387264051837264051873264051872364051872634051876234058176324058176342058176432058176423058176420358176420538176420583176420581376420581736420581763402581764302581764032581764023581764025381764025831764025813764025817364025817634052817643052817640352817640532817640523817640528317640528137640528173640528176340582176430582176403582176405382176405832176405823176405821376405821736405821763405812764305812764035812764053812764058312764058132764058123764058127364058127634058172643058172640358172640538172640583172640581372640581732640581723640581726340581762340587163240587163420587164320587164230587164203587164205387164205837164205873164205871364205871634025871643025871640325871640235871640253871640258371640258731640258713640258716340528716430528716403528716405328716405238716405283716405287316405287136405287163405827164305827164035827164053827164058327164058237164058273164058271364058271634058721643058721640358721640538721640583721640587321640587231640587213640587216340587126430587126403587126405387126405837126405873126405871326405871236405871263405871623405876123450876213450876231450876321450876312450876314250876314520876314502876314508276314508726314508762341508763241508763421508764321508764231508764213508764215308764215038764215083764215087364215087634125087643125087641325087641235087641253087641250387641250837641250873641250876341520876431520876413520876415320876415230876415203876415208376415208736415208763415028764315028764135028764153028764150328764150238764150283764150287364150287634150827643150827641350827641530827641503827641508327641508237641508273641508276341508726431508726413508726415308726415038726415083726415087326415087236415087263415087623451087632451087634251087643251087642351087642531087642513087642510387642510837642510873642510876345210876435210876453210876543210876534210876532410876532140876532104876532108476532108746532108764523108765423108765243108765234108765231408765231048765231084765231087465231087645213087654213087652413087652143087652134087652130487652130847652130874652130876452103876542103876524103876521403876521043876521034876521038476521038746521038764521083765421083765241083765214083765210483765210843765210834765210837465210837645210873654210873652410873652140873652104873652108473652108743652108734652108736452108763451208764351208764531208765431208765341208765314208765312408765312048765312084765312087465312087645132087654132087651432087651342087651324087651320487651320847651320874651320876451230876541230876514230876512430876512340876512304876512308476512308746512308764512038765412038765142038765124038765120438765120348765120384765120387465120387645120837654120837651420837651240837651204837651208437651208347651208374651208376451208736541208736514208736512408736512048736512084736512087436512087346512087364512087634510287643510287645310287654310287653410287653140287653104287653102487653102847653102874653102876451302876541302876514302876513402876513042876513024876513028476513028746513028764510328765410328765140328765104328765103428765103248765103284765103287465103287645102387654102387651402387651042387651024387651023487651023847651023874651023876451028376541028376514028376510428376510248376510284376510283476510283746510283764510287365410287365140287365104287365102487365102847365102874365102873465102873645102876345108276435108276453108276543108276534108276531408276531048276531084276531082476531082746531082764513082765413082765143082765134082765130482765130842765130824765130827465130827645103827654103827651403827651043827651034827651038427651038247651038274651038276451083276541083276514083276510483276510843276510834276510832476510832746510832764510823765410823765140823765104823765108423765108243765108234765108237465108237645108273654108273651408273651048273651084273651082473651082743651082734651082736451082763451087264351087264531087265431087265341087265314087265310487265310847265310874265310872465310872645130872654130872651430872651340872651304872651308472651308742651308724651308726451038726541038726514038726510438726510348726510384726510387426510387246510387264510837265410837265140837265104837265108437265108347265108374265108372465108372645108732654108732651408732651048732651084732651087432651087342651087324651087326451087236541087236514087236510487236510847236510874236510872436510872346510872364510872634510876234501876324501876342501876432501876423501876425301876425031876425013876425018376425018736425018763452018764352018764532018765432018765342018765324018765320418765320148765320184765320187465320187645230187654230187652430187652340187652304187652301487652301847652301874652301876452031876542031876524031876520431876520341876520314876520318476520318746520318764520138765420138765240138765204138765201438765201348765201384765201387465201387645201837654201837652401837652041837652014837652018437652018347652018374652018376452018736542018736524018736520418736520148736520184736520187436520187346520187364520187634502187643502187645302187654302187653402187653042187653024187653021487653021847653021874653021876450321876540321876504321876503421876503241876503214876503218476503218746503218764502318765402318765042318765024318765023418765023148765023184765023187465023187645021387654021387650421387650241387650214387650213487650213847650213874650213876450218376540218376504218376502418376502148376502184376502183476502183746502183764502187365402187365042187365024187365021487365021847365021874365021873465021873645021876345012876435012876453012876543012876534012876530412876530142876530124876530128476530128746530128764503128765403128765043128765034128765031428765031248765031284765031287465031287645013287654013287650413287650143287650134287650132487650132847650132874650132876450123876540123876504123876501423876501243876501234876501238476501238746501238764501283765401283765041283765014283765012483765012843765012834765012837465012837645012873654012873650412873650142873650124873650128473650128743650128734650128736450128763450182764350182764530182765430182765340182765304182765301482765301842765301824765301827465301827645031827654031827650431827650341827650314827650318427650318247650318274650318276450138276540138276504138276501438276501348276501384276501382476501382746501382764501832765401832765041832765014832765018432765018342765018324765018327465018327645018237654018237650418237650148237650184237650182437650182347650182374650182376450182736540182736504182736501482736501842736501824736501827436501827346501827364501827634501872643501872645301872654301872653401872653041872653014872653018472653018742653018724653018726450318726540318726504318726503418726503148726503184726503187426503187246503187264501387265401387265041387265014387265013487265013847265013874265013872465013872645018372654018372650418372650148372650184372650183472650183742650183724650183726450187326540187326504187326501487326501847326501874326501873426501873246501873264501872365401872365041872365014872365018472365018742365018724365018723465018723645018726345018762345081763245081763425081764325081764235081764253081764250381764250831764250813764250817364250817634520817643520817645320817654320817653420817653240817653204817653208417653208147653208174653208176452308176542308176524308176523408176523048176523084176523081476523081746523081764520381765420381765240381765204381765203481765203841765203814765203817465203817645208317654208317652408317652048317652084317652083417652083147652083174652083176452081376542081376524081376520481376520841376520814376520813476520813746520813764520817365420817365240817365204817365208417365208147365208174365208173465208173645208176345028176435028176453028176543028176534028176530428176530248176530284176530281476530281746530281764503281765403281765043281765034281765032481765032841765032814765032817465032817645023817654023817650423817650243817650234817650238417650238147650238174650238176450283176540283176504283176502483176502843176502834176502831476502831746502831764502813765402813765042813765024813765028413765028143765028134765028137465028137645028173654028173650428173650248173650284173650281473650281743650281734650281736450281763450821764350821764530821765430821765340821765304821765308421765308241765308214765308217465308217645038217654038217650438217650348217650384217650382417650382147650382174650382176450832176540832176504832176508432176508342176508324176508321476508321746508321764508231765408231765048231765084231765082431765082341765082314765082317465082317645082137654082137650482137650842137650824137650821437650821347650821374650821376450821736540821736504821736508421736508241736508214736508217436508217346508217364508217634508127643508127645308127654308127653408127653048127653084127653081427653081247653081274653081276450381276540381276504381276503481276503841276503814276503812476503812746503812764508312765408312765048312765084312765083412765083142765083124765083127465083127645081327654081327650481327650841327650814327650813427650813247650813274650813276450812376540812376504812376508412376508142376508124376508123476508123746508123764508127365408127365048127365084127365081427365081247365081274365081273465081273645081276345081726435081726453081726543081726534081726530481726530841726530814726530817426530817246530817264503817265403817265043817265034817265038417265038147265038174265038172465038172645083172654083172650483172650843172650834172650831472650831742650831724650831726450813726540813726504813726508413726508143726508134726508137426508137246508137264508173265408173265048173265084173265081473265081743265081734265081732465081732645081723654081723650481723650841723650814723650817423650817243650817234650817236450817263450817623450871632450871634250871643250871642350871642530871642503871642508371642508731642508713642508716345208716435208716453208716543208716534208716532408716532048716532084716532087416532087146532087164523087165423087165243087165234087165230487165230847165230874165230871465230871645203871654203871652403871652043871652034871652038471652038741652038714652038716452083716542083716524083716520483716520843716520834716520837416520837146520837164520873165420873165240873165204873165208473165208743165208734165208731465208731645208713654208713652408713652048713652084713652087413652087143652087134652087136452087163450287164350287164530287165430287165340287165304287165302487165302847165302874165302871465302871645032871654032871650432871650342871650324871650328471650328741650328714650328716450238716540238716504238716502438716502348716502384716502387416502387146502387164502837165402837165042837165024837165028437165028347165028374165028371465028371645028731654028731650428731650248731650284731650287431650287341650287314650287316450287136540287136504287136502487136502847136502874136502871436502871346502871364502871634508271643508271645308271654308271653408271653048271653084271653082471653082741653082714653082716450382716540382716504382716503482716503842716503824716503827416503827146503827164508327165408327165048327165084327165083427165083247165083274165083271465083271645082371654082371650482371650842371650824371650823471650823741650823714650823716450827316540827316504827316508427316508247316508274316508273416508273146508273164508271365408271365048271365084271365082471365082741365082714365082713465082713645082716345087216435087216453087216543087216534087216530487216530847216530874216530872416530872146530872164503872165403872165043872165034872165038472165038742165038724165038721465038721645083721654083721650483721650843721650834721650837421650837241650837214650837216450873216540873216504873216508473216508743216508734216508732416508732146508732164508723165408723165048723165084723165087423165087243165087234165087231465087231645087213654087213650487213650847213650874213650872413650872143650872134650872136450872163450871264350871264530871265430871265340871265304871265308471265308741265308714265308712465308712645038712654038712650438712650348712650384712650387412650387142650387124650387126450837126540837126504837126508437126508347126508374126508371426508371246508371264508731265408731265048731265084731265087431265087341265087314265087312465087312645087132654087132650487132650847132650874132650871432650871342650871324650871326450871236540871236504871236508471236508741236508714236508712436508712346508712364508712634508716234508761234580762134580762314580763214580763124580763142580763145280763145820763145802763145807263145807623415807632415807634215807643215807642315807642135807642153807642158307642158037642158073642158076341258076431258076413258076412358076412538076412583076412580376412580736412580763415280764315280764135280764153280764152380764152830764152803764152807364152807634158207643158207641358207641538207641583207641582307641582037641582073641582076341580276431580276413580276415380276415830276415803276415802376415802736415802763415807264315807264135807264153807264158307264158037264158073264158072364158072634158076234518076324518076342518076432518076423518076425318076425138076425183076425180376425180736425180763452180764352180764532180765432180765342180765324180765321480765321840765321804765321807465321807645231807654231807652431807652341807652314807652318407652318047652318074652318076452138076542138076524138076521438076521348076521384076521380476521380746521380764521830765421830765241830765214830765218430765218340765218304765218307465218307645218037654218037652418037652148037652184037652180437652180347652180374652180376452180736542180736524180736521480736521840736521804736521807436521807346521807364521807634512807643512807645312807654312807653412807653142807653124807653128407653128047653128074653128076451328076541328076514328076513428076513248076513284076513280476513280746513280764512380765412380765142380765124380765123480765123840765123804765123807465123807645128307654128307651428307651248307651284307651283407651283047651283074651283076451280376541280376514280376512480376512840376512804376512803476512803746512803764512807365412807365142807365124807365128407365128047365128074365128073465128073645128076345182076435182076453182076543182076534182076531482076531842076531824076531820476531820746531820764513820765413820765143820765134820765138420765138240765138204765138207465138207645183207654183207651483207651843207651834207651832407651832047651832074651832076451823076541823076514823076518423076518243076518234076518230476518230746518230764518203765418203765148203765184203765182403765182043765182034765182037465182037645182073654182073651482073651842073651824073651820473651820743651820734651820736451820763451802764351802764531802765431802765341802765314802765318402765318042765318024765318027465318027645138027654138027651438027651348027651384027651380427651380247651380274651380276451830276541830276514830276518430276518340276518304276518302476518302746518302764518032765418032765148032765184032765180432765180342765180324765180327465180327645180237654180237651480237651840237651804237651802437651802347651802374651802376451802736541802736514802736518402736518042736518024736518027436518027346518027364518027634518072643518072645318072654318072653418072653148072653184072653180472653180742653180724653180726451380726541380726514380726513480726513840726513804726513807426513807246513807264518307265418307265148307265184307265183407265183047265183074265183072465183072645180372654180372651480372651840372651804372651803472651803742651803724651803726451807326541807326514807326518407326518047326518074326518073426518073246518073264518072365418072365148072365184072365180472365180742365180724365180723465180723645180726345180762345810763245810763425810764325810764235810764253810764258310764258130764258103764258107364258107634528107643528107645328107654328107653428107653248107653284107653281407653281047653281074653281076452381076542381076524381076523481076523841076523814076523810476523810746523810764528310765428310765248310765284310765283410765283140765283104765283107465283107645281307654281307652481307652841307652814307652813407652813047652813074652813076452810376542810376524810376528410376528140376528104376528103476528103746528103764528107365428107365248107365284107365281407365281047365281074365281073465281073645281076345821076435821076453821076543821076534821076538421076538241076538214076538210476538210746538210764583210765483210765843210768543210768453210768435210768432510768432150768432105768432107568432107658342107685342107683542107683452107683425107683421507683421057683421075683421076583241076853241076835241076832541076832451076832415076832410576832410756832410765832140768532140768352140768325140768321540768321450768321405768321407568321407658321047685321047683521047683251047683215047683210547683210457683210475683210476583210746853210746835210746832510746832150746832105746832107546832107456832107465832107645823107654823107658423107685423107684523107684253107684235107684231507684231057684231075684231076582431076852431076825431076824531076824351076824315076824310576824310756824310765823410768523410768253410768235410768234510768234150768234105768234107568234107658231407685231407682531407682351407682315407682314507682314057682314075682314076582310476852310476825310476823510476823150476823105476823104576823104756823104765823107468523107468253107468235107468231507468231057468231075468231074568231074658231076458213076548213076584213076854213076845213076842513076842153076842135076842130576842130756842130765824130768524130768254130768245130768241530768241350768241305768241307568241307658214307685214307682514307682154307682145307682143507682143057682143075682143076582134076852134076825134076821534076821354076821345076821340576821340756821340765821304768521304768251304768215304768213504768213054768213045768213047568213047658213074685213074682513074682153074682135074682130574682130754682130745682130746582130764582103765482103765842103768542103768452103768425103768421503768421053768421035768421037568421037658241037685241037682541037682451037682415037682410537682410357682410375682410376582140376852140376825140376821540376821450376821405376821403576821403756821403765821043768521043768251043768215043768210543768210453768210435768210437568210437658210347685210347682510347682150347682105347682103547682103457682103475682103476582103746852103746825103746821503746821053746821035746821037546821037456821037465821037645821073654821073658421073685421073684521073684251073684215073684210573684210753684210735684210736582410736852410736825410736824510736824150736824105736824107536824107356824107365821407368521407368251407368215407368214507368214057368214075368214073568214073658210473685210473682510473682150473682105473682104573682104753682104735682104736582107436852107436825107436821507436821057436821075436821074536821074356821074365821073468521073468251073468215073468210573468210753468210735468210734568210734658210736458210763458120764358120764538120765438120765348120765384120765381420765381240765381204765381207465381207645831207654831207658431207685431207684531207684351207684315207684312507684312057684312075684312076583412076853412076835412076834512076834152076834125076834120576834120756834120765831420768531420768351420768315420768314520768314250768314205768314207568314207658312407685312407683512407683152407683125407683124507683124057683124075683124076583120476853120476835120476831520476831250476831205476831204576831204756831204765831207468531207468351207468315207468312507468312057468312075468312074568312074658312076458132076548132076584132076854132076845132076841532076841352076841325076841320576841320756841320765814320768514320768154320768145320768143520768143250768143205768143207568143207658134207685134207681534207681354207681345207681342507681342057681342075681342076581324076851324076815324076813524076813254076813245076813240576813240756813240765813204768513204768153204768135204768132504768132054768132045768132047568132047658132074685132074681532074681352074681325074681320574681320754681320745681320746581320764581230765481230765841230768541230768451230768415230768412530768412350768412305768412307568412307658142307685142307681542307681452307681425307681423507681423057681423075681423076581243076851243076815243076812543076812453076812435076812430576812430756812430765812340768512340768152340768125340768123540768123450768123405768123407568123407658123047685123047681523047681253047681235047681230547681230457681230475681230476581230746851230746815230746812530746812350746812305746812307546812307456812307465812307645812037654812037658412037685412037684512037684152037684125037684120537684120357684120375684120376581420376851420376815420376814520376814250376814205376814203576814203756814203765812403768512403768152403768125403768124503768124053768124035768124037568124037658120437685120437681520437681250437681205437681204537681204357681204375681204376581203476851203476815203476812503476812053476812035476812034576812034756812034765812037468512037468152037468125037468120537468120357468120375468120374568120374658120376458120736548120736584120736854120736845120736841520736841250736841205736841207536841207356841207365814207368514207368154207368145207368142507368142057368142075368142073568142073658124073685124073681524073681254073681245073681240573681240753681240735681240736581204736851204736815204736812504736812054736812045736812047536812047356812047365812074368512074368152074368125074368120574368120754368120745368120743568120743658120734685120734681520734681250734681205734681207534681207354681207345681207346581207364581207634581027643581027645381027654381027653481027653841027653814027653810427653810247653810274653810276458310276548310276584310276854310276845310276843510276843150276843105276843102576843102756843102765834102768534102768354102768345102768341502768341052768341025768341027568341027658314027685314027683514027683154027683145027683140527683140257683140275683140276583104276853104276835104276831504276831054276831045276831042576831042756831042765831024768531024768351024768315024768310524768310254768310245768310247568310247658310274685310274683510274683150274683105274683102574683102754683102745683102746583102764581302765481302765841302768541302768451302768415302768413502768413052768413025768413027568413027658143027685143027681543027681453027681435027681430527681430257681430275681430276581340276851340276815340276813540276813450276813405276813402576813402756813402765813042768513042768153042768135042768130542768130452768130425768130427568130427658130247685130247681530247681350247681305247681302547681302457681302475681302476581302746851302746815302746813502746813052746813025746813027546813027456813027465813027645810327654810327658410327685410327684510327684150327684105327684103527684103257684103275684103276581403276851403276815403276814503276814053276814035276814032576814032756814032765810432768510432768150432768105432768104532768104352768104325768104327568104327658103427685103427681503427681053427681035427681034527681034257681034275681034276581032476851032476815032476810532476810352476810325476810324576810324756810324765810327468510327468150327468105327468103527468103257468103275468103274568103274658103276458102376548102376584102376854102376845102376841502376841052376841025376841023576841023756841023765814023768514023768154023768145023768140523768140253768140235768140237568140237658104237685104237681504237681054237681045237681042537681042357681042375681042376581024376851024376815024376810524376810254376810245376810243576810243756810243765810234768510234768150234768105234768102534768102354768102345768102347568102347658102374685102374681502374681052374681025374681023574681023754681023745681023746581023764581027365481027365841027368541027368451027368415027368410527368410257368410275368410273568410273658140273685140273681540273681450273681405273681402573681402753681402735681402736581042736851042736815042736810542736810452736810425736810427536810427356810427365810247368510247368150247368105247368102547368102457368102475368102473568102473658102743685102743681502743681052743681025743681027543681027453681027435681027436581027346851027346815027346810527346810257346810275346810273546810273456810273465810273645810276345810726435810726453810726543810726534810726538410726538140726538104726538107426538107246538107264583107265483107265843107268543107268453107268435107268431507268431057268431075268431072568431072658341072685341072683541072683451072683415072683410572683410752683410725683410726583140726853140726835140726831540726831450726831405726831407526831407256831407265831047268531047268351047268315047268310547268310457268310475268310472568310472658310742685310742683510742683150742683105742683107542683107452683107425683107426583107246853107246835107246831507246831057246831075246831072546831072456831072465831072645813072654813072658413072685413072684513072684153072684135072684130572684130752684130725684130726581430726851430726815430726814530726814350726814305726814307526814307256814307265813407268513407268153407268135407268134507268134057268134075268134072568134072658130472685130472681530472681350472681305472681304572681304752681304725681304726581307426851307426815307426813507426813057426813075426813074526813074256813074265813072468513072468153072468135072468130572468130752468130725468130724568130724658130726458103726548103726584103726854103726845103726841503726841053726841035726841037526841037256841037265814037268514037268154037268145037268140537268140357268140375268140372568140372658104372685104372681504372681054372681045372681043572681043752681043725681043726581034726851034726815034726810534726810354726810345726810347526810347256810347265810374268510374268150374268105374268103574268103754268103745268103742568103742658103724685103724681503724681053724681035724681037524681037254681037245681037246581037264581073265481073265841073268541073268451073268415073268410573268410753268410735268410732568410732658140732685140732681540732681450732681405732681407532681407352681407325681407326581047326851047326815047326810547326810457326810475326810473526810473256810473265810743268510743268150743268105743268107543268107453268107435268107432568107432658107342685107342681507342681057342681075342681073542681073452681073425681073426581073246851073246815073246810573246810753246810735246810732546810732456810732465810732645810723654810723658410723685410723684510723684150723684105723684107523684107253684107235684107236581407236851407236815407236814507236814057236814075236814072536814072356814072365810472368510472368150472368105472368104572368104752368104725368104723568104723658107423685107423681507423681057423681075423681074523681074253681074235681074236581072436851072436815072436810572436810752436810725436810724536810724356810724365810723468510723468150723468105723468107523468107253468107235468107234568107234658107236458107263458107623458017632458017634258017643258017642358017642538017642583017642580317642580137642580173642580176345280176435280176453280176543280176534280176532480176532840176532804176532801476532801746532801764523801765423801765243801765234801765238401765238041765238014765238017465238017645283017654283017652483017652843017652834017652830417652830147652830174652830176452803176542803176524803176528403176528043176528034176528031476528031746528031764528013765428013765248013765284013765280413765280143765280134765280137465280137645280173654280173652480173652840173652804173652801473652801743652801734652801736452801763458201764358201764538201765438201765348201765384201765382401765382041765382014765382017465382017645832017654832017658432017685432017684532017684352017684325017684320517684320157684320175684320176583420176853420176835420176834520176834250176834205176834201576834201756834201765832401768532401768352401768325401768324501768324051768324015768324017568324017658320417685320417683520417683250417683205417683204517683204157683204175683204176583201476853201476835201476832501476832051476832015476832014576832014756832014765832017468532017468352017468325017468320517468320157468320175468320174568320174658320176458230176548230176584230176854230176845230176842530176842350176842305176842301576842301756842301765824301768524301768254301768245301768243501768243051768243015768243017568243017658234017685234017682534017682354017682345017682340517682340157682340175682340176582304176852304176825304176823504176823054176823045176823041576823041756823041765823014768523014768253014768235014768230514768230154768230145768230147568230147658230174685230174682530174682350174682305174682301574682301754682301745682301746582301764582031765482031765842031768542031768452031768425031768420531768420351768420315768420317568420317658240317685240317682540317682450317682405317682403517682403157682403175682403176582043176852043176825043176820543176820453176820435176820431576820431756820431765820341768520341768250341768205341768203541768203451768203415768203417568203417658203147685203147682503147682053147682035147682031547682031457682031475682031476582031746852031746825031746820531746820351746820315746820317546820317456820317465820317645820137654820137658420137685420137684520137684250137684205137684201537684201357684201375684201376582401376852401376825401376824501376824051376824015376824013576824013756824013765820413768520413768250413768205413768204513768204153768204135768204137568204137658201437685201437682501437682051437682015437682014537682014357682014375682014376582013476852013476825013476820513476820153476820135476820134576820134756820134765820137468520137468250137468205137468201537468201357468201375468201374568201374658201376458201736548201736584201736854201736845201736842501736842051736842015736842017536842017356842017365824017368524017368254017368245017368240517368240157368240175368240173568240173658204173685204173682504173682054173682045173682041573682041753682041735682041736582014736852014736825014736820514736820154736820145736820147536820147356820147365820174368520174368250174368205174368201574368201754368201745368201743568201743658201734685201734682501734682051734682015734682017534682017354682017345682017346582017364582017634580217643580217645380217654380217653480217653840217653804217653802417653802147653802174653802176458302176548302176584302176854302176845302176843502176843052176843025176843021576843021756843021765834021768534021768354021768345021768340521768340251768340215768340217568340217658304217685304217683504217683054217683045217683042517683042157683042175683042176583024176853024176835024176830524176830254176830245176830241576830241756830241765830214768530214768350214768305214768302514768302154768302145768302147568302147658302174685302174683502174683052174683025174683021574683021754683021745683021746583021764580321765480321765840321768540321768450321768405321768403521768403251768403215768403217568403217658043217685043217680543217680453217680435217680432517680432157680432175680432176580342176850342176805342176803542176803452176803425176803421576803421756803421765803241768503241768053241768035241768032541768032451768032415768032417568032417658032147685032147680532147680352147680325147680321547680321457680321475680321476580321746850321746805321746803521746803251746803215746803217546803217456803217465803217645802317654802317658402317685402317684502317684052317684025317684023517684023157684023175684023176580423176850423176805423176804523176804253176804235176804231576804231756804231765802431768502431768052431768025431768024531768024351768024315768024317568024317658023417685023417680523417680253417680235417680234517680234157680234175680234176580231476850231476805231476802531476802351476802315476802314576802314756802314765802317468502317468052317468025317468023517468023157468023175468023174568023174658023176458021376548021376584021376854021376845021376840521376840251376840215376840213576840213756840213765804213768504213768054213768045213768042513768042153768042135768042137568042137658024137685024137680524137680254137680245137680241537680241357680241375680241376580214376850214376805214376802514376802154376802145376802143576802143756802143765802134768502134768052134768025134768021534768021354768021345768021347568021347658021374685021374680521374680251374680215374680213574680213754680213745680213746580213764580217365480217365840217368540217368450217368405217368402517368402157368402175368402173568402173658042173685042173680542173680452173680425173680421573680421753680421735680421736580241736850241736805241736802541736802451736802415736802417536802417356802417365802147368502147368052147368025147368021547368021457368021475368021473568021473658021743685021743680521743680251743680215743680217543680217453680217435680217436580217346850217346805217346802517346802157346802175346802173546802173456802173465802173645802176345801276435801276453801276543801276534801276538401276538041276538014276538012476538012746538012764583012765483012765843012768543012768453012768435012768430512768430152768430125768430127568430127658340127685340127683540127683450127683405127683401527683401257683401275683401276583041276853041276835041276830541276830451276830415276830412576830412756830412765830142768530142768350142768305142768301542768301452768301425768301427568301427658301247685301247683501247683051247683015247683012547683012457683012475683012476583012746853012746835012746830512746830152746830125746830127546830127456830127465830127645803127654803127658403127685403127684503127684053127684035127684031527684031257684031275684031276580431276850431276805431276804531276804351276804315276804312576804312756804312765803412768503412768053412768035412768034512768034152768034125768034127568034127658031427685031427680531427680351427680315427680314527680314257680314275680314276580312476850312476805312476803512476803152476803125476803124576803124756803124765803127468503127468053127468035127468031527468031257468031275468031274568031274658031276458013276548013276584013276854013276845013276840513276840153276840135276840132576840132756840132765804132768504132768054132768045132768041532768041352768041325768041327568041327658014327685014327680514327680154327680145327680143527680143257680143275680143276580134276850134276805134276801534276801354276801345276801342576801342756801342765801324768501324768051324768015324768013524768013254768013245768013247568013247658013274685013274680513274680153274680135274680132574680132754680132745680132746580132764580123765480123765840123768540123768450123768405123768401523768401253768401235768401237568401237658041237685041237680541237680451237680415237680412537680412357680412375680412376580142376850142376805142376801542376801452376801425376801423576801423756801423765801243768501243768051243768015243768012543768012453768012435768012437568012437658012347685012347680512347680152347680125347680123547680123457680123475680123476580123746850123746805123746801523746801253746801235746801237546801237456801237465801237645801273654801273658401273685401273684501273684051273684015273684012573684012753684012735684012736580412736850412736805412736804512736804152736804125736804127536804127356804127365801427368501427368051427368015427368014527368014257368014275368014273568014273658012473685012473680512473680152473680125473680124573680124753680124735680124736580127436850127436805127436801527436801257436801275436801274536801274356801274365801273468501273468051273468015273468012573468012753468012735468012734568012734658012736458012763458017264358017264538017265438017265348017265384017265380417265380147265380174265380172465380172645830172654830172658430172685430172684530172684350172684305172684301572684301752684301725684301726583401726853401726835401726834501726834051726834015726834017526834017256834017265830417268530417268350417268305417268304517268304157268304175268304172568304172658301472685301472683501472683051472683015472683014572683014752683014725683014726583017426853017426835017426830517426830157426830175426830174526830174256830174265830172468530172468350172468305172468301572468301752468301725468301724568301724658301726458031726548031726584031726854031726845031726840531726840351726840315726840317526840317256840317265804317268504317268054317268045317268043517268043157268043175268043172568043172658034172685034172680534172680354172680345172680341572680341752680341725680341726580314726850314726805314726803514726803154726803145726803147526803147256803147265803174268503174268053174268035174268031574268031754268031745268031742568031742658031724685031724680531724680351724680315724680317524680317254680317245680317246580317264580137265480137265840137268540137268450137268405137268401537268401357268401375268401372568401372658041372685041372680541372680451372680415372680413572680413752680413725680413726580143726850143726805143726801543726801453726801435726801437526801437256801437265801347268501347268051347268015347268013547268013457268013475268013472568013472658013742685013742680513742680153742680135742680137542680137452680137425680137426580137246850137246805137246801537246801357246801375246801372546801372456801372465801372645801732654801732658401732685401732684501732684051732684015732684017532684017352684017325684017326580417326850417326805417326804517326804157326804175326804173526804173256804173265801473268501473268051473268015473268014573268014753268014735268014732568014732658017432685017432680517432680157432680175432680174532680174352680174325680174326580173426850173426805173426801573426801753426801735426801734526801734256801734265801732468501732468051732468015732468017532468017352468017325468017324568017324658017326458017236548017236584017236854017236845017236840517236840157236840175236840172536840172356840172365804172368504172368054172368045172368041572368041752368041725368041723568041723658014723685014723680514723680154723680145723680147523680147253680147235680147236580174236850174236805174236801574236801754236801745236801742536801742356801742365801724368501724368051724368015724368017524368017254368017245368017243568017243658017234685017234680517234680157234680175234680172534680172354680172345680172346580172364580172634580176234580716324580716342580716432580716423580716425380716425830716425803716425807316425807136425807163452807164352807164532807165432807165342807165324807165328407165328047165328074165328071465328071645238071654238071652438071652348071652384071652380471652380741652380714652380716452830716542830716524830716528430716528340716528304716528307416528307146528307164528037165428037165248037165284037165280437165280347165280374165280371465280371645280731654280731652480731652840731652804731652807431652807341652807314652807316452807136542807136524807136528407136528047136528074136528071436528071346528071364528071634582071643582071645382071654382071653482071653842071653824071653820471653820741653820714653820716458320716548320716584320716854320716845320716843520716843250716843205716843207516843207156843207165834207168534207168354207168345207168342507168342057168342075168342071568342071658324071685324071683524071683254071683245071683240571683240751683240715683240716583204716853204716835204716832504716832054716832045716832047516832047156832047165832074168532074168352074168325074168320574168320754168320745168320741568320741658320714685320714683520714683250714683205714683207514683207154683207145683207146583207164582307165482307165842307168542307168452307168425307168423507168423057168423075168423071568423071658243071685243071682543071682453071682435071682430571682430751682430715682430716582340716852340716825340716823540716823450716823405716823407516823407156823407165823047168523047168253047168235047168230547168230457168230475168230471568230471658230741685230741682530741682350741682305741682307541682307451682307415682307416582307146852307146825307146823507146823057146823075146823071546823071456823071465823071645820371654820371658420371685420371684520371684250371684205371684203571684203751684203715684203716582403716852403716825403716824503716824053716824035716824037516824037156824037165820437168520437168250437168205437168204537168204357168204375168204371568204371658203471685203471682503471682053471682035471682034571682034751682034715682034716582037416852037416825037416820537416820357416820375416820374516820374156820374165820371468520371468250371468205371468203571468203751468203715468203714568203714658203716458207316548207316584207316854207316845207316842507316842057316842075316842073516842073156842073165824073168524073168254073168245073168240573168240753168240735168240731568240731658204731685204731682504731682054731682045731682047531682047351682047315682047316582074316852074316825074316820574316820754316820745316820743516820743156820743165820734168520734168250734168205734168207534168207354168207345168207341568207341658207314685207314682507314682057314682075314682073514682073154682073145682073146582073164582071365482071365842071368542071368452071368425071368420571368420751368420715368420713568420713658240713685240713682540713682450713682405713682407513682407153682407135682407136582047136852047136825047136820547136820457136820475136820471536820471356820471365820741368520741368250741368205741368207541368207451368207415368207413568207413658207143685207143682507143682057143682075143682071543682071453682071435682071436582071346852071346825071346820571346820751346820715346820713546820713456820713465820713645820716345802716435802716453802716543802716534802716538402716538042716538024716538027416538027146538027164583027165483027165843027168543027168453027168435027168430527168430257168430275168430271568430271658340271685340271683540271683450271683405271683402571683402751683402715683402716583042716853042716835042716830542716830452716830425716830427516830427156830427165830247168530247168350247168305247168302547168302457168302475168302471568302471658302741685302741683502741683052741683025741683027541683027451683027415683027416583027146853027146835027146830527146830257146830275146830271546830271456830271465830271645803271654803271658403271685403271684503271684053271684035271684032571684032751684032715684032716580432716850432716805432716804532716804352716804325716804327516804327156804327165803427168503427168053427168035427168034527168034257168034275168034271568034271658032471685032471680532471680352471680325471680324571680324751680324715680324716580327416850327416805327416803527416803257416803275416803274516803274156803274165803271468503271468053271468035271468032571468032751468032715468032714568032714658032716458023716548023716584023716854023716845023716840523716840253716840235716840237516840237156840237165804237168504237168054237168045237168042537168042357168042375168042371568042371658024371685024371680524371680254371680245371680243571680243751680243715680243716580234716850234716805234716802534716802354716802345716802347516802347156802347165802374168502374168052374168025374168023574168023754168023745168023741568023741658023714685023714680523714680253714680235714680237514680237154680237145680237146580237164580273165480273165840273168540273168450273168405273168402573168402753168402735168402731568402731658042731685042731680542731680452731680425731680427531680427351680427315680427316580247316850247316805247316802547316802457316802475316802473516802473156802473165802743168502743168052743168025743168027543168027453168027435168027431568027431658027341685027341680527341680257341680275341680273541680273451680273415680273416580273146850273146805273146802573146802753146802735146802731546802731456802731465802731645802713654802713658402713685402713684502713684052713684025713684027513684027153684027135684027136580427136850427136805427136804527136804257136804275136804271536804271356804271365802471368502471368052471368025471368024571368024751368024715368024713568024713658027413685027413680527413680257413680275413680274513680274153680274135680274136580271436850271436805271436802571436802751436802715436802714536802714356802714365802713468502713468052713468025713468027513468027153468027135468027134568027134658027136458027163458072164358072164538072165438072165348072165384072165380472165380742165380724165380721465380721645830721654830721658430721685430721684530721684350721684305721684307521684307251684307215684307216583407216853407216835407216834507216834057216834075216834072516834072156834072165830472168530472168350472168305472168304572168304752168304725168304721568304721658307421685307421683507421683057421683075421683074521683074251683074215683074216583072416853072416835072416830572416830752416830725416830724516830724156830724165830721468530721468350721468305721468307521468307251468307215468307214568307214658307216458037216548037216584037216854037216845037216840537216840357216840375216840372516840372156840372165804372168504372168054372168045372168043572168043752168043725168043721568043721658034721685034721680534721680354721680345721680347521680347251680347215680347216580374216850374216805374216803574216803754216803745216803742516803742156803742165803724168503724168053724168035724168037524168037254168037245168037241568037241658037214685037214680537214680357214680375214680372514680372154680372145680372146580372164580732165480732165840732168540732168450732168405732168407532168407352168407325168407321568407321658047321685047321680547321680457321680475321680473521680473251680473215680473216580743216850743216805743216807543216807453216807435216807432516807432156807432165807342168507342168057342168075342168073542168073452168073425168073421568073421658073241685073241680573241680753241680735241680732541680732451680732415680732416580732146850732146805732146807532146807352146807325146807321546807321456807321465807321645807231654807231658407231685407231684507231684057231684075231684072531684072351684072315684072316580472316850472316805472316804572316804752316804725316804723516804723156804723165807423168507423168057423168075423168074523168074253168074235168074231568074231658072431685072431680572431680752431680725431680724531680724351680724315680724316580723416850723416805723416807523416807253416807235416807234516807234156807234165807231468507231468057231468075231468072531468072351468072315468072314568072314658072316458072136548072136584072136854072136845072136840572136840752136840725136840721536840721356840721365804721368504721368054721368045721368047521368047251368047215368047213568047213658074213685074213680574213680754213680745213680742513680742153680742135680742136580724136850724136805724136807524136807254136807245136807241536807241356807241365807214368507214368057214368075214368072514368072154368072145368072143568072143658072134685072134680572134680752134680725134680721534680721354680721345680721346580721364580721634580712643580712645380712654380712653480712653840712653804712653807412653807142653807124653807126458307126548307126584307126854307126845307126843507126843057126843075126843071526843071256843071265834071268534071268354071268345071268340571268340751268340715268340712568340712658304712685304712683504712683054712683045712683047512683047152683047125683047126583074126853074126835074126830574126830754126830745126830741526830741256830741265830714268530714268350714268305714268307514268307154268307145268307142568307142658307124685307124683507124683057124683075124683071524683071254683071245683071246583071264580371265480371265840371268540371268450371268405371268403571268403751268403715268403712568403712658043712685043712680543712680453712680435712680437512680437152680437125680437126580347126850347126805347126803547126803457126803475126803471526803471256803471265803741268503741268053741268035741268037541268037451268037415268037412568037412658037142685037142680537142680357142680375142680371542680371452680371425680371426580371246850371246805371246803571246803751246803715246803712546803712456803712465803712645807312654807312658407312685407312684507312684057312684075312684073512684073152684073125684073126580473126850473126805473126804573126804753126804735126804731526804731256804731265807431268507431268057431268075431268074531268074351268074315268074312568074312658073412685073412680573412680753412680735412680734512680734152680734125680734126580731426850731426805731426807531426807351426807315426807314526807314256807314265807312468507312468057312468075312468073512468073152468073125468073124568073124658073126458071326548071326584071326854071326845071326840571326840751326840715326840713526840713256840713265804713268504713268054713268045713268047513268047153268047135268047132568047132658074132685074132680574132680754132680745132680741532680741352680741325680741326580714326850714326805714326807514326807154326807145326807143526807143256807143265807134268507134268057134268075134268071534268071354268071345268071342568071342658071324685071324680571324680751324680715324680713524680713254680713245680713246580713264580712365480712365840712368540712368450712368405712368407512368407152368407125368407123568407123658047123685047123680547123680457123680475123680471523680471253680471235680471236580741236850741236805741236807541236807451236807415236807412536807412356807412365807142368507142368057142368075142368071542368071452368071425368071423568071423658071243685071243680571243680751243680715243680712543680712453680712435680712436580712346850712346805712346807512346807152346807125346807123546807123456807123465807123645807126345807162345807612345870621345870623145870632145870631245870631425870631452870631458270631458720631458702631458706234158706324158706342158706432158706423158706421358706421538706421583706421587306421587036421587063412587064312587064132587064123587064125387064125837064125873064125870364125870634152870643152870641352870641532870641523870641528370641528730641528703641528706341582706431582706413582706415382706415832706415823706415827306415827036415827063415872064315872064135872064153872064158372064158732064158723064158720364158720634158702643158702641358702641538702641583702641587302641587032641587023641587026341587062345187063245187063425187064325187064235187064253187064251387064251837064251873064251870364251870634521870643521870645321870654321870653421870653241870653214870653218470653218740653218704653218706452318706542318706524318706523418706523148706523184706523187406523187046523187064521387065421387065241387065214387065213487065213847065213874065213870465213870645218370654218370652418370652148370652184370652183470652183740652183704652183706452187306542187306524187306521487306521847306521874306521873406521873046521873064521870365421870365241870365214870365218470365218740365218704365218703465218703645218706345128706435128706453128706543128706534128706531428706531248706531284706531287406531287046531287064513287065413287065143287065134287065132487065132847065132874065132870465132870645123870654123870651423870651243870651234870651238470651238740651238704651238706451283706541283706514283706512483706512843706512834706512837406512837046512837064512873065412873065142873065124873065128473065128743065128734065128730465128730645128703654128703651428703651248703651284703651287403651287043651287034651287036451287063451827064351827064531827065431827065341827065314827065318427065318247065318274065318270465318270645138270654138270651438270651348270651384270651382470651382740651382704651382706451832706541832706514832706518432706518342706518324706518327406518327046518327064518237065418237065148237065184237065182437065182347065182374065182370465182370645182730654182730651482730651842730651824730651827430651827340651827304651827306451827036541827036514827036518427036518247036518274036518270436518270346518270364518270634518720643518720645318720654318720653418720653148720653184720653187420653187240653187204653187206451387206541387206514387206513487206513847206513874206513872406513872046513872064518372065418372065148372065184372065183472065183742065183724065183720465183720645187320654187320651487320651847320651874320651873420651873240651873204651873206451872306541872306514872306518472306518742306518724306518723406518723046518723064518720365418720365148720365184720365187420365187240365187204365187203465187203645187206345187026435187026453187026543187026534187026531487026531847026531874026531870426531870246531870264513870265413870265143870265134870265138470265138740265138704265138702465138702645183702654183702651483702651843702651834702651837402651837042651837024651837026451873026541873026514873026518473026518743026518734026518730426518730246518730264518703265418703265148703265184703265187403265187043265187034265187032465187032645187023654187023651487023651847023651874023651870423651870243651870234651870236451870263451870623458170632458170634258170643258170642358170642538170642583170642581370642581730642581703642581706345281706435281706453281706543281706534281706532481706532841706532814706532817406532817046532817064523817065423817065243817065234817065238417065238147065238174065238170465238170645283170654283170652483170652843170652834170652831470652831740652831704652831706452813706542813706524813706528413706528143706528134706528137406528137046528137064528173065428173065248173065284173065281473065281743065281734065281730465281730645281703654281703652481703652841703652814703652817403652817043652817034652817036452817063458217064358217064538217065438217065348217065384217065382417065382147065382174065382170465382170645832170654832170658432170685432170684532170684352170684325170684321570684321750684321705684321706583421706853421706835421706834521706834251706834215706834217506834217056834217065832417068532417068352417068325417068324517068324157068324175068324170568324170658321470685321470683521470683251470683215470683214570683214750683214705683214706583217406853217406835217406832517406832157406832175406832174506832174056832174065832170468532170468352170468325170468321570468321750468321705468321704568321704658321706458231706548231706584231706854231706845231706842531706842351706842315706842317506842317056842317065824317068524317068254317068245317068243517068243157068243175068243170568243170658234170685234170682534170682354170682345170682341570682341750682341705682341706582314706852314706825314706823514706823154706823145706823147506823147056823147065823174068523174068253174068235174068231574068231754068231745068231740568231740658231704685231704682531704682351704682315704682317504682317054682317045682317046582317064582137065482137065842137068542137068452137068425137068421537068421357068421375068421370568421370658241370685241370682541370682451370682415370682413570682413750682413705682413706582143706852143706825143706821543706821453706821435706821437506821437056821437065821347068521347068251347068215347068213547068213457068213475068213470568213470658213740685213740682513740682153740682135740682137540682137450682137405682137406582137046852137046825137046821537046821357046821375046821370546821370456821370465821370645821730654821730658421730685421730684521730684251730684215730684217530684217350684217305684217306582417306852417306825417306824517306824157306824175306824173506824173056824173065821473068521473068251473068215473068214573068214753068214735068214730568214730658217430685217430682517430682157430682175430682174530682174350682174305682174306582173406852173406825173406821573406821753406821735406821734506821734056821734065821730468521730468251730468215730468217530468217350468217305468217304568217304658217306458217036548217036584217036854217036845217036842517036842157036842175036842170536842170356842170365824170368524170368254170368245170368241570368241750368241705368241703568241703658214703685214703682514703682154703682145703682147503682147053682147035682147036582174036852174036825174036821574036821754036821745036821740536821740356821740365821704368521704368251704368215704368217504368217054368217045368217043568217043658217034685217034682517034682157034682175034682170534682170354682170345682170346582170364582170634581270643581270645381270654381270653481270653841270653814270653812470653812740653812704653812706458312706548312706584312706854312706845312706843512706843152706843125706843127506843127056843127065834127068534127068354127068345127068341527068341257068341275068341270568341270658314270685314270683514270683154270683145270683142570683142750683142705683142706583124706853124706835124706831524706831254706831245706831247506831247056831247065831274068531274068351274068315274068312574068312754068312745068312740568312740658312704685312704683512704683152704683125704683127504683127054683127045683127046583127064581327065481327065841327068541327068451327068415327068413527068413257068413275068413270568413270658143270685143270681543270681453270681435270681432570681432750681432705681432706581342706851342706815342706813542706813452706813425706813427506813427056813427065813247068513247068153247068135247068132547068132457068132475068132470568132470658132740685132740681532740681352740681325740681327540681327450681327405681327406581327046851327046815327046813527046813257046813275046813270546813270456813270465813270645812370654812370658412370685412370684512370684152370684125370684123570684123750684123705684123706581423706851423706815423706814523706814253706814235706814237506814237056814237065812437068512437068152437068125437068124537068124357068124375068124370568124370658123470685123470681523470681253470681235470681234570681234750681234705681234706581237406851237406815237406812537406812357406812375406812374506812374056812374065812370468512370468152370468125370468123570468123750468123705468123704568123704658123706458127306548127306584127306854127306845127306841527306841257306841275306841273506841273056841273065814273068514273068154273068145273068142573068142753068142735068142730568142730658124730685124730681524730681254730681245730681247530681247350681247305681247306581274306851274306815274306812574306812754306812745306812743506812743056812743065812734068512734068152734068125734068127534068127354068127345068127340568127340658127304685127304681527304681257304681275304681273504681273054681273045681273046581273064581270365481270365841270368541270368451270368415270368412570368412750368412705368412703568412703658142703685142703681542703681452703681425703681427503681427053681427035681427036581247036851247036815247036812547036812457036812475036812470536812470356812470365812740368512740368152740368125740368127540368127450368127405368127403568127403658127043685127043681527043681257043681275043681270543681270453681270435681270436581270346851270346815270346812570346812750346812705346812703546812703456812703465812703645812706345817206435817206453817206543817206534817206538417206538147206538174206538172406538172046538172064583172065483172065843172068543172068453172068435172068431572068431752068431725068431720568431720658341720685341720683541720683451720683415720683417520683417250683417205683417206583147206853147206835147206831547206831457206831475206831472506831472056831472065831742068531742068351742068315742068317542068317452068317425068317420568317420658317240685317240683517240683157240683175240683172540683172450683172405683172406583172046853172046835172046831572046831752046831725046831720546831720456831720465831720645813720654813720658413720685413720684513720684153720684135720684137520684137250684137205684137206581437206851437206815437206814537206814357206814375206814372506814372056814372065813472068513472068153472068135472068134572068134752068134725068134720568134720658137420685137420681537420681357420681375420681374520681374250681374205681374206581372406851372406815372406813572406813752406813725406813724506813724056813724065813720468513720468153720468135720468137520468137250468137205468137204568137204658137206458173206548173206584173206854173206845173206841573206841753206841735206841732506841732056841732065814732068514732068154732068145732068147532068147352068147325068147320568147320658174320685174320681574320681754320681745320681743520681743250681743205681743206581734206851734206815734206817534206817354206817345206817342506817342056817342065817324068517324068157324068175324068173524068173254068173245068173240568173240658173204685173204681573204681753204681735204681732504681732054681732045681732046581732064581723065481723065841723068541723068451723068415723068417523068417253068417235068417230568417230658147230685147230681547230681457230681475230681472530681472350681472305681472306581742306851742306815742306817542306817452306817425306817423506817423056817423065817243068517243068157243068175243068172543068172453068172435068172430568172430658172340685172340681572340681752340681725340681723540681723450681723405681723406581723046851723046815723046817523046817253046817235046817230546817230456817230465817230645817203654817203658417203685417203684517203684157203684175203684172503684172053684172035684172036581472036851472036815472036814572036814752036814725036814720536814720356814720365817420368517420368157420368175420368174520368174250368174205368174203568174203658172403685172403681572403681752403681725403681724503681724053681724035681724036581720436851720436815720436817520436817250436817205436817204536817204356817204365817203468517203468157203468175203468172503468172053468172035468172034568172034658172036458172063458170264358170264538170265438170265348170265384170265381470265381740265381704265381702465381702645831702654831702658431702685431702684531702684351702684315702684317502684317052684317025684317026583417026853417026835417026834517026834157026834175026834170526834170256834170265831470268531470268351470268315470268314570268314750268314705268314702568314702658317402685317402683517402683157402683175402683174502683174052683174025683174026583170426853170426835170426831570426831750426831705426831704526831704256831704265831702468531702468351702468315702468317502468317052468317025468317024568317024658317026458137026548137026584137026854137026845137026841537026841357026841375026841370526841370256841370265814370268514370268154370268145370268143570268143750268143705268143702568143702658134702685134702681534702681354702681345702681347502681347052681347025681347026581374026851374026815374026813574026813754026813745026813740526813740256813740265813704268513704268153704268135704268137504268137054268137045268137042568137042658137024685137024681537024681357024681375024681370524681370254681370245681370246581370264581730265481730265841730268541730268451730268415730268417530268417350268417305268417302568417302658147302685147302681547302681457302681475302681473502681473052681473025681473026581743026851743026815743026817543026817453026817435026817430526817430256817430265817340268517340268157340268175340268173540268173450268173405268173402568173402658173042685173042681573042681753042681735042681730542681730452681730425681730426581730246851730246815730246817530246817350246817305246817302546817302456817302465817302645817032654817032658417032685417032684517032684157032684175032684170532684170352684170325684170326581470326851470326815470326814570326814750326814705326814703526814703256814703265817403268517403268157403268175403268174503268174053268174035268174032568174032658170432685170432681570432681750432681705432681704532681704352681704325681704326581703426851703426815703426817503426817053426817035426817034526817034256817034265817032468517032468157032468175032468170532468170352468170325468170324568170324658170326458170236548170236584170236854170236845170236841570236841750236841705236841702536841702356841702365814702368514702368154702368145702368147502368147052368147025368147023568147023658174023685174023681574023681754023681745023681740523681740253681740235681740236581704236851704236815704236817504236817054236817045236817042536817042356817042365817024368517024368157024368175024368170524368170254368170245368170243568170243658170234685170234681570234681750234681705234681702534681702354681702345681702346581702364581702634581706234587106324587106342587106432587106423587106425387106425837106425873106425871306425871036425871063452871064352871064532871065432871065342871065324871065328471065328741065328714065328710465328710645238710654238710652438710652348710652384710652387410652387140652387104652387106452837106542837106524837106528437106528347106528374106528371406528371046528371064528731065428731065248731065284731065287431065287341065287314065287310465287310645287130654287130652487130652847130652874130652871430652871340652871304652871306452871036542871036524871036528471036528741036528714036528710436528710346528710364528710634582710643582710645382710654382710653482710653842710653824710653827410653827140653827104653827106458327106548327106584327106854327106845327106843527106843257106843275106843271506843271056843271065834271068534271068354271068345271068342571068342751068342715068342710568342710658324710685324710683524710683254710683245710683247510683247150683247105683247106583274106853274106835274106832574106832754106832745106832741506832741056832741065832714068532714068352714068325714068327514068327154068327145068327140568327140658327104685327104683527104683257104683275104683271504683271054683271045683271046583271064582371065482371065842371068542371068452371068425371068423571068423751068423715068423710568423710658243710685243710682543710682453710682435710682437510682437150682437105682437106582347106852347106825347106823547106823457106823475106823471506823471056823471065823741068523741068253741068235741068237541068237451068237415068237410568237410658237140685237140682537140682357140682375140682371540682371450682371405682371406582371046852371046825371046823571046823751046823715046823710546823710456823710465823710645827310654827310658427310685427310684527310684257310684275310684273510684273150684273105684273106582473106852473106825473106824573106824753106824735106824731506824731056824731065827431068527431068257431068275431068274531068274351068274315068274310568274310658273410685273410682573410682753410682735410682734510682734150682734105682734106582731406852731406825731406827531406827351406827315406827314506827314056827314065827310468527310468257310468275310468273510468273150468273105468273104568273104658273106458271306548271306584271306854271306845271306842571306842751306842715306842713506842713056842713065824713068524713068254713068245713068247513068247153068247135068247130568247130658274130685274130682574130682754130682745130682741530682741350682741305682741306582714306852714306825714306827514306827154306827145306827143506827143056827143065827134068527134068257134068275134068271534068271354068271345068271340568271340658271304685271304682571304682751304682715304682713504682713054682713045682713046582713064582710365482710365842710368542710368452710368425710368427510368427150368427105368427103568427103658247103685247103682547103682457103682475103682471503682471053682471035682471036582741036852741036825741036827541036827451036827415036827410536827410356827410365827140368527140368257140368275140368271540368271450368271405368271403568271403658271043685271043682571043682751043682715043682710543682710453682710435682710436582710346852710346825710346827510346827150346827105346827103546827103456827103465827103645827106345872106435872106453872106543872106534872106538472106538742106538724106538721406538721046538721064583721065483721065843721068543721068453721068435721068437521068437251068437215068437210568437210658347210685347210683547210683457210683475210683472510683472150683472105683472106583742106853742106835742106837542106837452106837425106837421506837421056837421065837241068537241068357241068375241068372541068372451068372415068372410568372410658372140685372140683572140683752140683725140683721540683721450683721405683721406583721046853721046835721046837521046837251046837215046837210546837210456837210465837210645873210654873210658473210685473210684573210684753210684735210684732510684732150684732105684732106587432106857432106875432106785432106758432106754832106754382106754328106754321806754321086754321068745321067845321067485321067458321067453821067453281067453218067453210867453210687435210678435210674835210674385210674358210674352810674352180674352108674352106874325106784325106748325106743825106743285106743258106743251806743251086743251068743215067843215067483215067438215067432815067432185067432158067432150867432150687432105678432105674832105674382105674328105674321805674321085674321058674321056874321065873421068573421068753421067853421067583421067538421067534821067534281067534218067534210867534210687354210678354210673854210673584210673548210673542810673542180673542108673542106873452106783452106738452106734852106734582106734528106734521806734521086734521068734251067834251067384251067348251067342851067342581067342518067342510867342510687342150678342150673842150673482150673428150673421850673421580673421508673421506873421056783421056738421056734821056734281056734218056734210856734210586734210568734210658732410685732410687532410678532410675832410675382410675328410675324810675324180675324108675324106873524106783524106738524106735824106735284106735248106735241806735241086735241068732541067832541067382541067328541067325841067325481067325418067325410867325410687324510678324510673824510673284510673248510673245810673245180673245108673245106873241506783241506738241506732841506732481506732418506732415806732415086732415068732410567832410567382410567328410567324810567324180567324108567324105867324105687324106587321406857321406875321406785321406758321406753821406753281406753218406753214806753214086753214068735214067835214067385214067358214067352814067352184067352148067352140867352140687325140678325140673825140673285140673258140673251840673251480673251408673251406873215406783215406738215406732815406732185406732158406732154806732154086732154068732145067832145067382145067328145067321845067321485067321458067321450867321450687321405678321405673821405673281405673218405673214805673214085673214058673214056873214065873210468573210468753210467853210467583210467538210467532810467532180467532108467532104867532104687352104678352104673852104673582104673528104673521804673521084673521048673521046873251046783251046738251046732851046732581046732518046732510846732510486732510468732150467832150467382150467328150467321850467321580467321508467321504867321504687321054678321054673821054673281054673218054673210854673210584673210548673210546873210456783210456738210456732810456732180456732108456732104856732104586732104568732104658732106458723106548723106584723106854723106845723106847523106847253106847235106847231506847231056847231065874231068574231068754231067854231067584231067548231067542831067542381067542318067542310867542310687452310678452310674852310674582310674528310674523810674523180674523108674523106874253106784253106748253106742853106742583106742538106742531806742531086742531068742351067842351067482351067428351067423851067423581067423518067423510867423510687423150678423150674823150674283150674238150674231850674231580674231508674231506874231056784231056748231056742831056742381056742318056742310856742310586742310568742310658724310685724310687524310678524310675824310675284310675248310675243810675243180675243108675243106872543106782543106728543106725843106725483106725438106725431806725431086725431068724531067824531067284531067248531067245831067245381067245318067245310867245310687243510678243510672843510672483510672438510672435810672435180672435108672435106872431506782431506728431506724831506724381506724318506724315806724315086724315068724310567824310567284310567248310567243810567243180567243108567243105867243105687243106587234106857234106875234106785234106758234106752834106752384106752348106752341806752341086752341068725341067825341067285341067258341067253841067253481067253418067253410867253410687235410678235410672835410672385410672358410672354810672354180672354108672354106872345106782345106728345106723845106723485106723458106723451806723451086723451068723415067823415067283415067238415067234815067234185067234158067234150867234150687234105678234105672834105672384105672348105672341805672341085672341058672341056872341065872314068572314068752314067852314067582314067528314067523814067523184067523148067523140867523140687253140678253140672853140672583140672538140672531840672531480672531408672531406872351406782351406728351406723851406723581406723518406723514806723514086723514068723154067823154067283154067238154067231854067231584067231548067231540867231540687231450678231450672831450672381450672318450672314850672314580672314508672314506872314056782314056728314056723814056723184056723148056723140856723140586723140568723140658723104685723104687523104678523104675823104675283104675238104675231804675231084675231048675231046872531046782531046728531046725831046725381046725318046725310846725310486725310468723510467823510467283510467238510467235810467235180467235108467235104867235104687231504678231504672831504672381504672318504672315804672315084672315048672315046872310546782310546728310546723810546723180546723108546723105846723105486723105468723104567823104567283104567238104567231804567231084567231048567231045867231045687231046587231064587213065487213065847213068547213068457213068475213068472513068472153068472135068472130568472130658742130685742130687542130678542130675842130675482130675428130675421830675421380675421308675421306874521306784521306748521306745821306745281306745218306745213806745213086745213068742513067842513067482513067428513067425813067425183067425138067425130867425130687421530678421530674821530674281530674218530674215830674215380674215308674215306874213506784213506748213506742813506742183506742138506742135806742135086742135068742130567842130567482130567428130567421830567421380567421308567421305867421305687421306587241306857241306875241306785241306758241306752841306752481306752418306752413806752413086752413068725413067825413067285413067258413067254813067254183067254138067254130867254130687245130678245130672845130672485130672458130672451830672451380672451308672451306872415306782415306728415306724815306724185306724158306724153806724153086724153068724135067824135067284135067248135067241835067241385067241358067241350867241350687241305678241305672841305672481305672418305672413805672413085672413058672413056872413065872143068572143068752143067852143067582143067528143067521843067521483067521438067521430867521430687251430678251430672851430672581430672518430672514830672514380672514308672514306872154306782154306728154306721854306721584306721548306721543806721543086721543068721453067821453067281453067218453067214853067214583067214538067214530867214530687214350678214350672814350672184350672148350672143850672143580672143508672143506872143056782143056728143056721843056721483056721438056721430856721430586721430568721430658721340685721340687521340678521340675821340675281340675218340675213840675213480675213408675213406872513406782513406728513406725813406725183406725138406725134806725134086725134068721534067821534067281534067218534067215834067215384067215348067215340867215340687213540678213540672813540672183540672138540672135840672135480672135408672135406872134506782134506728134506721834506721384506721348506721345806721345086721345068721340567821340567281340567218340567213840567213480567213408567213405867213405687213406587213046857213046875213046785213046758213046752813046752183046752138046752130846752130486752130468725130467825130467285130467258130467251830467251380467251308467251304867251304687215304678215304672815304672185304672158304672153804672153084672153048672153046872135046782135046728135046721835046721385046721358046721350846721350486721350468721305467821305467281305467218305467213805467213085467213058467213054867213054687213045678213045672813045672183045672138045672130845672130485672130458672130456872130465872130645872103654872103658472103685472103684572103684752103684725103684721503684721053684721035684721036587421036857421036875421036785421036758421036754821036754281036754218036754210836754210386754210368745210367845210367485210367458210367452810367452180367452108367452103867452103687425103678425103674825103674285103674258103674251803674251083674251038674251036874215036784215036748215036742815036742185036742158036742150836742150386742150368742105367842105367482105367428105367421805367421085367421058367421053867421053687421035678421035674821035674281035674218035674210835674210385674210358674210356874210365872410368572410368752410367852410367582410367528410367524810367524180367524108367524103867524103687254103678254103672854103672584103672548103672541803672541083672541038672541036872451036782451036728451036724851036724581036724518036724510836724510386724510368724150367824150367284150367248150367241850367241580367241508367241503867241503687241053678241053672841053672481053672418053672410853672410583672410538672410536872410356782410356728410356724810356724180356724108356724103856724103586724103568724103658721403685721403687521403678521403675821403675281403675218403675214803675214083675214038675214036872514036782514036728514036725814036725184036725148036725140836725140386725140368721540367821540367281540367218540367215840367215480367215408367215403867215403687214503678214503672814503672184503672148503672145803672145083672145038672145036872140536782140536728140536721840536721480536721408536721405836721405386721405368721403567821403567281403567218403567214803567214083567214038567214035867214035687214036587210436857210436875210436785210436758210436752810436752180436752108436752104836752104386752104368725104367825104367285104367258104367251804367251084367251048367251043867251043687215043678215043672815043672185043672158043672150843672150483672150438672150436872105436782105436728105436721805436721085436721058436721054836721054386721054368721045367821045367281045367218045367210845367210485367210458367210453867210453687210435678210435672810435672180435672108435672104835672104385672104358672104356872104365872103468572103468752103467852103467582103467528103467521803467521083467521038467521034867521034687251034678251034672851034672581034672518034672510834672510384672510348672510346872150346782150346728150346721850346721580346721508346721503846721503486721503468721053467821053467281053467218053467210853467210583467210538467210534867210534687210354678210354672810354672180354672108354672103854672103584672103548672103546872103456782103456728103456721803456721083456721038456721034856721034586721034568721034658721036458721063458712064358712064538712065438712065348712065384712065387412065387142065387124065387120465387120645837120654837120658437120685437120684537120684357120684375120684371520684371250684371205684371206583471206853471206835471206834571206834751206834715206834712506834712056834712065837412068537412068357412068375412068374512068374152068374125068374120568374120658371420685371420683571420683751420683715420683714520683714250683714205683714206583712406853712406835712406837512406837152406837125406837124506837124056837124065837120468537120468357120468375120468371520468371250468371205468371204568371204658371206458731206548731206584731206854731206845731206847531206847351206847315206847312506847312056847312065874312068574312068754312067854312067584312067548312067543812067543182067543128067543120867543120687453120678453120674853120674583120674538120674531820674531280674531208674531206874351206784351206748351206743851206743581206743518206743512806743512086743512068743152067843152067483152067438152067431852067431582067431528067431520867431520687431250678431250674831250674381250674318250674312850674312580674312508674312506874312056784312056748312056743812056743182056743128056743120856743120586743120568743120658734120685734120687534120678534120675834120675384120675348120675341820675341280675341208675341206873541206783541206738541206735841206735481206735418206735412806735412086735412068734512067834512067384512067348512067345812067345182067345128067345120867345120687341520678341520673841520673481520673418520673415820673415280673415208673415206873412506783412506738412506734812506734182506734128506734125806734125086734125068734120567834120567384120567348120567341820567341280567341208567341205867341205687341206587314206857314206875314206785314206758314206753814206753184206753148206753142806753142086753142068735142067835142067385142067358142067351842067351482067351428067351420867351420687315420678315420673815420673185420673158420673154820673154280673154208673154206873145206783145206738145206731845206731485206731458206731452806731452086731452068731425067831425067381425067318425067314825067314285067314258067314250867314250687314205678314205673814205673184205673148205673142805673142085673142058673142056873142065873124068573124068753124067853124067583124067538124067531824067531284067531248067531240867531240687351240678351240673851240673581240673518240673512840673512480673512408673512406873152406783152406738152406731852406731582406731528406731524806731524086731524068731254067831254067381254067318254067312854067312584067312548067312540867312540687312450678312450673812450673182450673128450673124850673124580673124508673124506873124056783124056738124056731824056731284056731248056731240856731240586731240568731240658731204685731204687531204678531204675831204675381204675318204675312804675312084675312048675312046873512046783512046738512046735812046735182046735128046735120846735120486735120468731520467831520467381520467318520467315820467315280467315208467315204867315204687312504678312504673812504673182504673128504673125804673125084673125048673125046873120546783120546738120546731820546731280546731208546731205846731205486731205468731204567831204567381204567318204567312804567312084567312048567312045867312045687312046587312064587132065487132065847132068547132068457132068475132068471532068471352068471325068471320568471320658741320685741320687541320678541320675841320675481320675418320675413820675413280675413208675413206874513206784513206748513206745813206745183206745138206745132806745132086745132068741532067841532067481532067418532067415832067415382067415328067415320867415320687413520678413520674813520674183520674138520674135820674135280674135208674135206874132506784132506748132506741832506741382506741328506741325806741325086741325068741320567841320567481320567418320567413820567413280567413208567413205867413205687413206587143206857143206875143206785143206758143206751843206751483206751438206751432806751432086751432068715432067815432067185432067158432067154832067154382067154328067154320867154320687145320678145320671845320671485320671458320671453820671453280671453208671453206871435206781435206718435206714835206714385206714358206714352806714352086714352068714325067814325067184325067148325067143825067143285067143258067143250867143250687143205678143205671843205671483205671438205671432805671432085671432058671432056871432065871342068571342068751342067851342067581342067518342067513842067513482067513428067513420867513420687153420678153420671853420671583420671538420671534820671534280671534208671534206871354206781354206718354206713854206713584206713548206713542806713542086713542068713452067813452067183452067138452067134852067134582067134528067134520867134520687134250678134250671834250671384250671348250671342850671342580671342508671342506871342056781342056718342056713842056713482056713428056713420856713420586713420568713420658713240685713240687513240678513240675813240675183240675138240675132840675132480675132408675132406871532406781532406718532406715832406715382406715328406715324806715324086715324068713524067813524067183524067138524067135824067135284067135248067135240867135240687132540678132540671832540671382540671328540671325840671325480671325408671325406871324506781324506718324506713824506713284506713248506713245806713245086713245068713240567813240567183240567138240567132840567132480567132408567132405867132405687132406587132046857132046875132046785132046758132046751832046751382046751328046751320846751320486751320468715320467815320467185320467158320467153820467153280467153208467153204867153204687135204678135204671835204671385204671358204671352804671352084671352048671352046871325046781325046718325046713825046713285046713258046713250846713250486713250468713205467813205467183205467138205467132805467132085467132058467132054867132054687132045678132045671832045671382045671328045671320845671320485671320458671320456871320465871320645871230654871230658471230685471230684571230684751230684715230684712530684712350684712305684712306587412306857412306875412306785412306758412306754812306754182306754128306754123806754123086754123068745123067845123067485123067458123067451823067451283067451238067451230867451230687415230678415230674815230674185230674158230674152830674152380674152308674152306874125306784125306748125306741825306741285306741258306741253806741253086741253068741235067841235067481235067418235067412835067412385067412358067412350867412350687412305678412305674812305674182305674128305674123805674123085674123058674123056874123065871423068571423068751423067851423067581423067518423067514823067514283067514238067514230867514230687154230678154230671854230671584230671548230671542830671542380671542308671542306871452306781452306718452306714852306714582306714528306714523806714523086714523068714253067814253067184253067148253067142853067142583067142538067142530867142530687142350678142350671842350671482350671428350671423850671423580671423508671423506871423056781423056718423056714823056714283056714238056714230856714230586714230568714230658712430685712430687512430678512430675812430675182430675128430675124830675124380675124308675124306871524306781524306718524306715824306715284306715248306715243806715243086715243068712543067812543067182543067128543067125843067125483067125438067125430867125430687124530678124530671824530671284530671248530671245830671245380671245308671245306871243506781243506718243506712843506712483506712438506712435806712435086712435068712430567812430567182430567128430567124830567124380567124308567124305867124305687124306587123406857123406875123406785123406758123406751823406751283406751238406751234806751234086751234068715234067815234067185234067158234067152834067152384067152348067152340867152340687125340678125340671825340671285340671258340671253840671253480671253408671253406871235406781235406718235406712835406712385406712358406712354806712354086712354068712345067812345067182345067128345067123845067123485067123458067123450867123450687123405678123405671823405671283405671238405671234805671234085671234058671234056871234065871230468571230468751230467851230467581230467518230467512830467512380467512308467512304867512304687152304678152304671852304671582304671528304671523804671523084671523048671523046871253046781253046718253046712853046712583046712538046712530846712530486712530468712350467812350467182350467128350467123850467123580467123508467123504867123504687123054678123054671823054671283054671238054671230854671230584671230548671230546871230456781230456718230456712830456712380456712308456712304856712304586712304568712304658712306458712036548712036584712036854712036845712036847512036847152036847125036847120536847120356847120365874120368574120368754120367854120367584120367548120367541820367541280367541208367541203867541203687451203678451203674851203674581203674518203674512803674512083674512038674512036874152036784152036748152036741852036741582036741528036741520836741520386741520368741250367841250367481250367418250367412850367412580367412508367412503867412503687412053678412053674812053674182053674128053674120853674120583674120538674120536874120356784120356748120356741820356741280356741208356741203856741203586741203568741203658714203685714203687514203678514203675814203675184203675148203675142803675142083675142038675142036871542036781542036718542036715842036715482036715428036715420836715420386715420368714520367814520367184520367148520367145820367145280367145208367145203867145203687142503678142503671842503671482503671428503671425803671425083671425038671425036871420536781420536718420536714820536714280536714208536714205836714205386714205368714203567814203567184203567148203567142803567142083567142038567142035867142035687142036587124036857124036875124036785124036758124036751824036751284036751248036751240836751240386751240368715240367815240367185240367158240367152840367152480367152408367152403867152403687125403678125403671825403671285403671258403671254803671254083671254038671254036871245036781245036718245036712845036712485036712458036712450836712450386712450368712405367812405367182405367128405367124805367124085367124058367124053867124053687124035678124035671824035671284035671248035671240835671240385671240358671240356871240365871204368571204368751204367851204367581204367518204367512804367512084367512048367512043867512043687152043678152043671852043671582043671528043671520843671520483671520438671520436871250436781250436718250436712850436712580436712508436712504836712504386712504368712054367812054367182054367128054367120854367120584367120548367120543867120543687120453678120453671820453671280453671208453671204853671204583671204538671204536871204356781204356718204356712804356712084356712048356712043856712043586712043568712043658712034685712034687512034678512034675812034675182034675128034675120834675120384675120348675120346871520346781520346718520346715820346715280346715208346715203846715203486715203468712503467812503467182503467128503467125803467125083467125038467125034867125034687120534678120534671820534671280534671208534671205834671205384671205348671205346871203546781203546718203546712803546712083546712038546712035846712035486712035468712034567812034567182034567128034567120834567120384567120348567120345867120345687120346587120364587120634587102643587102645387102654387102653487102653847102653874102653871402653871042653871024653871026458371026548371026584371026854371026845371026843571026843751026843715026843710526843710256843710265834710268534710268354710268345710268347510268347150268347105268347102568347102658374102685374102683574102683754102683745102683741502683741052683741025683741026583714026853714026835714026837514026837154026837145026837140526837140256837140265837104268537104268357104268375104268371504268371054268371045268371042568371042658371024685371024683571024683751024683715024683710524683710254683710245683710246583710264587310265487310265847310268547310268457310268475310268473510268473150268473105268473102568473102658743102685743102687543102678543102675843102675483102675438102675431802675431082675431028675431026874531026784531026748531026745831026745381026745318026745310826745310286745310268743510267843510267483510267438510267435810267435180267435108267435102867435102687431502678431502674831502674381502674318502674315802674315082674315028674315026874310526784310526748310526743810526743180526743108526743105826743105286743105268743102567843102567483102567438102567431802567431082567431028567431025867431025687431026587341026857341026875341026785341026758341026753841026753481026753418026753410826753410286753410268735410267835410267385410267358410267354810267354180267354108267354102867354102687345102678345102673845102673485102673458102673451802673451082673451028673451026873415026783415026738415026734815026734185026734158026734150826734150286734150268734105267834105267384105267348105267341805267341085267341058267341052867341052687341025678341025673841025673481025673418025673410825673410285673410258673410256873410265873140268573140268753140267853140267583140267538140267531840267531480267531408267531402867531402687351402678351402673851402673581402673518402673514802673514082673514028673514026873154026783154026738154026731854026731584026731548026731540826731540286731540268731450267831450267381450267318450267314850267314580267314508267314502867314502687314052678314052673814052673184052673148052673140852673140582673140528673140526873140256783140256738140256731840256731480256731408256731402856731402586731402568731402658731042685731042687531042678531042675831042675381042675318042675310842675310482675310428675310426873510426783510426738510426735810426735180426735108426735104826735104286735104268731504267831504267381504267318504267315804267315084267315048267315042867315042687310542678310542673810542673180542673108542673105842673105482673105428673105426873104526783104526738104526731804526731084526731048526731045826731045286731045268731042567831042567381042567318042567310842567310482567310428567310425867310425687310426587310246857310246875310246785310246758310246753810246753180246753108246753102846753102486753102468735102467835102467385102467358102467351802467351082467351028467351024867351024687315024678315024673815024673185024673158024673150824673150284673150248673150246873105246783105246738105246731805246731085246731058246731052846731052486731052468731025467831025467381025467318025467310825467310285467310258467310254867310254687310245678310245673810245673180245673108245673102845673102485673102458673102456873102465873102645871302654871302658471302685471302684571302684751302684715302684713502684713052684713025684713026587413026857413026875413026785413026758413026754813026754183026754138026754130826754130286754130268745130267845130267485130267458130267451830267451380267451308267451302867451302687415302678415302674815302674185302674158302674153802674153082674153028674153026874135026784135026748135026741835026741385026741358026741350826741350286741350268741305267841305267481305267418305267413805267413085267413058267413052867413052687413025678413025674813025674183025674138025674130825674130285674130258674130256874130265871430268571430268751430267851430267581430267518430267514830267514380267514308267514302867514302687154302678154302671854302671584302671548302671543802671543082671543028671543026871453026781453026718453026714853026714583026714538026714530826714530286714530268714350267814350267184350267148350267143850267143580267143508267143502867143502687143052678143052671843052671483052671438052671430852671430582671430528671430526871430256781430256718430256714830256714380256714308256714302856714302586714302568714302658713402685713402687513402678513402675813402675183402675138402675134802675134082675134028675134026871534026781534026718534026715834026715384026715348026715340826715340286715340268713540267813540267183540267138540267135840267135480267135408267135402867135402687134502678134502671834502671384502671348502671345802671345082671345028671345026871340526781340526718340526713840526713480526713408526713405826713405286713405268713402567813402567183402567138402567134802567134082567134028567134025867134025687134026587130426857130426875130426785130426758130426751830426751380426751308426751304826751304286751304268715304267815304267185304267158304267153804267153084267153048267153042867153042687135042678135042671835042671385042671358042671350842671350482671350428671350426871305426781305426718305426713805426713085426713058426713054826713054286713054268713045267813045267183045267138045267130845267130485267130458267130452867130452687130425678130425671830425671380425671308425671304825671304285671304258671304256871304265871302468571302468751302467851302467581302467518302467513802467513082467513028467513024867513024687153024678153024671853024671583024671538024671530824671530284671530248671530246871350246781350246718350246713850246713580246713508246713502846713502486713502468713052467813052467183052467138052467130852467130582467130528467130524867130524687130254678130254671830254671380254671308254671302854671302584671302548671302546871302456781302456718302456713802456713082456713028456713024856713024586713024568713024658713026458710326548710326584710326854710326845710326847510326847150326847105326847103526847103256847103265874103268574103268754103267854103267584103267548103267541803267541083267541038267541032867541032687451032678451032674851032674581032674518032674510832674510382674510328674510326874150326784150326748150326741850326741580326741508326741503826741503286741503268741053267841053267481053267418053267410853267410583267410538267410532867410532687410352678410352674810352674180352674108352674103852674103582674103528674103526874103256784103256748103256741803256741083256741038256741032856741032586741032568741032658714032685714032687514032678514032675814032675184032675148032675140832675140382675140328675140326871540326781540326718540326715840326715480326715408326715403826715403286715403268714503267814503267184503267148503267145803267145083267145038267145032867145032687140532678140532671840532671480532671408532671405832671405382671405328671405326871403526781403526718403526714803526714083526714038526714035826714035286714035268714032567814032567184032567148032567140832567140382567140328567140325867140325687140326587104326857104326875104326785104326758104326751804326751084326751048326751043826751043286751043268715043267815043267185043267158043267150843267150483267150438267150432867150432687105432678105432671805432671085432671058432671054832671054382671054328671054326871045326781045326718045326710845326710485326710458326710453826710453286710453268710435267810435267180435267108435267104835267104385267104358267104352867104352687104325678104325671804325671084325671048325671043825671043285671043258671043256871043265871034268571034268751034267851034267581034267518034267510834267510384267510348267510342867510342687150342678150342671850342671580342671508342671503842671503482671503428671503426871053426781053426718053426710853426710583426710538426710534826710534286710534268710354267810354267180354267108354267103854267103584267103548267103542867103542687103452678103452671803452671083452671038452671034852671034582671034528671034526871034256781034256718034256710834256710384256710348256710342856710342586710342568710342658710324685710324687510324678510324675810324675180324675108324675103824675103284675103248675103246871503246781503246718503246715803246715083246715038246715032846715032486715032468710532467810532467180532467108532467105832467105382467105328467105324867105324687103524678103524671803524671083524671038524671035824671035284671035248671035246871032546781032546718032546710832546710382546710328546710325846710325486710325468710324567810324567180324567108324567103824567103284567103248567103245867103245687103246587103264587102365487102365847102368547102368457102368475102368471502368471052368471025368471023568471023658741023685741023687541023678541023675841023675481023675418023675410823675410283675410238675410236874510236784510236748510236745810236745180236745108236745102836745102386745102368741502367841502367481502367418502367415802367415082367415028367415023867415023687410523678410523674810523674180523674108523674105823674105283674105238674105236874102536784102536748102536741802536741082536741028536741025836741025386741025368741023567841023567481023567418023567410823567410283567410238567410235867410235687410236587140236857140236875140236785140236758140236751840236751480236751408236751402836751402386751402368715402367815402367185402367158402367154802367154082367154028367154023867154023687145023678145023671845023671485023671458023671450823671450283671450238671450236871405236781405236718405236714805236714085236714058236714052836714052386714052368714025367814025367184025367148025367140825367140285367140258367140253867140253687140235678140235671840235671480235671408235671402835671402385671402358671402356871402365871042368571042368751042367851042367581042367518042367510842367510482367510428367510423867510423687150423678150423671850423671580423671508423671504823671504283671504238671504236871054236781054236718054236710854236710584236710548236710542836710542386710542368710452367810452367180452367108452367104852367104582367104528367104523867104523687104253678104253671804253671084253671048253671042853671042583671042538671042536871042356781042356718042356710842356710482356710428356710423856710423586710423568710423658710243685710243687510243678510243675810243675180243675108243675102843675102483675102438675102436871502436781502436718502436715802436715082436715028436715024836715024386715024368710524367810524367180524367108524367105824367105284367105248367105243867105243687102543678102543671802543671082543671028543671025843671025483671025438671025436871024536781024536718024536710824536710284536710248536710245836710245386710245368710243567810243567180243567108243567102843567102483567102438567102435867102435687102436587102346857102346875102346785102346758102346751802346751082346751028346751023846751023486751023468715023467815023467185023467158023467150823467150283467150238467150234867150234687105234678105234671805234671085234671058234671052834671052384671052348671052346871025346781025346718025346710825346710285346710258346710253846710253486710253468710235467810235467180235467108235467102835467102385467102358467102354867102354687102345678102345671802345671082345671028345671023845671023485671023458671023456871023465871023645871026345871062345870163245870163425870164325870164235870164253870164258370164258730164258703164258701364258701634528701643528701645328701654328701653428701653248701653284701653287401653287041653287014653287016452387016542387016524387016523487016523847016523874016523870416523870146523870164528370165428370165248370165284370165283470165283740165283704165283701465283701645287301654287301652487301652847301652874301652873401652873041652873014652873016452870316542870316524870316528470316528740316528704316528703416528703146528703164528701365428701365248701365284701365287401365287041365287014365287013465287013645287016345827016435827016453827016543827016534827016538427016538247016538274016538270416538270146538270164583270165483270165843270168543270168453270168435270168432570168432750168432705168432701568432701658342701685342701683542701683452701683425701683427501683427051683427015683427016583247016853247016835247016832547016832457016832475016832470516832470156832470165832740168532740168352740168325740168327540168327450168327405168327401568327401658327041685327041683527041683257041683275041683270541683270451683270415683270416583270146853270146835270146832570146832750146832705146832701546832701456832701465832701645823701654823701658423701685423701684523701684253701684235701684237501684237051684237015684237016582437016852437016825437016824537016824357016824375016824370516824370156824370165823470168523470168253470168235470168234570168234750168234705168234701568234701658237401685237401682537401682357401682375401682374501682374051682374015682374016582370416852370416825370416823570416823750416823705416823704516823704156823704165823701468523701468253701468235701468237501468237051468237015468237014568237014658237016458273016548273016584273016854273016845273016842573016842753016842735016842730516842730156842730165824730168524730168254730168245730168247530168247350168247305168247301568247301658274301685274301682574301682754301682745301682743501682743051682743015682743016582734016852734016825734016827534016827354016827345016827340516827340156827340165827304168527304168257304168275304168273504168273054168273045168273041568273041658273014685273014682573014682753014682735014682730514682730154682730145682730146582730164582703165482703165842703168542703168452703168425703168427503168427053168427035168427031568427031658247031685247031682547031682457031682475031682470531682470351682470315682470316582740316852740316825740316827540316827450316827405316827403516827403156827403165827043168527043168257043168275043168270543168270453168270435168270431568270431658270341685270341682570341682750341682705341682703541682703451682703415682703416582703146852703146825703146827503146827053146827035146827031546827031456827031465827031645827013654827013658427013685427013684527013684257013684275013684270513684270153684270135684270136582470136852470136825470136824570136824750136824705136824701536824701356824701365827401368527401368257401368275401368274501368274051368274015368274013568274013658270413685270413682570413682750413682705413682704513682704153682704135682704136582701436852701436825701436827501436827051436827015436827014536827014356827014365827013468527013468257013468275013468270513468270153468270135468270134568270134658270136458270163458720164358720164538720165438720165348720165384720165387420165387240165387204165387201465387201645837201654837201658437201685437201684537201684357201684375201684372501684372051684372015684372016583472016853472016835472016834572016834752016834725016834720516834720156834720165837420168537420168357420168375420168374520168374250168374205168374201568374201658372401685372401683572401683752401683725401683724501683724051683724015683724016583720416853720416835720416837520416837250416837205416837204516837204156837204165837201468537201468357201468375201468372501468372051468372015468372014568372014658372016458732016548732016584732016854732016845732016847532016847352016847325016847320516847320156847320165874320168574320168754320167854320167584320167548320167543820167543280167543208167543201867543201687453201678453201674853201674583201674538201674532801674532081674532018674532016874352016784352016748352016743852016743582016743528016743520816743520186743520168743250167843250167483250167438250167432850167432580167432508167432501867432501687432051678432051674832051674382051674328051674320851674320581674320518674320516874320156784320156748320156743820156743280156743208156743201856743201586743201568743201658734201685734201687534201678534201675834201675384201675348201675342801675342081675342018675342016873542016783542016738542016735842016735482016735428016735420816735420186735420168734520167834520167384520167348520167345820167345280167345208167345201867345201687342501678342501673842501673482501673428501673425801673425081673425018673425016873420516783420516738420516734820516734280516734208516734205816734205186734205168734201567834201567384201567348201567342801567342081567342018567342015867342015687342016587324016857324016875324016785324016758324016753824016753284016753248016753240816753240186753240168735240167835240167385240167358240167352840167352480167352408167352401867352401687325401678325401673825401673285401673258401673254801673254081673254018673254016873245016783245016738245016732845016732485016732458016732450816732450186732450168732405167832405167382405167328405167324805167324085167324058167324051867324051687324015678324015673824015673284015673248015673240815673240185673240158673240156873240165873204168573204168753204167853204167583204167538204167532804167532084167532048167532041867532041687352041678352041673852041673582041673528041673520841673520481673520418673520416873250416783250416738250416732850416732580416732508416732504816732504186732504168732054167832054167382054167328054167320854167320584167320548167320541867320541687320451678320451673820451673280451673208451673204851673204581673204518673204516873204156783204156738204156732804156732084156732048156732041856732041586732041568732041658732014685732014687532014678532014675832014675382014675328014675320814675320184675320148675320146873520146783520146738520146735820146735280146735208146735201846735201486735201468732501467832501467382501467328501467325801467325081467325018467325014867325014687320514678320514673820514673280514673208514673205814673205184673205148673205146873201546783201546738201546732801546732081546732018546732015846732015486732015468732014567832014567382014567328014567320814567320184567320148567320145867320145687320146587320164587230165487230165847230168547230168457230168475230168472530168472350168472305168472301568472301658742301685742301687542301678542301675842301675482301675428301675423801675423081675423018675423016874523016784523016748523016745823016745283016745238016745230816745230186745230168742530167842530167482530167428530167425830167425380167425308167425301867425301687423501678423501674823501674283501674238501674235801674235081674235018674235016874230516784230516748230516742830516742380516742308516742305816742305186742305168742301567842301567482301567428301567423801567423081567423018567423015867423015687423016587243016857243016875243016785243016758243016752843016752483016752438016752430816752430186752430168725430167825430167285430167258430167254830167254380167254308167254301867254301687245301678245301672845301672485301672458301672453801672453081672453018672453016872435016782435016728435016724835016724385016724358016724350816724350186724350168724305167824305167284305167248305167243805167243085167243058167243051867243051687243015678243015672843015672483015672438015672430815672430185672430158672430156872430165872340168572340168752340167852340167582340167528340167523840167523480167523408167523401867523401687253401678253401672853401672583401672538401672534801672534081672534018672534016872354016782354016728354016723854016723584016723548016723540816723540186723540168723450167823450167283450167238450167234850167234580167234508167234501867234501687234051678234051672834051672384051672348051672340851672340581672340518672340516872340156782340156728340156723840156723480156723408156723401856723401586723401568723401658723041685723041687523041678523041675823041675283041675238041675230841675230481675230418675230416872530416782530416728530416725830416725380416725308416725304816725304186725304168723504167823504167283504167238504167235804167235084167235048167235041867235041687230541678230541672830541672380541672308541672305841672305481672305418672305416872304516782304516728304516723804516723084516723048516723045816723045186723045168723041567823041567283041567238041567230841567230481567230418567230415867230415687230416587230146857230146875230146785230146758230146752830146752380146752308146752301846752301486752301468725301467825301467285301467258301467253801467253081467253018467253014867253014687235014678235014672835014672385014672358014672350814672350184672350148672350146872305146782305146728305146723805146723085146723058146723051846723051486723051468723015467823015467283015467238015467230815467230185467230158467230154867230154687230145678230145672830145672380145672308145672301845672301485672301458672301456872301465872301645872031654872031658472031685472031684572031684752031684725031684720531684720351684720315684720316587420316857420316875420316785420316758420316754820316754280316754208316754203816754203186754203168745203167845203167485203167458203167452803167452083167452038167452031867452031687425031678425031674825031674285031674258031674250831674250381674250318674250316874205316784205316748205316742805316742085316742058316742053816742053186742053168742035167842035167482035167428035167420835167420385167420358167420351867420351687420315678420315674820315674280315674208315674203815674203185674203158674203156874203165872403168572403168752403167852403167582403167528403167524803167524083167524038167524031867524031687254031678254031672854031672584031672548031672540831672540381672540318672540316872450316782450316728450316724850316724580316724508316724503816724503186724503168724053167824053167284053167248053167240853167240583167240538167240531867240531687240351678240351672840351672480351672408351672403851672403581672403518672403516872403156782403156728403156724803156724083156724038156724031856724031586724031568724031658720431685720431687520431678520431675820431675280431675208431675204831675204381675204318675204316872504316782504316728504316725804316725084316725048316725043816725043186725043168720543167820543167280543167208543167205843167205483167205438167205431867205431687204531678204531672804531672084531672048531672045831672045381672045318672045316872043516782043516728043516720843516720483516720438516720435816720435186720435168720431567820431567280431567208431567204831567204381567204318567204315867204315687204316587203416857203416875203416785203416758203416752803416752083416752038416752034816752034186752034168725034167825034167285034167258034167250834167250384167250348167250341867250341687205341678205341672805341672085341672058341672053841672053481672053418672053416872035416782035416728035416720835416720385416720358416720354816720354186720354168720345167820345167280345167208345167203845167203485167203458167203451867203451687203415678203415672803415672083415672038415672034815672034185672034158672034156872034165872031468572031468752031467852031467582031467528031467520831467520381467520318467520314867520314687250314678250314672850314672580314672508314672503814672503184672503148672503146872053146782053146728053146720853146720583146720538146720531846720531486720531468720351467820351467280351467208351467203851467203581467203518467203514867203514687203154678203154672803154672083154672038154672031854672031584672031548672031546872031456782031456728031456720831456720381456720318456720314856720314586720314568720314658720316458720136548720136584720136854720136845720136847520136847250136847205136847201536847201356847201365874201368574201368754201367854201367584201367548201367542801367542081367542018367542013867542013687452013678452013674852013674582013674528013674520813674520183674520138674520136874250136784250136748250136742850136742580136742508136742501836742501386742501368742051367842051367482051367428051367420851367420581367420518367420513867420513687420153678420153674820153674280153674208153674201853674201583674201538674201536874201356784201356748201356742801356742081356742018356742013856742013586742013568742013658724013685724013687524013678524013675824013675284013675248013675240813675240183675240138675240136872540136782540136728540136725840136725480136725408136725401836725401386725401368724501367824501367284501367248501367245801367245081367245018367245013867245013687240513678240513672840513672480513672408513672405813672405183672405138672405136872401536782401536728401536724801536724081536724018536724015836724015386724015368724013567824013567284013567248013567240813567240183567240138567240135867240135687240136587204136857204136875204136785204136758204136752804136752084136752048136752041836752041386752041368725041367825041367285041367258041367250841367250481367250418367250413867250413687205413678205413672805413672085413672058413672054813672054183672054138672054136872045136782045136728045136720845136720485136720458136720451836720451386720451368720415367820415367280415367208415367204815367204185367204158367204153867204153687204135678204135672804135672084135672048135672041835672041385672041358672041356872041365872014368572014368752014367852014367582014367528014367520814367520184367520148367520143867520143687250143678250143672850143672580143672508143672501843672501483672501438672501436872051436782051436728051436720851436720581436720518436720514836720514386720514368720154367820154367280154367208154367201854367201584367201548367201543867201543687201453678201453672801453672081453672018453672014853672014583672014538672014536872014356782014356728014356720814356720184356720148356720143856720143586720143568720143658720134685720134687520134678520134675820134675280134675208134675201834675201384675201348675201346872501346782501346728501346725801346725081346725018346725013846725013486725013468720513467820513467280513467208513467205813467205183467205138467205134867205134687201534678201534672801534672081534672018534672015834672015384672015348672015346872013546782013546728013546720813546720183546720138546720135846720135486720135468720134567820134567280134567208134567201834567201384567201348567201345867201345687201346587201364587201634587021643587021645387021654387021653487021653847021653874021653870421653870241653870214653870216458370216548370216584370216854370216845370216843570216843750216843705216843702516843702156843702165834702168534702168354702168345702168347502168347052168347025168347021568347021658374021685374021683574021683754021683745021683740521683740251683740215683740216583704216853704216835704216837504216837054216837045216837042516837042156837042165837024168537024168357024168375024168370524168370254168370245168370241568370241658370214685370214683570214683750214683705214683702514683702154683702145683702146583702164587302165487302165847302168547302168457302168475302168473502168473052168473025168473021568473021658743021685743021687543021678543021675843021675483021675438021675430821675430281675430218675430216874530216784530216748530216745830216745380216745308216745302816745302186745302168743502167843502167483502167438502167435802167435082167435028167435021867435021687430521678430521674830521674380521674308521674305821674305281674305218674305216874302516784302516748302516743802516743082516743028516743025816743025186743025168743021567843021567483021567438021567430821567430281567430218567430215867430215687430216587340216857340216875340216785340216758340216753840216753480216753408216753402816753402186753402168735402167835402167385402167358402167354802167354082167354028167354021867354021687345021678345021673845021673485021673458021673450821673450281673450218673450216873405216783405216738405216734805216734085216734058216734052816734052186734052168734025167834025167384025167348025167340825167340285167340258167340251867340251687340215678340215673840215673480215673408215673402815673402185673402158673402156873402165873042168573042168753042167853042167583042167538042167530842167530482167530428167530421867530421687350421678350421673850421673580421673508421673504821673504281673504218673504216873054216783054216738054216730854216730584216730548216730542816730542186730542168730452167830452167380452167308452167304852167304582167304528167304521867304521687304251678304251673804251673084251673048251673042851673042581673042518673042516873042156783042156738042156730842156730482156730428156730421856730421586730421568730421658730241685730241687530241678530241675830241675380241675308241675302841675302481675302418675302416873502416783502416738502416735802416735082416735028416735024816735024186735024168730524167830524167380524167308524167305824167305284167305248167305241867305241687302541678302541673802541673082541673028541673025841673025481673025418673025416873024516783024516738024516730824516730284516730248516730245816730245186730245168730241567830241567380241567308241567302841567302481567302418567302415867302415687302416587302146857302146875302146785302146758302146753802146753082146753028146753021846753021486753021468735021467835021467385021467358021467350821467350281467350218467350214867350214687305214678305214673805214673085214673058214673052814673052184673052148673052146873025146783025146738025146730825146730285146730258146730251846730251486730251468730215467830215467380215467308215467302815467302185467302158467302154867302154687302145678302145673802145673082145673028145673021845673021485673021458673021456873021465873021645870321654870321658470321685470321684570321684750321684705321684703521684703251684703215684703216587403216857403216875403216785403216758403216754803216754083216754038216754032816754032186754032168745032167845032167485032167458032167450832167450382167450328167450321867450321687405321678405321674805321674085321674058321674053821674053281674053218674053216874035216784035216748035216740835216740385216740358216740352816740352186740352168740325167840325167480325167408325167403825167403285167403258167403251867403251687403215678403215674803215674083215674038215674032815674032185674032158674032156874032165870432168570432168750432167850432167580432167508432167504832167504382167504328167504321867504321687054321678054321670854321607854321608754321608574321608547321608543721608543271608543217608543216705843216075843216057843216058743216058473216058437216058432716058432176058432167054832160754832160574832160547832160548732160548372160548327160548321760548321670543821607543821605743821605473821605437821605438721605438271605438217605438216705432816075432816057432816054732816054372816054327816054328716054328176054328167054321860754321860574321860547321860543721860543271860543217860543218760543218670543216870453216780453216708453216078453216087453216084753216084573216084537216084532716084532176084532167048532160748532160478532160487532160485732160485372160485327160485321760485321670458321607458321604758321604578321604587321604583721604583271604583217604583216704538216074538216047538216045738216045378216045387216045382716045382176045382167045328160745328160475328160457328160453728160453278160453287160453281760453281670453218607453218604753218604573218604537218604532718604532178604532187604532186704532168704352167804352167084352160784352160874352160847352160843752160843572160843527160843521760843521670483521607483521604783521604873521604837521604835721604835271604835217604835216704385216074385216047385216043785216043875216043857216043852716043852176043852167043582160743582160473582160437582160435782160435872160435827160435821760435821670435281607435281604735281604375281604357281604352781604352871604352817604352816704352186074352186047352186043752186043572186043527186043521786043521876043521867043521687043251678043251670843251607843251608743251608473251608437251608432751608432571608432517608432516704832516074832516047832516048732516048372516048327516048325716048325176048325167043825160743825160473825160437825160438725160438275160438257160438251760438251670432851607432851604732851604372851604327851604328751604328571604328517604328516704325816074325816047325816043725816043275816043257816043258716043258176043258167043251860743251860473251860437251860432751860432571860432517860432518760432518670432516870432156780432156708432156078432156087432156084732156084372156084327156084321756084321576084321567048321560748321560478321560487321560483721560483271560483217560483215760483215670438215607438215604738215604378215604387215604382715604382175604382157604382156704328156074328156047328156043728156043278156043287156043281756043281576043281567043218560743218560473218560437218560432718560432178560432187560432185760432185670432158607432158604732158604372158604327158604321758604321578604321587604321586704321568704321658703421685703421687503421678503421675803421675083421675038421675034821675034281675034218675034216870534216780534216708534216078534216087534216085734216085374216085347216085342716085342176085342167058342160758342160578342160587342160583742160583472160583427160583421760583421670538421607538421605738421605378421605387421605384721605384271605384217605384216705348216075348216057348216053748216053478216053487216053482716053482176053482167053428160753428160573428160537428160534728160534278160534287160534281760534281670534218607534218605734218605374218605347218605342718605342178605342187605342186705342168703542167803542167083542160783542160873542160837542160835742160835472160835427160835421760835421670385421607385421603785421603875421603857421603854721603854271603854217603854216703584216073584216037584216035784216035874216035847216035842716035842176035842167035482160735482160375482160357482160354782160354872160354827160354821760354821670354281607354281603754281603574281603547281603542781603542871603542817603542816703542186073542186037542186035742186035472186035427186035421786035421876035421867035421687034521678034521670834521607834521608734521608374521608347521608345721608345271608345217608345216703845216073845216037845216038745216038475216038457216038452716038452176038452167034852160734852160374852160347852160348752160348572160348527160348521760348521670345821607345821603745821603475821603457821603458721603458271603458217603458216703452816073452816037452816034752816034572816034527816034528716034528176034528167034521860734521860374521860347521860345721860345271860345217860345218760345218670345216870342516780342516708342516078342516087342516083742516083472516083427516083425716083425176083425167038425160738425160378425160387425160384725160384275160384257160384251760384251670348251607348251603748251603478251603487251603482751603482571603482517603482516703428516073428516037428516034728516034278516034287516034285716034285176034285167034258160734258160374258160347258160342758160342578160342587160342581760342581670342518607342518603742518603472518603427518603425718603425178603425187603425186703425168703421567803421567083421560783421560873421560837421560834721560834271560834217560834215760834215670384215607384215603784215603874215603847215603842715603842175603842157603842156703482156073482156037482156034782156034872156034827156034821756034821576034821567034281560734281560374281560347281560342781560342871560342817560342815760342815670342185607342185603742185603472185603427185603421785603421875603421857603421856703421586073421586037421586034721586034271586034217586034215786034215876034215867034215687034216587032416857032416875032416785032416758032416750832416750382416750328416750324816750324186750324168705324167805324167085324160785324160875324160857324160853724160853274160853247160853241760853241670583241607583241605783241605873241605837241605832741605832471605832417605832416705382416075382416057382416053782416053872416053827416053824716053824176053824167053284160753284160573284160537284160532784160532874160532847160532841760532841670532481607532481605732481605372481605327481605324781605324871605324817605324816705324186075324186057324186053724186053274186053247186053241786053241876053241867053241687035241678035241670835241607835241608735241608375241608357241608352741608352471608352417608352416703852416073852416037852416038752416038572416038527416038524716038524176038524167035824160735824160375824160357824160358724160358274160358247160358241760358241670352841607352841603752841603572841603527841603528741603528471603528417603528416703524816073524816037524816035724816035274816035247816035248716035248176035248167035241860735241860375241860357241860352741860352471860352417860352418760352418670352416870325416780325416708325416078325416087325416083725416083275416083257416083254716083254176083254167038254160738254160378254160387254160382754160382574160382547160382541760382541670328541607328541603728541603278541603287541603285741603285471603285417603285416703258416073258416037258416032758416032578416032587416032584716032584176032584167032548160732548160372548160327548160325748160325478160325487160325481760325481670325418607325418603725418603275418603257418603254718603254178603254187603254186703254168703245167803245167083245160783245160873245160837245160832745160832475160832457160832451760832451670382451607382451603782451603872451603827451603824751603824571603824517603824516703284516073284516037284516032784516032874516032847516032845716032845176032845167032485160732485160372485160327485160324785160324875160324857160324851760324851670324581607324581603724581603274581603247581603245781603245871603245817603245816703245186073245186037245186032745186032475186032457186032451786032451876032451867032451687032415678032415670832415607832415608732415608372415608327415608324715608324175608324157608324156703824156073824156037824156038724156038274156038247156038241756038241576038241567032841560732841560372841560327841560328741560328471560328417560328415760328415670324815607324815603724815603274815603247815603248715603248175603248157603248156703241856073241856037241856032741856032471856032417856032418756032418576032418567032415860732415860372415860327415860324715860324175860324157860324158760324158670324156870324165870321468570321468750321467850321467580321467508321467503821467503281467503218467503214867503214687053214678053214670853214607853214608753214608573214608537214608532714608532174608532147608532146705832146075832146057832146058732146058372146058327146058321746058321476058321467053821460753821460573821460537821460538721460538271460538217460538214760538214670532814607532814605732814605372814605327814605328714605328174605328147605328146705321846075321846057321846053721846053271846053217846053218746053218476053218467053214860753214860573214860537214860532714860532174860532147860532148760532148670532146870352146780352146708352146078352146087352146083752146083572146083527146083521746083521476083521467038521460738521460378521460387521460385721460385271460385217460385214760385214670358214607358214603758214603578214603587214603582714603582174603582147603582146703528146073528146037528146035728146035278146035287146035281746035281476035281467035218460735218460375218460357218460352718460352178460352187460352184760352184670352148607352148603752148603572148603527148603521748603521478603521487603521486703521468703251467803251467083251460783251460873251460837251460832751460832571460832517460832514760832514670382514607382514603782514603872514603827514603825714603825174603825147603825146703285146073285146037285146032785146032875146032857146032851746032851476032851467032581460732581460372581460327581460325781460325871460325817460325814760325814670325184607325184603725184603275184603257184603251784603251874603251847603251846703251486073251486037251486032751486032571486032517486032514786032514876032514867032514687032154678032154670832154607832154608732154608372154608327154608321754608321574608321547608321546703821546073821546037821546038721546038271546038217546038215746038215476038215467032815460732815460372815460327815460328715460328175460328157460328154760328154670321854607321854603721854603271854603217854603218754603218574603218547603218546703215846073215846037215846032715846032175846032157846032158746032158476032158467032154860732154860372154860327154860321754860321574860321547860321548760321548670321546870321456780321456708321456078321456087321456083721456083271456083217456083214756083214576083214567038214560738214560378214560387214560382714560382174560382147560382145760382145670328145607328145603728145603278145603287145603281745603281475603281457603281456703218456073218456037218456032718456032178456032187456032184756032184576032184567032148560732148560372148560327148560321748560321478560321487560321485760321485670321458607321458603721458603271458603217458603214758603214578603214587603214586703214568703214658703216458702316548702316584702316854702316845702316847502316847052316847025316847023516847023156847023165874023168574023168754023167854023167584023167548023167540823167540283167540238167540231867540231687450231678450231674850231674580231674508231674502831674502381674502318674502316874052316784052316748052316740852316740582316740528316740523816740523186740523168740253167840253167480253167408253167402853167402583167402538167402531867402531687402351678402351674802351674082351674028351674023851674023581674023518674023516874023156784023156748023156740823156740283156740238156740231856740231586740231568740231658704231685704231687504231678504231675804231675084231675048231675042831675042381675042318675042316870542316780542316708542316078542316087542316085742316085472316085427316085423716085423176085423167058423160758423160578423160587423160584723160584273160584237160584231760584231670548231607548231605748231605478231605487231605482731605482371605482317605482316705428316075428316057428316054728316054278316054287316054283716054283176054283167054238160754238160574238160547238160542738160542378160542387160542381760542381670542318607542318605742318605472318605427318605423718605423178605423187605423186705423168704523167804523167084523160784523160874523160847523160845723160845273160845237160845231760845231670485231607485231604785231604875231604857231604852731604852371604852317604852316704582316074582316047582316045782316045872316045827316045823716045823176045823167045283160745283160475283160457283160452783160452873160452837160452831760452831670452381607452381604752381604572381604527381604523781604523871604523817604523816704523186074523186047523186045723186045273186045237186045231786045231876045231867045231687042531678042531670842531607842531608742531608472531608427531608425731608425371608425317608425316704825316074825316047825316048725316048275316048257316048253716048253176048253167042853160742853160472853160427853160428753160428573160428537160428531760428531670425831607425831604725831604275831604257831604258731604258371604258317604258316704253816074253816047253816042753816042573816042537816042538716042538176042538167042531860742531860472531860427531860425731860425371860425317860425318760425318670425316870423516780423516708423516078423516087423516084723516084273516084237516084235716084235176084235167048235160748235160478235160487235160482735160482375160482357160482351760482351670428351607428351604728351604278351604287351604283751604283571604283517604283516704238516074238516047238516042738516042378516042387516042385716042385176042385167042358160742358160472358160427358160423758160423578160423587160423581760423581670423518607423518604723518604273518604237518604235718604235178604235187604235186704235168704231567804231567084231560784231560874231560847231560842731560842371560842317560842315760842315670482315607482315604782315604872315604827315604823715604823175604823157604823156704283156074283156047283156042783156042873156042837156042831756042831576042831567042381560742381560472381560427381560423781560423871560423817560423815760423815670423185607423185604723185604273185604237185604231785604231875604231857604231856704231586074231586047231586042731586042371586042317586042315786042315876042315867042315687042316587024316857024316875024316785024316758024316750824316750284316750248316750243816750243186750243168705243167805243167085243160785243160875243160857243160852743160852473160852437160852431760852431670582431607582431605782431605872431605827431605824731605824371605824317605824316705284316075284316057284316052784316052874316052847316052843716052843176052843167052483160752483160572483160527483160524783160524873160524837160524831760524831670524381607524381605724381605274381605247381605243781605243871605243817605243816705243186075243186057243186052743186052473186052437186052431786052431876052431867052431687025431678025431670825431607825431608725431608275431608257431608254731608254371608254317608254316702854316072854316027854316028754316028574316028547316028543716028543176028543167025843160725843160275843160257843160258743160258473160258437160258431760258431670254831607254831602754831602574831602547831602548731602548371602548317602548316702543816072543816027543816025743816025473816025437816025438716025438176025438167025431860725431860275431860257431860254731860254371860254317860254318760254318670254316870245316780245316708245316078245316087245316082745316082475316082457316082453716082453176082453167028453160728453160278453160287453160284753160284573160284537160284531760284531670248531607248531602748531602478531602487531602485731602485371602485317602485316702458316072458316027458316024758316024578316024587316024583716024583176024583167024538160724538160274538160247538160245738160245378160245387160245381760245381670245318607245318602745318602475318602457318602453718602453178602453187602453186702453168702435167802435167082435160782435160872435160827435160824735160824375160824357160824351760824351670284351607284351602784351602874351602847351602843751602843571602843517602843516702483516072483516027483516024783516024873516024837516024835716024835176024835167024385160724385160274385160247385160243785160243875160243857160243851760243851670243581607243581602743581602473581602437581602435781602435871602435817602435816702435186072435186027435186024735186024375186024357186024351786024351876024351867024351687024315678024315670824315607824315608724315608274315608247315608243715608243175608243157608243156702843156072843156027843156028743156028473156028437156028431756028431576028431567024831560724831560274831560247831560248731560248371560248317560248315760248315670243815607243815602743815602473815602437815602438715602438175602438157602438156702431856072431856027431856024731856024371856024317856024318756024318576024318567024315860724315860274315860247315860243715860243175860243157860243158760243158670243156870243165870234168570234168750234167850234167580234167508234167502834167502384167502348167502341867502341687052341678052341670852341607852341608752341608572341608527341608523741608523471608523417608523416705823416075823416057823416058723416058273416058237416058234716058234176058234167052834160752834160572834160527834160528734160528374160528347160528341760528341670523841607523841605723841605273841605237841605238741605238471605238417605238416705234816075234816057234816052734816052374816052347816052348716052348176052348167052341860752341860572341860527341860523741860523471860523417860523418760523418670523416870253416780253416708253416078253416087253416082753416082573416082537416082534716082534176082534167028534160728534160278534160287534160285734160285374160285347160285341760285341670258341607258341602758341602578341602587341602583741602583471602583417602583416702538416072538416027538416025738416025378416025387416025384716025384176025384167025348160725348160275348160257348160253748160253478160253487160253481760253481670253418607253418602753418602573418602537418602534718602534178602534187602534186702534168702354167802354167082354160782354160872354160827354160823754160823574160823547160823541760823541670283541607283541602783541602873541602837541602835741602835471602835417602835416702385416072385416027385416023785416023875416023857416023854716023854176023854167023584160723584160273584160237584160235784160235874160235847160235841760235841670235481607235481602735481602375481602357481602354781602354871602354817602354816702354186072354186027354186023754186023574186023547186023541786023541876023541867023541687023451678023451670823451607823451608723451608273451608237451608234751608234571608234517608234516702834516072834516027834516028734516028374516028347516028345716028345176028345167023845160723845160273845160237845160238745160238475160238457160238451760238451670234851607234851602734851602374851602347851602348751602348571602348517602348516702345816072345816027345816023745816023475816023457816023458716023458176023458167023451860723451860273451860237451860234751860234571860234517860234518760234518670234516870234156780234156708234156078234156087234156082734156082374156082347156082341756082341576082341567028341560728341560278341560287341560283741560283471560283417560283415760283415670238415607238415602738415602378415602387415602384715602384175602384157602384156702348156072348156027348156023748156023478156023487156023481756023481576023481567023418560723418560273418560237418560234718560234178560234187560234185760234185670234158607234158602734158602374158602347158602341758602341578602341587602341586702341568702341658702314685702314687502314678502314675802314675082314675028314675023814675023184675023148675023146870523146780523146708523146078523146087523146085723146085273146085237146085231746085231476085231467058231460758231460578231460587231460582731460582371460582317460582314760582314670528314607528314605728314605278314605287314605283714605283174605283147605283146705238146075238146057238146052738146052378146052387146052381746052381476052381467052318460752318460572318460527318460523718460523178460523187460523184760523184670523148607523148605723148605273148605237148605231748605231478605231487605231486705231468702531467802531467082531460782531460872531460827531460825731460825371460825317460825314760825314670285314607285314602785314602875314602857314602853714602853174602853147602853146702583146072583146027583146025783146025873146025837146025831746025831476025831467025381460725381460275381460257381460253781460253871460253817460253814760253814670253184607253184602753184602573184602537184602531784602531874602531847602531846702531486072531486027531486025731486025371486025317486025314786025314876025314867025314687023514678023514670823514607823514608723514608273514608237514608235714608235174608235147608235146702835146072835146027835146028735146028375146028357146028351746028351476028351467023851460723851460273851460237851460238751460238571460238517460238514760238514670235814607235814602735814602375814602357814602358714602358174602358147602358146702351846072351846027351846023751846023571846023517846023518746023518476023518467023514860723514860273514860237514860235714860235174860235147860235148760235148670235146870231546780231546708231546078231546087231546082731546082371546082317546082315746082315476082315467028315460728315460278315460287315460283715460283175460283157460283154760283154670238154607238154602738154602378154602387154602381754602381574602381547602381546702318546072318546027318546023718546023178546023187546023185746023185476023185467023158460723158460273158460237158460231758460231578460231587460231584760231584670231548607231548602731548602371548602317548602315748602315478602315487602315486702315468702314567802314567082314560782314560872314560827314560823714560823174560823147560823145760823145670283145607283145602783145602873145602837145602831745602831475602831457602831456702381456072381456027381456023781456023871456023817456023814756023814576023814567023184560723184560273184560237184560231784560231874560231847560231845760231845670231485607231485602731485602371485602317485602314785602314875602314857602314856702314586072314586027314586023714586023174586023147586023145786023145876023145867023145687023146587023164587021365487021365847021368547021368457021368475021368470521368470251368470215368470213568470213658740213685740213687540213678540213675840213675480213675408213675402813675402183675402138675402136874502136784502136748502136745802136745082136745028136745021836745021386745021368740521367840521367480521367408521367405821367405281367405218367405213867405213687402513678402513674802513674082513674028513674025813674025183674025138674025136874021536784021536748021536740821536740281536740218536740215836740215386740215368740213567840213567480213567408213567402813567402183567402138567402135867402135687402136587042136857042136875042136785042136758042136750842136750482136750428136750421836750421386750421368705421367805421367085421360785421360875421360857421360854721360854271360854217360854213760854213670584213607584213605784213605874213605847213605842713605842173605842137605842136705482136075482136057482136054782136054872136054827136054821736054821376054821367054281360754281360574281360547281360542781360542871360542817360542813760542813670542183607542183605742183605472183605427183605421783605421873605421837605421836705421386075421386057421386054721386054271386054217386054213786054213876054213867054213687045213678045213670845213607845213608745213608475213608457213608452713608452173608452137608452136704852136074852136047852136048752136048572136048527136048521736048521376048521367045821360745821360475821360457821360458721360458271360458217360458213760458213670452813607452813604752813604572813604527813604528713604528173604528137604528136704521836074521836047521836045721836045271836045217836045218736045218376045218367045213860745213860475213860457213860452713860452173860452137860452138760452138670452136870425136780425136708425136078425136087425136084725136084275136084257136084251736084251376084251367048251360748251360478251360487251360482751360482571360482517360482513760482513670428513607428513604728513604278513604287513604285713604285173604285137604285136704258136074258136047258136042758136042578136042587136042581736042581376042581367042518360742518360472518360427518360425718360425178360425187360425183760425183670425138607425138604725138604275138604257138604251738604251378604251387604251386704251368704215367804215367084215360784215360874215360847215360842715360842175360842157360842153760842153670482153607482153604782153604872153604827153604821753604821573604821537604821536704281536074281536047281536042781536042871536042817536042815736042815376042815367042185360742185360472185360427185360421785360421875360421857360421853760421853670421583607421583604721583604271583604217583604215783604215873604215837604215836704215386074215386047215386042715386042175386042157386042153786042153876042153867042153687042135678042135670842135607842135608742135608472135608427135608421735608421375608421357608421356704821356074821356047821356048721356048271356048217356048213756048213576048213567042813560742813560472813560427813560428713560428173560428137560428135760428135670421835607421835604721835604271835604217835604218735604218375604218357604218356704213856074213856047213856042713856042173856042137856042138756042138576042138567042135860742135860472135860427135860421735860421375860421357860421358760421358670421356870421365870241368570241368750241367850241367580241367508241367502841367502481367502418367502413867502413687052413678052413670852413607852413608752413608572413608527413608524713608524173608524137608524136705824136075824136057824136058724136058274136058247136058241736058241376058241367052841360752841360572841360527841360528741360528471360528417360528413760528413670524813607524813605724813605274813605247813605248713605248173605248137605248136705241836075241836057241836052741836052471836052417836052418736052418376052418367052413860752413860572413860527413860524713860524173860524137860524138760524138670524136870254136780254136708254136078254136087254136082754136082574136082547136082541736082541376082541367028541360728541360278541360287541360285741360285471360285417360285413760285413670258413607258413602758413602578413602587413602584713602584173602584137602584136702548136072548136027548136025748136025478136025487136025481736025481376025481367025418360725418360275418360257418360254718360254178360254187360254183760254183670254138607254138602754138602574138602547138602541738602541378602541387602541386702541368702451367802451367082451360782451360872451360827451360824751360824571360824517360824513760824513670284513607284513602784513602874513602847513602845713602845173602845137602845136702485136072485136027485136024785136024875136024857136024851736024851376024851367024581360724581360274581360247581360245781360245871360245817360245813760245813670245183607245183602745183602475183602457183602451783602451873602451837602451836702451386072451386027451386024751386024571386024517386024513786024513876024513867024513687024153678024153670824153607824153608724153608274153608247153608241753608241573608241537608241536702841536072841536027841536028741536028471536028417536028415736028415376028415367024815360724815360274815360247815360248715360248175360248157360248153760248153670241853607241853602741853602471853602417853602418753602418573602418537602418536702415836072415836027415836024715836024175836024157836024158736024158376024158367024153860724153860274153860247153860241753860241573860241537860241538760241538670241536870241356780241356708241356078241356087241356082741356082471356082417356082413756082413576082413567028413560728413560278413560287413560284713560284173560284137560284135760284135670248135607248135602748135602478135602487135602481735602481375602481357602481356702418356072418356027418356024718356024178356024187356024183756024183576024183567024138560724138560274138560247138560241738560241378560241387560241385760241385670241358607241358602741358602471358602417358602413758602413578602413587602413586702413568702413658702143685702143687502143678502143675802143675082143675028143675021843675021483675021438675021436870521436780521436708521436078521436087521436085721436085271436085217436085214736085214376085214367058214360758214360578214360587214360582714360582174360582147360582143760582143670528143607528143605728143605278143605287143605281743605281473605281437605281436705218436075218436057218436052718436052178436052187436052184736052184376052184367052148360752148360572148360527148360521748360521478360521487360521483760521483670521438607521438605721438605271438605217438605214738605214378605214387605214386705214368702514367802514367082514360782514360872514360827514360825714360825174360825147360825143760825143670285143607285143602785143602875143602857143602851743602851473602851437602851436702581436072581436027581436025781436025871436025817436025814736025814376025814367025184360725184360275184360257184360251784360251874360251847360251843760251843670251483607251483602751483602571483602517483602514783602514873602514837602514836702514386072514386027514386025714386025174386025147386025143786025143876025143867025143687021543678021543670821543607821543608721543608271543608217543608215743608215473608215437608215436702815436072815436027815436028715436028175436028157436028154736028154376028154367021854360721854360271854360217854360218754360218574360218547360218543760218543670215843607215843602715843602175843602157843602158743602158473602158437602158436702154836072154836027154836021754836021574836021547836021548736021548376021548367021543860721543860271543860217543860215743860215473860215437860215438760215438670215436870214536780214536708214536078214536087214536082714536082174536082147536082145736082145376082145367028145360728145360278145360287145360281745360281475360281457360281453760281453670218453607218453602718453602178453602187453602184753602184573602184537602184536702148536072148536027148536021748536021478536021487536021485736021485376021485367021458360721458360271458360217458360214758360214578360214587360214583760214583670214538607214538602714538602174538602147538602145738602145378602145387602145386702145368702143567802143567082143560782143560872143560827143560821743560821473560821437560821435760821435670281435607281435602781435602871435602817435602814735602814375602814357602814356702184356072184356027184356021784356021874356021847356021843756021843576021843567021483560721483560271483560217483560214783560214873560214837560214835760214835670214385607214385602714385602174385602147385602143785602143875602143857602143856702143586072143586027143586021743586021473586021437586021435786021435876021435867021435687021436587021346857021346875021346785021346758021346750821346750281346750218346750213846750213486750213468705213467805213467085213460785213460875213460857213460852713460852173460852137460852134760852134670582134607582134605782134605872134605827134605821734605821374605821347605821346705281346075281346057281346052781346052871346052817346052813746052813476052813467052183460752183460572183460527183460521783460521873460521837460521834760521834670521384607521384605721384605271384605217384605213784605213874605213847605213846705213486075213486057213486052713486052173486052137486052134786052134876052134867052134687025134678025134670825134607825134608725134608275134608257134608251734608251374608251347608251346702851346072851346027851346028751346028571346028517346028513746028513476028513467025813460725813460275813460257813460258713460258173460258137460258134760258134670251834607251834602751834602571834602517834602518734602518374602518347602518346702513846072513846027513846025713846025173846025137846025138746025138476025138467025134860725134860275134860257134860251734860251374860251347860251348760251348670251346870215346780215346708215346078215346087215346082715346082175346082157346082153746082153476082153467028153460728153460278153460287153460281753460281573460281537460281534760281534670218534607218534602718534602178534602187534602185734602185374602185347602185346702158346072158346027158346021758346021578346021587346021583746021583476021583467021538460721538460271538460217538460215738460215378460215387460215384760215384670215348607215348602715348602175348602157348602153748602153478602153487602153486702153468702135467802135467082135460782135460872135460827135460821735460821375460821357460821354760821354670281354607281354602781354602871354602817354602813754602813574602813547602813546702183546072183546027183546021783546021873546021837546021835746021835476021835467021385460721385460271385460217385460213785460213875460213857460213854760213854670213584607213584602713584602173584602137584602135784602135874602135847602135846702135486072135486027135486021735486021375486021357486021354786021354876021354867021354687021345678021345670821345607821345608721345608271345608217345608213745608213475608213457608213456702813456072813456027813456028713456028173456028137456028134756028134576028134567021834560721834560271834560217834560218734560218374560218347560218345760218345670213845607213845602713845602173845602137845602138745602138475602138457602138456702134856072134856027134856021734856021374856021347856021348756021348576021348567021345860721345860271345860217345860213745860213475860213457860213458760213458670213456870213465870213645870216345870126435870126453870126543870126534870126538470126538740126538704126538701426538701246538701264583701265483701265843701268543701268453701268435701268437501268437051268437015268437012568437012658347012685347012683547012683457012683475012683470512683470152683470125683470126583740126853740126835740126837540126837450126837405126837401526837401256837401265837041268537041268357041268375041268370541268370451268370415268370412568370412658370142685370142683570142683750142683705142683701542683701452683701425683701426583701246853701246835701246837501246837051246837015246837012546837012456837012465837012645873012654873012658473012685473012684573012684753012684735012684730512684730152684730125684730126587430126857430126875430126785430126758430126754830126754380126754308126754301826754301286754301268745301267845301267485301267458301267453801267453081267453018267453012867453012687435012678435012674835012674385012674358012674350812674350182674350128674350126874305126784305126748305126743805126743085126743058126743051826743051286743051268743015267843015267483015267438015267430815267430185267430158267430152867430152687430125678430125674830125674380125674308125674301825674301285674301258674301256874301265873401268573401268753401267853401267583401267538401267534801267534081267534018267534012867534012687354012678354012673854012673584012673548012673540812673540182673540128673540126873450126783450126738450126734850126734580126734508126734501826734501286734501268734051267834051267384051267348051267340851267340581267340518267340512867340512687340152678340152673840152673480152673408152673401852673401582673401528673401526873401256783401256738401256734801256734081256734018256734012856734012586734012568734012658730412685730412687530412678530412675830412675380412675308412675304812675304182675304128675304126873504126783504126738504126735804126735084126735048126735041826735041286735041268730541267830541267380541267308541267305841267305481267305418267305412867305412687304512678304512673804512673084512673048512673045812673045182673045128673045126873041526783041526738041526730841526730481526730418526730415826730415286730415268730412567830412567380412567308412567304812567304182567304128567304125867304125687304126587301426857301426875301426785301426758301426753801426753081426753018426753014826753014286753014268735014267835014267385014267358014267350814267350184267350148267350142867350142687305142678305142673805142673085142673058142673051842673051482673051428673051426873015426783015426738015426730815426730185426730158426730154826730154286730154268730145267830145267380145267308145267301845267301485267301458267301452867301452687301425678301425673801425673081425673018425673014825673014285673014258673014256873014265873012468573012468753012467853012467583012467538012467530812467530182467530128467530124867530124687350124678350124673850124673580124673508124673501824673501284673501248673501246873051246783051246738051246730851246730581246730518246730512846730512486730512468730152467830152467380152467308152467301852467301582467301528467301524867301524687301254678301254673801254673081254673018254673012854673012584673012548673012546873012456783012456738012456730812456730182456730128456730124856730124586730124568730124658730126458703126548703126584703126854703126845703126847503126847053126847035126847031526847031256847031265874031268574031268754031267854031267584031267548031267540831267540381267540318267540312867540312687450312678450312674850312674580312674508312674503812674503182674503128674503126874053126784053126748053126740853126740583126740538126740531826740531286740531268740351267840351267480351267408351267403851267403581267403518267403512867403512687403152678403152674803152674083152674038152674031852674031582674031528674031526874031256784031256748031256740831256740381256740318256740312856740312586740312568740312658704312685704312687504312678504312675804312675084312675048312675043812675043182675043128675043126870543126780543126708543126078543126087543126085743126085473126085437126085431726085431276085431267058431260758431260578431260587431260584731260584371260584317260584312760584312670548312607548312605748312605478312605487312605483712605483172605483127605483126705438126075438126057438126054738126054378126054387126054381726054381276054381267054318260754318260574318260547318260543718260543178260543187260543182760543182670543128607543128605743128605473128605437128605431728605431278605431287605431286705431268704531267804531267084531260784531260874531260847531260845731260845371260845317260845312760845312670485312607485312604785312604875312604857312604853712604853172604853127604853126704583126074583126047583126045783126045873126045837126045831726045831276045831267045381260745381260475381260457381260453781260453871260453817260453812760453812670453182607453182604753182604573182604537182604531782604531872604531827604531826704531286074531286047531286045731286045371286045317286045312786045312876045312867045312687043512678043512670843512607843512608743512608473512608437512608435712608435172608435127608435126704835126074835126047835126048735126048375126048357126048351726048351276048351267043851260743851260473851260437851260438751260438571260438517260438512760438512670435812607435812604735812604375812604357812604358712604358172604358127604358126704351826074351826047351826043751826043571826043517826043518726043518276043518267043512860743512860473512860437512860435712860435172860435127860435128760435128670435126870431526780431526708431526078431526087431526084731526084371526084317526084315726084315276084315267048315260748315260478315260487315260483715260483175260483157260483152760483152670438152607438152604738152604378152604387152604381752604381572604381527604381526704318526074318526047318526043718526043178526043187526043185726043185276043185267043158260743158260473158260437158260431758260431578260431587260431582760431582670431528607431528604731528604371528604317528604315728604315278604315287604315286704315268704312567804312567084312560784312560874312560847312560843712560843172560843127560843125760843125670483125607483125604783125604873125604837125604831725604831275604831257604831256704381256074381256047381256043781256043871256043817256043812756043812576043812567043182560743182560473182560437182560431782560431872560431827560431825760431825670431285607431285604731285604371285604317285604312785604312875604312857604312856704312586074312586047312586043712586043172586043127586043125786043125876043125867043125687043126587034126857034126875034126785034126758034126750834126750384126750348126750341826750341286750341268705341267805341267085341260785341260875341260857341260853741260853471260853417260853412760853412670583412607583412605783412605873412605837412605834712605834172605834127605834126705384126075384126057384126053784126053874126053847126053841726053841276053841267053481260753481260573481260537481260534781260534871260534817260534812760534812670534182607534182605734182605374182605347182605341782605341872605341827605341826705341286075341286057341286053741286053471286053417286053412786053412876053412867053412687035412678035412670835412607835412608735412608375412608357412608354712608354172608354127608354126703854126073854126037854126038754126038574126038547126038541726038541276038541267035841260735841260375841260357841260358741260358471260358417260358412760358412670354812607354812603754812603574812603547812603548712603548172603548127603548126703541826073541826037541826035741826035471826035417826035418726035418276035418267035412860735412860375412860357412860354712860354172860354127860354128760354128670354126870345126780345126708345126078345126087345126083745126083475126083457126083451726083451276083451267038451260738451260378451260387451260384751260384571260384517260384512760384512670348512607348512603748512603478512603487512603485712603485172603485127603485126703458126073458126037458126034758126034578126034587126034581726034581276034581267034518260734518260374518260347518260345718260345178260345187260345182760345182670345128607345128603745128603475128603457128603451728603451278603451287603451286703451268703415267803415267083415260783415260873415260837415260834715260834175260834157260834152760834152670384152607384152603784152603874152603847152603841752603841572603841527603841526703481526073481526037481526034781526034871526034817526034815726034815276034815267034185260734185260374185260347185260341785260341875260341857260341852760341852670341582607341582603741582603471582603417582603415782603415872603415827603415826703415286073415286037415286034715286034175286034157286034152786034152876034152867034152687034125678034125670834125607834125608734125608374125608347125608341725608341275608341257608341256703841256073841256037841256038741256038471256038417256038412756038412576038412567034812560734812560374812560347812560348712560348172560348127560348125760348125670341825607341825603741825603471825603417825603418725603418275603418257603418256703412856073412856037412856034712856034172856034127856034128756034128576034128567034125860734125860374125860347125860341725860341275860341257860341258760341258670341256870341265870314268570314268750314267850314267580314267508314267503814267503184267503148267503142867503142687053142678053142670853142607853142608753142608573142608537142608531742608531472608531427608531426705831426075831426057831426058731426058371426058317426058314726058314276058314267053814260753814260573814260537814260538714260538174260538147260538142760538142670531842607531842605731842605371842605317842605318742605318472605318427605318426705314826075314826057314826053714826053174826053147826053148726053148276053148267053142860753142860573142860537142860531742860531472860531427860531428760531428670531426870351426780351426708351426078351426087351426083751426083571426083517426083514726083514276083514267038514260738514260378514260387514260385714260385174260385147260385142760385142670358142607358142603758142603578142603587142603581742603581472603581427603581426703518426073518426037518426035718426035178426035187426035184726035184276035184267035148260735148260375148260357148260351748260351478260351487260351482760351482670351428607351428603751428603571428603517428603514728603514278603514287603514286703514268703154267803154267083154260783154260873154260837154260831754260831574260831547260831542760831542670381542607381542603781542603871542603817542603815742603815472603815427603815426703185426073185426037185426031785426031875426031857426031854726031854276031854267031584260731584260371584260317584260315784260315874260315847260315842760315842670315482607315482603715482603175482603157482603154782603154872603154827603154826703154286073154286037154286031754286031574286031547286031542786031542876031542867031542687031452678031452670831452607831452608731452608371452608317452608314752608314572608314527608314526703814526073814526037814526038714526038174526038147526038145726038145276038145267031845260731845260371845260317845260318745260318475260318457260318452760318452670314852607314852603714852603174852603147852603148752603148572603148527603148526703145826073145826037145826031745826031475826031457826031458726031458276031458267031452860731452860371452860317452860314752860314572860314527860314528760314528670314526870314256780314256708314256078314256087314256083714256083174256083147256083142756083142576083142567038142560738142560378142560387142560381742560381472560381427560381425760381425670318425607318425603718425603178425603187425603184725603184275603184257603184256703148256073148256037148256031748256031478256031487256031482756031482576031482567031428560731428560371428560317428560314728560314278560314287560314285760314285670314258607314258603714258603174258603147258603142758603142578603142587603142586703142568703142658703124685703124687503124678503124675803124675083124675038124675031824675031284675031248675031246870531246780531246708531246078531246087531246085731246085371246085317246085312746085312476085312467058312460758312460578312460587312460583712460583172460583127460583124760583124670538124607538124605738124605378124605387124605381724605381274605381247605381246705318246075318246057318246053718246053178246053187246053182746053182476053182467053128460753128460573128460537128460531728460531278460531287460531284760531284670531248607531248605731248605371248605317248605312748605312478605312487605312486705312468703512467803512467083512460783512460873512460837512460835712460835172460835127460835124760835124670385124607385124603785124603875124603857124603851724603851274603851247603851246703581246073581246037581246035781246035871246035817246035812746035812476035812467035182460735182460375182460357182460351782460351872460351827460351824760351824670351284607351284603751284603571284603517284603512784603512874603512847603512846703512486073512486037512486035712486035172486035127486035124786035124876035124867035124687031524678031524670831524607831524608731524608371524608317524608315724608315274608315247608315246703815246073815246037815246038715246038175246038157246038152746038152476038152467031852460731852460371852460317852460318752460318572460318527460318524760318524670315824607315824603715824603175824603157824603158724603158274603158247603158246703152846073152846037152846031752846031572846031527846031528746031528476031528467031524860731524860371524860317524860315724860315274860315247860315248760315248670315246870312546780312546708312546078312546087312546083712546083172546083127546083125746083125476083125467038125460738125460378125460387125460381725460381275460381257460381254760381254670318254607318254603718254603178254603187254603182754603182574603182547603182546703128546073128546037128546031728546031278546031287546031285746031285476031285467031258460731258460371258460317258460312758460312578460312587460312584760312584670312548607312548603712548603172548603127548603125748603125478603125487603125486703125468703124567803124567083124560783124560873124560837124560831724560831274560831247560831245760831245670381245607381245603781245603871245603817245603812745603812475603812457603812456703182456073182456037182456031782456031872456031827456031824756031824576031824567031284560731284560371284560317284560312784560312874560312847560312845760312845670312485607312485603712485603172485603127485603124785603124875603124857603124856703124586073124586037124586031724586031274586031247586031245786031245876031245867031245687031246587031264587013265487013265847013268547013268457013268475013268470513268470153268470135268470132568470132658740132685740132687540132678540132675840132675480132675408132675401832675401382675401328675401326874501326784501326748501326745801326745081326745018326745013826745013286745013268740513267840513267480513267408513267405813267405183267405138267405132867405132687401532678401532674801532674081532674018532674015832674015382674015328674015326874013526784013526748013526740813526740183526740138526740135826740135286740135268740132567840132567480132567408132567401832567401382567401328567401325867401325687401326587041326857041326875041326785041326758041326750841326750481326750418326750413826750413286750413268705413267805413267085413260785413260875413260857413260854713260854173260854137260854132760854132670584132607584132605784132605874132605847132605841732605841372605841327605841326705481326075481326057481326054781326054871326054817326054813726054813276054813267054183260754183260574183260547183260541783260541873260541837260541832760541832670541382607541382605741382605471382605417382605413782605413872605413827605413826705413286075413286057413286054713286054173286054137286054132786054132876054132867054132687045132678045132670845132607845132608745132608475132608457132608451732608451372608451327608451326704851326074851326047851326048751326048571326048517326048513726048513276048513267045813260745813260475813260457813260458713260458173260458137260458132760458132670451832607451832604751832604571832604517832604518732604518372604518327604518326704513826074513826047513826045713826045173826045137826045138726045138276045138267045132860745132860475132860457132860451732860451372860451327860451328760451328670451326870415326780415326708415326078415326087415326084715326084175326084157326084153726084153276084153267048153260748153260478153260487153260481753260481573260481537260481532760481532670418532607418532604718532604178532604187532604185732604185372604185327604185326704158326074158326047158326041758326041578326041587326041583726041583276041583267041538260741538260471538260417538260415738260415378260415387260415382760415382670415328607415328604715328604175328604157328604153728604153278604153287604153286704153268704135267804135267084135260784135260874135260847135260841735260841375260841357260841352760841352670481352607481352604781352604871352604817352604813752604813572604813527604813526704183526074183526047183526041783526041873526041837526041835726041835276041835267041385260741385260471385260417385260413785260413875260413857260413852760413852670413582607413582604713582604173582604137582604135782604135872604135827604135826704135286074135286047135286041735286041375286041357286041352786041352876041352867041352687041325678041325670841325607841325608741325608471325608417325608413725608413275608413257608413256704813256074813256047813256048713256048173256048137256048132756048132576048132567041832560741832560471832560417832560418732560418372560418327560418325760418325670413825607413825604713825604173825604137825604138725604138275604138257604138256704132856074132856047132856041732856041372856041327856041328756041328576041328567041325860741325860471325860417325860413725860413275860413257860413258760413258670413256870413265870143268570143268750143267850143267580143267508143267501843267501483267501438267501432867501432687051432678051432670851432607851432608751432608571432608517432608514732608514372608514327608514326705814326075814326057814326058714326058174326058147326058143726058143276058143267051843260751843260571843260517843260518743260518473260518437260518432760518432670514832607514832605714832605174832605147832605148732605148372605148327605148326705143826075143826057143826051743826051473826051437826051438726051438276051438267051432860751432860571432860517432860514732860514372860514327860514328760514328670514326870154326780154326708154326078154326087154326081754326081574326081547326081543726081543276081543267018543260718543260178543261078543261708543261780543261785043261785403261785430261785432061785432601875432610875432618075432618705432618750432618754032618754302618754320618754326018574326108574326180574326185074326185704326185740326185743026185743206185743260185473261085473261805473261850473261854073261854703261854730261854732061854732601854372610854372618054372618504372618540372618543072618543702618543720618543726018543276108543276180543276185043276185403276185430276185432076185432706185432760185432670158432607158432601758432610758432617058432617508432617580432617584032617584302617584320617584326015784326105784326150784326157084326157804326157840326157843026157843206157843260158743261058743261508743261580743261587043261587403261587430261587432061587432601584732610584732615084732615804732615840732615847032615847302615847320615847326015843726105843726150843726158043726158403726158430726158437026158437206158437260158432761058432761508432761580432761584032761584302761584320761584327061584327601584326701548326071548326017548326107548326170548326175048326175408326175480326175483026175483206175483260157483261057483261507483261570483261574083261574803261574830261574832061574832601547832610547832615047832615407832615470832615478032615478302615478320615478326015487326105487326150487326154087326154807326154870326154873026154873206154873260154837261054837261504837261540837261548037261548307261548370261548372061548372601548327610548327615048327615408327615480327615483027615483207615483270615483276015483267015438260715438260175438261075438261705438261750438261754038261754308261754380261754382061754382601574382610574382615074382615704382615740382615743082615743802615743820615743826015473826105473826150473826154073826154703826154730826154738026154738206154738260154378261054378261504378261540378261543078261543708261543780261543782061543782601543872610543872615043872615403872615430872615438072615438702615438720615438726015438276105438276150438276154038276154308276154380276154382076154382706154382760154382670154328607154328601754328610754328617054328617504328617540328617543028617543208617543280617543286015743286105743286150743286157043286157403286157430286157432086157432806157432860154732861054732861504732861540732861547032861547302861547320861547328061547328601543728610543728615043728615403728615430728615437028615437208615437280615437286015432786105432786150432786154032786154302786154320786154327086154327806154327860154328761054328761504328761540328761543028761543208761543280761543287061543287601543286701543268701453267801453267081453260781453260871453260817453260814753260814573260814537260814532760814532670184532607184532601784532610784532617084532617804532617840532617845032617845302617845320617845326018745326108745326180745326187045326187405326187450326187453026187453206187453260184753261084753261804753261840753261847053261847503261847530261847532061847532601845732610845732618045732618405732618450732618457032618457302618457320618457326018453726108453726180453726184053726184503726184530726184537026184537206184537260184532761084532761804532761840532761845032761845302761845320761845327061845327601845326701485326071485326017485326107485326170485326174085326174805326174850326174853026174853206174853260147853261047853261407853261470853261478053261478503261478530261478532061478532601487532610487532614087532614807532614870532614875032614875302614875320614875326014857326104857326140857326148057326148507326148570326148573026148573206148573260148537261048537261408537261480537261485037261485307261485370261485372061485372601485327610485327614085327614805327614850327614853027614853207614853270614853276014853267014583260714583260174583261074583261704583261740583261745083261745803261745830261745832061745832601475832610475832614075832614705832614750832614758032614758302614758320614758326014578326104578326140578326145078326145708326145780326145783026145783206145783260145873261045873261405873261450873261458073261458703261458730261458732061458732601458372610458372614058372614508372614580372614583072614583702614583720614583726014583276104583276140583276145083276145803276145830276145832076145832706145832760145832670145382607145382601745382610745382617045382617405382617450382617453082617453802617453820617453826014753826104753826140753826147053826147503826147530826147538026147538206147538260145738261045738261405738261450738261457038261457308261457380261457382061457382601453782610453782614053782614503782614530782614537082614537802614537820614537826014538726104538726140538726145038726145308726145380726145387026145387206145387260145382761045382761405382761450382761453082761453802761453820761453827061453827601453826701453286071453286017453286107453286170453286174053286174503286174530286174532086174532806174532860147532861047532861407532861470532861475032861475302861475320861475328061475328601457328610457328614057328614507328614570328614573028614573208614573280614573286014537286104537286140537286145037286145307286145370286145372086145372806145372860145327861045327861405327861450327861453027861453207861453270861453278061453278601453287610453287614053287614503287614530287614532087614532807614532870614532876014532867014532687014352678014352670814352607814352608714352608174352608147352608143752608143572608143527608143526701843526071843526017843526107843526170843526178043526178403526178430526178435026178435206178435260187435261087435261807435261870435261874035261874305261874350261874352061874352601847352610847352618047352618407352618470352618473052618473502618473520618473526018437526108437526180437526184037526184307526184370526184375026184375206184375260184357261084357261804357261840357261843057261843507261843570261843572061843572601843527610843527618043527618403527618430527618435027618435207618435270618435276018435267014835260714835260174835261074835261704835261740835261748035261748305261748350261748352061748352601478352610478352614078352614708352614780352614783052614783502614783520614783526014873526104873526140873526148073526148703526148730526148735026148735206148735260148375261048375261408375261480375261483075261483705261483750261483752061483752601483572610483572614083572614803572614830572614835072614835702614835720614835726014835276104835276140835276148035276148305276148350276148352076148352706148352760148352670143852607143852601743852610743852617043852617403852617430852617438052617438502617438520617438526014738526104738526140738526147038526147308526147380526147385026147385206147385260143785261043785261403785261430785261437085261437805261437850261437852061437852601438752610438752614038752614308752614380752614387052614387502614387520614387526014385726104385726140385726143085726143805726143850726143857026143857206143857260143852761043852761403852761430852761438052761438502761438520761438527061438527601438526701435826071435826017435826107435826170435826174035826174305826174350826174358026174358206174358260147358261047358261407358261470358261473058261473508261473580261473582061473582601437582610437582614037582614307582614370582614375082614375802614375820614375826014357826104357826140357826143057826143507826143570826143578026143578206143578260143587261043587261403587261430587261435087261435807261435870261435872061435872601435827610435827614035827614305827614350827614358027614358207614358270614358276014358267014352860714352860174352861074352861704352861740352861743052861743502861743520861743528061743528601473528610473528614073528614703528614730528614735028614735208614735280614735286014375286104375286140375286143075286143705286143750286143752086143752806143752860143572861043572861403572861430572861435072861435702861435720861435728061435728601435278610435278614035278614305278614350278614352078614352708614352780614352786014352876104352876140352876143052876143502876143520876143528076143528706143528760143528670143526870143256780143256708143256078143256087143256081743256081473256081437256081432756081432576081432567018432560718432560178432561078432561708432561780432561784032561784302561784320561784325061784325601874325610874325618074325618704325618740325618743025618743205618743250618743256018473256108473256180473256184073256184703256184730256184732056184732506184732560184372561084372561804372561840372561843072561843702561843720561843725061843725601843275610843275618043275618403275618430275618432075618432705618432750618432756018432576108432576180432576184032576184302576184320576184325076184325706184325760184325670148325607148325601748325610748325617048325617408325617480325617483025617483205617483250617483256014783256104783256140783256147083256147803256147830256147832056147832506147832560148732561048732561408732561480732561487032561487302561487320561487325061487325601483725610483725614083725614803725614830725614837025614837205614837250614837256014832756104832756140832756148032756148302756148320756148327056148327506148327560148325761048325761408325761480325761483025761483205761483250761483257061483257601483256701438256071438256017438256107438256170438256174038256174308256174380256174382056174382506174382560147382561047382561407382561470382561473082561473802561473820561473825061473825601437825610437825614037825614307825614370825614378025614378205614378250614378256014387256104387256140387256143087256143807256143870256143872056143872506143872560143827561043827561403827561430827561438027561438207561438270561438275061438275601438257610438257614038257614308257614380257614382057614382507614382570614382576014382567014328560714328560174328561074328561704328561740328561743028561743208561743280561743285061743285601473285610473285614073285614703285614730285614732085614732805614732850614732856014372856104372856140372856143072856143702856143720856143728056143728506143728560143278561043278561403278561430278561432078561432708561432780561432785061432785601432875610432875614032875614302875614320875614328075614328705614328750614328756014328576104328576140328576143028576143208576143280576143285076143285706143285760143285670143258607143258601743258610743258617043258617403258617430258617432058617432508617432580617432586014732586104732586140732586147032586147302586147320586147325086147325806147325860143725861043725861403725861430725861437025861437205861437250861437258061437258601432758610432758614032758614302758614320758614327058614327508614327580614327586014325786104325786140325786143025786143205786143250786143257086143257806143257860143258761043258761403258761430258761432058761432508761432580761432587061432587601432586701432568701432658701342685701342687501342678501342675801342675081342675018342675013842675013482675013428675013426870513426780513426708513426078513426087513426085713426085173426085137426085134726085134276085134267058134260758134260578134260587134260581734260581374260581347260581342760581342670518342607518342605718342605178342605187342605183742605183472605183427605183426705138426075138426057138426051738426051378426051387426051384726051384276051384267051348260751348260571348260517348260513748260513478260513487260513482760513482670513428607513428605713428605173428605137428605134728605134278605134287605134286705134268701534267801534267081534260781534260871534260817534260815734260815374260815347260815342760815342670185342607185342601785342610785342617085342617805342617850342617853042617853402617853420617853426018753426108753426180753426187053426187503426187530426187534026187534206187534260185734261085734261805734261850734261857034261857304261857340261857342061857342601853742610853742618053742618503742618530742618537042618537402618537420618537426018534726108534726180534726185034726185304726185340726185347026185347206185347260185342761085342761805342761850342761853042761853402761853420761853427061853427601853426701583426071583426017583426107583426170583426175083426175803426175830426175834026175834206175834260157834261057834261507834261570834261578034261578304261578340261578342061578342601587342610587342615087342615807342615870342615873042615873402615873420615873426015837426105837426150837426158037426158307426158370426158374026158374206158374260158347261058347261508347261580347261583047261583407261583470261583472061583472601583427610583427615083427615803427615830427615834027615834207615834270615834276015834267015384260715384260175384261075384261705384261750384261753084261753804261753840261753842061753842601573842610573842615073842615703842615730842615738042615738402615738420615738426015378426105378426150378426153078426153708426153780426153784026153784206153784260153874261053874261503874261530874261538074261538704261538740261538742061538742601538472610538472615038472615308472615380472615384072615384702615384720615384726015384276105384276150384276153084276153804276153840276153842076153842706153842760153842670153482607153482601753482610753482617053482617503482617530482617534082617534802617534820617534826015734826105734826150734826157034826157304826157340826157348026157348206157348260153748261053748261503748261530748261537048261537408261537480261537482061537482601534782610534782615034782615304782615340782615347082615347802615347820615347826015348726105348726150348726153048726153408726153480726153487026153487206153487260153482761053482761503482761530482761534082761534802761534820761534827061534827601534826701534286071534286017534286107534286170534286175034286175304286175340286175342086175342806175342860157342861057342861507342861570342861573042861573402861573420861573428061573428601537428610537428615037428615307428615370428615374028615374208615374280615374286015347286105347286150347286153047286153407286153470286153472086153472806153472860153427861053427861503427861530427861534027861534207861534270861534278061534278601534287610534287615034287615304287615340287615342087615342807615342870615342876015342867015342687013542678013542670813542607813542608713542608173542608137542608135742608135472608135427608135426701835426071835426017835426107835426170835426178035426178305426178350426178354026178354206178354260187354261087354261807354261870354261873054261873504261873540261873542061873542601837542610837542618037542618307542618370542618375042618375402618375420618375426018357426108357426180357426183057426183507426183570426183574026183574206183574260183547261083547261803547261830547261835047261835407261835470261835472061835472601835427610835427618035427618305427618350427618354027618354207618354270618354276018354267013854260713854260173854261073854261703854261730854261738054261738504261738540261738542061738542601378542610378542613078542613708542613780542613785042613785402613785420613785426013875426103875426130875426138075426138705426138750426138754026138754206138754260138574261038574261308574261380574261385074261385704261385740261385742061385742601385472610385472613085472613805472613850472613854072613854702613854720613854726013854276103854276130854276138054276138504276138540276138542076138542706138542760138542670135842607135842601735842610735842617035842617305842617350842617358042617358402617358420617358426013758426103758426130758426137058426137508426137580426137584026137584206137584260135784261035784261305784261350784261357084261357804261357840261357842061357842601358742610358742613058742613508742613580742613587042613587402613587420613587426013584726103584726130584726135084726135804726135840726135847026135847206135847260135842761035842761305842761350842761358042761358402761358420761358427061358427601358426701354826071354826017354826107354826170354826173054826173504826173540826173548026173548206173548260137548261037548261307548261370548261375048261375408261375480261375482061375482601357482610357482613057482613507482613570482613574082613574802613574820613574826013547826103547826130547826135047826135407826135470826135478026135478206135478260135487261035487261305487261350487261354087261354807261354870261354872061354872601354827610354827613054827613504827613540827613548027613548207613548270613548276013548267013542860713542860173542861073542861703542861730542861735042861735402861735420861735428061735428601375428610375428613075428613705428613750428613754028613754208613754280613754286013574286103574286130574286135074286135704286135740286135742086135742806135742860135472861035472861305472861350472861354072861354702861354720861354728061354728601354278610354278613054278613504278613540278613542078613542708613542780613542786013542876103542876130542876135042876135402876135420876135428076135428706135428760135428670135426870134526780134526708134526078134526087134526081734526081374526081347526081345726081345276081345267018345260718345260178345261078345261708345261780345261783045261783405261783450261783452061783452601873452610873452618073452618703452618730452618734052618734502618734520618734526018374526108374526180374526183074526183704526183740526183745026183745206183745260183475261083475261803475261830475261834075261834705261834750261834752061834752601834572610834572618034572618304572618340572618345072618345702618345720618345726018345276108345276180345276183045276183405276183450276183452076183452706183452760183452670138452607138452601738452610738452617038452617308452617380452617384052617384502617384520617384526013784526103784526130784526137084526137804526137840526137845026137845206137845260138745261038745261308745261380745261387045261387405261387450261387452061387452601384752610384752613084752613804752613840752613847052613847502613847520613847526013845726103845726130845726138045726138405726138450726138457026138457206138457260138452761038452761308452761380452761384052761384502761384520761384527061384527601384526701348526071348526017348526107348526170348526173048526173408526173480526173485026173485206173485260137485261037485261307485261370485261374085261374805261374850261374852061374852601347852610347852613047852613407852613470852613478052613478502613478520613478526013487526103487526130487526134087526134807526134870526134875026134875206134875260134857261034857261304857261340857261348057261348507261348570261348572061348572601348527610348527613048527613408527613480527613485027613485207613485270613485276013485267013458260713458260173458261073458261703458261730458261734058261734508261734580261734582061734582601374582610374582613074582613704582613740582613745082613745802613745820613745826013475826103475826130475826134075826134705826134750826134758026134758206134758260134578261034578261304578261340578261345078261345708261345780261345782061345782601345872610345872613045872613405872613450872613458072613458702613458720613458726013458276103458276130458276134058276134508276134580276134582076134582706134582760134582670134528607134528601734528610734528617034528617304528617340528617345028617345208617345280617345286013745286103745286130745286137045286137405286137450286137452086137452806137452860134752861034752861304752861340752861347052861347502861347520861347528061347528601345728610345728613045728613405728613450728613457028613457208613457280613457286013452786103452786130452786134052786134502786134520786134527086134527806134527860134528761034528761304528761340528761345028761345208761345280761345287061345287601345286701345268701342567801342567081342560781342560871342560817342560813742560813472560813427560813425760813425670183425607183425601783425610783425617083425617803425617830425617834025617834205617834250617834256018734256108734256180734256187034256187304256187340256187342056187342506187342560183742561083742561803742561830742561837042561837402561837420561837425061837425601834725610834725618034725618304725618340725618347025618347205618347250618347256018342756108342756180342756183042756183402756183420756183427056183427506183427560183425761083425761803425761830425761834025761834205761834250761834257061834257601834256701384256071384256017384256107384256170384256173084256173804256173840256173842056173842506173842560137842561037842561307842561370842561378042561378402561378420561378425061378425601387425610387425613087425613807425613870425613874025613874205613874250613874256013847256103847256130847256138047256138407256138470256138472056138472506138472560138427561038427561308427561380427561384027561384207561384270561384275061384275601384257610384257613084257613804257613840257613842057613842507613842570613842576013842567013482560713482560173482561073482561703482561730482561734082561734802561734820561734825061734825601374825610374825613074825613704825613740825613748025613748205613748250613748256013478256103478256130478256134078256134708256134780256134782056134782506134782560134872561034872561304872561340872561348072561348702561348720561348725061348725601348275610348275613048275613408275613480275613482075613482705613482750613482756013482576103482576130482576134082576134802576134820576134825076134825706134825760134825670134285607134285601734285610734285617034285617304285617340285617342085617342805617342850617342856013742856103742856130742856137042856137402856137420856137428056137428506137428560134728561034728561304728561340728561347028561347208561347280561347285061347285601342785610342785613042785613402785613420785613427085613427805613427850613427856013428756103428756130428756134028756134208756134280756134287056134287506134287560134285761034285761304285761340285761342085761342805761342850761342857061342857601342856701342586071342586017342586107342586170342586173042586173402586173420586173425086173425806173425860137425861037425861307425861370425861374025861374205861374250861374258061374258601347258610347258613047258613407258613470258613472058613472508613472580613472586013427586103427586130427586134027586134207586134270586134275086134275806134275860134257861034257861304257861340257861342057861342507861342570861342578061342578601342587610342587613042587613402587613420587613425087613425807613425870613425876013425867013425687013426587013246857013246875013246785013246758013246750813246750183246750138246750132846750132486750132468705132467805132467085132460785132460875132460857132460851732460851372460851327460851324760851324670581324607581324605781324605871324605817324605813724605813274605813247605813246705183246075183246057183246051783246051873246051837246051832746051832476051832467051382460751382460571382460517382460513782460513872460513827460513824760513824670513284607513284605713284605173284605137284605132784605132874605132847605132846705132486075132486057132486051732486051372486051327486051324786051324876051324867051324687015324678015324670815324607815324608715324608175324608157324608153724608153274608153247608153246701853246071853246017853246107853246170853246178053246178503246178530246178532046178532406178532460187532461087532461807532461870532461875032461875302461875320461875324061875324601857324610857324618057324618507324618570324618573024618573204618573240618573246018537246108537246180537246185037246185307246185370246185372046185372406185372460185327461085327461805327461850327461853027461853207461853270461853274061853274601853247610853247618053247618503247618530247618532047618532407618532470618532476018532467015832460715832460175832461075832461705832461750832461758032461758302461758320461758324061758324601578324610578324615078324615708324615780324615783024615783204615783240615783246015873246105873246150873246158073246158703246158730246158732046158732406158732460158372461058372461508372461580372461583072461583702461583720461583724061583724601583274610583274615083274615803274615830274615832074615832704615832740615832746015832476105832476150832476158032476158302476158320476158324076158324706158324760158324670153824607153824601753824610753824617053824617503824617530824617538024617538204617538240617538246015738246105738246150738246157038246157308246157380246157382046157382406157382460153782461053782461503782461530782461537082461537802461537820461537824061537824601538724610538724615038724615308724615380724615387024615387204615387240615387246015382746105382746150382746153082746153802746153820746153827046153827406153827460153824761053824761503824761530824761538024761538204761538240761538247061538247601538246701532846071532846017532846107532846170532846175032846175302846175320846175328046175328406175328460157328461057328461507328461570328461573028461573208461573280461573284061573284601537284610537284615037284615307284615370284615372084615372804615372840615372846015327846105327846150327846153027846153207846153270846153278046153278406153278460153287461053287461503287461530287461532087461532807461532870461532874061532874601532847610532847615032847615302847615320847615328047615328407615328470615328476015328467015324860715324860175324861075324861705324861750324861753024861753204861753240861753248061753248601573248610573248615073248615703248615730248615732048615732408615732480615732486015372486105372486150372486153072486153702486153720486153724086153724806153724860153274861053274861503274861530274861532074861532704861532740861532748061532748601532478610532478615032478615302478615320478615324078615324708615324780615324786015324876105324876150324876153024876153204876153240876153248076153248706153248760153248670153246870135246780135246708135246078135246087135246081735246081375246081357246081352746081352476081352467018352460718352460178352461078352461708352461780352461783052461783502461783520461783524061783524601873524610873524618073524618703524618730524618735024618735204618735240618735246018375246108375246180375246183075246183705246183750246183752046183752406183752460183572461083572461803572461830572461835072461835702461835720461835724061835724601835274610835274618035274618305274618350274618352074618352704618352740618352746018352476108352476180352476183052476183502476183520476183524076183524706183524760183524670138524607138524601738524610738524617038524617308524617380524617385024617385204617385240617385246013785246103785246130785246137085246137805246137850246137852046137852406137852460138752461038752461308752461380752461387052461387502461387520461387524061387524601385724610385724613085724613805724613850724613857024613857204613857240613857246013852746103852746130852746138052746138502746138520746138527046138527406138527460138524761038524761308524761380524761385024761385204761385240761385247061385247601385246701358246071358246017358246107358246170358246173058246173508246173580246173582046173582406173582460137582461037582461307582461370582461375082461375802461375820461375824061375824601357824610357824613057824613507824613570824613578024613578204613578240613578246013587246103587246130587246135087246135807246135870246135872046135872406135872460135827461035827461305827461350827461358027461358207461358270461358274061358274601358247610358247613058247613508247613580247613582047613582407613582470613582476013582467013528460713528460173528461073528461703528461730528461735028461735208461735280461735284061735284601375284610375284613075284613705284613750284613752084613752804613752840613752846013572846103572846130572846135072846135702846135720846135728046135728406135728460135278461035278461305278461350278461352078461352708461352780461352784061352784601352874610352874613052874613502874613520874613528074613528704613528740613528746013528476103528476130528476135028476135208476135280476135284076135284706135284760135284670135248607135248601735248610735248617035248617305248617350248617352048617352408617352480617352486013752486103752486130752486137052486137502486137520486137524086137524806137524860135724861035724861305724861350724861357024861357204861357240861357248061357248601352748610352748613052748613502748613520748613527048613527408613527480613527486013524786103524786130524786135024786135204786135240786135247086135247806135247860135248761035248761305248761350248761352048761352408761352480761352487061352487601352486701352468701325467801325467081325460781325460871325460817325460813725460813275460813257460813254760813254670183254607183254601783254610783254617083254617803254617830254617832054617832504617832540617832546018732546108732546180732546187032546187302546187320546187325046187325406187325460183725461083725461803725461830725461837025461837205461837250461837254061837254601832754610832754618032754618302754618320754618327054618327504618327540618327546018325746108325746180325746183025746183205746183250746183257046183257406183257460183254761083254761803254761830254761832054761832504761832540761832547061832547601832546701382546071382546017382546107382546170382546173082546173802546173820546173825046173825406173825460137825461037825461307825461370825461378025461378205461378250461378254061378254601387254610387254613087254613807254613870254613872054613872504613872540613872546013827546103827546130827546138027546138207546138270546138275046138275406138275460138257461038257461308257461380257461382057461382507461382570461382574061382574601382547610382547613082547613802547613820547613825047613825407613825470613825476013825467013285460713285460173285461073285461703285461730285461732085461732805461732850461732854061732854601372854610372854613072854613702854613720854613728054613728504613728540613728546013278546103278546130278546132078546132708546132780546132785046132785406132785460132875461032875461302875461320875461328075461328705461328750461328754061328754601328574610328574613028574613208574613280574613285074613285704613285740613285746013285476103285476130285476132085476132805476132850476132854076132854706132854760132854670132584607132584601732584610732584617032584617302584617320584617325084617325804617325840617325846013725846103725846130725846137025846137205846137250846137258046137258406137258460132758461032758461302758461320758461327058461327508461327580461327584061327584601325784610325784613025784613205784613250784613257084613257804613257840613257846013258746103258746130258746132058746132508746132580746132587046132587406132587460132584761032584761302584761320584761325084761325804761325840761325847061325847601325846701325486071325486017325486107325486170325486173025486173205486173250486173254086173254806173254860137254861037254861307254861370254861372054861372504861372540861372548061372548601327548610327548613027548613207548613270548613275048613275408613275480613275486013257486103257486130257486132057486132507486132570486132574086132574806132574860132547861032547861302547861320547861325047861325407861325470861325478061325478601325487610325487613025487613205487613250487613254087613254807613254870613254876013254867013254687013245678013245670813245607813245608713245608173245608137245608132745608132475608132457608132456701832456071832456017832456107832456170832456178032456178302456178320456178324056178324506178324560187324561087324561807324561870324561873024561873204561873240561873245061873245601837245610837245618037245618307245618370245618372045618372405618372450618372456018327456108327456180327456183027456183207456183270456183274056183274506183274560183247561083247561803247561830247561832047561832407561832470561832475061832475601832457610832457618032457618302457618320457618324057618324507618324570618324576018324567013824560713824560173824561073824561703824561730824561738024561738204561738240561738245061738245601378245610378245613078245613708245613780245613782045613782405613782450613782456013872456103872456130872456138072456138702456138720456138724056138724506138724560138274561038274561308274561380274561382074561382704561382740561382745061382745601382475610382475613082475613802475613820475613824075613824705613824750613824756013824576103824576130824576138024576138204576138240576138245076138245706138245760138245670132845607132845601732845610732845617032845617302845617320845617328045617328405617328450617328456013728456103728456130728456137028456137208456137280456137284056137284506137284560132784561032784561302784561320784561327084561327804561327840561327845061327845601328745610328745613028745613208745613280745613287045613287405613287450613287456013284756103284756130284756132084756132804756132840756132847056132847506132847560132845761032845761302845761320845761328045761328405761328450761328457061328457601328456701324856071324856017324856107324856170324856173024856173204856173240856173248056173248506173248560137248561037248561307248561370248561372048561372408561372480561372485061372485601327485610327485613027485613207485613270485613274085613274805613274850613274856013247856103247856130247856132047856132407856132470856132478056132478506132478560132487561032487561302487561320487561324087561324807561324870561324875061324875601324857610324857613024857613204857613240857613248057613248507613248570613248576013248567013245860713245860173245861073245861703245861730245861732045861732405861732450861732458061732458601372458610372458613072458613702458613720458613724058613724508613724580613724586013274586103274586130274586132074586132704586132740586132745086132745806132745860132475861032475861302475861320475861324075861324705861324750861324758061324758601324578610324578613024578613204578613240578613245078613245708613245780613245786013245876103245876130245876132045876132405876132450876132458076132458706132458760132458670132456870132465870132645870123654870123658470123685470123684570123684750123684705123684701523684701253684701235684701236587401236857401236875401236785401236758401236754801236754081236754018236754012836754012386754012368745012367845012367485012367458012367450812367450182367450128367450123867450123687405123678405123674805123674085123674058123674051823674051283674051238674051236874015236784015236748015236740815236740185236740158236740152836740152386740152368740125367840125367480125367408125367401825367401285367401258367401253867401253687401235678401235674801235674081235674018235674012835674012385674012358674012356874012365870412368570412368750412367850412367580412367508412367504812367504182367504128367504123867504123687054123678054123670854123607854123608754123608574123608547123608541723608541273608541237608541236705841236075841236057841236058741236058471236058417236058412736058412376058412367054812360754812360574812360547812360548712360548172360548127360548123760548123670541823607541823605741823605471823605417823605418723605418273605418237605418236705412836075412836057412836054712836054172836054127836054128736054128376054128367054123860754123860574123860547123860541723860541273860541237860541238760541238670541236870451236780451236708451236078451236087451236084751236084571236084517236084512736084512376084512367048512360748512360478512360487512360485712360485172360485127360485123760485123670458123607458123604758123604578123604587123604581723604581273604581237604581236704518236074518236047518236045718236045178236045187236045182736045182376045182367045128360745128360475128360457128360451728360451278360451287360451283760451283670451238607451238604751238604571238604517238604512738604512378604512387604512386704512368704152367804152367084152360784152360874152360847152360841752360841572360841527360841523760841523670481523607481523604781523604871523604817523604815723604815273604815237604815236704185236074185236047185236041785236041875236041857236041852736041852376041852367041582360741582360471582360417582360415782360415872360415827360415823760415823670415283607415283604715283604175283604157283604152783604152873604152837604152836704152386074152386047152386041752386041572386041527386041523786041523876041523867041523687041253678041253670841253607841253608741253608471253608417253608412753608412573608412537608412536704812536074812536047812536048712536048172536048127536048125736048125376048125367041825360741825360471825360417825360418725360418275360418257360418253760418253670412853607412853604712853604172853604127853604128753604128573604128537604128536704125836074125836047125836041725836041275836041257836041258736041258376041258367041253860741253860471253860417253860412753860412573860412537860412538760412538670412536870412356780412356708412356078412356087412356084712356084172356084127356084123756084123576084123567048123560748123560478123560487123560481723560481273560481237560481235760481235670418235607418235604718235604178235604187235604182735604182375604182357604182356704128356074128356047128356041728356041278356041287356041283756041283576041283567041238560741238560471238560417238560412738560412378560412387560412385760412385670412358607412358604712358604172358604127358604123758604123578604123587604123586704123568704123658701423685701423687501423678501423675801423675081423675018423675014823675014283675014238675014236870514236780514236708514236078514236087514236085714236085174236085147236085142736085142376085142367058142360758142360578142360587142360581742360581472360581427360581423760581423670518423607518423605718423605178423605187423605184723605184273605184237605184236705148236075148236057148236051748236051478236051487236051482736051482376051482367051428360751428360571428360517428360514728360514278360514287360514283760514283670514238607514238605714238605174238605147238605142738605142378605142387605142386705142368701542367801542367081542360781542360871542360817542360815742360815472360815427360815423760815423670185423607185423601785423610785423617085423617805423617850423617854023617854203617854230617854236018754236108754236180754236187054236187504236187540236187542036187542306187542360185742361085742361805742361850742361857042361857402361857420361857423061857423601854723610854723618054723618504723618540723618547023618547203618547230618547236018542736108542736180542736185042736185402736185420736185427036185427306185427360185423761085423761805423761850423761854023761854203761854230761854237061854237601854236701584236071584236017584236107584236170584236175084236175804236175840236175842036175842306175842360157842361057842361507842361570842361578042361578402361578420361578423061578423601587423610587423615087423615807423615870423615874023615874203615874230615874236015847236105847236150847236158047236158407236158470236158472036158472306158472360158427361058427361508427361580427361584027361584207361584270361584273061584273601584237610584237615084237615804237615840237615842037615842307615842370615842376015842367015482360715482360175482361075482361705482361750482361754082361754802361754820361754823061754823601574823610574823615074823615704823615740823615748023615748203615748230615748236015478236105478236150478236154078236154708236154780236154782036154782306154782360154872361054872361504872361540872361548072361548702361548720361548723061548723601548273610548273615048273615408273615480273615482073615482703615482730615482736015482376105482376150482376154082376154802376154820376154823076154823706154823760154823670154283607154283601754283610754283617054283617504283617540283617542083617542803617542830617542836015742836105742836150742836157042836157402836157420836157428036157428306157428360154728361054728361504728361540728361547028361547208361547280361547283061547283601542783610542783615042783615402783615420783615427083615427803615427830615427836015428736105428736150428736154028736154208736154280736154287036154287306154287360154283761054283761504283761540283761542083761542803761542830761542837061542837601542836701542386071542386017542386107542386170542386175042386175402386175420386175423086175423806175423860157423861057423861507423861570423861574023861574203861574230861574238061574238601547238610547238615047238615407238615470238615472038615472308615472380615472386015427386105427386150427386154027386154207386154270386154273086154273806154273860154237861054237861504237861540237861542037861542307861542370861542378061542378601542387610542387615042387615402387615420387615423087615423807615423870615423876015423867015423687014523678014523670814523607814523608714523608174523608147523608145723608145273608145237608145236701845236071845236017845236107845236170845236178045236178405236178450236178452036178452306178452360187452361087452361807452361870452361874052361874502361874520361874523061874523601847523610847523618047523618407523618470523618475023618475203618475230618475236018457236108457236180457236184057236184507236184570236184572036184572306184572360184527361084527361804527361840527361845027361845207361845270361845273061845273601845237610845237618045237618405237618450237618452037618452307618452370618452376018452367014852360714852360174852361074852361704852361740852361748052361748502361748520361748523061748523601478523610478523614078523614708523614780523614785023614785203614785230614785236014875236104875236140875236148075236148705236148750236148752036148752306148752360148572361048572361408572361480572361485072361485702361485720361485723061485723601485273610485273614085273614805273614850273614852073614852703614852730614852736014852376104852376140852376148052376148502376148520376148523076148523706148523760148523670145823607145823601745823610745823617045823617405823617450823617458023617458203617458230617458236014758236104758236140758236147058236147508236147580236147582036147582306147582360145782361045782361405782361450782361457082361457802361457820361457823061457823601458723610458723614058723614508723614580723614587023614587203614587230614587236014582736104582736140582736145082736145802736145820736145827036145827306145827360145823761045823761405823761450823761458023761458203761458230761458237061458237601458236701452836071452836017452836107452836170452836174052836174502836174520836174528036174528306174528360147528361047528361407528361470528361475028361475208361475280361475283061475283601457283610457283614057283614507283614570283614572083614572803614572830614572836014527836104527836140527836145027836145207836145270836145278036145278306145278360145287361045287361405287361450287361452087361452807361452870361452873061452873601452837610452837614052837614502837614520837614528037614528307614528370614528376014528367014523860714523860174523861074523861704523861740523861745023861745203861745230861745238061745238601475238610475238614075238614705238614750238614752038614752308614752380614752386014572386104572386140572386145072386145702386145720386145723086145723806145723860145273861045273861405273861450273861452073861452703861452730861452738061452738601452378610452378614052378614502378614520378614523078614523708614523780614523786014523876104523876140523876145023876145203876145230876145238076145238706145238760145238670145236870142536780142536708142536078142536087142536081742536081472536081427536081425736081425376081425367018425360718425360178425361078425361708425361780425361784025361784205361784250361784253061784253601874253610874253618074253618704253618740253618742053618742503618742530618742536018472536108472536180472536184072536184702536184720536184725036184725306184725360184275361084275361804275361840275361842075361842705361842750361842753061842753601842573610842573618042573618402573618420573618425073618425703618425730618425736018425376108425376180425376184025376184205376184250376184253076184253706184253760184253670148253607148253601748253610748253617048253617408253617480253617482053617482503617482530617482536014782536104782536140782536147082536147802536147820536147825036147825306147825360148725361048725361408725361480725361487025361487205361487250361487253061487253601482753610482753614082753614802753614820753614827053614827503614827530614827536014825736104825736140825736148025736148205736148250736148257036148257306148257360148253761048253761408253761480253761482053761482503761482530761482537061482537601482536701428536071428536017428536107428536170428536174028536174208536174280536174285036174285306174285360147285361047285361407285361470285361472085361472805361472850361472853061472853601427853610427853614027853614207853614270853614278053614278503614278530614278536014287536104287536140287536142087536142807536142870536142875036142875306142875360142857361042857361402857361420857361428057361428507361428570361428573061428573601428537610428537614028537614208537614280537614285037614285307614285370614285376014285367014258360714258360174258361074258361704258361740258361742058361742508361742580361742583061742583601472583610472583614072583614702583614720583614725083614725803614725830614725836014275836104275836140275836142075836142705836142750836142758036142758306142758360142578361042578361402578361420578361425078361425708361425780361425783061425783601425873610425873614025873614205873614250873614258073614258703614258730614258736014258376104258376140258376142058376142508376142580376142583076142583706142583760142583670142538607142538601742538610742538617042538617402538617420538617425038617425308617425380617425386014725386104725386140725386147025386147205386147250386147253086147253806147253860142753861042753861402753861420753861427053861427503861427530861427538061427538601425738610425738614025738614205738614250738614257038614257308614257380614257386014253786104253786140253786142053786142503786142530786142537086142537806142537860142538761042538761402538761420538761425038761425308761425380761425387061425387601425386701425368701423567801423567081423560781423560871423560817423560814723560814273560814237560814235760814235670184235607184235601784235610784235617084235617804235617840235617842035617842305617842350617842356018742356108742356180742356187042356187402356187420356187423056187423506187423560184723561084723561804723561840723561847023561847203561847230561847235061847235601842735610842735618042735618402735618420735618427035618427305618427350618427356018423756108423756180423756184023756184203756184230756184237056184237506184237560184235761084235761804235761840235761842035761842305761842350761842357061842357601842356701482356071482356017482356107482356170482356174082356174802356174820356174823056174823506174823560147823561047823561407823561470823561478023561478203561478230561478235061478235601487235610487235614087235614807235614870235614872035614872305614872350614872356014827356104827356140827356148027356148207356148270356148273056148273506148273560148237561048237561408237561480237561482037561482307561482370561482375061482375601482357610482357614082357614802357614820357614823057614823507614823570614823576014823567014283560714283560174283561074283561704283561740283561742083561742803561742830561742835061742835601472835610472835614072835614702835614720835614728035614728305614728350614728356014278356104278356140278356142078356142708356142780356142783056142783506142783560142873561042873561402873561420873561428073561428703561428730561428735061428735601428375610428375614028375614208375614280375614283075614283705614283750614283756014283576104283576140283576142083576142803576142830576142835076142835706142835760142835670142385607142385601742385610742385617042385617402385617420385617423085617423805617423850617423856014723856104723856140723856147023856147203856147230856147238056147238506147238560142738561042738561402738561420738561427038561427308561427380561427385061427385601423785610423785614023785614203785614230785614237085614237805614237850614237856014238756104238756140238756142038756142308756142380756142387056142387506142387560142385761042385761402385761420385761423085761423805761423850761423857061423857601423856701423586071423586017423586107423586170423586174023586174203586174230586174235086174235806174235860147235861047235861407235861470235861472035861472305861472350861472358061472358601427358610427358614027358614207358614270358614273058614273508614273580614273586014237586104237586140237586142037586142307586142370586142375086142375806142375860142357861042357861402357861420357861423057861423507861423570861423578061423578601423587610423587614023587614203587614230587614235087614235807614235870614235876014235867014235687014236587012436857012436875012436785012436758012436750812436750182436750128436750124836750124386750124368705124367805124367085124360785124360875124360857124360851724360851274360851247360851243760851243670581243607581243605781243605871243605817243605812743605812473605812437605812436705182436075182436057182436051782436051872436051827436051824736051824376051824367051284360751284360571284360517284360512784360512874360512847360512843760512843670512483607512483605712483605172483605127483605124783605124873605124837605124836705124386075124386057124386051724386051274386051247386051243786051243876051243867051243687015243678015243670815243607815243608715243608175243608157243608152743608152473608152437608152436701852436071852436017852436107852436170852436178052436178502436178520436178524036178524306178524360187524361087524361807524361870524361875024361875204361875240361875243061875243601857243610857243618057243618507243618570243618572043618572403618572430618572436018527436108527436180527436185027436185207436185270436185274036185274306185274360185247361085247361805247361850247361852047361852407361852470361852473061852473601852437610852437618052437618502437618520437618524037618524307618524370618524376018524367015824360715824360175824361075824361705824361750824361758024361758204361758240361758243061758243601578243610578243615078243615708243615780243615782043615782403615782430615782436015872436105872436150872436158072436158702436158720436158724036158724306158724360158274361058274361508274361580274361582074361582704361582740361582743061582743601582473610582473615082473615802473615820473615824073615824703615824730615824736015824376105824376150824376158024376158204376158240376158243076158243706158243760158243670152843607152843601752843610752843617052843617502843617520843617528043617528403617528430617528436015728436105728436150728436157028436157208436157280436157284036157284306157284360152784361052784361502784361520784361527084361527804361527840361527843061527843601528743610528743615028743615208743615280743615287043615287403615287430615287436015284736105284736150284736152084736152804736152840736152847036152847306152847360152843761052843761502843761520843761528043761528403761528430761528437061528437601528436701524836071524836017524836107524836170524836175024836175204836175240836175248036175248306175248360157248361057248361507248361570248361572048361572408361572480361572483061572483601527483610527483615027483615207483615270483615274083615274803615274830615274836015247836105247836150247836152047836152407836152470836152478036152478306152478360152487361052487361502487361520487361524087361524807361524870361524873061524873601524837610524837615024837615204837615240837615248037615248307615248370615248376015248367015243860715243860175243861075243861705243861750243861752043861752403861752430861752438061752438601572438610572438615072438615702438615720438615724038615724308615724380615724386015274386105274386150274386152074386152704386152740386152743086152743806152743860152473861052473861502473861520473861524073861524703861524730861524738061524738601524378610524378615024378615204378615240378615243078615243708615243780615243786015243876105243876150243876152043876152403876152430876152438076152438706152438760152438670152436870125436780125436708125436078125436087125436081725436081275436081257436081254736081254376081254367018254360718254360178254361078254361708254361780254361782054361782504361782540361782543061782543601872543610872543618072543618702543618720543618725043618725403618725430618725436018275436108275436180275436182075436182705436182750436182754036182754306182754360182574361082574361802574361820574361825074361825704361825740361825743061825743601825473610825473618025473618205473618250473618254073618254703618254730618254736018254376108254376180254376182054376182504376182540376182543076182543706182543760182543670128543607128543601728543610728543617028543617208543617280543617285043617285403617285430617285436012785436102785436120785436210785436201785436207185436207815436207851436207854136207854316207854361270854362170854362710854362701854362708154362708514362708541362708543162708543612780543621780543627180543627810543627801543627805143627805413627805431627805436127850436217850436271850436278150436278510436278501436278504136278504316278504361278540362178540362718540362781540362785140362785410362785401362785403162785403612785430621785430627185430627815430627851430627854130627854310627854301627854306127854360128754361028754361208754362108754362018754362081754362087154362087514362087541362087543162087543612807543621807543628107543628017543628071543628075143628075413628075431628075436128705436218705436281705436287105436287015436287051436287054136287054316287054361287504362187504362817504362871504362875104362875014362875041362875043162875043612875403621875403628175403628715403628751403628754103628754013628754031628754036128754306218754306281754306287154306287514306287541306287543106287543016287543061287543601285743610285743612085743621085743620185743620815743620851743620857143620857413620857431620857436128057436218057436281057436280157436280517436280571436280574136280574316280574361285074362185074362815074362851074362850174362850714362850741362850743162850743612857043621857043628157043628517043628571043628570143628570413628570431628570436128574036218574036281574036285174036285714036285741036285740136285740316285740361285743062185743062815743062851743062857143062857413062857431062857430162857430612857436012854736102854736120854736210854736201854736208154736208514736208541736208547136208547316208547361280547362180547362810547362801547362805147362805417362805471362805473162805473612850473621850473628150473628510473628501473628504173628504713628504731628504736128540736218540736281540736285140736285410736285401736285407136285407316285407361285470362185470362815470362851470362854170362854710362854701362854703162854703612854730621854730628154730628514730628541730628547130628547310628547301628547306128547360128543761028543761208543762108543762018543762081543762085143762085413762085431762085437162085437612805437621805437628105437628015437628051437628054137628054317628054371628054376128504376218504376281504376285104376285014376285041376285043176285043716285043761285403762185403762815403762851403762854103762854013762854031762854037162854037612854307621854307628154307628514307628541307628543107628543017628543071628543076128543706218543706281543706285143706285413706285431706285437106285437016285437061285437601285436701258436071258436017258436107258436170258436172058436172508436172580436172584036172584306172584360127584361027584361207584362107584362017584362071584362075184362075814362075841362075843162075843612705843621705843627105843627015843627051843627058143627058413627058431627058436127508436217508436271508436275108436275018436275081436275084136275084316275084361275804362175804362715804362751804362758104362758014362758041362758043162758043612758403621758403627158403627518403627581403627584103627584013627584031627584036127584306217584306271584306275184306275814306275841306275843106275843016275843061275843601257843610257843612057843621057843620157843620517843620571843620578143620578413620578431620578436125078436215078436251078436250178436250718436250781436250784136250784316250784361257084362157084362517084362571084362570184362570814362570841362570843162570843612578043621578043625178043625718043625781043625780143625780413625780431625780436125784036215784036251784036257184036257814036257841036257840136257840316257840361257843062157843062517843062571843062578143062578413062578431062578430162578430612578436012587436102587436120587436210587436201587436205187436205817436205871436205874136205874316205874361250874362150874362510874362501874362508174362508714362508741362508743162508743612580743621580743625180743625810743625801743625807143625807413625807431625807436125870436215870436251870436258170436258710436258701436258704136258704316258704361258740362158740362518740362581740362587140362587410362587401362587403162587403612587430621587430625187430625817430625871430625874130625874310625874301625874306125874360125847361025847361205847362105847362015847362051847362058147362058417362058471362058473162058473612508473621508473625108473625018473625081473625084173625084713625084731625084736125804736215804736251804736258104736258014736258041736258047136258047316258047361258407362158407362518407362581407362584107362584017362584071362584073162584073612584703621584703625184703625814703625841703625847103625847013625847031625847036125847306215847306251847306258147306258417306258471306258473106258473016258473061258473601258437610258437612058437621058437620158437620518437620581437620584137620584317620584371620584376125084376215084376251084376250184376250814376250841376250843176250843716250843761258043762158043762518043762581043762580143762580413762580431762580437162580437612584037621584037625184037625814037625841037625840137625840317625840371625840376125843076215843076251843076258143076258413076258431076258430176258430716258430761258437062158437062518437062581437062584137062584317062584371062584370162584370612584376012584367012548360712548360172548361072548361702548361720548361725048361725408361725480361725483061725483601275483610275483612075483621075483620175483620715483620751483620754183620754813620754831620754836127054836217054836271054836270154836270514836270541836270548136270548316270548361275048362175048362715048362751048362750148362750418362750481362750483162750483612754083621754083627154083627514083627541083627540183627540813627540831627540836127548036217548036271548036275148036275418036275481036275480136275480316275480361275483062175483062715483062751483062754183062754813062754831062754830162754830612754836012574836102574836120574836210574836201574836205174836205714836205741836205748136205748316205748361250748362150748362510748362501748362507148362507418362507481362507483162507483612570483621570483625170483625710483625701483625704183625704813625704831625704836125740836215740836251740836257140836257410836257401836257408136257408316257408361257480362157480362517480362571480362574180362574810362574801362574803162574803612574830621574830625174830625714830625741830625748130625748310625748301625748306125748360125478361025478361205478362105478362015478362051478362054178362054718362054781362054783162054783612504783621504783625104783625014783625041783625047183625047813625047831625047836125407836215407836251407836254107836254017836254071836254078136254078316254078361254708362154708362514708362541708362547108362547018362547081362547083162547083612547803621547803625147803625417803625471803625478103625478013625478031625478036125478306215478306251478306254178306254718306254781306254783106254783016254783061254783601254873610254873612054873621054873620154873620514873620541873620548173620548713620548731620548736125048736215048736251048736250148736250418736250481736250487136250487316250487361254087362154087362514087362541087362540187362540817362540871362540873162540873612548073621548073625148073625418073625481073625480173625480713625480731625480736125487036215487036251487036254187036254817036254871036254870136254870316254870361254873062154873062514873062541873062548173062548713062548731062548730162548730612548736012548376102548376120548376210548376201548376205148376205418376205481376205483176205483716205483761250483762150483762510483762501483762504183762504813762504831762504837162504837612540837621540837625140837625410837625401837625408137625408317625408371625408376125480376215480376251480376254180376254810376254801376254803176254803716254803761254830762154830762514830762541830762548130762548310762548301762548307162548307612548370621548370625148370625418370625481370625483170625483710625483701625483706125483760125483670125438607125438601725438610725438617025438617205438617250438617254038617254308617254380617254386012754386102754386120754386210754386201754386207154386207514386207541386207543186207543816207543861270543862170543862710543862701543862705143862705413862705431862705438162705438612750438621750438627150438627510438627501438627504138627504318627504381627504386127540386217540386271540386275140386275410386275401386275403186275403816275403861275430862175430862715430862751430862754130862754310862754301862754308162754308612754380621754380627154380627514380627541380627543180627543810627543801627543806127543860125743861025743861205743862105743862015743862051743862057143862057413862057431862057438162057438612507438621507438625107438625017438625071438625074138625074318625074381625074386125704386215704386251704386257104386257014386257041386257043186257043816257043861257403862157403862517403862571403862574103862574013862574031862574038162574038612574308621574308625174308625714308625741308625743108625743018625743081625743086125743806215743806251743806257143806257413806257431806257438106257438016257438061257438601254738610254738612054738621054738620154738620514738620541738620547138620547318620547381620547386125047386215047386251047386250147386250417386250471386250473186250473816250473861254073862154073862514073862541073862540173862540713862540731862540738162540738612547038621547038625147038625417038625471038625470138625470318625470381625470386125473086215473086251473086254173086254713086254731086254730186254730816254730861254738062154738062514738062541738062547138062547318062547381062547380162547380612547386012543786102543786120543786210543786201543786205143786205413786205431786205437186205437816205437861250437862150437862510437862501437862504137862504317862504371862504378162504378612540378621540378625140378625410378625401378625403178625403718625403781625403786125430786215430786251430786254130786254310786254301786254307186254307816254307861254370862154370862514370862541370862543170862543710862543701862543708162543708612543780621543780625143780625413780625431780625437180625437810625437801625437806125437860125438761025438761205438762105438762015438762051438762054138762054318762054381762054387162054387612504387621504387625104387625014387625041387625043187625043817625043871625043876125403876215403876251403876254103876254013876254031876254038176254038716254038761254308762154308762514308762541308762543108762543018762543081762543087162543087612543807621543807625143807625413807625431807625438107625438017625438071625438076125438706215438706251438706254138706254318706254381706254387106254387016254387061254387601254386701254368701245367801245367081245360781245360871245360817245360812745360812475360812457360812453760812453670182453607182453601782453610782453617082453617802453617820453617824053617824503617824530617824536018724536108724536180724536187024536187204536187240536187245036187245306187245360182745361082745361802745361820745361827045361827405361827450361827453061827453601824753610824753618024753618204753618240753618247053618247503618247530618247536018245736108245736180245736182045736182405736182450736182457036182457306182457360182453761082453761802453761820453761824053761824503761824530761824537061824537601824536701284536071284536017284536107284536170284536172084536172804536172840536172845036172845306172845360127845361027845361207845362107845362017845362071845362078145362078415362078451362078453162078453612708453621708453627108453627018453627081453627084153627084513627084531627084536127804536217804536271804536278104536278014536278041536278045136278045316278045361278405362178405362718405362781405362784105362784015362784051362784053162784053612784503621784503627184503627814503627841503627845103627845013627845031627845036127845306217845306271845306278145306278415306278451306278453106278453016278453061278453601287453610287453612087453621087453620187453620817453620871453620874153620874513620874531620874536128074536218074536281074536280174536280714536280741536280745136280745316280745361287045362187045362817045362871045362870145362870415362870451362870453162870453612874053621874053628174053628714053628741053628740153628740513628740531628740536128745036218745036281745036287145036287415036287451036287450136287450316287450361287453062187453062817453062871453062874153062874513062874531062874530162874530612874536012847536102847536120847536210847536201847536208147536208417536208471536208475136208475316208475361280475362180475362810475362801475362804175362804715362804751362804753162804753612840753621840753628140753628410753628401753628407153628407513628407531628407536128470536218470536281470536284170536284710536284701536284705136284705316284705361284750362184750362814750362841750362847150362847510362847501362847503162847503612847530621847530628147530628417530628471530628475130628475310628475301628475306128475360128457361028457361208457362108457362018457362081457362084157362084517362084571362084573162084573612804573621804573628104573628014573628041573628045173628045713628045731628045736128405736218405736281405736284105736284015736284051736284057136284057316284057361284507362184507362814507362841507362845107362845017362845071362845073162845073612845703621845703628145703628415703628451703628457103628457013628457031628457036128457306218457306281457306284157306284517306284571306284573106284573016284573061284573601284537610284537612084537621084537620184537620814537620841537620845137620845317620845371620845376128045376218045376281045376280145376280415376280451376280453176280453716280453761284053762184053762814053762841053762840153762840513762840531762840537162840537612845037621845037628145037628415037628451037628450137628450317628450371628450376128453076218453076281453076284153076284513076284531076284530176284530716284530761284537062184537062814537062841537062845137062845317062845371062845370162845370612845376012845367012485360712485360172485361072485361702485361720485361724085361724805361724850361724853061724853601274853610274853612074853621074853620174853620714853620741853620748153620748513620748531620748536127048536217048536271048536270148536270418536270481536270485136270485316270485361274085362174085362714085362741085362740185362740815362740851362740853162740853612748053621748053627148053627418053627481053627480153627480513627480531627480536127485036217485036271485036274185036274815036274851036274850136274850316274850361274853062174853062714853062741853062748153062748513062748531062748530162748530612748536012478536102478536120478536210478536201478536204178536204718536204781536204785136204785316204785361240785362140785362410785362401785362407185362407815362407851362407853162407853612470853621470853624170853624710853624701853624708153624708513624708531624708536124780536214780536241780536247180536247810536247801536247805136247805316247805361247850362147850362417850362471850362478150362478510362478501362478503162478503612478530621478530624178530624718530624781530624785130624785310624785301624785306124785360124875361024875361204875362104875362014875362041875362048175362048715362048751362048753162048753612408753621408753624108753624018753624081753624087153624087513624087531624087536124807536214807536241807536248107536248017536248071536248075136248075316248075361248705362148705362418705362481705362487105362487015362487051362487053162487053612487503621487503624187503624817503624871503624875103624875013624875031624875036124875306214875306241875306248175306248715306248751306248753106248753016248753061248753601248573610248573612048573621048573620148573620418573620481573620485173620485713620485731620485736124085736214085736241085736240185736240815736240851736240857136240857316240857361248057362148057362418057362481057362480157362480517362480571362480573162480573612485073621485073624185073624815073624851073624850173624850713624850731624850736124857036214857036241857036248157036248517036248571036248570136248570316248570361248573062148573062418573062481573062485173062485713062485731062485730162485730612485736012485376102485376120485376210485376201485376204185376204815376204851376204853176204853716204853761240853762140853762410853762401853762408153762408513762408531762408537162408537612480537621480537624180537624810537624801537624805137624805317624805371624805376124850376214850376241850376248150376248510376248501376248503176248503716248503761248530762148530762418530762481530762485130762485310762485301762485307162485307612485370621485370624185370624815370624851370624853170624853710624853701624853706124853760124853670124583607124583601724583610724583617024583617204583617240583617245083617245803617245830617245836012745836102745836120745836210745836201745836207145836207415836207451836207458136207458316207458361270458362170458362710458362701458362704158362704518362704581362704583162704583612740583621740583627140583627410583627401583627405183627405813627405831627405836127450836217450836271450836274150836274510836274501836274508136274508316274508361274580362174580362714580362741580362745180362745810362745801362745803162745803612745830621745830627145830627415830627451830627458130627458310627458301627458306127458360124758361024758361204758362104758362014758362041758362047158362047518362047581362047583162047583612407583621407583624107583624017583624071583624075183624075813624075831624075836124705836214705836241705836247105836247015836247051836247058136247058316247058361247508362147508362417508362471508362475108362475018362475081362475083162475083612475803621475803624175803624715803624751803624758103624758013624758031624758036124758306214758306241758306247158306247518306247581306247583106247583016247583061247583601245783610245783612045783621045783620145783620415783620451783620457183620457813620457831620457836124057836214057836241057836240157836240517836240571836240578136240578316240578361245078362145078362415078362451078362450178362450718362450781362450783162450783612457083621457083624157083624517083624571083624570183624570813624570831624570836124578036214578036241578036245178036245718036245781036245780136245780316245780361245783062145783062415783062451783062457183062457813062457831062457830162457830612457836012458736102458736120458736210458736201458736204158736204518736204581736204587136204587316204587361240587362140587362410587362401587362405187362405817362405871362405873162405873612450873621450873624150873624510873624501873624508173624508713624508731624508736124580736214580736241580736245180736245810736245801736245807136245807316245807361245870362145870362415870362451870362458170362458710362458701362458703162458703612458730621458730624158730624518730624581730624587130624587310624587301624587306124587360124583761024583761204583762104583762014583762041583762045183762045813762045831762045837162045837612405837621405837624105837624015837624051837624058137624058317624058371624058376124508376214508376241508376245108376245018376245081376245083176245083716245083761245803762145803762415803762451803762458103762458013762458031762458037162458037612458307621458307624158307624518307624581307624583107624583017624583071624583076124583706214583706241583706245183706245813706245831706245837106245837016245837061245837601245836701245386071245386017245386107245386170245386172045386172405386172450386172453086172453806172453860127453861027453861207453862107453862017453862071453862074153862074513862074531862074538162074538612704538621704538627104538627014538627041538627045138627045318627045381627045386127405386217405386271405386274105386274015386274051386274053186274053816274053861274503862174503862714503862741503862745103862745013862745031862745038162745038612745308621745308627145308627415308627451308627453108627453018627453081627453086127453806217453806271453806274153806274513806274531806274538106274538016274538061274538601247538610247538612047538621047538620147538620417538620471538620475138620475318620475381620475386124075386214075386241075386240175386240715386240751386240753186240753816240753861247053862147053862417053862471053862470153862470513862470531862470538162470538612475038621475038624175038624715038624751038624750138624750318624750381624750386124753086214753086241753086247153086247513086247531086247530186247530816247530861247538062147538062417538062471538062475138062475318062475381062475380162475380612475386012457386102457386120457386210457386201457386204157386204517386204571386204573186204573816204573861240573862140573862410573862401573862405173862405713862405731862405738162405738612450738621450738624150738624510738624501738624507138624507318624507381624507386124570386214570386241570386245170386245710386245701386245703186245703816245703861245730862145730862415730862451730862457130862457310862457301862457308162457308612457380621457380624157380624517380624571380624573180624573810624573801624573806124573860124537861024537861204537862104537862014537862041537862045137862045317862045371862045378162045378612405378621405378624105378624015378624051378624053178624053718624053781624053786124503786214503786241503786245103786245013786245031786245037186245037816245037861245307862145307862415307862451307862453107862453017862453071862453078162453078612453708621453708624153708624513708624531708624537108624537018624537081624537086124537806214537806241537806245137806245317806245371806245378106245378016245378061245378601245387610245387612045387621045387620145387620415387620451387620453187620453817620453871620453876124053876214053876241053876240153876240513876240531876240538176240538716240538761245038762145038762415038762451038762450138762450318762450381762450387162450387612453087621453087624153087624513087624531087624530187624530817624530871624530876124538076214538076241538076245138076245318076245381076245380176245380716245380761245387062145387062415387062451387062453187062453817062453871062453870162453870612453876012453867012453687012435678012435670812435607812435608712435608172435608127435608124735608124375608124357608124356701824356071824356017824356107824356170824356178024356178204356178240356178243056178243506178243560187243561087243561807243561870243561872043561872403561872430561872435061872435601827435610827435618027435618207435618270435618274035618274305618274350618274356018247356108247356180247356182047356182407356182470356182473056182473506182473560182437561082437561802437561820437561824037561824307561824370561824375061824375601824357610824357618024357618204357618240357618243057618243507618243570618243576018243567012843560712843560172843561072843561702843561720843561728043561728403561728430561728435061728435601278435610278435612078435621078435620178435620718435620781435620784135620784315620784351620784356127084356217084356271084356270184356270814356270841356270843156270843516270843561278043562178043562718043562781043562780143562780413562780431562780435162780435612784035621784035627184035627814035627841035627840135627840315627840351627840356127843056217843056271843056278143056278413056278431056278430156278430516278430561278435062178435062718435062781435062784135062784315062784351062784350162784350612784356012874356102874356120874356210874356201874356208174356208714356208741356208743156208743516208743561280743562180743562810743562801743562807143562807413562807431562807435162807435612870435621870435628170435628710435628701435628704135628704315628704351628704356128740356218740356281740356287140356287410356287401356287403156287403516287403561287430562187430562817430562871430562874130562874310562874301562874305162874305612874350621874350628174350628714350628741350628743150628743510628743501628743506128743560128473561028473561208473562108473562018473562081473562084173562084713562084731562084735162084735612804735621804735628104735628014735628041735628047135628047315628047351628047356128407356218407356281407356284107356284017356284071356284073156284073516284073561284703562184703562814703562841703562847103562847013562847031562847035162847035612847305621847305628147305628417305628471305628473105628473015628473051628473056128473506218473506281473506284173506284713506284731506284735106284735016284735061284735601284375610284375612084375621084375620184375620814375620841375620843175620843715620843751620843756128043756218043756281043756280143756280413756280431756280437156280437516280437561284037562184037562814037562841037562840137562840317562840371562840375162840375612843075621843075628143075628413075628431075628430175628430715628430751628430756128437056218437056281437056284137056284317056284371056284370156284370516284370561284375062184375062814375062841375062843175062843715062843751062843750162843750612843756012843576102843576120843576210843576201843576208143576208413576208431576208435176208435716208435761280435762180435762810435762801435762804135762804315762804351762804357162804357612840357621840357628140357628410357628401357628403157628403517628403571628403576128430576218430576281430576284130576284310576284301576284305176284305716284305761284350762184350762814350762841350762843150762843510762843501762843507162843507612843570621843570628143570628413570628431570628435170628435710628435701628435706128435760128435670124835607124835601724835610724835617024835617204835617240835617248035617248305617248350617248356012748356102748356120748356210748356201748356207148356207418356207481356207483156207483516207483561270483562170483562710483562701483562704183562704813562704831562704835162704835612740835621740835627140835627410835627401835627408135627408315627408351627408356127480356217480356271480356274180356274810356274801356274803156274803516274803561274830562174830562714830562741830562748130562748310562748301562748305162748305612748350621748350627148350627418350627481350627483150627483510627483501627483506127483560124783561024783561204783562104783562014783562041783562047183562047813562047831562047835162047835612407835621407835624107835624017835624071835624078135624078315624078351624078356124708356214708356241708356247108356247018356247081356247083156247083516247083561247803562147803562417803562471803562478103562478013562478031562478035162478035612478305621478305624178305624718305624781305624783105624783015624783051624783056124783506214783506241783506247183506247813506247831506247835106247835016247835061247835601248735610248735612048735621048735620148735620418735620481735620487135620487315620487351620487356124087356214087356241087356240187356240817356240871356240873156240873516240873561248073562148073562418073562481073562480173562480713562480731562480735162480735612487035621487035624187035624817035624871035624870135624870315624870351624870356124873056214873056241873056248173056248713056248731056248730156248730516248730561248735062148735062418735062481735062487135062487315062487351062487350162487350612487356012483756102483756120483756210483756201483756204183756204813756204831756204837156204837516204837561240837562140837562410837562401837562408137562408317562408371562408375162408375612480375621480375624180375624810375624801375624803175624803715624803751624803756124830756214830756241830756248130756248310756248301756248307156248307516248307561248370562148370562418370562481370562483170562483710562483701562483705162483705612483750621483750624183750624813750624831750624837150624837510624837501624837506124837560124835761024835761204835762104835762014835762041835762048135762048315762048351762048357162048357612408357621408357624108357624018357624081357624083157624083517624083571624083576124803576214803576241803576248103576248013576248031576248035176248035716248035761248305762148305762418305762481305762483105762483015762483051762483057162483057612483507621483507624183507624813507624831507624835107624835017624835071624835076124835706214835706241835706248135706248315706248351706248357106248357016248357061248357601248356701243856071243856017243856107243856170243856172043856172403856172430856172438056172438506172438560127438561027438561207438562107438562017438562071438562074138562074318562074381562074385162074385612704385621704385627104385627014385627041385627043185627043815627043851627043856127403856217403856271403856274103856274013856274031856274038156274038516274038561274308562174308562714308562741308562743108562743018562743081562743085162743085612743805621743805627143805627413805627431805627438105627438015627438051627438056127438506217438506271438506274138506274318506274381506274385106274385016274385061274385601247385610247385612047385621047385620147385620417385620471385620473185620473815620473851620473856124073856214073856241073856240173856240713856240731856240738156240738516240738561247038562147038562417038562471038562470138562470318562470381562470385162470385612473085621473085624173085624713085624731085624730185624730815624730851624730856124738056214738056241738056247138056247318056247381056247380156247380516247380561247385062147385062417385062471385062473185062473815062473851062473850162473850612473856012437856102437856120437856210437856201437856204137856204317856204371856204378156204378516204378561240378562140378562410378562401378562403178562403718562403781562403785162403785612430785621430785624130785624310785624301785624307185624307815624307851624307856124370856214370856241370856243170856243710856243701856243708156243708516243708561243780562143780562413780562431780562437180562437810562437801562437805162437805612437850621437850624137850624317850624371850624378150624378510624378501624378506124378560124387561024387561204387562104387562014387562041387562043187562043817562043871562043875162043875612403875621403875624103875624013875624031875624038175624038715624038751624038756124308756214308756241308756243108756243018756243081756243087156243087516243087561243807562143807562413807562431807562438107562438017562438071562438075162438075612438705621438705624138705624318705624381705624387105624387015624387051624387056124387506214387506241387506243187506243817506243871506243875106243875016243875061243875601243857610243857612043857621043857620143857620413857620431857620438157620438517620438571620438576124038576214038576241038576240138576240318576240381576240385176240385716240385761243085762143085762413085762431085762430185762430815762430851762430857162430857612438057621438057624138057624318057624381057624380157624380517624380571624380576124385076214385076241385076243185076243815076243851076243850176243850716243850761243857062143857062413857062431857062438157062438517062438571062438570162438570612438576012438567012435860712435860172435861072435861702435861720435861724035861724305861724350861724358061724358601274358610274358612074358621074358620174358620714358620741358620743158620743518620743581620743586127043586217043586271043586270143586270413586270431586270435186270435816270435861274035862174035862714035862741035862740135862740315862740351862740358162740358612743058621743058627143058627413058627431058627430158627430518627430581627430586127435086217435086271435086274135086274315086274351086274350186274350816274350861274358062174358062714358062741358062743158062743518062743581062743580162743580612743586012473586102473586120473586210473586201473586204173586204713586204731586204735186204735816204735861240735862140735862410735862401735862407135862407315862407351862407358162407358612470358621470358624170358624710358624701358624703158624703518624703581624703586124730586214730586241730586247130586247310586247301586247305186247305816247305861247350862147350862417350862471350862473150862473510862473501862473508162473508612473580621473580624173580624713580624731580624735180624735810624735801624735806124735860124375861024375861204375862104375862014375862041375862043175862043715862043751862043758162043758612403758621403758624103758624013758624031758624037158624037518624037581624037586124307586214307586241307586243107586243017586243071586243075186243075816243075861243705862143705862413705862431705862437105862437015862437051862437058162437058612437508621437508624137508624317508624371508624375108624375018624375081624375086124375806214375806241375806243175806243715806243751806243758106243758016243758061243758601243578610243578612043578621043578620143578620413578620431578620435178620435718620435781620435786124035786214035786241035786240135786240315786240351786240357186240357816240357861243057862143057862413057862431057862430157862430517862430571862430578162430578612435078621435078624135078624315078624351078624350178624350718624350781624350786124357086214357086241357086243157086243517086243571086243570186243570816243570861243578062143578062413578062431578062435178062435718062435781062435780162435780612435786012435876102435876120435876210435876201435876204135876204315876204351876204358176204358716204358761240358762140358762410358762401358762403158762403518762403581762403587162403587612430587621430587624130587624310587624301587624305187624305817624305871624305876124350876214350876241350876243150876243510876243501876243508176243508716243508761243580762143580762413580762431580762435180762435810762435801762435807162435807612435870621435870624135870624315870624351870624358170624358710624358701624358706124358760124358670124356870124365870123468570123468750123467850123467580123467508123467501823467501283467501238467501234867501234687051234678051234670851234607851234608751234608571234608517234608512734608512374608512347608512346705812346075812346057812346058712346058172346058127346058123746058123476058123467051823460751823460571823460517823460518723460518273460518237460518234760518234670512834607512834605712834605172834605127834605128734605128374605128347605128346705123846075123846057123846051723846051273846051237846051238746051238476051238467051234860751234860571234860517234860512734860512374860512347860512348760512348670512346870152346780152346708152346078152346087152346081752346081572346081527346081523746081523476081523467018523460718523460178523461078523461708523461780523461785023461785203461785230461785234061785234601875234610875234618075234618705234618750234618752034618752304618752340618752346018572346108572346180572346185072346185702346185720346185723046185723406185723460185273461085273461805273461850273461852073461852703461852730461852734061852734601852374610852374618052374618502374618520374618523074618523704618523740618523746018523476108523476180523476185023476185203476185230476185234076185234706185234760185234670158234607158234601758234610758234617058234617508234617580234617582034617582304617582340617582346015782346105782346150782346157082346157802346157820346157823046157823406157823460158723461058723461508723461580723461587023461587203461587230461587234061587234601582734610582734615082734615802734615820734615827034615827304615827340615827346015823746105823746150823746158023746158203746158230746158237046158237406158237460158234761058234761508234761580234761582034761582304761582340761582347061582347601582346701528346071528346017528346107528346170528346175028346175208346175280346175283046175283406175283460157283461057283461507283461570283461572083461572803461572830461572834061572834601527834610527834615027834615207834615270834615278034615278304615278340615278346015287346105287346150287346152087346152807346152870346152873046152873406152873460152837461052837461502837461520837461528037461528307461528370461528374061528374601528347610528347615028347615208347615280347615283047615283407615283470615283476015283467015238460715238460175238461075238461705238461750238461752038461752308461752380461752384061752384601572384610572384615072384615702384615720384615723084615723804615723840615723846015273846105273846150273846152073846152703846152730846152738046152738406152738460152378461052378461502378461520378461523078461523708461523780461523784061523784601523874610523874615023874615203874615230874615238074615238704615238740615238746015238476105238476150238476152038476152308476152380476152384076152384706152384760152384670152348607152348601752348610752348617052348617502348617520348617523048617523408617523480617523486015723486105723486150723486157023486157203486157230486157234086157234806157234860152734861052734861502734861520734861527034861527304861527340861527348061527348601523748610523748615023748615203748615230748615237048615237408615237480615237486015234786105234786150234786152034786152304786152340786152347086152347806152347860152348761052348761502348761520348761523048761523408761523480761523487061523487601523486701523468701253467801253467081253460781253460871253460817253460812753460812573460812537460812534760812534670182534607182534601782534610782534617082534617802534617820534617825034617825304617825340617825346018725346108725346180725346187025346187205346187250346187253046187253406187253460182753461082753461802753461820753461827053461827503461827530461827534061827534601825734610825734618025734618205734618250734618257034618257304618257340618257346018253746108253746180253746182053746182503746182530746182537046182537406182537460182534761082534761802534761820534761825034761825304761825340761825347061825347601825346701285346071285346017285346107285346170285346172085346172805346172850346172853046172853406172853460127853461027853461207853462107853462017853462071853462078153462078513462078531462078534162078534612708534621708534627108534627018534627081534627085134627085314627085341627085346127805346217805346271805346278105346278015346278051346278053146278053416278053461278503462178503462718503462781503462785103462785013462785031462785034162785034612785304621785304627185304627815304627851304627853104627853014627853041627853046127853406217853406271853406278153406278513406278531406278534106278534016278534061278534601287534610287534612087534621087534620187534620817534620871534620875134620875314620875341620875346128075346218075346281075346280175346280715346280751346280753146280753416280753461287053462187053462817053462871053462870153462870513462870531462870534162870534612875034621875034628175034628715034628751034628750134628750314628750341628750346128753046218753046281753046287153046287513046287531046287530146287530416287530461287534062187534062817534062871534062875134062875314062875341062875340162875340612875346012857346102857346120857346210857346201857346208157346208517346208571346208573146208573416208573461280573462180573462810573462801573462805173462805713462805731462805734162805734612850734621850734628150734628510734628501734628507134628507314628507341628507346128570346218570346281570346285170346285710346285701346285703146285703416285703461285730462185730462815730462851730462857130462857310462857301462857304162857304612857340621857340628157340628517340628571340628573140628573410628573401628573406128573460128537461028537461208537462108537462018537462081537462085137462085317462085371462085374162085374612805374621805374628105374628015374628051374628053174628053714628053741628053746128503746218503746281503746285103746285013746285031746285037146285037416285037461285307462185307462815307462851307462853107462853017462853071462853074162853074612853704621853704628153704628513704628531704628537104628537014628537041628537046128537406218537406281537406285137406285317406285371406285374106285374016285374061285374601285347610285347612085347621085347620185347620815347620851347620853147620853417620853471620853476128053476218053476281053476280153476280513476280531476280534176280534716280534761285034762185034762815034762851034762850134762850314762850341762850347162850347612853047621853047628153047628513047628531047628530147628530417628530471628530476128534076218534076281534076285134076285314076285341076285340176285340716285340761285347062185347062815347062851347062853147062853417062853471062853470162853470612853476012853467012583460712583460172583461072583461702583461720583461725083461725803461725830461725834061725834601275834610275834612075834621075834620175834620715834620751834620758134620758314620758341620758346127058346217058346271058346270158346270518346270581346270583146270583416270583461275083462175083462715083462751083462750183462750813462750831462750834162750834612758034621758034627158034627518034627581034627580134627580314627580341627580346127583046217583046271583046275183046275813046275831046275830146275830416275830461275834062175834062715834062751834062758134062758314062758341062758340162758340612758346012578346102578346120578346210578346201578346205178346205718346205781346205783146205783416205783461250783462150783462510783462501783462507183462507813462507831462507834162507834612570834621570834625170834625710834625701834625708134625708314625708341625708346125780346215780346251780346257180346257810346257801346257803146257803416257803461257830462157830462517830462571830462578130462578310462578301462578304162578304612578340621578340625178340625718340625781340625783140625783410625783401625783406125783460125873461025873461205873462105873462015873462051873462058173462058713462058731462058734162058734612508734621508734625108734625018734625081734625087134625087314625087341625087346125807346215807346251807346258107346258017346258071346258073146258073416258073461258703462158703462518703462581703462587103462587013462587031462587034162587034612587304621587304625187304625817304625871304625873104625873014625873041625873046125873406215873406251873406258173406258713406258731406258734106258734016258734061258734601258374610258374612058374621058374620158374620518374620581374620583174620583714620583741620583746125083746215083746251083746250183746250813746250831746250837146250837416250837461258037462158037462518037462581037462580137462580317462580371462580374162580374612583074621583074625183074625813074625831074625830174625830714625830741625830746125837046215837046251837046258137046258317046258371046258370146258370416258370461258374062158374062518374062581374062583174062583714062583741062583740162583740612583746012583476102583476120583476210583476201583476205183476205813476205831476205834176205834716205834761250834762150834762510834762501834762508134762508314762508341762508347162508347612580347621580347625180347625810347625801347625803147625803417625803471625803476125830476215830476251830476258130476258310476258301476258304176258304716258304761258340762158340762518340762581340762583140762583410762583401762583407162583407612583470621583470625183470625813470625831470625834170625834710625834701625834706125834760125834670125384607125384601725384610725384617025384617205384617250384617253084617253804617253840617253846012753846102753846120753846210753846201753846207153846207513846207531846207538146207538416207538461270538462170538462710538462701538462705138462705318462705381462705384162705384612750384621750384627150384627510384627501384627503184627503814627503841627503846127530846217530846271530846275130846275310846275301846275308146275308416275308461275380462175380462715380462751380462753180462753810462753801462753804162753804612753840621753840627153840627513840627531840627538140627538410627538401627538406127538460125738461025738461205738462105738462015738462051738462057138462057318462057381462057384162057384612507384621507384625107384625017384625071384625073184625073814625073841625073846125703846215703846251703846257103846257013846257031846257038146257038416257038461257308462157308462517308462571308462573108462573018462573081462573084162573084612573804621573804625173804625713804625731804625738104625738014625738041625738046125738406215738406251738406257138406257318406257381406257384106257384016257384061257384601253784610253784612053784621053784620153784620513784620531784620537184620537814620537841620537846125037846215037846251037846250137846250317846250371846250378146250378416250378461253078462153078462513078462531078462530178462530718462530781462530784162530784612537084621537084625137084625317084625371084625370184625370814625370841625370846125378046215378046251378046253178046253718046253781046253780146253780416253780461253784062153784062513784062531784062537184062537814062537841062537840162537840612537846012538746102538746120538746210538746201538746205138746205318746205381746205387146205387416205387461250387462150387462510387462501387462503187462503817462503871462503874162503874612530874621530874625130874625310874625301874625308174625308714625308741625308746125380746215380746251380746253180746253810746253801746253807146253807416253807461253870462153870462513870462531870462538170462538710462538701462538704162538704612538740621538740625138740625318740625381740625387140625387410625387401625387406125387460125384761025384761205384762105384762015384762051384762053184762053814762053841762053847162053847612503847621503847625103847625013847625031847625038147625038417625038471625038476125308476215308476251308476253108476253018476253081476253084176253084716253084761253804762153804762513804762531804762538104762538014762538041762538047162538047612538407621538407625138407625318407625381407625384107625384017625384071625384076125384706215384706251384706253184706253814706253841706253847106253847016253847061253847601253846701253486071253486017253486107253486170253486172053486172503486172530486172534086172534806172534860127534861027534861207534862107534862017534862071534862075134862075314862075341862075348162075348612705348621705348627105348627015348627051348627053148627053418627053481627053486127503486217503486271503486275103486275013486275031486275034186275034816275034861275304862175304862715304862751304862753104862753014862753041862753048162753048612753408621753408627153408627513408627531408627534108627534018627534081627534086127534806217534806271534806275134806275314806275341806275348106275348016275348061275348601257348610257348612057348621057348620157348620517348620571348620573148620573418620573481620573486125073486215073486251073486250173486250713486250731486250734186250734816250734861257034862157034862517034862571034862570134862570314862570341862570348162570348612573048621573048625173048625713048625731048625730148625730418625730481625730486125734086215734086251734086257134086257314086257341086257340186257340816257340861257348062157348062517348062571348062573148062573418062573481062573480162573480612573486012537486102537486120537486210537486201537486205137486205317486205371486205374186205374816205374861250374862150374862510374862501374862503174862503714862503741862503748162503748612530748621530748625130748625310748625301748625307148625307418625307481625307486125370486215370486251370486253170486253710486253701486253704186253704816253704861253740862153740862513740862531740862537140862537410862537401862537408162537408612537480621537480625137480625317480625371480625374180625374810625374801625374806125374860125347861025347861205347862105347862015347862051347862053147862053417862053471862053478162053478612503478621503478625103478625013478625031478625034178625034718625034781625034786125304786215304786251304786253104786253014786253041786253047186253047816253047861253407862153407862513407862531407862534107862534017862534071862534078162534078612534708621534708625134708625314708625341708625347108625347018625347081625347086125347806215347806251347806253147806253417806253471806253478106253478016253478061253478601253487610253487612053487621053487620153487620513487620531487620534187620534817620534871620534876125034876215034876251034876250134876250314876250341876250348176250348716250348761253048762153048762513048762531048762530148762530418762530481762530487162530487612534087621534087625134087625314087625341087625340187625340817625340871625340876125348076215348076251348076253148076253418076253481076253480176253480716253480761253487062153487062513487062531487062534187062534817062534871062534870162534870612534876012534867012534687012354678012354670812354607812354608712354608172354608127354608123754608123574608123547608123546701823546071823546017823546107823546170823546178023546178203546178230546178235046178235406178235460187235461087235461807235461870235461872035461872305461872350461872354061872354601827354610827354618027354618207354618270354618273054618273504618273540618273546018237546108237546180237546182037546182307546182370546182375046182375406182375460182357461082357461802357461820357461823057461823507461823570461823574061823574601823547610823547618023547618203547618230547618235047618235407618235470618235476018235467012835460712835460172835461072835461702835461720835461728035461728305461728350461728354061728354601278354610278354612078354621078354620178354620718354620781354620783154620783514620783541620783546127083546217083546271083546270183546270813546270831546270835146270835416270835461278035462178035462718035462781035462780135462780315462780351462780354162780354612783054621783054627183054627813054627831054627830154627830514627830541627830546127835046217835046271835046278135046278315046278351046278350146278350416278350461278354062178354062718354062781354062783154062783514062783541062783540162783540612783546012873546102873546120873546210873546201873546208173546208713546208731546208735146208735416208735461280735462180735462810735462801735462807135462807315462807351462807354162807354612870354621870354628170354628710354628701354628703154628703514628703541628703546128730546218730546281730546287130546287310546287301546287305146287305416287305461287350462187350462817350462871350462873150462873510462873501462873504162873504612873540621873540628173540628713540628731540628735140628735410628735401628735406128735460128375461028375461208375462108375462018375462081375462083175462083715462083751462083754162083754612803754621803754628103754628013754628031754628037154628037514628037541628037546128307546218307546281307546283107546283017546283071546283075146283075416283075461283705462183705462813705462831705462837105462837015462837051462837054162837054612837504621837504628137504628317504628371504628375104628375014628375041628375046128375406218375406281375406283175406283715406283751406283754106283754016283754061283754601283574610283574612083574621083574620183574620813574620831574620835174620835714620835741620835746128035746218035746281035746280135746280315746280351746280357146280357416280357461283057462183057462813057462831057462830157462830517462830571462830574162830574612835074621835074628135074628315074628351074628350174628350714628350741628350746128357046218357046281357046283157046283517046283571046283570146283570416283570461283574062183574062813574062831574062835174062835714062835741062835740162835740612835746012835476102835476120835476210835476201835476208135476208315476208351476208354176208354716208354761280354762180354762810354762801354762803154762803514762803541762803547162803547612830547621830547628130547628310547628301547628305147628305417628305471628305476128350476218350476281350476283150476283510476283501476283504176283504716283504761283540762183540762813540762831540762835140762835410762835401762835407162835407612835470621835470628135470628315470628351470628354170628354710628354701628354706128354760128354670123854607123854601723854610723854617023854617203854617230854617238054617238504617238540617238546012738546102738546120738546210738546201738546207138546207318546207381546207385146207385416207385461270385462170385462710385462701385462703185462703815462703851462703854162703854612730854621730854627130854627310854627301854627308154627308514627308541627308546127380546217380546271380546273180546273810546273801546273805146273805416273805461273850462173850462713850462731850462738150462738510462738501462738504162738504612738540621738540627138540627318540627381540627385140627385410627385401627385406127385460123785461023785461203785462103785462013785462031785462037185462037815462037851462037854162037854612307854621307854623107854632107854631207854631027854631072854631078254631078524631078542631078546230178546320178546302178546301278546301728546301782546301785246301785426301785462307185463207185463027185463072185463071285463071825463071852463071854263071854623078154632078154630278154630728154630782154630781254630781524630781542630781546230785146320785146302785146307285146307825146307852146307851246307851426307851462307854163207854163027854163072854163078254163078524163078542163078541263078541623078546123708546213708546231708546321708546312708546317208546317028546317082546317085246317085426317085462371085463271085463721085463712085463710285463710825463710852463710854263710854623701854632701854637201854637021854637012854637018254637018524637018542637018546237081546327081546372081546370281546370821546370812546370815246370815426370815462370851463270851463720851463702851463708251463708521463708512463708514263708514623708541632708541637208541637028541637082541637085241637085421637085412637085416237085461237805462137805462317805463217805463127805463172805463178205463178025463178052463178054263178054623718054632718054637218054637128054637182054637180254637180524637180542637180546237810546327810546372810546378210546378120546378102546378105246378105426378105462378015463278015463728015463782015463780215463780125463780152463780154263780154623780514632780514637280514637820514637802514637805214637805124637805142637805146237805416327805416372805416378205416378025416378052416378054216378054126378054162378054612378504621378504623178504632178504631278504631728504631782504631785204631785024631785042631785046237185046327185046372185046371285046371825046371852046371850246371850426371850462378150463278150463728150463782150463781250463781520463781502463781504263781504623785104632785104637285104637825104637852104637851204637851024637851042637851046237850146327850146372850146378250146378520146378502146378501246378501426378501462378504163278504163728504163782504163785204163785024163785042163785041263785041623785046123785406213785406231785406321785406312785406317285406317825406317852406317854206317854026317854062371854063271854063721854063712854063718254063718524063718542063718540263718540623781540632781540637281540637821540637812540637815240637815420637815402637815406237851406327851406372851406378251406378521406378512406378514206378514026378514062378541063278541063728541063782541063785241063785421063785412063785410263785410623785401632785401637285401637825401637852401637854201637854021637854012637854016237854061237854601238754610238754612038754621038754620138754620318754620381754620387154620387514620387541620387546123087546213087546231087546321087546312087546310287546310827546310872546310875246310875426310875462301875463201875463021875463012875463018275463018725463018752463018754263018754623081754632081754630281754630821754630812754630817254630817524630817542630817546230871546320871546302871546308271546308721546308712546308715246308715426308715462308751463208751463028751463082751463087251463087521463087512463087514263087514623087541632087541630287541630827541630872541630875241630875421630875412630875416230875461238075462138075462318075463218075463128075463182075463180275463180725463180752463180754263180754623810754632810754638210754638120754638102754638107254638107524638107542638107546238017546328017546382017546380217546380127546380172546380175246380175426380175462380715463280715463820715463802715463807215463807125463807152463807154263807154623807514632807514638207514638027514638072514638075214638075124638075142638075146238075416328075416382075416380275416380725416380752416380754216380754126380754162380754612387054621387054623187054632187054631287054631827054631872054631870254631870524631870542631870546238170546328170546382170546381270546381720546381702546381705246381705426381705462387105463287105463827105463872105463871205463871025463871052463871054263871054623870154632870154638270154638720154638702154638701254638701524638701542638701546238705146328705146382705146387205146387025146387052146387051246387051426387051462387054163287054163827054163872054163870254163870524163870542163870541263870541623870546123875046213875046231875046321875046312875046318275046318725046318752046318750246318750426318750462381750463281750463821750463812750463817250463817520463817502463817504263817504623871504632871504638271504638721504638712504638715204638715024638715042638715046238751046328751046382751046387251046387521046387512046387510246387510426387510462387501463287501463827501463872501463875201463875021463875012463875014263875014623875041632875041638275041638725041638752041638750241638750421638750412638750416238750461238754062138754062318754063218754063128754063182754063187254063187524063187542063187540263187540623817540632817540638217540638127540638172540638175240638175420638175402638175406238715406328715406382715406387215406387125406387152406387154206387154026387154062387514063287514063827514063872514063875214063875124063875142063875140263875140623875410632875410638275410638725410638752410638754210638754120638754102638754106238754016328754016382754016387254016387524016387542016387540216387540126387540162387540612387546012385746102385746120385746210385746201385746203185746203815746203851746203857146203857416203857461230857462130857462310857463210857463120857463102857463108257463108527463108572463108574263108574623018574632018574630218574630128574630182574630185274630185724630185742630185746230815746320815746302815746308215746308125746308152746308157246308157426308157462308517463208517463028517463082517463085217463085127463085172463085174263085174623085714632085714630285714630825714630852714630857214630857124630857142630857146230857416320857416302857416308257416308527416308572416308574216308574126308574162308574612380574621380574623180574632180574631280574631820574631802574631805274631805724631805742631805746238105746328105746382105746381205746381025746381052746381057246381057426381057462380157463280157463820157463802157463801257463801527463801572463801574263801574623805174632805174638205174638025174638052174638051274638051724638051742638051746238057146328057146382057146380257146380527146380572146380571246380571426380571462380574163280574163820574163802574163805274163805724163805742163805741263805741623805746123850746213850746231850746321850746312850746318250746318520746318502746318507246318507426318507462381507463281507463821507463812507463815207463815027463815072463815074263815074623851074632851074638251074638521074638512074638510274638510724638510742638510746238501746328501746382501746385201746385021746385012746385017246385017426385017462385071463285071463825071463852071463850271463850721463850712463850714263850714623850741632850741638250741638520741638502741638507241638507421638507412638507416238507461238570462138570462318570463218570463128570463182570463185270463185720463185702463185704263185704623815704632815704638215704638125704638152704638157204638157024638157042638157046238517046328517046382517046385217046385127046385172046385170246385170426385170462385710463285710463825710463852710463857210463857120463857102463857104263857104623857014632857014638257014638527014638572014638570214638570124638570142638570146238570416328570416382570416385270416385720416385702416385704216385704126385704162385704612385740621385740623185740632185740631285740631825740631852740631857240631857420631857402631857406238157406328157406382157406381257406381527406381572406381574206381574026381574062385174063285174063825174063852174063851274063851724063851742063851740263851740623857140632857140638257140638527140638572140638571240638571420638571402638571406238574106328574106382574106385274106385724106385742106385741206385741026385741062385740163285740163825740163852740163857240163857420163857402163857401263857401623857406123857460123854761023854761203854762103854762013854762031854762038154762038514762038541762038547162038547612308547621308547623108547632108547631208547631028547631082547631085247631085427631085472631085476230185476320185476302185476301285476301825476301852476301854276301854726301854762308154763208154763028154763082154763081254763081524763081542763081547263081547623085147632085147630285147630825147630852147630851247630851427630851472630851476230854176320854176302854176308254176308524176308542176308541276308541726308541762308547163208547163028547163082547163085247163085427163085472163085471263085471623085476123805476213805476231805476321805476312805476318205476318025476318052476318054276318054726318054762381054763281054763821054763812054763810254763810524763810542763810547263810547623801547632801547638201547638021547638012547638015247638015427638015472638015476238051476328051476382051476380251476380521476380512476380514276380514726380514762380541763280541763820541763802541763805241763805421763805412763805417263805417623805471632805471638205471638025471638052471638054271638054721638054712638054716238054761238504762138504762318504763218504763128504763182504763185204763185024763185042763185047263185047623815047632815047638215047638125047638152047638150247638150427638150472638150476238510476328510476382510476385210476385120476385102476385104276385104726385104762385014763285014763825014763852014763850214763850124763850142763850147263850147623850417632850417638250417638520417638502417638504217638504127638504172638504176238504716328504716382504716385204716385024716385042716385047216385047126385047162385047612385407621385407623185407632185407631285407631825407631852407631854207631854027631854072631854076238154076328154076382154076381254076381524076381542076381540276381540726381540762385140763285140763825140763852140763851240763851420763851402763851407263851407623854107632854107638254107638524107638542107638541207638541027638541072638541076238540176328540176382540176385240176385420176385402176385401276385401726385401762385407163285407163825407163852407163854207163854027163854072163854071263854071623854076123854706213854706231854706321854706312854706318254706318524706318542706318547206318547026318547062381547063281547063821547063812547063815247063815427063815472063815470263815470623851470632851470638251470638521470638512470638514270638514720638514702638514706238541706328541706382541706385241706385421706385412706385417206385417026385417062385471063285471063825471063852471063854271063854721063854712063854710263854710623854701632854701638254701638524701638542701638547201638547021638547012638547016238547061238547601238546701235846071235846017235846107235846170235846172035846172305846172350846172358046172358406172358460127358461027358461207358462107358462017358462071358462073158462073518462073581462073584162073584612703584621703584627103584627013584627031584627035184627035814627035841627035846127305846217305846271305846273105846273015846273051846273058146273058416273058461273508462173508462713508462731508462735108462735018462735081462735084162735084612735804621735804627135804627315804627351804627358104627358014627358041627358046127358406217358406271358406273158406273518406273581406273584106273584016273584061273584601237584610237584612037584621037584620137584620317584620371584620375184620375814620375841620375846123075846213075846231075846321075846312075846310275846310725846310752846310758246310758426310758462301758463201758463021758463012758463017258463017528463017582463017584263017584623071584632071584630271584630721584630712584630715284630715824630715842630715846230751846320751846302751846307251846307521846307512846307518246307518426307518462307581463207581463027581463072581463075281463075821463075812463075814263075814623075841632075841630275841630725841630752841630758241630758421630758412630758416230758461237058462137058462317058463217058463127058463172058463170258463170528463170582463170584263170584623710584632710584637210584637120584637102584637105284637105824637105842637105846237015846327015846372015846370215846370125846370152846370158246370158426370158462370518463270518463720518463702518463705218463705128463705182463705184263705184623705814632705814637205814637025814637052814637058214637058124637058142637058146237058416327058416372058416370258416370528416370582416370584216370584126370584162370584612375084621375084623175084632175084631275084631725084631752084631750284631750824631750842631750846237150846327150846372150846371250846371520846371502846371508246371508426371508462375108463275108463725108463752108463751208463751028463751082463751084263751084623750184632750184637250184637520184637502184637501284637501824637501842637501846237508146327508146372508146375208146375028146375082146375081246375081426375081462375084163275084163725084163752084163750284163750824163750842163750841263750841623750846123758046213758046231758046321758046312758046317258046317528046317582046317580246317580426317580462371580463271580463721580463712580463715280463715820463715802463715804263715804623751804632751804637251804637521804637512804637518204637518024637518042637518046237581046327581046372581046375281046375821046375812046375810246375810426375810462375801463275801463725801463752801463758201463758021463758012463758014263758014623758041632758041637258041637528041637582041637580241637580421637580412637580416237580461237584062137584062317584063217584063127584063172584063175284063175824063175842063175840263175840623715840632715840637215840637125840637152840637158240637158420637158402637158406237518406327518406372518406375218406375128406375182406375184206375184026375184062375814063275814063725814063752814063758214063758124063758142063758140263758140623758410632758410637258410637528410637582410637584210637584120637584102637584106237584016327584016372584016375284016375824016375842016375840216375840126375840162375840612375846012357846102357846120357846210357846201357846203157846203517846203571846203578146203578416203578461230578462130578462310578463210578463120578463102578463105278463105728463105782463105784263105784623015784632015784630215784630125784630152784630157284630157824630157842630157846230517846320517846302517846305217846305127846305172846305178246305178426305178462305718463205718463025718463052718463057218463057128463057182463057184263057184623057814632057814630257814630527814630572814630578214630578124630578142630578146230578416320578416302578416305278416305728416305782416305784216305784126305784162305784612350784621350784623150784632150784631250784631520784631502784631507284631507824631507842631507846235107846325107846352107846351207846351027846351072846351078246351078426351078462350178463250178463520178463502178463501278463501728463501782463501784263501784623507184632507184635207184635027184635072184635071284635071824635071842635071846235078146325078146352078146350278146350728146350782146350781246350781426350781462350784163250784163520784163502784163507284163507824163507842163507841263507841623507846123570846213570846231570846321570846312570846315270846315720846315702846315708246315708426315708462351708463251708463521708463512708463517208463517028463517082463517084263517084623571084632571084635271084635721084635712084635710284635710824635710842635710846235701846325701846352701846357201846357021846357012846357018246357018426357018462357081463257081463527081463572081463570281463570821463570812463570814263570814623570841632570841635270841635720841635702841635708241635708421635708412635708416235708461235780462135780462315780463215780463125780463152780463157280463157820463157802463157804263157804623517804632517804635217804635127804635172804635178204635178024635178042635178046235718046325718046352718046357218046357128046357182046357180246357180426357180462357810463257810463527810463572810463578210463578120463578102463578104263578104623578014632578014635278014635728014635782014635780214635780124635780142635780146235780416325780416352780416357280416357820416357802416357804216357804126357804162357804612357840621357840623157840632157840631257840631527840631572840631578240631578420631578402631578406235178406325178406352178406351278406351728406351782406351784206351784026351784062357184063257184063527184063572184063571284063571824063571842063571840263571840623578140632578140635278140635728140635782140635781240635781420635781402635781406235784106325784106352784106357284106357824106357842106357841206357841026357841062357840163257840163527840163572840163578240163578420163578402163578401263578401623578406123578460123587461023587461203587462103587462013587462031587462035187462035817462035871462035874162035874612305874621305874623105874632105874631205874631025874631052874631058274631058724631058742631058746230158746320158746302158746301258746301528746301582746301587246301587426301587462305187463205187463025187463052187463051287463051827463051872463051874263051874623058174632058174630258174630528174630582174630581274630581724630581742630581746230587146320587146302587146305287146305827146305872146305871246305871426305871462305874163205874163025874163052874163058274163058724163058742163058741263058741623058746123508746213508746231508746321508746312508746315208746315028746315082746315087246315087426315087462351087463251087463521087463512087463510287463510827463510872463510874263510874623501874632501874635201874635021874635012874635018274635018724635018742635018746235081746325081746352081746350281746350821746350812746350817246350817426350817462350871463250871463520871463502871463508271463508721463508712463508714263508714623508741632508741635208741635028741635082741635087241635087421635087412635087416235087461235807462135807462315807463215807463125807463152807463158207463158027463158072463158074263158074623518074632518074635218074635128074635182074635180274635180724635180742635180746235810746325810746352810746358210746358120746358102746358107246358107426358107462358017463258017463528017463582017463580217463580127463580172463580174263580174623580714632580714635280714635820714635802714635807214635807124635807142635807146235807416325807416352807416358207416358027416358072416358074216358074126358074162358074612358704621358704623158704632158704631258704631528704631582704631587204631587024631587042631587046235187046325187046352187046351287046351827046351872046351870246351870426351870462358170463258170463528170463582170463581270463581720463581702463581704263581704623587104632587104635287104635827104635872104635871204635871024635871042635871046235870146325870146352870146358270146358720146358702146358701246358701426358701462358704163258704163528704163582704163587204163587024163587042163587041263587041623587046123587406213587406231587406321587406312587406315287406315827406315872406315874206315874026315874062351874063251874063521874063512874063518274063518724063518742063518740263518740623581740632581740635281740635821740635812740635817240635817420635817402635817406235871406325871406352871406358271406358721406358712406358714206358714026358714062358741063258741063528741063582741063587241063587421063587412063587410263587410623587401632587401635287401635827401635872401635874201635874021635874012635874016235874061235874601235847610235847612035847621035847620135847620315847620351847620358147620358417620358471620358476123058476213058476231058476321058476312058476310258476310528476310582476310584276310584726310584762301584763201584763021584763012584763015284763015824763015842763015847263015847623051847632051847630251847630521847630512847630518247630518427630518472630518476230581476320581476302581476305281476305821476305812476305814276305814726305814762305841763205841763025841763052841763058241763058421763058412763058417263058417623058471632058471630258471630528471630582471630584271630584721630584712630584716230584761235084762135084762315084763215084763125084763152084763150284763150824763150842763150847263150847623510847632510847635210847635120847635102847635108247635108427635108472635108476235018476325018476352018476350218476350128476350182476350184276350184726350184762350814763250814763520814763502814763508214763508124763508142763508147263508147623508417632508417635208417635028417635082417635084217635084127635084172635084176235084716325084716352084716350284716350824716350842716350847216350847126350847162350847612358047621358047623158047632158047631258047631528047631582047631580247631580427631580472631580476235180476325180476352180476351280476351820476351802476351804276351804726351804762358104763258104763528104763582104763581204763581024763581042763581047263581047623580147632580147635280147635820147635802147635801247635801427635801472635801476235804176325804176352804176358204176358024176358042176358041276358041726358041762358047163258047163528047163582047163580247163580427163580472163580471263580471623580476123584076213584076231584076321584076312584076315284076315824076315842076315840276315840726315840762351840763251840763521840763512840763518240763518420763518402763518407263518407623581407632581407635281407635821407635812407635814207635814027635814072635814076235841076325841076352841076358241076358421076358412076358410276358410726358410762358401763258401763528401763582401763584201763584021763584012763584017263584017623584071632584071635284071635824071635842071635840271635840721635840712635840716235840761235847062135847062315847063215847063125847063152847063158247063158427063158472063158470263158470623518470632518470635218470635128470635182470635184270635184720635184702635184706235814706325814706352814706358214706358124706358142706358147206358147026358147062358417063258417063528417063582417063584217063584127063584172063584170263584170623584710632584710635284710635824710635842710635847210635847120635847102635847106235847016325847016352847016358247016358427016358472016358470216358470126358470162358470612358476012358467012354860712354860172354861072354861702354861720354861723054861723504861723540861723548061723548601273548610273548612073548621073548620173548620713548620731548620735148620735418620735481620735486127035486217035486271035486270135486270315486270351486270354186270354816270354861273054862173054862713054862731054862730154862730514862730541862730548162730548612735048621735048627135048627315048627351048627350148627350418627350481627350486127354086217354086271354086273154086273514086273541086273540186273540816273540861273548062173548062713548062731548062735148062735418062735481062735480162735480612735486012375486102375486120375486210375486201375486203175486203715486203751486203754186203754816203754861230754862130754862310754863210754863120754863102754863107254863107524863107542863107548263107548623017548632017548630217548630127548630172548630175248630175428630175482630175486230715486320715486302715486307215486307125486307152486307154286307154826307154862307514863207514863027514863072514863075214863075124863075142863075148263075148623075418632075418630275418630725418630752418630754218630754128630754182630754186230754816320754816302754816307254816307524816307542816307548216307548126307548162307548612370548621370548623170548632170548631270548631720548631702548631705248631705428631705482631705486237105486327105486372105486371205486371025486371052486371054286371054826371054862370154863270154863720154863702154863701254863701524863701542863701548263701548623705148632705148637205148637025148637052148637051248637051428637051482637051486237054186327054186372054186370254186370524186370542186370541286370541826370541862370548163270548163720548163702548163705248163705428163705482163705481263705481623705486123750486213750486231750486321750486312750486317250486317520486317502486317504286317504826317504862371504863271504863721504863712504863715204863715024863715042863715048263715048623751048632751048637251048637521048637512048637510248637510428637510482637510486237501486327501486372501486375201486375021486375012486375014286375014826375014862375041863275041863725041863752041863750241863750421863750412863750418263750418623750481632750481637250481637520481637502481637504281637504821637504812637504816237504861237540862137540862317540863217540863127540863172540863175240863175420863175402863175408263175408623715408632715408637215408637125408637152408637154208637154028637154082637154086237514086327514086372514086375214086375124086375142086375140286375140826375140862375410863275410863725410863752410863754210863754120863754102863754108263754108623754018632754018637254018637524018637542018637540218637540128637540182637540186237540816327540816372540816375240816375420816375402816375408216375408126375408162375408612375480621375480623175480632175480631275480631725480631752480631754280631754820631754802631754806237154806327154806372154806371254806371524806371542806371548206371548026371548062375148063275148063725148063752148063751248063751428063751482063751480263751480623754180632754180637254180637524180637542180637541280637541820637541802637541806237548106327548106372548106375248106375428106375482106375481206375481026375481062375480163275480163725480163752480163754280163754820163754802163754801263754801623754806123754860123574861023574861203574862103574862013574862031574862035174862035714862035741862035748162035748612305748621305748623105748632105748631205748631025748631052748631057248631057428631057482631057486230157486320157486302157486301257486301527486301572486301574286301574826301574862305174863205174863025174863052174863051274863051724863051742863051748263051748623057148632057148630257148630527148630572148630571248630571428630571482630571486230574186320574186302574186305274186305724186305742186305741286305741826305741862305748163205748163025748163052748163057248163057428163057482163057481263057481623057486123507486213507486231507486321507486312507486315207486315027486315072486315074286315074826315074862351074863251074863521074863512074863510274863510724863510742863510748263510748623501748632501748635201748635021748635012748635017248635017428635017482635017486235071486325071486352071486350271486350721486350712486350714286350714826350714862350741863250741863520741863502741863507241863507421863507412863507418263507418623507481632507481635207481635027481635072481635074281635074821635074812635074816235074861235704862135704862315704863215704863125704863152704863157204863157024863157042863157048263157048623517048632517048635217048635127048635172048635170248635170428635170482635170486235710486325710486352710486357210486357120486357102486357104286357104826357104862357014863257014863527014863572014863570214863570124863570142863570148263570148623570418632570418635270418635720418635702418635704218635704128635704182635704186235704816325704816352704816357204816357024816357042816357048216357048126357048162357048612357408621357408623157408632157408631257408631527408631572408631574208631574028631574082631574086235174086325174086352174086351274086351724086351742086351740286351740826351740862357140863257140863527140863572140863571240863571420863571402863571408263571408623574108632574108635274108635724108635742108635741208635741028635741082635741086235740186325740186352740186357240186357420186357402186357401286357401826357401862357408163257408163527408163572408163574208163574028163574082163574081263574081623574086123574806213574806231574806321574806312574806315274806315724806315742806315748206315748026315748062351748063251748063521748063512748063517248063517428063517482063517480263517480623571480632571480635271480635721480635712480635714280635714820635714802635714806235741806325741806352741806357241806357421806357412806357418206357418026357418062357481063257481063527481063572481063574281063574821063574812063574810263574810623574801632574801635274801635724801635742801635748201635748021635748012635748016235748061235748601235478610235478612035478621035478620135478620315478620351478620354178620354718620354781620354786123054786213054786231054786321054786312054786310254786310524786310542786310547286310547826310547862301547863201547863021547863012547863015247863015427863015472863015478263015478623051478632051478630251478630521478630512478630514278630514728630514782630514786230541786320541786302541786305241786305421786305412786305417286305417826305417862305471863205471863025471863052471863054271863054721863054712863054718263054718623054781632054781630254781630524781630542781630547281630547821630547812630547816230547861235047862135047862315047863215047863125047863152047863150247863150427863150472863150478263150478623510478632510478635210478635120478635102478635104278635104728635104782635104786235014786325014786352014786350214786350124786350142786350147286350147826350147862350417863250417863520417863502417863504217863504127863504172863504178263504178623504718632504718635204718635024718635042718635047218635047128635047182635047186235047816325047816352047816350247816350427816350472816350478216350478126350478162350478612354078621354078623154078632154078631254078631524078631542078631540278631540728631540782631540786235140786325140786352140786351240786351420786351402786351407286351407826351407862354107863254107863524107863542107863541207863541027863541072863541078263541078623540178632540178635240178635420178635402178635401278635401728635401782635401786235407186325407186352407186354207186354027186354072186354071286354071826354071862354078163254078163524078163542078163540278163540728163540782163540781263540781623540786123547086213547086231547086321547086312547086315247086315427086315472086315470286315470826315470862351470863251470863521470863512470863514270863514720863514702863514708263514708623541708632541708635241708635421708635412708635417208635417028635417082635417086235471086325471086352471086354271086354721086354712086354710286354710826354710862354701863254701863524701863542701863547201863547021863547012863547018263547018623547081632547081635247081635427081635472081635470281635470821635470812635470816235470861235478062135478062315478063215478063125478063152478063154278063154728063154782063154780263154780623514780632514780635214780635124780635142780635147280635147820635147802635147806235417806325417806352417806354217806354127806354172806354178206354178026354178062354718063254718063524718063542718063547218063547128063547182063547180263547180623547810632547810635247810635427810635472810635478210635478120635478102635478106235478016325478016352478016354278016354728016354782016354780216354780126354780162354780612354786012354876102354876120354876210354876201354876203154876203514876203541876203548176203548716203548761230548762130548762310548763210548763120548763102548763105248763105428763105482763105487263105487623015487632015487630215487630125487630152487630154287630154827630154872630154876230514876320514876302514876305214876305124876305142876305148276305148726305148762305418763205418763025418763052418763054218763054128763054182763054187263054187623054817632054817630254817630524817630542817630548217630548127630548172630548176230548716320548716302548716305248716305428716305482716305487216305487126305487162305487612350487621350487623150487632150487631250487631520487631502487631504287631504827631504872631504876235104876325104876352104876351204876351024876351042876351048276351048726351048762350148763250148763520148763502148763501248763501428763501482763501487263501487623504187632504187635204187635024187635042187635041287635041827635041872635041876235048176325048176352048176350248176350428176350482176350481276350481726350481762350487163250487163520487163502487163504287163504827163504872163504871263504871623504876123540876213540876231540876321540876312540876315240876315420876315402876315408276315408726315408762351408763251408763521408763512408763514208763514028763514082763514087263514087623541087632541087635241087635421087635412087635410287635410827635410872635410876235401876325401876352401876354201876354021876354012876354018276354018726354018762354081763254081763524081763542081763540281763540821763540812763540817263540817623540871632540871635240871635420871635402871635408271635408721635408712635408716235408761235480762135480762315480763215480763125480763152480763154280763154820763154802763154807263154807623514807632514807635214807635124807635142807635148207635148027635148072635148076235418076325418076352418076354218076354128076354182076354180276354180726354180762354810763254810763524810763542810763548210763548120763548102763548107263548107623548017632548017635248017635428017635482017635480217635480127635480172635480176235480716325480716352480716354280716354820716354802716354807216354807126354807162354807612354870621354870623154870632154870631254870631524870631542870631548270631548720631548702631548706235148706325148706352148706351248706351428706351482706351487206351487026351487062354187063254187063524187063542187063541287063541827063541872063541870263541870623548170632548170635248170635428170635482170635481270635481720635481702635481706235487106325487106352487106354287106354827106354872106354871206354871026354871062354870163254870163524870163542870163548270163548720163548702163548701263548701623548706123548760123548670123546870123456870123465870123645870126345870162345870612345876012345867012345