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

Archivo del Autor: Belen De Leon

RSS is undead

RSS died. Whether you blame Feedburner, or Google Reader, or Digg Reader last month, or any number of other product failures over the years, the humble protocol has managed to keep on trudging along despite all evidence that it is dead, dead, dead.

Now, with Facebook’s scandal over Cambridge Analytica, there is a whole new wave of commentators calling for RSS to be resuscitated. Brian Barrett at Wired said a week ago that “… anyone weary of black-box algorithms controlling what you see online at least has a respite, one that’s been there all along but has often gone ignored. Tired of Twitter? Facebook fatigued? It’s time to head back to RSS.”

Let’s be clear: RSS isn’t coming back alive so much as it is officially entering its undead phase.

Don’t get me wrong, I love RSS. At its core, it is a beautiful manifestation of some of the most visionary principles of the internet, namely transparency and openness. The protocol really is simple and human-readable. It feels like how the internet was originally designed with static, full-text articles in HTML. Perhaps most importantly, it is decentralized, with no power structure trying to stuff other content in front of your face.

It’s wonderfully idealistic, but the reality of RSS is that it lacks the features required by nearly every actor in the modern content ecosystem, and I would strongly suspect that its return is not forthcoming.

Now, it is important before diving in here to separate out RSS the protocol from RSS readers, the software that interprets that protocol. While some of the challenges facing this technology are reader-centric and therefore fixable with better product design, many of these challenges are ultimately problems with the underlying protocol itself.

Let’s start with users. I, as a journalist, love having hundreds of RSS feeds organized in chronological order allowing me to see every single news story published in my areas of interest. This use case though is a minuscule fraction of all users, who aren’t paid to report on the news comprehensively. Instead, users want personalization and prioritization — they want a feed or stream that shows them the most important content first, since they are busy and lack the time to digest enormous sums of content.

To get a flavor of this, try subscribing to the published headlines RSS feed of a major newspaper like the Washington Post, which publishes roughly 1,200 stories a day. Seriously, try it. It’s an exhausting experience wading through articles from the style and food sections just to run into the latest update on troop movements in the Middle East.

Some sites try to get around this by offering an almost array of RSS feeds built around keywords. Yet, stories are almost always assigned more than one keyword, and keyword selection can vary tremendously in quality across sites. Now, I see duplicate stories and still manage to miss other stories I wanted to see.

Ultimately, all of media is prioritization — every site, every newspaper, every broadcast has editors involved in determining what is the hierarchy of information to be presented to users. Somehow, RSS (at least in its current incarnation) never understood that. This is both a failure of the readers themselves, but also of the protocol, which never forced publishers to provide signals on what was most and least important.

Another enormous challenge is discovery and curation. How exactly do you find good RSS feeds? Once you have found them, how do you group and prune them over time to maximize signal? Curation is one of the biggest on-boarding challenges of social networks like Twitter and Reddit, which has prevented both from reaching the stratospheric numbers of Facebook. The cold start problem with RSS is perhaps its greatest failing today, although could potentially be solved by better RSS reader software without protocol changes.

RSS’ true failings though are on the publisher side, with the most obvious issue being analytics. RSS doesn’t allow publishers to track user behavior. It’s nearly impossible to get a sense of how many RSS subscribers there are, due to the way that RSS readers cache feeds. No one knows how much time someone reads an article, or whether they opened an article at all. In this way, RSS shares a similar product design problem with podcasting, in that user behavior is essentially a black box.

For some users, that lack of analytics is a privacy boon. The reality though is that the modern internet content economy is built around advertising, and while I push for subscriptions all the time, such an economy still looks very distant. Analytics increases revenues from advertising, and that means it is critical for companies to have those trackers in place if they want a chance to make it in the competitive media environment.

RSS also offers very few opportunities for branding content effectively. Given that the brand equity for media today is so important, losing your logo, colors, and fonts on an article is an effective way to kill enterprise value. This issue isn’t unique to RSS — it has affected Google’s AMP project as well as Facebook Instant Articles. Brands want users to know that the brand wrote something, and they aren’t going to use technologies that strip out what they consider to be a business critical part of their user experience.

These are just some of the product issues with RSS, and together they ensure that the protocol will never reach the ubiquity required to supplant centralized tech corporations. So, what are we to do then if we want a path away from Facebook’s hegemony?

I think the solution is a set of improvements. RSS as a protocol needs to be expanded so that it can offer more data around prioritization as well as other signals critical to making the technology more effective at the reader layer. This isn’t just about updating the protocol, but also about updating all of the content management systems that publish an RSS feed to take advantage of those features.

That leads to the most significant challenge — solving RSS as business model. There needs to be some sort of a commerce layer around feeds, so that there is an incentive to improve and optimize the RSS experience. I would gladly pay money for an Amazon Prime-like subscription where I can get unlimited text-only feeds from a bunch of a major news sources at a reasonable price. It would also allow me to get my privacy back to boot.

Next, RSS readers need to get a lot smarter about marketing and on-boarding. They need to actively guide users to find where the best content is, and help them curate their feeds with algorithms (with some settings so that users like me can turn it off). These apps could be written in such a way that the feeds are built using local machine learning models, to maximize privacy.

Do I think such a solution will become ubiquitous? No, I don’t, and certainly not in the decentralized way that many would hope for. I don’t think users actually, truly care about privacy (Facebook has been stealing it for years — has that stopped its growth at all?) and they certainly aren’t news junkies either. But with the right business model in place, there could be enough users to make such a renewed approach to streams viable for companies, and that is ultimately the critical ingredient you need to have for a fresh news economy to surface and for RSS to come back to life.


Source: TechCrunch

Snapchat brings back chronological Stories feed for some

Snapchat has undone its controversial redesign’s most significant change in an update to some users today. A tab that shows Stories in reverse chronological order, replacing the redesign’s algorithmically sorted feed for many people.

We’ve reached out to Snap Inc and haven’t heard back.

Showing the most recent Stories first makes them predictable and coherent to browse. It helps you see what’s going on with friends right now. That could be helpful if you wanted to find out which friends were free to hang out or if there’s a party you could join.

Users are seeing the reverse chronological Stories feed in both the design where there’s just Stories and All tabs, as well as the design where there’s separate Stories and Chat tabs.

Snapchat has now re-added a chronological Stories feed

But reverse chronological order heavily prioritizes people who post frequently, which can bury your best friends. Snapchat’s move towards algorithmic ranking in its big redesign ensured that people you watched Stories from or chatted with most showed up at the top so you’d be less likely to miss their content. That’s similar to how Facebook’s feed worked for a long time, and how Instagram started ranking its feed two years ago. By moving social media stars and brands that don’t follow you back over to the Discover section as part of the redesign, there’s less noise in the chronological Stories list, so it works better than it did a year ago.

Switching to algorithmic sorting has helped Instagram and Twitter boost growth, which is likely why Snapchat made it part of the redesign. The company had seen daily active user growth sag from 17 percent to under 3 per quarter after the launch of Facebook’s Snapchat clone Instagram Stories. Snapchat saw growth improve after starting to roll out the algorithm-powered redesign in Q4 2017.

For the most hardcore Snapchat users who check it constantly, today’s update has been met with joy and gratitude. They were likely to see their closest friends’ posts no matter when or how infrequently they posted.

But ditching the algorithm could make it tougher for newer and less consistent Snapchat users who want to pop in and see the most relevant content instead of having to sort through distant acquaintances. That could inhibit growth. Essentially, Snapchat might have to decide between preferencing it’s most engaged and loyal users, or aiming to add more casual users.


Source: TechCrunch

How to build a cheap VR-ready PC

Once you get past the sticker shock of picking up a headset, the rest of the hardware you’ll need for a basic VR rig is relatively inexpensive. Whether you’re using the Oculus Rift or the HTC Vive, these suggestions will help you make the right choices for your PC build.

The post How to build a cheap VR-ready PC appeared first on Digital Trends.


Source: Digital trends

Documentary ‘Do You Trust This Computer?’ free to stream courtesy of Elon Musk

A provocative new documentary from the director of “Who Killed the Electric Car?” that explores the rise of artificial intelligence in society is available to stream for free all weekend, courtesy of A.I.-wary entrepreneur Elon Musk.

The post Documentary ‘Do You Trust This Computer?’ free to stream courtesy of Elon Musk appeared first on Digital Trends.


Source: Digital trends

Flat Earth believers tend to be younger, survey says – CNET

Commentary: A YouGov survey appears to suggest that our youth are riven with doubt about apparent scientific certainties. Can this be true?
Source: CNET

Beyerdynamic’s $99 headphone is a sweet match for pros and consumers alike – CNET

It’s a full-size design, ruggedly constructed, and does a good job isolating the wearer from external noise.
Source: CNET

The Audiophiliac's best-sounding bookshelf speakers – CNET

When is smaller better than bigger? The answer is bookshelf speakers.
Source: CNET

Zuckerberg to testify before Senate and House, Apple may shake things up video – CNET

In this week’s wrap-up, Facebook’s CEO will field questions from Congress regarding privacy and user data. Meanwhile, a report says Apple may dump Intel from its Mac computers.
Source: CNET

Can SaaS principles transform political campaigns as we know them?

In life, they say you get what you pay for. That is no less true in politics, which is fueled by campaign donations and lobbying dollars that move policy on every important issue under the sun. The disclosed expenditures of the DC lobbying industry are more than $3 billion per year, while just the presidential political campaigns spent more than $1.5 billion in 2016.

Despite the key role that money plays in American politics, almost no one actually donates to a political campaign. According to the campaign finance watchdog OpenSecrets, just 0.68% of American adults donated more than $200 throughout the 2016 campaign cycle.

A $200 contribution may sound like an extraordinary sum, but it’s roughly $8.33 per month throughout the two-year election cycle. Compare the 1.67 million people engaged with politics against the subscription numbers elsewhere in the economy: The New York Times is approaching 3 million digital subscribers while Spotify and Netflix had 70 million and 118 million subscribers respectively in January this year.

Watching House of Cards is certainly more fun than funding the real House of Cards, but the lack of engagement from voters in the money side of campaigns has serious, deleterious effects. As The New York Times pointed out, just 158 families donated roughly half of the early dollars in the 2016 election, giving this remarkably small sliver of the American people extraordinary influence over the course of policies that affect all of us.

Unsurprisingly, the report cards for political institutions remain near their historical nadirs in the United States. Gallup polls show that just 15% of Americans approve of the work that Congress is doing, and cynicism increasingly runs rampant about the government’s ability to improve the quality of life for citizens.

At their heart, political campaigns are no different than any other organization: they need to raise revenues and then spend it to meet their objectives. Organizations are responsive to who pays them, and therefore, the only way to connect politics back to the everyday lives of people is to connect more pocketbooks of voters directly into the revenue model of DC.

Lawrence Lessig, in his book Republic, Lost, believed such a system would likely tamp down the passions that exist in the present system. He wrote, “Yet in a system that was exclusively a small-donor system, candidates could not afford to fund their campaigns from the extremes only. Instead, with, for example, a voucher system, they would need to reach a much wider range of citizens. That breadth would preclude extremism. Like a mandatory voting system, a small-donor-funding regime would put constant pressure on representatives to hew to the mainstream.”

Small donations have become popular on both the left and the right. Bernie Sanders raised tens of millions of dollars from donors giving less than $200, and Donald Trump has effectively leveraged his various platforms to drive Republicans to the highest small donor numbers in the party’s history.

Yet, it’s not just small donations that are needed, but reliable streams of small donations, so that politicians could start to transition from dialing-for-dollars around-the-clock to actually doing the actual work of politics. It’s the difference between selling songs one at a time, and a subscription service that has dedicated customers paying every month. In short, it is SaaS, but for politics.

That’s where startups like GiveMini become interesting. GiveMini, the product name of Progressive Labs, was started by Joel Aguero as a progressive-focused platform to help people donate their spare change to progressive candidates. Inspired by apps like Acorns and Digit, which help users save money for retirement, GiveMini’s algorithm looks at your credit card transactions using Plaid, and then rounds up each transaction to a whole dollar, aggregates all this change, and sends the check to a campaign.

In others words, it is change for change.

“All of these little purchases are small acts of civil engagement,” Aguero explained. His model works as follows. The average person has 32 transactions a month, and his rounding algorithm averages about 45 cents for each of those transactions. That comes out to about $14.40 a month, or just shy of $350 across a two-year election cycle. GiveMini scrapes a fee of 10% to cover its costs.

The typical victorious congressional campaign spent $1.3 million, so if campaigns could sign up about 4,200 people for the entirety of an election cycle, they could cover all of their costs without resorting to tapping high-net-worth individuals at all.

Aguero, who studied product design at Stanford, worked at such startups as Coursera and Nextdoor, as well as corporate behemoth Palantir. The 2016 election was a surprise to him, and he decided to find new ways to engage in politics using his background as a product designer. He was inspired by Bail Bloc, a cryptocurrency miner developed by The New Inquiry that generates money for people who couldn’t pay their court bail. “What if we did that, but for progressive political campaigns,” Aguero asked. He proceeded to build a prototype over the next few months that would become GiveMini.

The platform targets progressives, which as a term doesn’t necessarily mean any Democrat. Its website says that “GiveMini is for progressives. This includes many Democrats and Independents, and potentially some Republicans. We assess fit on a campaign-by-campaign basis and reserve the right to cease support for any campaign, candidate, or individual at any time.”

The platform has built its first partnership with the campaign of Bryan Caforio, a Democrat running in California’s 25th congressional district, which is located to the north of metro Los Angeles and is currently represented by Republican Steve Knight. “They are really excited about it because normally small donor donations go after existing supporters, and this has the potential to unlock an entirely different subset of donors,” Aguero said. As the 2018 election heats up, “I’d like to get 100 campaigns on the platform by summer,” he said. GiveMini has joined the most recent batch of Higher Ground Labs, which bills itself as an accelerator for progressive startups.

One hundred campaigns is an ambitious target in an industry where the idea of small dollar subscriptions remains anathema. Candidates, particularly those running for national office, need to prove that they can raise large checks from large donors early on to be “viable,” in what is commonly known as the money race. Strong early money will often be leveraged with additional campaign committee dollars from DC, making it of critical importance to electoral success.

Aguero understands that success around these new models of campaign financing may not pan out right away. “We have to be intentional about who we can really support and make sure it is a positive experience for them,” he said. “If we can walk out of this with some really compelling case studies, even if they are not very favorable,” then GiveMini will have met its goals.

Long term, Aguero hopes that “we can build an open source model among progressive campaigns.” He’s also not limiting his focus to politics, but hopes to include relevant non-profits on the network in the future, saying that “A lot of the lessons we take from politics can be applied to the non-profit world as well.” He thinks non-profits could be an important opportunity in the downtimes between elections.

Washington’s current expertise in stroking the egos of plutocrats will have to be replaced with more consumer-oriented marketing chops. Changing the capital’s spending habits is not going to be easy, but reliable subscription revenue could change politics just as much as it has changed software business models. There is an opportunity to bring Silicon Valley’s SaaS knowledge into DC, and in the process, affect lasting change that could transform our current political challenges.


Source: TechCrunch

Space Photos of the Week: The Case of the Missing Dark Matter

Galaxy NGC 1052-DF2 doesn’t seem to contain any dark matter, and scientists have no idea why.
Source: Wired

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544