Reports | June 29, 2011 8:42

Rybka disqualified and banned from World Computer Chess Championships

Rybka disqualified and banned from World Computer Chess ChampionshipsThe International Computer Games Association (ICGA) has disqualified and banned Rybka and its programmer Vasik Rajlich from previous and future World Computer Chess Championships. The ICGA accuses Rajlich of plagiarizing two other programs, Crafty and Fruit, and demands that he returns the trophies and prize money of the World Computer Chess Championships in 2007, 2008, 2009 and 2010.

For quite a while there has been some serious turmoil in the computer chess world. When we reported about the Houdini-Rybka match in February of this year, the article triggered lots of comments about the issue of cloning. Was Houdini derived from the Ippolit series? Was it plagiarized from Rybka? And what about Rybka, was it largely based on the code of other engines? Nine days later we published an article by IM David Levy, President of the International Computer Games Association (ICGA), who shared his thoughts about how to tackle the issue. A few days later he announced the establishment of the ICGA Clone and Derivative Investigation Panel. Not long after, on March 1st, we received an open letter about the Rybka-Fruit case signed by fourteen chess programmers. They all supported the claim that Rybka was cloned from Fabien Letouzey’s Fruit. In the last few months all the allegations have been seriously studied by the International Computer Games Association (ICGA). On Tuesday night we received the following text from the ICGA President himself.

Rybka Disqualified and Banned from World Computer Chess Championships The International Computer Games Association (ICGA) has been conducting an investigation into allegations that, in the chess program Rybka, the programmer Vasik Rajlich plagiarized two other programs: Crafty and Fruit. The ICGA has considered and evaluated the evidence presented to the investigation panel and the report prepared by the panel’s Secretariat. (The report and evidence files are attached.) We would like to thank those members of the panel who contributed to this investigation and the Secretariat for the enormous amount of conscientious work they have put in to this matter. By a unanimous 5-0 decision of executive members of the ICGA we find ourselves in agreement with the verdict of the Secretariat’s report. We are convinced that the evidence against Vasik Rajlich is both overwhelming in its volume and beyond reasonable question in its nature. Vasik Rajlich is guilty of plagiarizing the programs Crafty and Fruit, and has violated the ICGA’s tournament rules with respect to the World Computer Chess Championships in the years 2006, 2007, 2008, 2009 and 2010. Specifically, Vasik Rajlich, on all five occasions, violated Tournament Rule 2 which requires that: Each program must be the original work of the entering developers. Programming teams whose code is derived from or including game-playing code written by others must name all other authors, or the source of such code, in their submission details. Programs which are discovered to be close derivatives of others (e.g., by playing nearly all moves the same), may be declared invalid by the Tournament Director after seeking expert advice. For this purpose a listing of all game-related code running on the system must be available on demand to the Tournament Director. By claiming other programmers’ work as his own, and failing to comply with the abovementioned rule, Vasik Rajlich has unfairly been awarded one shared 2nd-3rd place (in 2006) and four World Computer Chess Championship titles (in 2007, 2008, 2009 and 2010). Furthermore, it seems to the ICGA that Vasik Rajlich clearly knew that he was in the wrong in doing so, since he has repeatedly denied plagiarizing the work of other programmers. The ICGA regards Vasik Rajlich’s violation of the abovementioned rule as the most serious offence that a chess programmer and ICGA member can commit with respect to his peers and to the ICGA. During the course of the investigation and upon presentation of the Secretariat’s report Vasik Rajlich did not offer, despite repeated invitations from the ICGA to do so, any kind of defence to the allegations, or to the evidence, or to the Secretariat’s report, other than to claim in an e-mail to myself on May 13th 2011 that: Rybka has does not "include game-playing code written by others", aside from standard exceptions which wouldn't count as 'game-playing'. The vague phrase "derived from game-playing code written by others" also does not in my view apply to Rybka. The ICGA is of the view that such a serious offence deserves to be met with correspondingly serious sanctions against the perpetrator. In deciding on appropriate sanctions the ICGA has borne in mind the approach of the International Olympic Committee for dealing with the most serious cases of the violations of its rules. The ICGA has therefore decided as follows:

  1. Vasik Rajlich is hereby disqualified from the World Computer Chess Championships (WCCC) of 2006, 2007, 2008, 2009 and 2010.
  2. The 2nd-3rd place awarded to the program called “Rajlich” in the 2006 WCCC is hereby annulled, sole 2nd place is awarded to the program Shredder, and 3rd place in that event is awarded to the program Zappa.
  3. The 1st places and World Computer Chess Champion titles awarded to the program Rybka in the 2007, 2008, 2009 and 2010 WCCCs are hereby annulled, and all the other programs that competed in those events are moved up in the final tournament standings by one place. Thus the revised tournament standings and titles for those events will now be as follows. 2007 1st Zappa (World Champion) 2nd Loop =3rd GridChess =3rd Shredder 2008 1st Hiarcs (World Champion) 2nd Junior 3rd Cluster Toga 2009 =1st Junior (Joint World Champion) =1st Shredder (Joint World Champion) =1st Deep Sjeng (Joint World Champion) 2010 =1st Rondo (Joint World Champion) =1st Thinker (Joint World Champion) 3rd Shredder
  4. In due course those programmers whose programs have been elevated to World Champion (or joint World Champion) status will receive from the ICGA replicas of the Shannon trophy for the appropriate years.
  5. The plaques on the Shannon trophy that currently bear the name Rybka (for the years 2007-2010) will be removed from the trophy and new plaques will be engraved with the names of the revised winners of the title.
  6. Similarly, the titles of World Computer Speed (Blitz) Chess Champion that were awarded to Rybka in 2009 and 2010 are hereby annulled. The revised winners of the speed chess title for those years are therefore: 2009 Shredder 2010 Jonny and Shredder (joint champions)
  7. Vasik Rajlich is banned for life from competing in the World Computer Chess Championship or any other event organized by or sanctioned by the ICGA.
  8. The ICGA demands that Vasik Rajlich return to the ICGA the four replicas of the Shannon Trophy presented at the World Computer Chess Championships in 2007, 2008, 2009 and 2010, and to return to the ICGA all prize money awarded for Rybka’s performances in those events.

David Levy [President - ICGA] June 28th 2011

Mr Levy also sent us a big number of documents which according to the ICGA form the evidence to the claim that Rybka was plagiarized from Crafty and Fruit. These documents can be downloaded below for anyone who wishes to dive further into the material. The news is obviously a huge blow for the Rybka team. The impact in the computer chess world must be comparable to arguably the most famous example of doping in athletics: the positive drug testing of Canadian sprinter Ben Johnson in 1988. We've asked Vasik Rajlich for a comment and hope to add this later.

Downloads

Peter Doggers's picture
Author: Peter Doggers

Founder and editor-in-chief of ChessVibes.com, Peter is responsible for most of the chess news and tournament reports. Often visiting top events, he also provides photos and videos for the site. He's a 1.e4 player himself, likes Thai food and the Stones.

Chess.com

Comments

Arvin's picture

I tend to disagree. Chess games can't be played by humans all the way to the very end using preparation (computer assistance or analysis done by other players). Bear in mind that chess has three phases: opening, middlegame, and endgame. It is true that in opening, you can play it based on preparation or on moves developed by other players. However, if your opponent plays a different move or a move that is a novelty in the opening, then the game will follow a different path. That is the beauty of chess. There's always a new move that can be played in each game. You are only talking about the opening phase of the game. There's more to it than just opening.

If you can find a game of chess played by one player that resulted in a position in the endgame that is exactly the same position played so many years ago, please show them to us. No game is exactly alike to the very end. So to say that they are cheaters, I don't think so.

lucas de grammont's picture
Jochen Mueller's picture

That's wrong. If the problem is simple enough, two programmers will create the same code. Not the same source code, because they will use different formating and variable names. But the resulting executable will be (consindering they use the same compiler) identical.

Remco Gerlich's picture

Rybka was sold as closed source software with a closed source license. The GPL does prohibit that.

You can sell and distribute, but only if you adhere to the GPL's terms.

snits's picture

Which is what I said...

"There is nothing against the law in using open source code for commercial use as long as you honor the license of that open source code."

pro's picture

i has kno ribka for da libres lololololololol

KingTal's picture

Difference is Rybka team was claiming other engines as clones justifying it with their commercial status without providing evidence, while in this case evidence is provided for the claims. So i see "witch hunting" only by the Rybka team. Ban is well deserved for this dirty pack.

freakclub's picture

Shucks! Anyway Rybka is no match to Houdini anyway. But I have Rybka, and still use it with satisfaction.

c_fan's picture

So people cheat using engines and now engines cheat using people ??#*$%$%??

rharm's picture

I know nothing about programming, but it would have been nice to have some of the code of the other programs included in the Rybka vs Fruit Evaluation PDF from above. I wonder how different/similar the other programming is? From my understanding, it isn't a question of other code being used, it is that is wasn't noted. There must be huge similarities in all these programs. How much similarity can there be before you are actually just copying. I think its interesting to think how this would be looked at in other fields . Cars for example: the first one came out, the others just copied it by 4 wheels and a motor.

MarkWatkins's picture

I would try try to address your question directly, but it probably a bit difficult to do so in a reasonable way to a non-programmer. Perhaps your car analogy is best, see: http://www.monsterauto.ca/chinese-cars.php

Clearly all 12 things displayed are "cars" (with 4 wheels and a motor), and just as clearly there are 6 pairs of (visually) near-identical models. There is obviously some subjectivity when you start doing a cross-comparison between models (is the Scion more like the Cooper or the Hummer?), but at the same time, it is hard to think that anyone would think they weren't being "objective" in pairing the 6 "clones" to their originals. Of course, once such a "clone" match is suspected, there is still some investigating to do, and the car market doesn't exactly revolve around the same rules as the ICGA competition does. But it's an analogy.

Crazylocha's picture

Actually, the final report has a simplified version for those that have not participated for the last 20+ years in one version or another of CCC. They did a very painful process of several similar and dissimilar types of chess programming styles in the comparisons. To the lay person, it will make their eyes roll back in their heads etc., for those aware of the differences, it is extremely compelling and damning. Hence why the final verdict had NOTA SINGLE OBJECTION to the conclusion of the investigators, it prompted me to lose an hour of sleep to download and read the complete reports. I have had the privelidge of decades of discussions with most of the parties involved and have found most of them to be level headed in even the most vile of flame wars, etc. I am impressed with the thoroughness of how they came to the conclusions they arrived at after reading fully (and not before). To say simply, I have no doubts to the same conclusions, would undermine completely the disappointment I have gone through towards RV.

Crazylocha's picture

Actually, the final report has a simplified version for those that have not participated for the last 20+ years in one version or another of CCC. They did a very painful process of several similar and dissimilar types of chess programming styles in the comparisons. To the lay person, it will make their eyes roll back in their heads etc., for those aware of the differences, it is extremely compelling and damning. Hence why the final verdict had NOTA SINGLE OBJECTION to the conclusion of the investigators, it prompted me to lose an hour of sleep to download and read the complete reports. I have had the privelidge of decades of discussions with most of the parties involved and have found most of them to be level headed in even the most vile of flame wars, etc. I am impressed with the thoroughness of how they came to the conclusions they arrived at after reading fully (and not before). To say simply, I have no doubts to the same conclusions, would undermine completely the disappointment I have gone through typists towards RV. Truly, a sad day.

strijbos's picture

Don´t understand this. Someone has a good idea, another one makes it better. What´s the problem?

Jerry's picture

There wouldn't be a problem if Rajlich had given credit to the engine he built from. Houdini credits Stockfish and Rybka for some of the techniques and ideas used in building that engine--and that's not a problem. That's how we get good software, I agree with you. But you can't buy a cake, add icing to it, and tell someone you baked them a cake. At least not if you're entering that cake into a baking competition sanctioned by the ICGA!

Tragisk's picture

He did give credit. This is a tragic result of a witch hunt. Are the other engines clean?

Tano-Urayoan's picture

Giving credit is not enough, If you use ad-verbatim code from a GPL licensed software you must also provide your code and that did not happen , there lies the problem.

meh's picture

You must when someone asks for it. That's the huge difference.

peter's picture

But ICGA did ask for it.

Dennis M's picture

It sounds like you're saying that it's okay to plagiarize (= steal) other people's intellectual property, as long as you admit that you're doing it. He wasn't banned because there was a general concept or two that he used, but because significant portions of code were taken wholesale.

The Joker's picture

Yes, it is OK to use GPL-licenced code. Moreover, the authors would be happy if other people use their code -- that's why they released it under GPL. What is not OK is that the original code is not given credit and the resulting software is not reseased under GPL -- that's what one has to do if one uses GPL-licenced code.

Chess Fan's picture

Very good simple cake analogy to understand. Thank you.

Unfortunately, we are seeing lots of news in the world where great intelligence and morality and ethics do not always go together.

BTW, isn't Vasik Rajlich a Serbian who is a computer trained engineer from MIT whose wife is a world class woman chess player?
I come across lots of Serbians and they seem to be good both in Computer Science and Tennis.

brianinski's picture

It would have only taken the polite courtesy of naming the code authors? Just goes to illustrate how a lack of integrity catches up with people. The plagerizer pretending to create Rybka solely by himself, must feel like an idiot!

Chessbase will not comment, yes I found it curious that they seemed unwilling to hinder sales with an admission they were promoting plagerized creative content/someone else's intellectual property.

Remco G's picture

The problem is that it's illegal. You can't just take an existing computer program and make it your own.

christos (greece)'s picture

There is a problem if you steal the idea.
Fruit has a license which clearly states that if you make changes you have to make them freely available, as freely as you obtained the ideas (source code) in the first place.
If one does not agree with the license, then they 'd better not use the source code at all, or else you see what might happen to them.

Tracee's picture

I've read some excellent stuff here. Definitely worth bookmarking for revisiting.
I surprise how a lot attempt you put to make one of these magnificent informative website.

Juan's picture

Did Stockfish and Houdini participate in this event?
They area clear better (at least in the TCEC seasons) than Rondo, Thinker and Shredder.

Juan's picture

I meant they are*

Tano-Urayoan's picture

No

Tano-Urayoan's picture

No and Rondo is a private engine we do not know how it compares to the other engines.

Juan's picture

Thanks for that explanation, how ever if Rondo wasn't better than Rybka in ICGA, this probably means that at least isn't as good as Houdini (considering Houdini has beat rybka convincingly in two 40-games matches in TCEC).

I hope to see more engine related news on chessvibes :)

Tano-Urayoan's picture

Well the "problem" with this tournament is its length. It is too short 9 games or so to make a reliable conclusion about engine strength. So We don't really Rondo's real strength. compared to Rybka or Houdini. Besides the version of Rybka that won the championship was the cluster version which is stronger than regular uci Rybka or even Houdini.

MarkWatkins's picture

I agree that the length of the WCCC is a "problem" -- but only if you care about statistical precision. :) The WCCC has traditionally been construed more of a meeting-ground for programmers than a full-tilt event (though more recently this is not so apparent, and obviously the commercial guys have different priorities). For instance, there is an Advances in Games conference overlapping the WCCC in Tilburg this November. Another comment is that opening books often play a large role (Rajlich was a genius to sign-up Noonen right near the beginning), particularly as the "amateur" engines are often quite derelict in this regard, and ensuring a full point against them is often of major import.

Incidentally, I am kicking around trying to start up a web-watchable event like Martin's TCEC. I would likely have it be "ponder on" though. The basis of this is that I am actually thinking of getting an 8x8 core computer (though each processor is a slow 2.0Ghz Opteron 6128) for about $10K in conjunction with the university here, and could use it to run such an event at off-peak times (such as 2-week blocks when I wasn't using it for maths). It remains to be seen if this will happen, or what form it will take. I'm in Europe in July, so nothing would be happening for a few months in any event. Feel free to comment (here or elsewhere).

Tano-Urayoan's picture

Hello Dr. Watkins: Following your comments in open chess I thought you were going to attack the tablebases generation with that new toy. Is it still in your plans? Anyway good luck with the tournament.

Juan's picture

It would be very cool if your event could be transmited on Chessbomb, that way it would get a lot of attention.

freakclub's picture

This is plagiarism, man. Meaning, copying the codes of other engines. Just like Luke and Matthew were copied from Mark. Lol

Dave Acevedo's picture

@freakclub Matthew and Luke and Mark were each direct and at times indirect witnesses to the event of Jesus' life. The CANDOR of these three Gospels accountings are proof that they are individual works. In addition we see that "...all scripture is inspired of God". These books, under the microscope, suffer no such accusation.

Oh Rybka Rybka Rybka!!! Yes, all would be well if the help from other engines was admitted at the start. How original and magnificent was/is Fruit now? Well for now very original and very magnificent and very innovative.

freakclub's picture

My boy, please read books on textual criticism before saying "Matthew and Luke and Mark were each direct and at times indirect witnesses to the event of Jesus’ life". You really sound naive.

Start with Bart Ehrman's "Misquoting Jesus" and Robert Price's "Incredible Shrinking Son of Man."

Frank's picture

Actually, recent archaeological discoveries in the Middle East strongly confirm what used to be considered problematic elements in the Old and New Testaments. We have Babylonian inscriptions where Cyrus describes how he allowed captives to return to their homes and worship their own gods, for instance. And digs at Jericho have established that the bricks on top of the walls did indeed fall outward, thus creating a giant ramp which allowed the Israelites to run up and into the city., just as the Bible claims. Research indicates that, at the time Joseph was sold into slavery, the going rate for young, healthy male slaves was indeed what the story said. Hard to believe that little detail was guessed correctly if the story was concocted hundreds of years later, as the higher textual critics insist.

As for the New Testament, even liberal scholars now admit that, contrary to their previous assertions, most of the gospels were indeed written within the lifetime of eyewitnesses who would certainly have objected to any obvious lies or confabulations. Luke, for example, has proven to be a superb historian, getting details right again and again. In fact, archaeologists now use his account in figuring out where to look.

Textual critics are increasingly forced to use strained arguments to deny what is obvious, that the Old and New Testaments are, broadly speaking, truthful. When they play up minor differences between translations, such as one letter in a name, or a slightly different word order (Jesus loved Paul vs Paul Jesus loved, for example) you know the game is up.

The evidence points to the overall veracity of these documents. The real question is, are they totally accurate? And, are they accurate in describing supernatural events? Science cannot answer those questions, but at least the minimalist/nihilist point of view is looking less and less plausible.

Aaron's picture

I hardly see that it is 'obvious' that old and new testaments are, broadly speaking, truthful. Ark? Garden of Eden? Tower of Babel? Rumblings atop Sinai? Parting of Red Sea? I think the 'obvious' response is that they are, broadly speaking, false. No strained argument needed to deny the supernatural. Merely avoiding asserting fabulous things of which there is no living trace or proof.

The 'nihilist' view as you call it is really an excessively pessimistic response to loss of fantasies. Reality remains intact. The here and now vindicates itself, and incoherent promises of other wordly places and spirits does not add one iota of meaning to your life. It merely provides a refuge from the concept of mortality for those for whom reality is psychologically problematic.

Poppi's picture

"By a unanimous 5-0 decision of executive members of the ICGA"
Who are those members? I couldn't find any information on the ICGA site. Are they secret? I hope the deciding people are not competitiors of Rybka.

I'm not a programmer myself, so I can't judge about those evidences given in the RTF and PDF documents, but did they check out each Rybka Vasik Rajlich played the engine championships with or did they check it on a reference Rybka? If yes, which please? Are there any researches with other engines?

The entire procress of the ICGA seems rather odd to me. 1st of all, those allegations are public since 2005 or 2006. Why Mr Letouzy and Mr Hyatt (the father of Crafty) did not complain before? To wait 5 or 6 years is not reasonable. The 2nd which makes it odd in my opinion the procedure used by the ICGA itself. To me it seems like far off public and transpararent procedure.

A last and stupid question: when you may call a a thing plagiarized? What are the criterias here?

MarkWatkins's picture

The Board is: Levy, Bjornsson, Iida, and Coulom. I suspect that van den Herik (as the Tournament Director) was considered a Executive member for this purpose for the 5th vote? See https://ilk.uvt.nl/icga/organisation/board.php

Regarding the first issue (which Rybka version played when), the Panel disassembled versions dating from 2004 (pre-Beta Rybka) to 2007 (Rybka 2.3.2a, likely what played in Amsterdam), and found evidence of Crafty/Fruit plagiarism in all of them. This issue was put to Rajlich as a question (in one form or another), and he declined to respond. I might say that tracking all the (numerous) Rybka versions was a major pain for the investigators, and it would have been much easier if he had just said something like "The 2006 version is essentially Rybka 2.1 and you can get a copy from ..."

As for other engines, Rybka 3 and 4 were also partially considered, but they were not made the centre of the report, as the re-writing of the evaluation function (by Larry Kaufman) made some of the Fruit overlap moot. Other engines were considered during the statistical analysis of the "evaluation overlap" comparison.

The allegations were not public until at least 2007 ("Juri Osipov"), and no one really took them seriously until 2008 (Rick Fadden and Zach Wegner). There was a publicised email around that time from Fabien Letouzey that suggested he didn't care about Strelka (Osipov's engine) being based on Fruit -- he never addressed Rybka head-on, but as Strelka was "known" (though not to Fabien) to be a Rybka-clone, this was taken as implying he didn't care.

The fact that pre-Beta Rybkas used Crafty code was unknown until the Panel commenced, and only after a version of one of these pre-Beta Rybkas was obtained did this fact become known. [The pre-Beta Rybkas are still not publicly available, largely due to privacy concerns, though the relevant snippets have been publicised].

The ICGA operated in an "iniquistorial" method (to use the classical term -- some French courts still run on this principle for instance). That is, the judge(s) [Levy in this case, then with the Board] used whatever means he saw fit to pursue the truth. They asked the Panel to produce a report, which it did. He then (privately) contacted Rajlich for a response. After the decision was made, the bulk of the evidence was made public. I'm not quite sure how being public from the start would have made much of a difference, except a lot of gadfly spectators would likely have been needed to be ejected from the virtual courtroom. I think the final documentation is about what one would expect from (say) a transcript of a court hearing in any event.

Your last question is by far the best. This was a major matter the Panel dealt with, though in the end, the concept almost necessarily must be partially subjective. A suitable quasi-objective metric for the case at hand ("evaluation feature overlap") took about a month to discuss, design, and instrument [note that plagiarism can be much more broad than just this, of course]. The final consideration of the Panel was essentially unanimous, from which I conclude that every one of Rajlich's peers found the evidence sufficient for the term "plagiarism" to be operative.

Sander's picture

Very good, everyone using an engine are cheaters and deserve to be disqualified!

R.Mutt's picture

Yes, using an engine at the World Computer Chess Championships is a very dirty trick...

Sander's picture

Im so glad you pointed that out. And here I thought I couldnt make a more obvious joke...
I thought wrong.

Knallo's picture

Fewer and fewer people are able to understand irony, Sander. A sad fact.

Johnny's picture

If the Rybka=Fruit/Crafty connection is so strong and the evidence so damning, then why did this take over 5 years to unearth? Five and a half years since December 2005! It should be noted , for whatever it's worth , that a huge majority of the panel members who investigated and condemned Rajlich are his direct competitors, ie, authors of rival programs. These same competitors wonder why Rajlich did not give up the Rybka source code for their perusal.

As a layperson in computer matters (I am an attorney), I don't get this at all. There is no Rybka source code to compare, so apparently various circumstantial evidence is cited. Fruit was the strongest engine. Then Rybka was the strongest engine. And yet their evaluation functions were found to overlap by 64%. Call the police! The panel points out that weaker engines had less overlap as compared to the 2 strongest engines (Fruit and Rybka). Naturally, engines that are closer to the "chess truth" will overlap more. I don't see how an evaluation overlap of 64% is "nearly identical". Geneticists claim that human beings share 96% of the same DNA (aka "source code") with chimpanzees. Perhaps the ICGA will ban God from claiming that Human Beings are uniquely in His image since the ALmighty seems to have plagiarized the source code for chimpanzees when coding humans..

Tano-Urayoan's picture

"There is no Rybka source code to compare, so apparently various circumstantial evidence is cited"

Yes and no, there is no direct code but the software was reversed engined (which was accepted as evidence (not circumstantial.) and the comparisons between codes was made and the rest is history.

Fruit is GPL licensed so if you use its code directly you should publish yours also, and Rajlich didn't do that. There is where the problem lays

ebutaljib's picture

"Geneticists claim that human beings share 96% of the same DNA (aka “source code”) with chimpanzees. Perhaps the ICGA will ban God from claiming that Human Beings are uniquely in His image since the ALmighty seems to have plagiarized the source code for chimpanzees when coding humans."

Best comment I have seen in a long time :)

Dennis M's picture

I don't understand the comment, since God would be "plagiarizing" from Himself as the author of chimp DNA too. (It also shows a misunderstanding of the Imago Dei (image of God), which refers to characteristics like will and intellect rather than physical qualities, but that's still another story.)

Pages

Latest articles