• +598 29008192
  • info@servinfo.com.uy

Archivo del Autor: Belen De Leon

Microsoft Build 2019 Day 1: Everything announced and how to replay – CNET

Microsoft’s annual developer conference gave us a peek at Edge for Mac, new virtual assistant technology and HoloLens 2.
Source: CNET

An Xbox controller with a built-in Braille display is Microsoft’s latest gaming accessibility play

Microsoft has been leaning into accessibility in gaming lately, most visibly with its amazing Adaptive Controller, and a new patent suggests another way the company may be accommodating disabled gamers: an Xbox controller with a built-in Braille display.

As you might expect, it’s already quite hard for a visually impaired gamer to play some games, and although that difficulty can’t be entirely alleviated, there are definitely things worth doing. For instance: the text on screen that sighted people take for granted, documenting player status, items, onscreen dialog or directions — how could these be read by a low-vision gamer who might be able to otherwise navigate the game world?

In many circumstances a screen reader is what a visually impaired person would use to interact with this kind of data, but often that text is relayed to them in audio form, which is far less appealing an option when you’re in-game. Who wants to have a computer voice reading off your armor levels and inventory burden while you’re trying to take in the ambient environment?

There are already some Braille display accessories for this kind of thing, but there’s nothing like having support direct from your console’s designer, and that’s what Microsoft has demonstrated with its patent for a Braille-enabled controller.

The patent was filed last year and just recently became public, and was soon spotted by German tech site Let’s Go Digital; there have been no official announcements, though the timing is favorable for an E3 reveal. That said, patents don’t necessarily represent real products in development, though in this case I think it’s worth highlighting regardless.

The Braille Controller, as it’s referred to in the patent, is very much like an ordinary Xbox One gamepad, except on the back there appears to be a sort of robotic insect sticking out of it. This is the Braille display, consisting of both a dot matrix that mechanically reproduces the bumps which players can run their fingers over, and a set of swappable paddles allowing for both input and output.

The six paddles correspond to the six dot positions on a Braille-coded character, and a user may use them to chord or input text that way, or to receive text communications without moving their fingers off the paddles. Of course the mechanisms also could be used to send haptic feedback of other types, like directional indicators or environmental effects like screen shake. I wouldn’t mind having something like this on my controller, in fact.

Naturally this means games will need (and increasingly are including) a metadata layer for this kind of conversion of visual cue to auditory one, and vice versa, among many other considerations for gamers with disabilities. It’s on everyone’s minds, but Microsoft and Xbox seem to be taking more concrete steps than the rest, so kudos to them for that. Hopefully their leadership in this space will help convince other developers and manufacturers to join up.

We’ll be sure to ask the Xbox team about their plans for this controller design and other accessibility improvements when we talk with them at E3 in June.


Source: TechCrunch

The best keyboard you can buy in 2019

Looking for the best keyboard money can buy? You’ve come to the right place. Whether you’re after something that’s great for gaming, work, or just gives you great band for your buck, these are our favorite keyboards.

The post The best keyboard you can buy in 2019 appeared first on Digital Trends.


Source: Digital trends

Ian McEwan Doesn't Hate Science Fiction

Recent comments from the author caused some sci-fi fans to bristle. He says he was misunderstood.
Source: Wired

Uber and Lyft drivers are striking ahead of Uber’s IPO

With Uber expected to make its debut on the public market by Friday, May 10, on-demand ride-hailing drivers are planning to strike on Wednesday. The New York Taxi Workers Association is calling on U.S.-based drivers to stand in solidarity with drivers in London and log off from both Uber and Lyft on May 8 between 7 a.m. and 9 a.m.

“In the IPO filing, Uber said drivers will only get more dissatisfied because they plan to cut our pay and stop incentives,” NYTWA member Sonam Lama said in a press release. “We don’t want our wages to stay just minimum. We want Uber to answer to us, not to investors. The gig economy is all about exploiting workers by taking away our rights. It has to stop. Uber is the worst actor in the gig economy.”

In San Francisco, drivers are organizing a protest at Uber’s HQ followed by a 12-hour app shutoff. In a statement to TechCrunch, an Uber spokesperson said drivers are at the core of its service.

“Drivers are at the heart of our service — we can’t succeed without them — and thousands of people come into work at Uber every day focused on how to make their experience better, on and off the road,” an Uber spokesperson said. “Whether it’s more consistent earnings, stronger insurance protections or fully funded four-year degrees for drivers or their families, we’ll continue working to improve the experience for and with drivers.” When Lyft went public, “it was a sad day,” Gig Workers Rising organizer Shona Clarkson told TechCrunch last month.

“It’s hard to see this company making tons of money when you have insecure housing or aren’t sure you can make rent or pay medical bills,” she said.

In response, Lyft drivers went on strike in San Francisco and San Diego. While some drivers want to be W-2 employees and others don’t mind being 1099 independent contractors, these drivers are united around wanting higher wages, transparent policies around wages, tips, fare breakdowns and mileage rates, benefits and a voice, Clarkson said.

“Lyft drivers’ hourly earnings have increased over the last two years, and they have earned more than $10 billion on the Lyft platform,” a Lyft spokesperson told TechCrunch. “Over 75% drive less than 10 hours a week to supplement their existing jobs. On average, Lyft drivers earn over $20 per hour. We know that access to flexible, extra income makes a big difference for millions of people, and we’re constantly working to improve how we can best serve our driver community.”

As part of their respective IPOs, both Uber and Lyft offered some drivers bonuses but pale in comparison to what executives will walk away with. Lyft, for example, offered some drivers up to a one-time bonus of $10,000. Similarly, Uber offered some drivers a bonus up to $40,000.

Drivers I know who were offered that deal from Lyft in the lead up to IPO were incredibly insulted and angry about it,” Clarkson said. “Both companies just do a lot of PR work to make it seem like they’re treating drivers well.”

Uber is pricing its IPO between $44 to $50 a share, seeking a valuation up to $84 billion. Lyft set a range of $62 to $68 for its IPO, seeking to raise up to $2.1 billion. Since its debut on the Nasdaq, Lyft’s stock has suffered after skyrocketing nearly 10% on day one. Lyft is currently trading at around $60 per share.


Source: TechCrunch

'Game of Thrones' Recap, Season 8 Episode 4: So Much for Breaking the Wheel

The show’s story right now is one of regression, of spectacle over humanity—and it’s infuriating.
Source: Wired

Facebook updates its video guidelines to promote original content, loyal and engaged viewership

Facebook today announced a series of changes to the way it ranks videos on its social network, which determines how widely they’re distributed. According to the updated guidelines, Facebook will now prioritize videos that focus on original content, those where users are engaged for longer periods of time and those where users return repeatedly to watch more.

The company wants to feature more high-quality videos, and less of those that feature “unoriginal or repurposed content” from other sources where there’s been little value added, it says. That seems to imply a bit of crackdown on the prolific video memes — those that lift someone else’s content (sometimes without proper credit) and then publish it to their own Page to cash in.

Facebook says it’s also now going to demote videos from Pages that are involved in Sharing Schemes. These are programs run by unethical content mills that compensate other Page owners for posting content and running ads to promote it.

In addition, Facebook will reward videos that have a more engaged and loyal fan base.

Before, Facebook encouraged video creators to keep their viewers watching for at least a minute. Going forward, it will actively add more weight in rankings to those videos where viewers watch for at least three minutes.

And it will reward videos where viewers repeatedly return to watch week after week.

The goal with the changes is to promote those videos that people value, the company says, while also helping great video creators reach more people across the social network by way of improved distribution.

The changes come at a time when Facebook’s video effort, Facebook Watch, is facing increased competition for viewers’ time and interest from a range of players, including Apple’s streaming service Apple TV+, as well as number of places to watch free, ad-supported content, like The Roku Channel or Amazon’s IMDb, for example, in addition to, of course, YouTube. And soon, the highly anticipated streaming service from Disney will eat into more of viewers’ time, too.

Facebook Watch has also been dinged for featuring low-quality content compared to newcomers like Apple TV+, which has signed big-name talent like Spielberg, Witherspoon and Oprah. Meanwhile, Facebook Watch has focused on things like MTV’s “The Real World” or “Buffy” re-runs in terms of its “premium” content.

With YouTube recently promising its own original content will become free and ad-supported in time, Facebook needed to keep up by making its own video site less meme-filled and more engaging than before. That can only happen if it promotes videos when they meet certain quality thresholds — which is what these guidelines aim to address.


Source: TechCrunch

Where top VCs are investing in media, entertainment & gaming

Most of the strategy discussions and news coverage in the media and entertainment industry is concerned with the unfolding corporate mega-mergers and the political implications of social media platforms.

These are important conversations, but they’re largely a story of twentieth-century media (and broader society) finally responding to the dominance Web 2.0 companies have achieved.

To entrepreneurs and VCs, the more pressing focus is on what the next generation of companies to transform entertainment will look like. Like other sectors, the underlying force is advances in artificial intelligence and computing power.

In this context, that results in a merging of gaming and linear storytelling into new interactive media. To highlight the opportunities here, I asked nine top VCs to share where they are putting their money.

Here are the media investment theses of: Cyan Banister (Founders Fund), Alex Taussig (Lightspeed), Matt Hartman (betaworks), Stephanie Zhan (Sequoia), Jordan Fudge (Sinai), Christian Dorffer (Sweet Capital), Charles Hudson (Precursor), MG Siegler (GV), and Eric Hippeau (Lerer Hippeau).

Cyan Banister, Partner at Founders Fund

In 2018 I was obsessed with the idea of how you can bring AI and entertainment together. Having made early investments in Brud, A.I. Foundation, Artie and Fable, it became clear that the missing piece behind most AR experiences was a lack of memory.

Google refreshes Android Auto with new features and a darker look

Android Auto — the in-car platform that brings the look and functions of a smartphone to the vehicle’s central screen — is getting a new look and improved navigation and communication features that will roll out this summer.

The improvements and new look were revealed Monday during Google I/O 2019, the annual developer conference.

The most noticeable change might be the overall look of Android Auto. It now has a dark theme, new fonts and color accents designed to make it easier for drivers to quickly and more easily see the content on the car’s central screen.

The new version of Android Auto has also improved its notifications. Drivers can choose to view, listen and respond to messages and calls more easily.

Engineers have updated the software to make it more seamless. The system, if properly enabled, would pop up on the car’s screen once the vehicle was turned on. However, the user would still have to restart their media or navigation option. Now, Android Auto will continue playing the media and navigation app of the driver’s choice. Drivers can tap on a suggested location or say “Hey Google” to navigate to a new place.

The navigation bar on Android Auto has changed, as well. Drivers will be able to see their turn-by-turn directions and control apps and phone on the same screen.

Finally, the platform has been adjusted so it will fit various sized-screens. Android Auto now maximizes the in-car display to show more information, like next-turn directions, playback controls and ongoing calls.

Android Auto is not an operating system. It’s a secondary interface — or HMI layer — that sits on top of an operating system. Google released Android Auto in 2015. Rival Apple introduced its own in-car platform, Apple CarPlay, that same year.

Automakers that wanted to give consumers a better in-car experience without giving Google or Apple total access quickly adopted the platform. Even some holdouts, such as Toyota, have come around. Today, Android Auto is available in more than 500 car models from 50 different brands, according to Android Auto product manager Rod Lopez.

Google has since developed an operating system called Android Automotive OS that’s modeled after its open-source mobile operating system that runs on Linux. Instead of running smartphones and tablets, Google modified it so it could be used in cars. Polestar, Volvo’s standalone performance electric car brand, is going to produce a new vehicle, the Polestar 2, that has an infotainment system powered by Android Automotive OS.


Source: TechCrunch

'Avengers: Endgame' Might Surpass 'Avatar' at the Box Office

Also, ‘Spider-Man: Far From Home’ has a new trailer. Watch it here.
Source: Wired

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813