OpenRespect My Criticism?

I was reading last week the new OpenRespect website by Jono Bacon, where he is attempting to create a set of standard communication self applying rules to how we all can criticise respectfully each other’s opinions.

Today I read an interesting blog post about Did UbuntuJono disrespect fedora. The interesting part is not the article which is based on an error of timing and judgement, but instead the comments which seem to fall into three categories:

  • Destructive – Anything to do with Ubuntu or Canonical is obviously Hitler related.
  • Counteractive – Anything Ubuntu related is obviously Ghandi related.
  • Jef Spaleta – The only person who can be critical and still talk sense it seems.

When you have a vested interest in getting dissenting views silenced..and want to accomplish that as respectfully as possible…the information at is a wonderfully excellent resource…written by someone who needs to do that day in and day out as a “community manager” working for a corporate entity who doesn’t really want people rocking the boat with regard to questioning corporate policy. – Jef read whole comment here

Canonical does seem to have a strong position on not rocking the boat, but we can do a little experiment to see what will happen when I make a list of my current disagreements and how I think the community can resolve them by rocking the boat:

Underinvestment in Plumbing – It’s true that very few companies are investing in the Free Desktop plumbing. Well a little, but it’s not a lot considering how much is being invested elsewhere. There isn’t a lot the community can do, Canonical and Mark are free to invest in whatever they like. But being critical of Canonical’s investment in plumbing and upstream plumbing especially is appropriate since a lot of technical user problems in Ubuntu are directly traceable to this underinvestment.

Weak Technical Board – Mark is the man and where once he was a Benevolent Dictator for Life, the person who could come in and break tied or tired argument; not any more. the position in a number of communities has morphed into plain dictatorship. And that perhaps is because of the weakness of the technical board and the fact that there is no resolution board for user experience and design. What we end up with is a whole bunch of employees who can’t tell Mark he’s wrong and a community who is denied the opportunity. End result is contributor dissatisfaction and a melting meritocracy. My advice is to question vigorously everything that seems to be pre-made decisions and champion community everywhere, refuse to engage in activities such as testing when decisions are dictated.

Antisocial Contributors Agreement – This really does boil down to a cultural problem, Canonical as an Upstream (ayatana etc) do not believe hand on heart in Free and Open Source. Because if they did, there would be no issue with accepting patches from anyone. This is a really big issue that sticks in the craw of many Open Source advocates. My best advice is that upstream should consider all Ayatana projects objectively and fork all code that seems attractive, create new repositories and encourage downstream contributors to contribute to the fork instead. I see no difference between what Sun/Oracle are doing with and the Ayatana projects at Canonical, and I see no other remedy at this time.

So, the question is, does my boat rocking constitute disrespect at all? Do I have my facts wrong or is my view out of step? Your comments are welcome:

38 thoughts on “OpenRespect My Criticism?

  1. I think all your points are fair and just, but why do we make it a Canonical vs. the rest of the world issue when it should clearly be a Jono Bacon vs. whoever issue?

    I just fail to see why this whole stuff is worth complaining about at all. Jono says more or less that it is nice to be polite and that there should be a point where you can only settle to disagree which is fine for me as well. If we don’t like why can’t we you ignore it or say it is wrong like Jef Spelata or Aaron Seigo did, without someone invoking Godwin’s law or other forms of name calling? I just do not get it.

    What is wrong with us FLOSS people?

  2. I think the dictatorship problem is more subtle than this.

    I think people who work for Canonical are more reluctant to speak up than they need to be, but they don’t know this. From the other direction, senior leadership (not just SABDFL) assume lack of feedback is agreement, not that people are reluctant to speak. As new people join, this culture of not speaking up is reinforced as “how we do it”.

  3. The Free Culture community is saturated with people who write code, but not people who design good user interfaces. Pulling good interface designers in has got to start somewhere, and I think that it’s basically going to be proprietary at first; which I’m fine with as long as the results are open. I think they should be free to do their job with as little meddling from people who haven’t majored in user interface design.. as possible.

    The ideal community and the community that we have are two different things. None of us are perfect, I certainly know I’m not. Leveraging and involving our real community is going to look different than it *should*, because our community *is* different than it “should be”. One need not look farther than the tiny amount of women in Free Software compared to men to see a symptom of this problem.

    I think if Apple had to get the approval of every computer geek and user they had to do anything– or even the majority, OS X would never have even *happened*, let alone become what it is today.

  4. Your speaking out doesn’t constitute disrespect. You’re free to criticise ideas, just as anyone else is free to ignore your criticism. That’s the way free speech works. Cricticising people personally, on the other hand, is a shakier area, and one best avoided. Thus:

    “I think that Foo’s idea is poorly thought through because…” is fine, but “I think that Foo is an idiot because…” is something that should at the very least have people calling you out on your bullshit.

  5. Depends who you ask Dr. Mo. I pointed out on Jono’s original blog that there is *no way* to respectfully disagree or object because the mere act of disagreeing is seen as disrespectful.

  6. Also, I’d have to say that the feel good “we’re all on the same side” bit is really often false.

    For example, the mission of Ubuntu is to wipe out Microsoft market share, even if it means forcing the company to shut down, costing all of its employees their jobs, and their mission is to force me to pay them for software I don’t want. To a degree, then, we’re enemies– how are we supposed to interact with respect?

    Take an example closer to home. Fedora vs. Ubuntu. I view fragmentation as one of desktop Linux’s biggest weaknesses. The best way I know how to help avoid this is to maximize the share of the largest fragment and minimize the share of the others, making my goals exactly contrary to, say, Fedora marketing. Where is the respect we deal with eachother grounded?

    Now, finally, let’s pull a Godwin. Should the Allies treat the Nazi Germans with respect? Vice Versa?

    We are *not* all on the same side, all the time. —so where does respect actually come from?

  7. Ethana2: Do you intend to take POWs, or do you shoot all your enemies?

    I don’t think Fedora, Debian or any other Free Desktop is an enemy of Ubuntu, not in any way. I’d rather more Ubuntu people moved to Fedora if that’s what makes them happy. Too bad that I get so much grief from Fedora/RedHat people for things that I haven’t done.

    That’s the problem with picking sides and calling everyone else out on not being on it. You forget that this is a complex terrain.

  8. Martin,
    One small criticism. Please link directly to the comment from which you a short quote from me as citation hyperlink and not just the parent article itself when the commenting system allows permalinks, which it does in this case.

    And I think Aaron Seigo’s own blog post on openrespect is still way better than mine as a piece of respectful criticism.

    The flipside question is, how many of those same people would feel more comfortable expressing personal criticism in a face to face private conversation with you with the understanding that what they said would be treated confidentially?


  9. Did you forget the Monty Python skit Mark played ? He knew what the response would be of his Unity announcement.

    If anyone else has millions of dollars to drop on creating a unified desktop interface, please do.

  10. hamslaai: Sure, and I’m not in apposition to anything Unity is bringing technically speaking. It’s design is good and basis is well thought out for it’s target audience. There have be silly detractors and haters, but looked at objectively as a developer I’d much prefer unity to gnome shell. If only it wasn’t for those points in my post and a bit of wording and there wouldn’t be as much detraction on what is a good idea at heart.

  11. There are a number of people, myself included, who have had bad experiences with Ubuntu, Canonical, and the Ubuntu community. We have definite criticisms of those latter entities, and despite the fact that Jono Bacon in particular, and in my experience, the majority of Ubuntu folks, spend lots of time trying to convince everyone not to voice that criticism, and indeed, actively seek to censor it in places that Canonical controls, is irrelevant to me. We need to criticize Ubuntu so that its negative attitude/tendencies aren’t propogated to other distros. In particular, I’m incredibly glad and encouraged by the fact that Debian folks, unlike Ubuntu folks, aren’t the least bit afraid of criticism, and in fact, seem to encourage the most unfettered debate. That provides me with a LOT of confidence in Debian. I simply believe that there’s no way my viewpoint will ever be overlooked with Debian. On the other hand, I simply don’t trust the Ubuntu folks to be able to offer me anything positive. Their whole attitude reeks of “Don’t say anything negative about Ubuntu, Canonical, and Ubuntu users, or we’ll outright reject/censor your criticism, and then label you some sort of terrorist”. This OpenRespect thing is more of the exact same P.R. I’ve seen over and over from ubuntu advocates, and yet the ubuntu machine continues to be what it is, and apparently what it will always be. And what that is, is something that I find deserves criticism, and yet rejects it. Jono Bacon needs to just get over it, and find something else to do, than just continue to cry how unfair it is that some people think that their criticisms of ubuntu are meritorious. The Canonical folks are really starting to sound like a broken record here.

  12. @Jef Spaleta: Certainly more of them (and I do hear more in private than is said in public), but I think that’s always going to be the case. Matt Zimmerman recently (and I find ironically) did a blog post on this very topic. People being unwilling to speak up to authority figures is a problem all organizations face. Ubuntu can, and should, be better about it though.

    This problem is not just with Canonical employees. There are plenty of other people who are involved in Ubuntu development that are also reluctant to speak up. Any time someone holds back trying to express ideas about improving a project just based on who they are responding too the project (any project) suffers.

    I think my record is pretty clear on things I like and don’t like in Ubuntu. I have disagreed, sometimes in extremely strong and public ways, with lots of senior contributors to Ubuntu (many of which, but not all, work for Canonical). I think the discussions that resulted have improved the project.

    I think the project would be better yet if more people would be less deferential and not worry about who said something, but what was said and how best to address it.

  13. The opinions on the subject of respect (or any other subject) are varied and all a matter of personal perspective and opinion; so to get a majority agreement on what (in this case…) “respect” means, is in itself a major challenge.

    From my perspective, The Golden Rule applies: “Treat others as you wish to be treated.” This covers all areas, not just FOSS. For me, everyone has my respect until they lose it by their actions, words or deeds. There are, as in all areas of life, people who are respectful and disrespectful of themselves and one another; including within the FOSS community.

    This division, regardless of which individual or group of individuals are involved, is one of the great causes of Linux not going as mainstream as it should be. There’s far too much ego-driven areas within the FOSS community. Microsoft/Apple are money0drive, whereas the FOSS community seems to largely be ego-driven. We as a whole need to not be so personally vested in and polarized to “our way”, and “right vs wrong” (for anyone but ourself that is).

    It’s not about placing blame, as afixing blame does not resolve the issue at hand…respect. In order to respect others, we must first respect ourselves, and while some may do that, I fear not all of us do. The FOSS community, which is really just a collective of individuals, is often time used by people for their own personal or sociio-political agendas.

  14. jg: I disagree that there is a heavy philosophy of censorship. The only thing that the Ubuntu community will not stand is viciousness and not standing for that is something I’m very much in agreement with. I think sometimes there is confusion between what is censorship and what is maintaining decorum.

    Can you guarantee to me in any way that your views are based in fact? Can you bring me to examples? Extraordinary claims require extraordinary proof.

  15. I don’t agree. Canonical makes decisions. If you don’t like them, install something else. They explain their reasons, they are rational. you may not agree, but they are not being evil.

    They are releasing Unity by default, but Gnome shell will be available. There’s no way Canonical can lock you out of Gnome Shell even if they wanted to. As there’s Kubuntu, there could also be a Gnomeshelluntu.

    Ubuntu has a community, but its developement is not community driven. If you want that, there’s Debian. They vote who is in charge.

    The contributors agreement is irrelevant to the community. You have to give your rights on your patches to Canonical, but see what happened with Pidgin. MSN code in pidgin was written by somebody else, not the main pidgin devs. It went unmaintained for years, the original dev’s new patches were never merged into pidgin so he took the code apart and wrote a new plugin: msn pecan. Pidgin did not have a contributor agreement, but it had to be forked anyway. It is nothing like OpenOffice being controlled by Oracle.

  16. Mariano Pavone: I disagree, there are MOTUs, there is an attempt to make Ubuntu into the same sort of functioning community as much of debian or fedora but with the added focus on user level contributors. I await Canonical’s announcement stating they were never really interested in a community after all, otherwise I’m left to assume that this is a partnership between contributors in the community and Canonical the company. A relationship which I was told was symbiotic.

    I don’t think you understand the contributors agreement, it’s got nothing to do with maintenance.

  17. @dcotormo: It’s not just MOTU. There are lots of people at all levels of the project that don’t work for Canonical. I’m on the Ubuntu release team and an archive administrator (for example). Ubuntu has been very open about welcoming people not employed by it’s primary sponsor for a long time.

    If Canonical is predominant in Ubuntu Desktop, they are also doing most of the work there. People who want it different need to work on making it different.

    If someone wants to make a *buntu variant built around Gnome shell, I’d be glad to help them navigate the process. I’ve either stood up or helped stand up two *buntu flavors now and it’s not terribly hard and Canonical doesn’t really get in the way (each ISO built in their data center imposes costs on them, so they do (not unreasonably) worry about that.

  18. Thanks, Martin, for an interesting blog entry.

    Maybe it is because I am too involved in the project, or too involved in Canonical, but I am not seeing how and where people are not welcome to provide feedback and speak out against things they disagree with in Ubuntu. What we do not tolerate, as was mentioned before, is rudeness and offensive discussion.

    Maybe helping people to voice their concerns and disagreements is something we need to better focus on. Does anyone have any thoughts or suggestions of ways in which we can provide a better environment for those who disagree with something to speak out?

  19. Can someone please clarify how internal matters of one project and platform relate to the initiative? I’m not including linguistic style and tone of communication as part of internal matters.

    I could not arrive to any constructive criticism of per-se from this blog post. To me this reads like editorial (or personal recap of current events) about Jono and Ubuntu project governance.

    My reaction to this blog post is unusual because I deem previous content from the author as highly structured and logically presented.

  20. ScottK,

    When you say administrator, do you have the access necessary to examine the Ubuntu torrent tracker setup and get it fixed? It’s behaving extremely poorly..purging its aggregate data seemingly randomly every few minutes contrary to expected behaviour.


  21. @Jono: Thanks for your comment. One thing I notice is a change dilation; that the further away from the change in direction the longer or harder it is for it to be believed. It seems perceptions are even harder to change than minds.

    Instead of a “talk to the queen” style event during ubuntu open week, we might need a “and what the hell do you think you’re doing” sort of event but with the same sort of moderation but with the idea that the community would be putting tough questions to be argued/discussed and not just excused. Part of the problem seems to be that Mark doesn’t often help his case with the language sometimes, and it’s easy to grab hold of something the leader says as being emblematic of the whole thing. It’d be nice if he sometimes made a clear distinction between the Ubuntu OS he’s building in his dreams and the wider Ubuntu project which is building a bit more of a cloud of dreams all roughly in the same direction but not all bending to one iron will.

    Also do you think having a 10% time for Canonical employees would help? giving them all the ability to get a bit more active in the community? I notice lots of people who were community suddenly have zero time once interned in Milbank and get much more unresponsive. This can’t be healthy for community communication, how many Canonical people work on Fedora for instance.

  22. “Maybe helping people to voice their concerns and disagreements is something we need to better focus on. Does anyone have any thoughts or suggestions of ways in which we can provide a better environment for those who disagree with something to speak out?”

    NOTE: The “you” in the following applies to whomever, not to Jono only or specifically.

    1. Stop all use of the label troll. Do I really need to state that it is used most often to silence the opinion of someone disagreeing? Just because someone disagrees, does not make them a troll. Their disagreement does not invalidate their opinion. People disagree with me all of the time, and I’ve yet to label any of them as trolls.

    2. Stop listening to what *other people* say about someone (including you). Instead look at the speaker’s arguments on the argument’s merits.

    3. Stop dismissing someone’s complaint. Rather than suggesting that their complaint is invalid, acknowledge that it is valid for them and others, even if it doesnt fit your situation.

    3A. Stop demanding evidence, proof, use cases etc. If someone tells you that they were spoken to in such a manner, simply accept it. If someone (like me) tells you that they have difficulty with something in an app or OS don’t demand that somehow they owe you evidence of this. Just accept their word.

    4. Clean up yo danged house. Seriously. Actually start reading logs and notice that the claim “What we do not tolerate, as was mentioned before, is rudeness and offensive discussion,” is simply false. Not only do you tolerate such, Ubuntu Elite are the most notorious in the Ubuntu community for rudeness and offensive discussion.

    4A. Stop tolerating ridiculous assertions such as “Ubuntu’s no worse in the practice of ism (ableism, racism etc) than the rest of the society.” No worse means there’s a serious problem and it needs to stop being ignored.

    5. Stop getting hung up on defending yourself. Stop taking it personal and start listening.

    6. Stop telling people how they are allowed to complain. The entire site you’ve set up is offensive because it’s nothing short of “the tone argument”. That is, that those who are objecting to some bad conduct have to be polite, gentle, kind. If they aren’t their objections go entirely dismissed and instead THEY are called out on their “bad behavior” of objecting.

    7. DO DO something. Once you have been made aware of a situation, address it. Is the situation technological? Then hear the users and offer options. Is it social, then find a way to reconcile. You’re going to be surprised that actually LISTENING and VALIDATING someone’s experience are going to get you a long way.

  23. Broc: The problem with accepting someone at their word is that if what they are saying is extraordinary and contradicts extensive first hand evidence, then the problem is that it’s just not believable. I think it’s better that I ask for some kind of evidence of the claim instead of simply suggesting the commenter might be a bare faced liar.

    I’m also not impressed that bad behaviour is being defended by suggesting that it should be ignored because it might contain some valuable nugget of usefulness. As much as I disagree with a whole bunch of ways Canonical interacts with the community, I think you’re wrong on this count.

  24. Aoirthoir An Broc,you are so right, Just go to ask ubuntu and post a
    boat rocking question that is quite appropriate and immediately you are marked down and your questions get flagged as off topic, just take a look at who is doing the markdown, I am growing a little weary of the thin skinned behaviour of some members of the Ubuntu community nowadays.

  25. Emperofaith: I’m on ask ubuntu, let me know what questions and I’ll certainly mark them up. You certainly seem aggrieved that good questions are being dismissed and I certainly don’t want to have good questions hidden from me.

  26. @Jef Spaleta: That is not one of the tasks of an archive administrator.

    I highlighted that role because it’s indicative of how far Canonical is willing to go to give community access to participating in the project. One of the most important functions archive administrator’s do is be the final check on package and licensing for new software going into Ubuntu. Since Ubuntu is distributed out of Canonical’s data center that means that I am in a position to decide if something is legal for them to distribute. That they are willing to let me make that call says a lot for their openness to non-employee participation.

  27. “Broc: The problem with accepting someone at their word is that if what they are saying is extraordinary and contradicts extensive first hand evidence,”

    What is extraordinary about believing that any particular person can have said or did something offensive to another? Or are we to believe that some persons incapable of offending others?

    “then the problem is that it’s just not believable. I think it’s better that I ask for some kind of evidence of the claim instead of simply suggesting the commenter might be a bare faced liar.”

    We’re dealing with one of three main points here. 1. That a technical or community decision doesn’t work for someone. 2. That a person was offended by another’s conduct. 3. That a person did something wrong. In the case of 1 and 2 what further evidence do we need than the complainer’s affirmation that they are bothered? In the case of 3 sometimes there just isn’t evidence (a private conversation for instance). However, very often there is evidence, an original blog post by the person complained about, a chat log and so on. Yet experience has shown even in such cases, this is just often not seen as evidence.

    “I’m also not impressed that bad behaviour is being defended by suggesting that it should be ignored because it might contain some valuable nugget of usefulness.”

    Except that I am not defending bad behavior. I am saying that what is *not* bad behavior (complaining about bad behavior) is oft *called* bad behavior. That is called the tone argument. A person speaks up about some form of disenfranchisement, and because they did not use words like please, and thank you, to ask someone to stop abusing them, the complainer is called on the carpet for *acting* bad, when they’ve done no such thing.

    “As much as I disagree with a whole bunch of ways Canonical interacts with the community, I think you’re wrong on this count.”

    Perhaps. Or perhaps you misunderstand the circumstances I speak about. How many times must someone *politely* point out *over and again* to a specific person or group of persons that addressing others by such terms as “retards”, “lame”, “blind”, “crazy”, “insane” in a pejorative sense is hurtful to the marginalized group?

    Or in my case being a Pagan I have heard countless *hundreds* of times “Oh so you eat babies?” This leads me by rote now to roll my eyes. And my eye rolling is called out as “disrespectful” to the person making the comment.

    So ultimately I would say that in these cases I have found out there is no way to be “polite” because no matter the manner of speech the complainer will be complained about as disrespectful. And when the mere act of complaining is seen as disrespectful, then there is no way to respectfully complain.

  28. Emperofaith: I thought the mark down was illogical and probably based on an emotive response to the large amount of text presented. If you cut the question down to it’s basic abridged version it would have probably faired better.

    Although I have marked it up and commented to Jorge about how I feel since it should have been answered and given a chance to be answered.

  29. “Although I have marked it up and commented to Jorge about how I feel since it should have been answered and given a chance to be answered.”

    Thank you. That’s really all some people are asking for and it is certainly better than a dismissive response.

  30. doctormo : I thought as much but one would believe something as important as this, a long winded question would be forgiven. Yes I agree Brevity has its values.

  31. A side effect of the “Weak Technical Board” problem is that some misguided people are using it to criticize meritocracy and present democracy as some kind of utopian philosophy that is a natural part of FOSS.

    People need to understand that meritocracy itself is not a bad thing and has been working well in several projects. The problem is that, particularly inside the Ayatana project, Canonical’s implementation of meritocracy is broken. Decisions are implemented first and justified later. Worse, even when there *are* justifications, a very small effort is made to put them in the open.

    This is changing a little bit with the Canonical Design blog, but very slowly.

  32. My biggest concern with recent versions of Ubuntu is the adoption of the various bits of Mark’s vision by default, rather than making them available as options until they’ve baked in and proven their worth.

    Window buttons moved prematurely to make way for windicators that still haven’t arrived.

    The notification sytem was overhauled prematurely before it offered anything like feature parity with what went before. Similarly for Pidgin vs. Empathy.

    Unity is extremely buggy on my Dell Mini 9, whereas the previous efforts at a netbook launcher were not. And just look at some of the issues new users face when using it:

    By all means Canonical, and others, should create new projects and interfaces – goodness knows the state of computer UIs could do with being pushed forwards. But give those projects a chance to bake in, gain some acceptance, and if necessary get modified and toned down from the original vision, before pushing them as the default. We want new users to see Ubuntu as actively better than Windows/OSX, not just different for the sake of it.

  33. Hey Martin. I agree with a lot of what you say. I think that suggesting big drastic changes like forking Canonical upstream software is a bit over the top though.

    As for Ubuntu being a dictatorship, indeed, it is. Contributors to Ubuntu just need to understand that. I’ve accepted it and moved on. There are some things that simply won’t change even though a majority of competent community members disagree with it. Mark Shuttleworth is going to do what he has to do to make Canonical (very) profitable, and I doubt that anything’s going to change that. I’m not particularly bothered by that either, I’m just going to gradually get more involved in Debian (and still contribute to Ubuntu) and do what I can to make a distribution that puts its users first (as apposed to a distribution that puts money first) better.

    As for, I can rant a whole seperate blog post about that, perhaps I will even at some point.

    BTW, you should really upgrade your WordPress installation, it has known vulnerabilities.

  34. @Jonathan Carter:

    While I also give preference to a distro that puts users before money, I honestly think that some of Canonical’s decisions are bad even from a profiting perspective. An example is the Ayatana projects landing before being completely implemented, leaving new users completely lost about the functionality of some parts of the desktop (ex: the first release with the Messaging Menu and a substantial amount of users thinking it was just a launcher).

    The design team, and Mark, seems to really underestimate the power of first impressions. They have interesting long-term visions, but the short-term implementations leave a lot of people disappointed. The only reason I’m not among these people is because I follow the design blog and happen to know the final goal and like it. But even so I’m slightly disappointed at how new features are introduced before others are fully finished. (ex: where are the morphing windows of NotifyOSD?)

  35. Thanks for a very interesting blog post. It echoes my own thoughts over the last year or so regarding the challenges that the Ubuntu project currently faces. I would also add a concern that the distro is adopting new and shiny technology when it’s still in a premature state. That was ok 5 years ago when only hardcore geeks was using it, but these days with the larger userbase, Ubuntu should be realistic about problems that new software can cause and how much work it takes before it’s really time to adopt it as default.

  36. I absolutely agree with you about dictatorship and community under-estimation. I [personally] haven’t seen any Ayatana projects, only mockups, but maybe a fork is really the right thing to do in this case. Well, not like LibreOffice, but something to convince Canonical to adopt Ayatana stuff. Integrate the technologies you like and show them off as a separate CD image. It might be “Ubuntu Ayatana remix” or something like that. OMG! Ubuntu! will be happy to spread the word, so you’ll hit a rather wide audience.
    I would be happy to help out with this, I’ve already done two Ubuntu remixes, but my skills fade in comparison to a MOTU, and building CD images is very easy with UCK, so my help won’t be needed, I guess.

Comments are closed.