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

Archivo del Autor: Belen De Leon

Even years later, Twitter doesn’t delete your direct messages

When does “delete” really mean delete? Not always, or even at all, if you’re Twitter .

Twitter retains direct messages for years, including messages you and others have deleted, but also data sent to and from accounts that have been deactivated and suspended, according to security researcher Karan Saini.

Saini found years-old messages in a file from an archive of his data obtained through the website from accounts that were no longer on Twitter. He also reported a similar bug, found a year earlier but not disclosed until now, that allowed him to use a since-deprecated API to retrieve direct messages even after a message was deleted from both the sender and the recipient — though, the bug wasn’t able to retrieve messages from suspended accounts.

Saini told TechCrunch that he had “concerns” that the data was retained by Twitter for so long.

Direct messages once let users “unsend” messages from someone else’s inbox, simply by deleting it from their own. Twitter changed this years ago, and now only allows a user to delete messages from their account. “Others in the conversation will still be able to see direct messages or conversations that you have deleted,” Twitter says in a help page. Twitter also says in its privacy policy that anyone wanting to leave the service can have their account “deactivated and then deleted.” After a 30-day grace period, the account disappears, along with its data.

But, in our tests, we could recover direct messages from years ago — including old messages that had since been lost to suspended or deleted accounts. By downloading your account’s data, it’s possible to download all of the data Twitter stores on you.

A conversation, dated March 2016, with a suspended Twitter account was still retrievable today (Image: TechCrunch)

Saini says this is a “functional bug” rather than a security flaw, but argued that the bug allows anyone a “clear bypass” of Twitter mechanisms to prevent accessed to suspended or deactivated accounts.

But it’s also a privacy matter, and a reminder that “delete” doesn’t mean delete — especially with your direct messages. That can open up users, particularly high-risk accounts like journalist and activists, to government data demands that call for data from years earlier.

That’s despite Twitter’s claim that once an account has been deactivated, there is “a very brief period in which we may be able to access account information, including tweets,” to law enforcement.

A Twitter spokesperson said the company was “looking into this further to ensure we have considered the entire scope of the issue.”

Retaining direct messages for years may put the company in a legal grey area ground amid Europe’s new data protection laws, which allows users to demand that a company deletes their data.

Neil Brown, a telecoms, tech and internet lawyer at U.K. law firm Decoded Legal, said there’s “no formality at all” to how a user can ask for their data to be deleted. Any request from a user to delete their data that’s directly communicated to the company “is a valid exercise” of a user’s rights, he said.

Companies can be fined up to four percent of their annual turnover for violating GDPR rules.

“A delete button is perhaps a different matter, as it is not obvious that ‘delete’ means the same as ‘exercise my right of erasure’,” said Brown. Given that there’s no case law yet under the new General Data Protection Regulation regime, it will be up to the courts to decide, he said.

When asked if Twitter thinks that consent to retain direct messages is withdrawn when a message or account is deleted, Twitter’s spokesperson had “nothing further” to add.


Source: TechCrunch

Opendoor files to raise another $200M at a $3.7B valuation, documents show

The housing market is predicted to cool this year, but the market for startups selling houses? It seems to be heating up. Opendoor, the company that aims to bypass real estate agents and brokers by providing an online platform — by way of a mobile app — for people to buy and sell properties direct, has filed papers in Delaware indicating that it would like to raise around $200 million more, at a valuation of about $3.7 billion.

The raise comes just one month after Knock, an Opendoor competitor, raised $400 million.

Eric Wu, Opendoor’s CEO and co-founder, did not respond to a request for comment, and a spokesperson for Opendoor declined to comment.

The Delaware documents (embedded below) do not make it clear if this would come in the form of an outside round, or a secondary sale, or a combination of the two; nor is it clear if the funding has closed already. The documents are dated February 8th of this year.

The shares are described as a “Series E-2”, which likely means this is an extension on Opendoor’s last round, from September 2018, of $400 million. That itself was an expansion of a previous E round, which Opendoor had raised in June 2018, of $325 million. Opendoor had been valued at around $2.47 billion post-money in September, according to PitchBook, and the shares in the document are around 37 percent higher — hence the $3.7 billion estimation here.

Backers of the company include SoftBank, along with some 36 others that include some of the biggest names in VC, such as Andreessen Horowitz, Coatue, General Atlantic, GV, Initialized, Khosla, NEA, Norwest and many more.

The premise of Opendoor — co-founded by Wu, Ian Wong, Justin Ross and Keith Rabois on the back of an idea that Rabois had many years before — is to cut out some of the steps, and subsequent money and time spent, that come with buying or selling a property. (For those who have been through it, you know that the extra fees and rigmarole can be a killer and sometimes feels like it could be done better; that’s what Opendoor is addressing, in part with a very transparent pricing structure.)

Opendoor does this by becoming the virtual middle man. As Opendoor describes it, “If you’re selling, sell your home to us to eliminate the hassles of showings and months of uncertainty. If you’re buying, we make it incredibly easy to tour hundreds of Opendoor homes so you can find the perfect one.” It also has created a streamlined process to cut down the paperwork and work that agents do around transactions.

As of September last year, Opendoor had raised $2 billion in debt to finance these purchases — although the company today said that it is now “buying homes at a run rate of almost $4 billion a year” and that its transaction rate is currently at over 2,000 customers per month, including both buyers and sellers, and it has served some 30,000 customers to date across 19 metro regions covering more than 20 cities:

It’s proving to be a popular proposition. In 2018, more than 800,000 people toured Opendoor homes.

While housing prices had largely recovered in a lot of U.S. cities hurt by the previous crash, experts have said that a rise in inventory, coupled with rising mortgage rates and tax uncertainly, are set to cool the overall market in 2019.

But with the housing industry regularly rebounding and growing over the longer term — the saying “safe as houses” doesn’t come from thin air — it may be that investors are still prepared to make further-reaching bets on platforms that could prove to be strong players when the market is on a high.

Interestingly, Wu has hinted that the company will be making some moves in the area of mortgages and home improvement loans, which could free up and encourage more transactions at a time when traditional mortgage rates are rising.

“We’re doing some things around mortgages that will be integrated into the shopping experience,” Wu said in September, adding that the company “also wants to enable home buyers to personalize their experience.”

We’ll update this post as we learn more.


Source: TechCrunch

Daily Crunch: Amazon scraps HQ2 plans in NYC

The Daily Crunch is TechCrunch’s roundup of our biggest and most important stories. If you’d like to get this delivered to your inbox every day at around 9am Pacific, you can subscribe here.

1. Did New York lose anything with Amazon’s rejection? It’s complicated.

Amazon announced yesterday that it’s taking its ball and going home, rather than dealing with mean, pushy New Yorkers (warning: not an exact quote). As a result, some outside observers are painting a picture of a city and its politicians losing out for their recalcitrance.

Jon Shieber acknowledges that there’s plenty to criticize on both sides. But for those who think New Yorkers are idiots for not giving Amazon billions in tax incentives, he has a simple message: You’re wrong.

2. Netflix office goes on lockdown over report of a potential shooter, suspect now in custody

According to the LAPD, there were no shots fired, no reports of injuries and the suspect in question has been taken into custody.

3. Samsung is preparing to launch a sports smartwatch and AirPods-like earbuds

Samsung’s newest product launch happens next week, but the Korean tech giant has already revealed the lineup of wearable devices that will be unveiled alongside the Galaxy S10.

NEW YORK, NY – MAY 08: Gimlet Media President Matt Lieber, Gimlet Media CEO Alex Blumberg (Photo by Jamie McCarthy/Getty Images for Spotify)

4. Spotify says it paid $340M to buy Gimlet and Anchor

Spotify doubled down on podcasts last week with a deal to buy podcast companies Gimlet and Anchor. The acquisition price was initially undisclosed, but Spotify has quietly confirmed that it spent €300 million — just shy of $340 million — to capture the companies.

5. Everything you need to know about GM’s new electric bikes

General Motors announced last year it was getting into the electric bike business. Now, GM has given this new brand a name — ARĪV — and revealed some of the details about its go-to-market plan.

6. China’s Didi is laying off 15 percent of its staff

The cut comes as China’s largest ride-hailing company copes with a stricter regulatory environment that puts a squeeze on driver supply, as well as backlash from two high-profile passenger murders last year.

7. Dubai airport briefly halts flights after drone spotted

It’s the latest in a recent string of scares involving personal drones flying too close to a commercial airport. At the height of the holiday season, London’s Gatwick airport was closed for a day and a half over similar concerns.


Source: TechCrunch

As GE and Amazon move on, Google expands presence in Boston and NYC

NYC and Boston were handed huge setbacks this week when Amazon and GE decided to bail on their commitments to build headquarters in the respective cities on the same day. But it’s worth pointing out that while these large tech organizations were pulling out, Google was expanding in both locations.

Yesterday, upon hearing about Amazon’s decision to scrap its HQ2 plans in Long Island City, New York City Mayor de Blasio had this to say: “Instead of working with the community, Amazon threw away that opportunity. We have the best talent in the world and every day we are growing a stronger and fairer economy for everyone. If Amazon can’t recognize what that’s worth, its competitors will.” One of them already has. Google had already announced a billion-dollar expansion in Hudson Square at the end of last year.

In fact, the company is pouring billions into NYC real estate, with plans to double its 7,000-person workforce over the next 10 years. As TechCrunch’s Jon Russell reported, “Our investment in New York is a huge part of our commitment to grow and invest in U.S. facilities, offices and jobs. In fact, we’re growing faster outside the Bay Area than within it, and this year opened new offices and data centers in locations like Detroit, Boulder, Los Angeles, Tennessee and Alabama, wrote Google CFO Ruth Porat.”

Just this week, as GE was making its announcement, Google was announcing a major expansion in Cambridge, the city across the river from Boston that is home to Harvard and MIT. Kendall Square is also home to offices from Facebook, Microsoft, IBM, Akamai, Digital Ocean and a plethora of startups.

Google will be moving into a brand new building that currently is home to the MIT Coop bookstore. It plans to grab 365,000 square feet of the new building when it’s completed, and, as in NYC, will be adding hundreds of new jobs to the 1,500 already in place. Brian Cusack, Google Cambridge Site lead points out the company began operations in Cambridge back in 2003 and has been working on Search, Android, Cloud, YouTube, Google Play, Research, Ads and more.

“This new space will provide room for future growth and further cements our commitment to the Cambridge community. We’re proud to call this city home and will continue to support its vibrant nonprofit and growing business community,” he said in a statement.

As we learned this week, big company commitments can vanish just as quickly as they are announced, but for now at least, it appears that Google is serious about its commitment to New York and Boston and will be expanding office space and employment to the tune of thousands of jobs over the next decade.


Source: TechCrunch

Uber reports $3B in Q4 revenue, rising operating losses

Ahead of its anticipated initial public offering this year, Uber reported a net loss of $865 million in the fourth quarter. That figure, however, was aided by a tax benefit that saved the company from reporting a $1.2 billion net loss in the period. On an adjusted, pro-forma basis, Uber’s net loss in the final quarter of 2018 was a slimmer $768 million.

The figures are an improvement of sorts. The firm reported a pro-forma net loss of $939 million in the preceding, third quarter of 2018, but also reported a smaller pre-tax net loss of $971 million. Regardless, Uber’s stiff losses continued in the quarter.

Meanwhile, Uber’s adjusted EBIDTA losses came in at $842 million, an increase of 88 percent year over year, and an increase of 60 percent from the third quarter. In that preceding quarter, Uber’s adjusted EBIDTA losses came in at $527 million. These increased losses can be attributed to increased competition and significant investment in bigger bets like micromobility and Elevate, for example.

In Q4 2018, Gross bookings (the amount collected before it pays drivers) went up 11 percent quarter over quarter, to $14.2 billion, while revenue increased 2 percent quarter over quarter to $3 billion.

Year over year, Uber’s gross bookings increased 37 percent and revenue increased 24 percent. But as a percentage of gross bookings, revenue declined to 21.3 percent. These numbers exclude the impact of SEA and Russia.

  • GAAP Revenue: $3.0 billion
  • Up 24 percent YOY
  • Up 2 percent QOQ
  • Revenue as a percentage of gross bookings declined 190 basis points to 21.3 percent

Compared to the entire fiscal year of 2017, Uber’s gross bookings increased 45 percent, to $50 billion in 2018. That resulted in a GAAP revenue increase of 43 percent, from 2017 to $11.3 billion. Losses also improved (decreased) from $2.2 billion in adjusted EBITDA losses in 2017 to $1.8 billion in 2018. That’s still a lot of money, but it does show overall positive signs that Uber is moving in the right direction.

“Last year was our strongest yet, and Q4 set another record for engagement on our platform,” Uber CFO Nelson Chai said in a statement. “In 2018, our ridesharing business maintained category leadership in all regions we serve, Uber Freight gained exciting traction in the US, JUMP e-bikes and e-scooters are on the road in over a dozen cities, and we believe Uber Eats became the largest online food delivery business outside of China, based on gross bookings.”

Other key stats for Uber’s Q4 2018:

  • Gross cash: $6.4 billion in unrestricted cash($4.8 billion at end of Q3 2018, $4.4 billon in Q4 2017)
  • Adjusted EBITDA margin: -5.9 percent of gross bookings (Q3 2018 was -4.1 percent)


Source: TechCrunch

Twitter considering a tweet ‘clarifying’ function

Clarification hasn’t always been Twitter’s strong suit. Fittingly, there’s a bit of confusion around the long standing succession that the service could add an “edit” button in order to save users from silly typos and, well, much much worse.

At a Goldman Sachs event this week, Jack Dorsey clarified that, rather than adding a controversial edit function, Twitter might just let people “clarify” earlier statements. The feature, it seems, is less aimed at the typo part of the equation than the whole on-going thing with people living to regret some horrible thing they said to the world years prior.

“The other thing that we’re seeing more broadly within the culture right now in this particular moment is people quote-unquote ‘being cancelled’ because of past things that they’ve said on Twitter or various other places in social media,” the executive said in quote reported by Recode. “There’s no credible way to kind of go back and clarify or even have a conversation to show the learning and the transition since.”

To clarify the clarification (which, one imagines, would get a slightly punchier name ahead of launch), the feature would essentially add a permanent addition to the original problematic tweet. The idea is to add context that would be lost in all of the retweeted screencaps that went out after the original was deleted.

Users then would only be able to retweet the clarification. Think of it like a quote retweet, albeit one that’s permanently  attached. It could be an interesting feature for news outlets, not to mention all of the now famous folk who might have tweeted something questionable back in the day. More so, certainly, than telling the world that you use the wrong “their” there.

As Dorsey notes, however, “Not saying that we are going to launch that but those are the sorts of questions we are going to ask.”

Thanks for the clarification.


Source: TechCrunch

Amazon leads $700M round in electric automaker Rivian

Rivian, the electric automaker that debut its first two vehicles just three months ago, has raised $700 million in a round led by Amazon .

The news follows a report earlier this week by Reuters that GM and Amazon were in talks to invest in the electric vehicle company.

“We’re inspired by Rivian’s vision for the future of electric transportation,” Amazon CEO Worldwide Consumer Jeff Wilke said in a statement. “RJ has built an impressive organization, with a product portfolio and technology to match. We’re thrilled to invest in such an innovative company.”

Rivian says it will remain an independent company. The equity round also includes participation from existing shareholders. ALJ is the company’s primary investor. Rivian and Amazon are not disclosing additional details about this investment.

Rivian is a curious company that has spent the majority of its life in the shadows. Founder and CEO RJ Scaringe launched it as Mainstream Motors in 2009. By 2011, the name changed to Rivian and moved out of Florida. Today, the company has more than 750 employees split between four development locations in the U.S. and an office in the UK. The bulk of its employees are in Michigan to be close to an expansive automotive supply chain.

The company also has operations in San Jose, California and in Irvine, California, where engineers are working on autonomous vehicle technology. Rivian purchased in 2017 the Normal, Ill. factory, which was where Mitsubishi in a joint venture with Chrysler Corporation called Diamond-Star Motors produced the Mitsubishi Eclipse, Plymouth Laser and Dodge Avenger, among others.

While Rivian had been active the past several years, it’s big public debut came at the LA Auto Show in November when it revealed its all-electric R1T pickup and R1S SUV.  Deliveries of these vehicles to customers in the U.S., which use a flexible skateboard platform, are expected to begin in late 2020.


Source: TechCrunch

A 7-Year Journey Across the US, One Highway at a Time

Joshua Dudley Greer traveled 100,000 miles up and down US interstates for his new book ‘Somewhere Along the Line’.
Source: Wired

Trump's border wall could be a virtual barrier patrolled by drones too – CNET

Companies are hoping to cash in on millions of dollars in new border security spending as the president plans to declare a national emergency.
Source: CNET

Walmart President's Day sale: Discounts on big TVs, gaming laptops, older iPhones and more – CNET

The deals continue on jumbo TVs, two older iPhones, Google Wi-Fi and a gaming laptop.
Source: CNET

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458