The only place it comes up is in the chart at the end, which makes some side reference to <link rel="enclosure"> in Atom, which is a far kludgier (and nonstandard) way to do things.
Atom has thought about rich media far more than RSS2.0. For example, one of the problems of podcasting is that popular podcasts require stacks of bandwidth. One solution is to offer a bit torrent link. RSS2.0 only allows one enclosure per item, so you can't offer both a straight download and a torrent.
In Atom its straightforward. Two link elements, both of a rel="enclosure", set the type to the mp3 mime-type and set its href for a straight download, set the other to the bittorrent mime-type and the href to a torrent file. No problems.
What happens when more than one torrent surfaces? Just add another link element.
Add a windows media player version - just add another link, and set the type attribute with the right mime-type.
Translated your podcast to a different language? Add another link element, and use the hreflang attribute to define the language.
The flexibility of link leaves enclosures trailing in the dust. Enclosures limit to one element per item. The bittorrent attribute is just an untidy hack.
Atom cleanly specifies how to incorporate plain text, html and XHTML content in an entry. Covering how text and html needs to be escaped, etc.
RSS2.0 had a problem last year where Reuters suffered a public embarrassment adopting the format. They followed the specification correctly, and it resulted in silent data loss - their stock identifiers were in angled brackets and got treated as an HTML tag by news aggregators.
It wasn't rocket science, but this simple thing turned out to be impossible to do with RSS2.0 - it was tried many times. After the funky feed debacle, the community realised that a separate format independent of RSS2.0 was the only way to fix the underlying problem.
The proponents of RSS2.0 tried to fix the silent data loss, and ended up breaking backwards compatibility with RSS0.92 - something they weren't prepared to do before Atom.
Not exactly true. Microsoft have confirmed that their Longhorn RSS plans does include handling Atom. They have thrown their weight behind RSS as in syndication, not RSS as the file format.
The partent article mentions a slashdot plugin, that could alter the way that/. works for users. If everyone goes and gets it, how is that any different than if someone mirrored a 'fixed' slashdot on their server? It's kind of a slippery slope...
About as slippery as everyone gets a black pen and draws devil horns, glasses, a goatee and a moustache on the front-cover of a popular magazine.
Quick - ban black pens before copyright is destroyed!
RSS is a good first-draft effort, but it feels extremly dinky and lightweight. I don't understand why bloggers are so enthralled with the concept of immediately receiving the first 50 characters of an update to another blog. For most of us, this is more trouble than it's worth. We'd love to have a service that grabbed entire articles and posts for offline reading, but no such mechanism exists.
RSS allows a full content feed. It certainly isn't limited to the first 50 characters. I read about 100 feeds, most of them are full text so I can read them offline.
I guess the six blogs you read have chosen to only show summaries in their RSS feed. Ask them to offer you the full text content, or unsubscribe and find a different 6 blogs that do offer full feeds. Vote with your feet / unsubscribe button.
I'm finding myself slightly stupified at the prospect that the only think keeping this vision from coming true is that we needed to take away the ability for users to make their own site, and then make the whole thing a little easier to update. We still have things like blogs about cats, so I'm not sure the content has become any better, but was this really all the user really needed? It boggles the mind.
Interestingly enough, it is this characteristic that Jakob Nielsen has been harping on about for years:
Web design and this notion of looking different to every other site is overrated. It is going against what people find usable. There are a lot of well structured blog sites out there - I hesitate to use the word design, since blogs really goes right down to the information architecture layer and get it right from there.
By giving up the "need" to design sites and by going for a templated approach, that gives web site owners, who now become bloggers, more time to focus on content.
Thankfully the days of great looking but content-less sites are fading fast. Content is still king.
It is a pity its with blog software (and tools like wiki) that Tim Berners Lee's original conception of the web of being an updatable resource is starting to come together. Blogs and wikis are making up for the deficiencies of browsers and web servers.
Re:good RSS directories -- longevity of protocols
on
Cool RSS Feeds?
·
· Score: 2, Interesting
2. Atom vs RSS cannot be seen as an evolution, since atom is not backward compatible. If it had been then it would have been the clear successor to RSS. This was a huge mistake of atom's creators. It should have been backwards compatible.
Atom's main goal is to have a well specified unambigious specification. The problem behind RSS is that it is ambigious - so leads to silent data loss - and it took the rather public failure at Reuters for the point to sink in. As such, it is close to impossible for a specification to be both unambigious and backwards compatible with RSS. A clean break results in a cleaner and more implementable specification, especially since we are not loaded with the baggage of previous unreversable mistakes in RSS. Notwithstanding, the "solution" to the Reuters problem now breaks RSS2.0's backward compatibility with RSS0.91.
Even the motivation behind Atom is clear:
Well, let's extend RSS into a new spec then. To keep any backwards-compatibility, we'd have to keep the top-level element as so people would think the format is actually RSS, and this would be really confusing.
Forget about backwards-compatibility. If we're not worried about backwards-compatibility, why are we bothering to keep around the old mistakes of RSS? Why not take this opportunity to fix them so that the future doesn't have to deal with all the kludges necessary to parse RSS today?
Over the last ten years there's been a significant brain-drain of talent from South Africa to Europe and the United States, mostly in medicine and IT. Universities are churning out a succession of high quality graduates into an country unable / or unwilling to utilise those skills - so emigration was inevitable.
Does your long term vision include reversing that exodus - creating an economy whese skills are wanted ?
Its good to see the South African government taking a look at open source solutions. South Africa is a virtual Microsoft monopoly. With open source, there's a far better chance of growing the grass-roots - but is there going to be a future in South Africa for the ever increasing "knowledgeable computer folk"?
Re:Does it work properly/completely with Opera yet
on
Gmail Adds Features
·
· Score: 5, Informative
What is with you people and thinking that Gmail is using ActiveX with IE??? IT DOES NOT USE ACTIVEX.
The GMail interface uses HTML, with Javascript doing the DOM manipulation (as you correctly state). It also uses XmlHttpRequest to get content (such as the full email) from the server via Javascript - that's why you see your email on screen without the page reloading.
Internet Explorer's implementation of XmlHttpRequest is done using an Active X component.
Gmail works with the new version of Safari mainly because that version also now supports XmlHttpRequest. Opera 7.6x is starting to support XmlHttpRequest too - its buggy at the moment.
/* XHTML proper header for browsers that accept it. If using Mozilla, this is one way to make sure your XHTML validates */ if(isset($_SERVER['HTTP_ACCEPT']) AND stristr($_SERVER['HTTP_ACCEPT'], 'application/xhtml+xml')) { header('Content-type : application/xhtml+xml'); } else { header('Cont ent-type: text/html'); }
This is short-sighted. Looking for an occurance of "application/xhtml+xml" in an HTTP Accept string isn't reliably going to determine a client that prefers XHTML. A user-agent that doesn't want XHTML will have "application/xhtml+xml;q=0". The q=0 means "Don't give me that mime-type" - and your logic will send them exactly that every time.
You need to replace the stristr($_SERVER['HTTP_ACCEPT'], 'application/xhtml+xml') with a function that will rank a user-agent's preferences specified in the HTTP accept header, and send back the highest preferred mime-type that your application supports.
Fine and pretty and nice as they are (and i mean no disrespect to the authors) those are simple sites.(not large scale corp sites) and yes i know of fastcompany.com.
Kasparov doesn't have a style of play that you can just put your finger on and say "oh, I know how to counter that!". The closest anyone has come to doing that is when Vladimir Kramnik beat him in a World Championship match in 2000. And Kramnik did it in a style that no computer could ever hope to emulate.
One of Kramnik's strengths during the match was he didn't _fear_ Kasparov. Anand and Short had that fear, which went a long way to Kasparov's comfortable margin of victory. One of the interviews given by Kramnik shortly after the 2000 Braingames match against Kasparov mentioned that it was that lack of fear that helped. He wasn't overawed by Kasparov, thus was able to play his normal game. Very computerlike - playing the board, not the man.
Kramnik's main tactic was to be very solid as Black - hence the opening choice of the Berlin Defence of the Ruy Lopez. Kasparov eventually exhausted himself against such a solid brick wall. Then Kramnik was quite comfortable with the White pieces - effectively refuting Kasparov's openings. Grunfeld, Nimzo-Indian, and Queen's Gambit Accepted all gave Kramnik the better game chances, and of course Kasparov was reluctant to use the King's Indian Defence.
Apart from Kramniks prodigious playing strength, the key element of his victory was his opening preparation - very much the same key as Deep Blue beating Kasparov. The last game of the Kasparov-Deep Blue match, Kasparov played the Caro-Kann and was slaughtered in the opening.
As far as I know, a couple of GMs were closely involved in Deep Blue's opening book.
Looking back, there are very interesting parallels between Kasparov-Deep Blue, and Kasparov-Kramnik. In fact enough to reasonably conclude that Kramnik emulated Deep Blue.
You can't compare a companies right to code their own website, to a company wanting to pay 10 year olds to work in a coal mine. This is a weak attempt to make a point where none exists.
The point both have in common is that a company acts in its own best interests, even if it goes against the interests of society. Government then needs to regulate to protect the society from their morally bankrupt companies.
Your continued rabid defence of companies smacks of the tone that companies should have more rights than people. Sad.
You see, that is exactly what I am talking about. I believe we have more rights, and the government is taking them AWAY with this type of regulation.
The legislation protects the rights of disabled people to participate in society. Surely the right to unreasonably prevent others from having the same rights as you is not something you really want to be cherishing? That would be unreasonable.
The point is that the Government should NOT be creating laws like this. Doesn't matter how wonderful, fair, helpful, etc. It is simply not the government's job to over regulate and FORCE a private company to do this.
The purpose of a government is to institute some semblance of order and decency. Disability Discrimination is a civil right - those rights need to be protected. It is a person's civil right to be part of the society they live in. Where that right is being denied, governments should... must step in and rectify the situation.
The government should only do for us what we can not do for ourselves.
And legislation like ADA and DDA were implemented precisely because businesses have shown themselves incapable of not unfairly decimating the rights of the disabled. Business has already failed to prevent discrimination against disabled people. So the government has been forced to step in.
The problem with RSS is that the spec is sufficiently vague that it is practically guaranteed that any RSS parser you write will eventually encounter an RSS feed that is valid according to the spec but cannot be correctly parsed.
That's already happened. When Reuters launched its RSS feeds two weeks ago it was valid as per the RSS2.0 specification, but every news aggregator failed to display the stock-ticker names within the feed. Silent data loss.
What is unfortunate, from an RSS perspective, is that this problem has been known for quite some time. Previous efforts to correct this problem were mired (one of the factors that lead to the Atom initiative). But it took a public failure of Reuters feeds before the RSS folk took it seriously enough to think about discussing it. So far, with the help of Mark Pilgim and aggregator authors test cases have been established for this particular scenario.
If the British Government hadn't been so short-sighted, the UK now would be the centre of the global computer industry.
From the article, to get around the reliability of valves the solution with Colossus was to leave it on until the end of the war, so it would have been on from 1 February 1944 through to at least 15th August (surrender of the Japanese). That's a 18 month uptime.
Mark Pilgrim put his money where his mouth is and donated $535 to Wordpress - an open source blogging tool. The amount was the same as the fee Movable Type were charging for their scripts according to their usage scales.
The problem as stated by the defendant is that SpamCop is hiding the identity of the complaining user and then complaining to the defendants ISP to get them disconnected. This leaves the no option to remeday the situation and they are not addressed directly.
And the problem is non-existant. Spamcop replaces the real email address with a randomly generated prefix - a temporary email address - thereby protecting the client. ISPs can reply to that email address which returns a response back to the original complainant. So what's stopping him from doing that - nothing! (Except the volume of complaints - but then that's his fault for not running a proper confirmed opt-in approach).
And it does work. I have replies from ISPs confirming removal of spammers / disinfection of mail relay trojans - they have no problem replying to the email address as created by Spamcop.
Seriously, why cant we have a "blog" flag or something, so I can filter that stuff out of google searches? It's really annoying when I'm trying to research a problem and get nothing but other people ranting about the same problem..
Your preference to filter out blogs would also filter out the blog entries that detail a full working solution to your problem.
The use of blogs is not indicative of the content therein - apart for the characteristic of entries being in a reverse chronological order on the front page.
Oh wait.... Scobleiser - a blog about the inner workings of Microsoft. Hmmm. A SCO-related search engine detailing the inner workings of Microsoft - that's weird.;-)
"Listed in Spamhaus" can be considered "not legitimate"
Only by spamhaus and its lackeys.
Spamhaus' ROKSO is a collection of evidence and information about people who have been kicked of multiple ISPs for unsolicited email and other violations. The evidence is quite substantial. Do you not concur?
Just keep the list accurate. Only include IP addresses of actual spammers.
Your "solution" doesn't work in the real world. ISPs seem to have no hesitation in moving spammers to different IP addresses to evade these blocks. If you want to play whack-a-mole all day long - go right on ahead until it convinces you the futility of this approach.
Now since an ISP is really ignoring complaints and moving spammers around their networks to evade blocks, they can be considered aiding and abetting spammers. The logical course of action is to block all IP addresses of that ISP, since the ISP themselves are condoning spammers with these tactics.
At the end of the day ISPs must make a choice between hosting spammers or genuine customers. Surely is is better for customers not to have spammers roving around their networks, and the quicker ISPs terminate their services and protection of spammers the better it is for you and the internet in general?
It should not need to take an block of all IP addresses of an ISP to get them to do their jobs properly.
Re:How can he hope to win this suit?
on
Spammer Sues SpamCop
·
· Score: 4, Informative
There's a little thing called discovery.
Last time, during Felstein's failed eMarketers America suit, the anti-spammers went for / insisted on a full discovery - unfortunately the Boca Raton spammers bolted when they realised their predicament.
I wonder if IronPort would oblige us by doing the same? Looks like Julian Haight still has a strong presence there.
Getting a good look at the innerworkings of a spammer may just provide a better idea of how to combat them (apart from the sheer entertainment value of watching em squirm).
Funny thing, I'm looking at the CSS with the editcss sidebar for firefox, and I can't find where the translucency is defined. How's that work?
There's no translucency. There's basically two background images: one is the original image, and one is after the translucent effect is applied. The body of the document displays the original image as the background, and the content div shows the other image as the background. Because the starting point of both background images is defined as the top left corner of the page, it _looks_ to be a translucent effect because the two images line up perfectly (except in IE which gets it wrong).
Atom has thought about rich media far more than RSS2.0. For example, one of the problems of podcasting is that popular podcasts require stacks of bandwidth. One solution is to offer a bit torrent link. RSS2.0 only allows one enclosure per item, so you can't offer both a straight download and a torrent.
In Atom its straightforward. Two link elements, both of a rel="enclosure", set the type to the mp3 mime-type and set its href for a straight download, set the other to the bittorrent mime-type and the href to a torrent file. No problems.
What happens when more than one torrent surfaces? Just add another link element.
Add a windows media player version - just add another link, and set the type attribute with the right mime-type.
Translated your podcast to a different language? Add another link element, and use the hreflang attribute to define the language.
The flexibility of link leaves enclosures trailing in the dust. Enclosures limit to one element per item. The bittorrent attribute is just an untidy hack.
Atom cleanly specifies how to incorporate plain text, html and XHTML content in an entry. Covering how text and html needs to be escaped, etc.
RSS2.0 had a problem last year where Reuters suffered a public embarrassment adopting the format. They followed the specification correctly, and it resulted in silent data loss - their stock identifiers were in angled brackets and got treated as an HTML tag by news aggregators.
It wasn't rocket science, but this simple thing turned out to be impossible to do with RSS2.0 - it was tried many times. After the funky feed debacle, the community realised that a separate format independent of RSS2.0 was the only way to fix the underlying problem.
The proponents of RSS2.0 tried to fix the silent data loss, and ended up breaking backwards compatibility with RSS0.92 - something they weren't prepared to do before Atom.
Not exactly true. Microsoft have confirmed that their Longhorn RSS plans does include handling Atom. They have thrown their weight behind RSS as in syndication, not RSS as the file format.
About as slippery as everyone gets a black pen and draws devil horns, glasses, a goatee and a moustache on the front-cover of a popular magazine.
Quick - ban black pens before copyright is destroyed!
RSS allows a full content feed. It certainly isn't limited to the first 50 characters. I read about 100 feeds, most of them are full text so I can read them offline.
I guess the six blogs you read have chosen to only show summaries in their RSS feed. Ask them to offer you the full text content, or unsubscribe and find a different 6 blogs that do offer full feeds. Vote with your feet / unsubscribe button.
Interestingly enough, it is this characteristic that Jakob Nielsen has been harping on about for years:
Jakob's Law of the Internet User Experience : users spend most of their time on other websites.
Web design and this notion of looking different to every other site is overrated. It is going against what people find usable. There are a lot of well structured blog sites out there - I hesitate to use the word design, since blogs really goes right down to the information architecture layer and get it right from there.
By giving up the "need" to design sites and by going for a templated approach, that gives web site owners, who now become bloggers, more time to focus on content.
Thankfully the days of great looking but content-less sites are fading fast. Content is still king.
It is a pity its with blog software (and tools like wiki) that Tim Berners Lee's original conception of the web of being an updatable resource is starting to come together. Blogs and wikis are making up for the deficiencies of browsers and web servers.
Atom's main goal is to have a well specified unambigious specification. The problem behind RSS is that it is ambigious - so leads to silent data loss - and it took the rather public failure at Reuters for the point to sink in. As such, it is close to impossible for a specification to be both unambigious and backwards compatible with RSS. A clean break results in a cleaner and more implementable specification, especially since we are not loaded with the baggage of previous unreversable mistakes in RSS. Notwithstanding, the "solution" to the Reuters problem now breaks RSS2.0's backward compatibility with RSS0.91.
Even the motivation behind Atom is clear:
Over the last ten years there's been a significant brain-drain of talent from South Africa to Europe and the United States, mostly in medicine and IT. Universities are churning out a succession of high quality graduates into an country unable / or unwilling to utilise those skills - so emigration was inevitable.
Does your long term vision include reversing that exodus - creating an economy whese skills are wanted ?
Its good to see the South African government taking a look at open source solutions. South Africa is a virtual Microsoft monopoly. With open source, there's a far better chance of growing the grass-roots - but is there going to be a future in South Africa for the ever increasing "knowledgeable computer folk"?
The GMail interface uses HTML, with Javascript doing the DOM manipulation (as you correctly state). It also uses XmlHttpRequest to get content (such as the full email) from the server via Javascript - that's why you see your email on screen without the page reloading.
Internet Explorer's implementation of XmlHttpRequest is done using an Active X component.
Gmail works with the new version of Safari mainly because that version also now supports XmlHttpRequest. Opera 7.6x is starting to support XmlHttpRequest too - its buggy at the moment.
This is short-sighted. Looking for an occurance of "application/xhtml+xml" in an HTTP Accept string isn't reliably going to determine a client that prefers XHTML. A user-agent that doesn't want XHTML will have "application/xhtml+xml;q=0". The q=0 means "Don't give me that mime-type" - and your logic will send them exactly that every time.
You need to replace the stristr($_SERVER['HTTP_ACCEPT'], 'application/xhtml+xml') with a function that will rank a user-agent's preferences specified in the HTTP accept header, and send back the highest preferred mime-type that your application supports.
AOL, Wired, ESPN not large enough?
Hmm, a redundancy not marked as -1 Redundant. There is no "correct" way to browser sniff. They are all incorrect.
0 Bleeding Obvious
One of Kramnik's strengths during the match was he didn't _fear_ Kasparov. Anand and Short had that fear, which went a long way to Kasparov's comfortable margin of victory. One of the interviews given by Kramnik shortly after the 2000 Braingames match against Kasparov mentioned that it was that lack of fear that helped. He wasn't overawed by Kasparov, thus was able to play his normal game. Very computerlike - playing the board, not the man.
Kramnik's main tactic was to be very solid as Black - hence the opening choice of the Berlin Defence of the Ruy Lopez. Kasparov eventually exhausted himself against such a solid brick wall. Then Kramnik was quite comfortable with the White pieces - effectively refuting Kasparov's openings. Grunfeld, Nimzo-Indian, and Queen's Gambit Accepted all gave Kramnik the better game chances, and of course Kasparov was reluctant to use the King's Indian Defence.
Apart from Kramniks prodigious playing strength, the key element of his victory was his opening preparation - very much the same key as Deep Blue beating Kasparov. The last game of the Kasparov-Deep Blue match, Kasparov played the Caro-Kann and was slaughtered in the opening.
As far as I know, a couple of GMs were closely involved in Deep Blue's opening book.
Looking back, there are very interesting parallels between Kasparov-Deep Blue, and Kasparov-Kramnik.
In fact enough to reasonably conclude that Kramnik emulated Deep Blue.
The point both have in common is that a company acts in its own best interests, even if it goes against the interests of society. Government then needs to regulate to protect the society from their morally bankrupt companies.
Your continued rabid defence of companies smacks of the tone that companies should have more rights than people. Sad.
The legislation protects the rights of disabled people to participate in society. Surely the right to unreasonably prevent others from having the same rights as you is not something you really want to be cherishing? That would be unreasonable.
The purpose of a government is to institute some semblance of order and decency. Disability Discrimination is a civil right - those rights need to be protected. It is a person's civil right to be part of the society they live in. Where that right is being denied, governments should... must step in and rectify the situation.
And legislation like ADA and DDA were implemented precisely because businesses have shown themselves incapable of not unfairly decimating the rights of the disabled. Business has already failed to prevent discrimination against disabled people. So the government has been forced to step in.
That's already happened. When Reuters launched its RSS feeds two weeks ago it was valid as per the RSS2.0 specification, but every news aggregator failed to display the stock-ticker names within the feed. Silent data loss.
What is unfortunate, from an RSS perspective, is that this problem has been known for quite some time. Previous efforts to correct this problem were mired (one of the factors that lead to the Atom initiative). But it took a public failure of Reuters feeds before the RSS folk took it seriously enough to think about discussing it. So far, with the help of Mark Pilgim and aggregator authors test cases have been established for this particular scenario.
From the article, to get around the reliability of valves the solution with Colossus was to leave it on until the end of the war, so it would have been on from 1 February 1944 through to at least 15th August (surrender of the Japanese). That's a 18 month uptime.
More uptime than the average Windows laden PC.
Google cache of Freedom-0, and his follow-up Aftermath.
Mark Pilgrim put his money where his mouth is and donated $535 to Wordpress - an open source blogging tool. The amount was the same as the fee Movable Type were charging for their scripts according to their usage scales.
And the problem is non-existant. Spamcop replaces the real email address with a randomly generated prefix - a temporary email address - thereby protecting the client. ISPs can reply to that email address which returns a response back to the original complainant. So what's stopping him from doing that - nothing! (Except the volume of complaints - but then that's his fault for not running a proper confirmed opt-in approach).
And it does work. I have replies from ISPs confirming removal of spammers / disinfection of mail relay trojans - they have no problem replying to the email address as created by Spamcop.
Your preference to filter out blogs would also filter out the blog entries that detail a full working solution to your problem.
The use of blogs is not indicative of the content therein - apart for the characteristic of entries being in a reverse chronological order on the front page.
Scoble - a search engine about SCO.
Oh wait.... Scobleiser - a blog about the inner workings of Microsoft. Hmmm. A SCO-related search engine detailing the inner workings of Microsoft - that's weird. ;-)
Spamhaus' ROKSO is a collection of evidence and information about people who have been kicked of multiple ISPs for unsolicited email and other violations. The evidence is quite substantial. Do you not concur?
Your "solution" doesn't work in the real world. ISPs seem to have no hesitation in moving spammers to different IP addresses to evade these blocks. If you want to play whack-a-mole all day long - go right on ahead until it convinces you the futility of this approach.
Now since an ISP is really ignoring complaints and moving spammers around their networks to evade blocks, they can be considered aiding and abetting spammers. The logical course of action is to block all IP addresses of that ISP, since the ISP themselves are condoning spammers with these tactics.
At the end of the day ISPs must make a choice between hosting spammers or genuine customers. Surely is is better for customers not to have spammers roving around their networks, and the quicker ISPs terminate their services and protection of spammers the better it is for you and the internet in general?
It should not need to take an block of all IP addresses of an ISP to get them to do their jobs properly.
Last time, during Felstein's failed eMarketers America suit, the anti-spammers went for / insisted on a full discovery - unfortunately the Boca Raton spammers bolted when they realised their predicament.
I wonder if IronPort would oblige us by doing the same? Looks like Julian Haight still has a strong presence there.
Getting a good look at the innerworkings of a spammer may just provide a better idea of how to combat them (apart from the sheer entertainment value of watching em squirm).
There's no translucency. There's basically two background images: one is the original image, and one is after the translucent effect is applied. The body of the document displays the original image as the background, and the content div shows the other image as the background. Because the starting point of both background images is defined as the top left corner of the page, it _looks_ to be a translucent effect because the two images line up perfectly (except in IE which gets it wrong).