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

Archivo del Autor: Belen De Leon

How to care for your laptop’s battery

Learn how to care for your laptop’s battery with our guide on modern laptop batteries, how they work, and what you can do to make sure they last for years and retain their charge! Check it out for valuable tips, no matter what type of laptop you have.

The post How to care for your laptop’s battery appeared first on Digital Trends.


Source: Digital trends

Iron Fist Season 2 teaser hints at comic outfit – CNET

Will Danny Rand adopt the whole superhero outfit in Season 2?
Source: CNET

The Not Company is looking to start a food revolution from Chile

Technology investors, tasting an opportunity to capitalize on the triple threat of malnutrition, resource scarcity and pollution brought on by the increasing globalization and industrialization of food, are investing billions into startup companies pitching alternative sources of sustenance.

In the past five years, venture capitalists and corporations have invested over $9.5 billion into 2,100 deals around the world — all with the aim of replacing or supplementing traditional methods of growing, manufacturing, processing and distributing the world’s food, according to data from CB Insights.

The Not Company, with its headquarters twenty-two minutes from downtown Santiago in the southeastern corner of the city, may seem like an unlikely rising contender in this multi-billion dollar business of food replacement; but it’s from there that chief executive Matias Muchnick and his two co-founders are plotting to bring the potential benefits of this food revolution to Latin America — and eventually the world.

For Muchnick, a serial entrepreneur, The Not Company represents his second foray into food. The chief executive previously launched Eggless, a company selling plant-based dressings and a plant-based mayonnaise.

That first taste of the food business revealed to Muchnick a few things… including how basic and inefficient the research and development process was in the food industry.

Initially, that was the problem that Muchnick was hoping to tackle when he set out to the University of California, Berkeley to research the industry.

“I went to Berkeley and decided to go to the biochemistry department and really try to understand the data and the science,” Muchnick says. “Pharma is doing things way better than we are. So I decided to grab a lot of knowledge and things that were being done right in the pharma industry and explore this in the food industry.”

From Berkeley, Muchnick went to Harvard where he recruited Karim Pichara, an astrophysicist who was using data science and machine learning to explore the inner workings of stars. With the data scientist in tow, Muchnick added a third co-founder, Pablo Zamora, who had been doing research at the University of California, Davis on plant genomics.

So the dream team of The Not Company was formed.

The Not Company co-founders Karim Pichara, Matias Muchnick and Pablo Zamora

At the heart of The Not Company’s work, like its incredibly well-funded, once-troubled US-based competitor Just (which was formerly known as Hampton Creek) is a machine learning technology that maps the similarities between the genetic properties of plants and their corollaries in animals. 

“If we can map the genome of a lentil or whatever bean there is,” says Muchnick, “you could easily understand and predict whether that bean could emulate an animal-based protein.”

Although the three founders all came together in the US, they decided to return to their home country of Chile to start the business. For Muchnick, being based in Santiago was cheaper and the talent pool for researchers was just as strong. And the distance from Silicon Valley became a draw for some recruits.

“We became these exotic guys,” he said.

But the base in Santiago also plays into The Not Company’s first strategic objective, which is to dominate the Latin American market and bring healthier foods to consumers who desperately need them.

The changing shape of malnutrition

Part of Muchnick’s drive to stay close to home is to fight the spread of the high calorie, low cost foods that are flooding Latin America — and transforming what it means to be undernourished in countries around the world.

To understand how problems of malnutrition play out in emerging markets, it helps to look at the changing fortunes of companies like Nestle, General Mills, Pepsico and fast food purveyors like McDonalds and Yum Brands (the owners of KFC).

Already nearly ubiquitous in the US and Europe, large multinational food companies are turning to emerging markets for growth, and pitching products and business models designed to appeal to low income consumers.

These products are cheap, but they’re also mostly emptied of their nutritional value, so while people won’t starve, they’ll develop other health problems.

“The prevailing story is that this is the best of all possible worlds — cheap food, widely available. If you don’t think about it too hard, it makes sense,” Anthony Winson, a professor of food economics at the University of Guelph in Ontario told The New York Times. The reality of the situation is much different, said Winson. “To put it in stark terms: The diet is killing us.”

Research data bears that out. According to a 2017 study from The New England Journal of Medicine, roughly 10% of the world’s population is now obese. That’s around 604 million adults and 108 million children, and these obesity rates are rising most quickly in emerging markets.

Malnutrition is only one side-effect of the penetration of industrial food businesses into different geographies. As the Times notes, these companies also encourage the industrialization of their suppliers — creating incentives for large scale farming which destroys forest land.

These problems aren’t confined to snack makers like Nestle or General Mills. Demand for meat for the fast food industry in these countries is leading to factory farming, which is a huge contributor to global warming.

It’s these problems that companies like Muchnick’s are trying to solve — with a low cost alternative that purports to have a much lower environmental impact as well.

The Not products

Muchnick and his team have been developing an array of products ever since their launch in 2015. Initially, the company set out to be a research and development and licensing arm for food companies, offering them healthy alternatives to existing products.

“We are a tech company, not a food company. We want to capitalize ourselves by developing products for other companies,” Muchnick told Reuters in 2016.

That was when the company began feverishly experimenting with all sorts of different food products, Muchnick said.

We made mayonnaise, we made chocolate, we made milks, and meat replacements as well… Sausages and burgers, and churrasco (which is a  kind of a roast beef, but worse),” says Muchnick of the early years of the company’s feverish experimentation. Finally, following in the footsteps of Hampton Creek, The Not Company decided to start with mayonnaise.

Chile actually represents the third largest market for mayonnaise in the world, Muchnick said, so it made sense for the company to start there. It’s also easier to manufacture than some of the more ambitious products that the company has on its road map.

Already, Muchnick says that he’s managed to capture 10% of the (admittedly small) Chilean market for mayonnaise in just 8 months in stores. The next product on the roadmap is a milk replacement that should launch in September, with NotYogurt and Not Ice Cream coming in 2019.

By 2020, The Not Company will be introducing sausages and ground meat replacements, he said.

Behind all of those products is “Giuseppe”, the machine learning software that Pichara and Zamora developed to find the links between different animal and plant proteins.

“We have mapped 7000 plants and we don’t think we need more than that,” says Muchnick. “We mapped them for their amino acetic structures… that looked like animal-based proteins.”

Giuseppe actually works across seven different databases with seven different approaches, Muchnick explained. There’s molecular data that describes the food and ingredients, spectral imaging for the food and ingredients, and then an array of data collected by the company’s in-house taste testers for things like palate, texture, aftertaste, tanginess, and acidity. “We have a lot of parameters,” says Muchnick.

Now, with a product roadmap established, the company has also raised additional capital to roll out across the market — not just in Chile, but across Latin America.

The Not Company recently raised $3 million from Kaszek Ventures and SOS Ventures to build out its manufacturing capacity.

It’s a pivot to go directly to the market that the company explicitly rejected only two years ago. “We want to become a brand company,” says Muchnick now. “NotCo today has a social currency.”

To do that, it needs to develop its supply chain. Already the company can produce 64 tons per month of mayonnaise, but it needs to continue to expand its production facilities as it looks to get into milk, yogurt, ice cream, and eventually meat.

“We’re deciding to build local processing plants,” says Muchnick. “We will begin distributing our product in Brazil and Argentina through exports. Once we have 5% or 8% of the marketshare… Then we will expand with a processing plant locally.”


Source: TechCrunch

Home run exits happen stealthily for biotech

Startup exit tallies commonly underestimate biotech returns. Unlike most tech deals, the biggest profits in bio often come long after an IPO or acquisition.

Take Juno Therapeutics, a publicly traded cancer immunology company that sold to pharma giant Celgene this year for $9 billion. At first glance, it doesn’t seem like a deal that would impact Juno’s early investors.

After all, Juno went public back in 2014. Though the Seattle company raised more than $300 million as a private company, pre-IPO backers had years to cash out at healthy multiples.

Yet some held on. Bob Nelsen, managing director of ARCH Venture Partners, Juno’s largest VC backer, told Crunchbase News that his firm was still holding nearly its entire 15 percent pre-IPO stake when Celgene bought the company.

In the end, the acquisition netted ARCH’s limited partners 23 times their money, bringing in close to a billion dollars. It’s an exceptional return, even by venture home run standards.1

“We tend to distribute on milestones, not financing events,” Nelsen said of his firm’s approach to exiting a portfolio investment. That often means holding for years after an IPO awaiting positive clinical trial outcomes or other value-creating inflection points.

For public companies, that can be done over time or all at once, and usually comes in the form of company shares rather than cash.

So when is it an exit?

It’s outcomes like Juno that help explain why life sciences, despite bringing fewer first-day IPO pops and buzz-generating unicorn exits than the tech sector, still consistently attracts roughly a third of venture investment. Big exits do happen. But oftentimes it’s not with a lot of fanfare and usually not with a public market debut.

“I don’t think IPOs are ever an exit in biotech. It’s always a financing event,” Nelsen says. While ARCH may hold shares longer than the typical VC, he says it’s not uncommon to hang on the stakes for a while post-IPO.

That IPO-and-hold strategy appears to have worked out well for the firm on other occasions. Other portfolio companies that went public and were later acquired for multiple billions include Receptos, a drug developer, and Kythera Biopharmaceuticals, best known for an injectable to reduce chin fat.

Using Crunchbase data, we looked to see how common it is for a venture-backed biotech company to go public and then sell a few years later for multiple billions. We found at least eight examples of companies selling for $2 billion or more in the past five years that went public less than four years before the acquisition. (See list here.) Altogether, these acquisitions were valued at more than $47 billion.

Racking up post-IPO gains

It’s also not uncommon for biotech startups to grow into multi-billion dollar public companies a few years after IPO.

Using Crunchbase data, we put together a list of a dozen life science companies that went public in roughly the past five years and have recent market values ranging from $1.5 billion to nearly $9 billion. (This is a sampling, not a comprehensive data set, and was assembled based on exits of several top-tier life science VCs.)

On top was gene therapy juggernaut Bluebird Bio, which has seen a seven-fold rise in its stock price since going public five years ago. Next was Sage Therapeutics, a developer of therapies for central nervous system disorders, up more than six-fold since its IPO four years ago, reaching a market cap of nearly $8 billion.

Then on the device side there’s Inogen, a maker of portable oxygen concentrators for patients with respiratory ailments. It went public at a valuation of less than $300 million in 2014. Today it’s worth around $4.3 billion.

Yes, it’s true tech stocks can see massive gains a few years after going public, too. But the drivers are usually different. In tech, a company may see its stock jump after a big rise in sales, but it probably had sales in prior quarters. The business hasn’t fundamentally changed; it’s just improved.

Moreover, tech venture capitalists do generally consider an IPO an exit. While insiders usually can’t sell shares immediately, they’re typically comfortable liquidating when they can around the IPO price.

For bio, hitting key milestones changes the entire value proposition. A company can go from having no marketable product and no sales to quickly having one or both of those things.

Milestones and money

Returns from biotech startup M&A exits are also hard to pin down because of the widespread use of milestone payments. Buyers pay an upfront price with the agreement of more to come following favorable clinical trial results and a commercially successful therapy.

Often, it’s several multiples more to come if milestones are met. Take Impact Biomedicines, one of this year’s biggest private company exits. Celgene bought the company for $1.1 billion. However, the deal could be valued at up to $7 billion over time.

But the probability of hitting all the milestones seems low. To get the full $7 billion, global annual net sales of Impact’s therapies would have to exceed $5 billion. However, some milestones look more feasible, such as a $1.25 billion payment for obtaining regulatory approval.

This kind of deal structure is pretty common, and not just for M&A. A study by medical news site STAT analyzed nearly 700 biotech licensing deals and found that, on average, just 14 percent of the total announced value was paid out up front.

As with returns from post-IPO acquisitions, it’s hard to gauge just how well investors end up doing on these milestone-based purchases. The largest payoffs can be years down the road.

The opposite of tech

If it seems like the dynamics of a bio exit are, in many ways, the opposite of a tech exit, it’s worth considering how different the two sectors are at the early stages, too.

In the tech startup world, it’s common for a company to launch with an idea that sounds silly (tweeting, scooter sharing, air mattress rentals) and then suddenly be worth billions.

Bio companies are kind of the reverse. Practically every one sounds like a great idea (curing cancer, alleviating pain, treating neurodegenerative disease), and many turn out to be worth nothing. Investments that work out, however, may take a while, but eventually deliver in a big way.

  1. Making 23 times your money back is exceptional at all stages of investment. However, when it does happen, it’s most common at the seed stage for investment, where investors put in single digit millions or less. In the case of ARCH, 23X it is a particularly high return because it encompasses all the rounds Juno raised before going public.


Source: TechCrunch

Certain audiophiles could consider Hifiman’s $999 Ananda headphone a bargain – CNET

The Audiophiliac compares Hifiman’s new $1K cans against some higher priced models. In short, the Ananda held its own.
Source: CNET

Space Photos of the Week: A Stormy Summer on Mars

Planet-encircling dust storms are shrouding skies and imperiling a NASA rover.
Source: Wired

N.Y. state withdraws approval of Charter and Time Warner merger, boots Spectrum

Citing failure to deliver on commitments and noncompliance with conditions, the New York State Public Service Commission rescinded approval of the Charter and Time Warner merger. Charter has 60 days to present a transition plan.

The post N.Y. state withdraws approval of Charter and Time Warner merger, boots Spectrum appeared first on Digital Trends.


Source: Digital trends

How I made my own WireGuard VPN server

Some of you may have heard about VPN protocols that let you establish a connection between your device and a server, such as OpenVPN and IPsec. But there’s a brand new shiny protocol that promises to be faster and more secure at the same time — WireGuard.

But WTF is a VPN anyway? A VPN is a virtual private network between a device in front of you and a server in a data center. If you want to hide your internet traffic from other people on your local network, you can create a tunnel between your device and a server.

All your network traffic will go through this connection, and traffic is usually encrypted from one end to the other. It means that your overzealous IT department or the Great Firewall of China can’t block any service.

And yet, it also means that the person who operates the server can see all unencrypted traffic. That’s why I never recommend using a free VPN service or even paying for an account. Using a VPN doesn’t mean that you’ll be more secure on the internet. You’re just moving the risk down the VPN tunnel.

Many VPN companies analyze your browsing habits, sell them to advertisers, inject their own ads on non-secure pages, steal your identity, log your internet traffic, share information with law enforcement and more.

When it comes to VPN companies, trust no one.

Looking at the protocols

There are multiple ways to create a point-to-point VPN tunnel. Your device and the server need to use the same protocol to talk to one another. The most popular protocol is OpenVPN. It’s a secure implementation that works on pretty much any device, as long as you’re willing to install an app.

IPsec, combined with IKEv2 authentication, is another popular protocol. It works natively on iOS, macOS, Windows and Linux. That’s why it’s a great option for devices where you can’t install any app you want.

You may have also heard about PPTP or L2TP as well. But those protocols aren’t as secure and nobody should use them anymore.

It seems like there are plenty of options already. But OpenVPN has been around for 17 years. It is slow and it was never designed for mobile devices.

OpenVPN and IPsec also have a huge codebase, which creates a bigger attack surface. It’s unclear whether the NSA has found vulnerabilities in those protocols because it’s harder to audit big codebases. WireGuard creator Jason Donenfeld only wrote 4,000 lines of code for the initial release.

Connecting to a WireGuard server is pretty much like connecting to a remote server using SSH. You generate a set of public and private keys and exchange public keys with the server. It’s both secure and hard to fool.

Compared to other VPN protocols, WireGuard relies on your device’s network interfaces. It adds a new interface to natively route all traffic through the tunnel, whether you’re using Wi-Fi, Ethernet, LTE, etc.

Regular VPN users also know that you have to reconnect to the VPN server every time you switch from Wi-Fi to LTE to Ethernet… WireGuard servers can maintain the connection with your device, even if you switch to another network and get a new IP address.

WireGuard is still quite new and experimental. For instance, you won’t find any WireGuard client for iOS. There are also very few WireGuard implementations with a graphical user interface.

Building your own VPN server

If you want to give WireGuard a try, it’s not that hard. You may remember that I talked about Algo VPN in the past. It’s a great open source project that lets you set up your own VPN server in just a few minutes. You don’t need any coding skill.

It turns out Algo VPN now supports WireGuard in addition to IKEv2. In other words, creating a VPN server with Algo VPN will let you connect to this server using both protocols.

Algo VPN runs on any Ubuntu server, but the easiest way to host your server is to create an account on DigitalOcean. After that, you’ll need to download a zip file and follow the instructions.

Once the setup is done, you should have a new folder on your hard drive with everything you need to connect to your VPN server. If you’re on a Mac, you can double-click on the .mobileconfig file to connect to your VPN server from your Mac using IKEv2.

If you want to try WireGuard, you’ll need a computer that runs macOS or Linux, or an Android phone. The easiest way to use WireGuard is to install the Android app and add the .conf file to your phone.

On your Mac, you need to install WireGuard using Homebrew (brew install wireguard-tools). You can then move the myvpnserver.conf file to /etc/wireguard/ on your hard drive and connect using a simple command line (“wg-quick up myvpnserver” and “wg-quick down myvpnserver”).

I wanted to go one step further and skip the Terminal window. On macOS, you can create an AppleScript using the Script Editor app and put it in your menu bar by enabling the menu bar option in the settings.

In my script, I also fetch my current hostname using icanhazptr.com. I then display my current hostname in a notification to check that I’m connected to the VPN server. In this case, I created a VPN server on Scaleway:

There you have it. Now you can’t say that you prefer to use a commercial VPN service because they have a nice menu bar app. This setup offers the same convenience but with a more stable VPN connection.

Once again, WireGuard is experimental. You need to assess your risks before using WireGuard at a production level. If you’re Edward Snowden, WireGuard might not be ready for you just yet. You also need to be comfortable with a buggy implementation. For instance, I had a DNS issue after shutting down a WireGuard connection, so I had to reset the DNS settings in my network interfaces.

But the fact that you can close your laptop, switch to another Wi-Fi network and stay connected to the VPN server is pretty neat. It’s clear that WireGuard represents the future of VPN protocols.


Source: TechCrunch

The best travel tips from travel pros – CNET

CNET editors travel all the time and we’ve learned a lot. Let us share our knowledge.
Source: CNET

Best phones you can't buy from a US carrier – CNET

The list goes on and on. Here’s what you’re missing.
Source: CNET

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455