we-stood-up-to-a-patent-troll-and-won

November 04, 2019 2:00PM

Remember 2016? Pokemon Go was all the rage, we lost Prince, and there were surprising election results in both the UK and US. Back in 2016, Blackbird Technologies was notorious in the world of patent litigation. It was a boutique law firm that was one of the top ten most active patent trolls, filing lawsuits against more than 50 different defendants in a single year.

In October 2016, Blackbird was looking to acquire additional patents for their portfolio when they found an incredibly broad software patent with the ambiguous title, “PROVIDING AN INTERNET THIRD PARTY DATA CHANNEL.” They acquired this patent from its owner for $1 plus “other good and valuable consideration.” A little later, in March 2017, Blackbird decided to assert that patent against Cloudflare.

As we have explained previously, patent trolls benefit from a problematic incentive structure that allows them to take vague or abstract patents that they have no intention of developing and assert them as broadly as possible. Instead, these trolls collect licensing fees or settlements from companies who are otherwise trying to start a business, produce useful products, and create good jobs. Companies facing such claims usually convince themselves that settlements in the tens or hundreds of thousands of dollars are quicker and cheaper outcomes than facing years of litigation and millions of dollars in attorneys fees.  

The following is how we worked to upend this asymmetric incentive structure.  

The Game Plan

After we were sued by Blackbird, we decided that we wouldn’t roll over. We decided we would do our best to turn the incentive structure on its head and make patent trolls think twice before attempting to take advantage of the system. We created Project Jengo in an effort to remove this economic asymmetry from the litigation. In our initial blog post we suggested we could level the playing field by: (i) defending ourselves vigorously against the patent lawsuit instead of rolling over and paying a licensing fee or settling, (ii) funding awards for crowdsourced prior art that could be used to invalidate any of Blackbird’s patents, not just the one asserted against Cloudflare, and (iii) asking the relevant bar associations to investigate what we considered to be Blackbird’s violations of the rules of professional conduct for attorneys.

How’d we do?

The Lawsuit

As promised, we fought the lawsuit vigorously. And as explained in a blog post earlier this year, we won as convincing a victory as one could in federal litigation at both the trial and appellate levels. In early 2018, the District Court for the Northern District of California dismissed the case Blackbird brought against us on subject matter eligibility grounds in response to an Alice motion. In a mere two-page order, Judge Vince Chhabria held that “[a]bstract ideas are not patentable” and Blackbird’s assertion of the patent “attempts to monopolize the abstract idea of monitoring a preexisting data stream between a server and a client.” Essentially, the case was rejected before it ever really started because the court found Blackbird’s patent to be invalid.

Blackbird appealed that decision to the Court of Appeals for the Federal Circuit, which unceremoniously affirmed the lower court decision dismissing the appeal just three days after the appellate argument was heard. Following this ruling, we celebrated.  

Killed another Blackbird. pic.twitter.com/xSNQbHbl6Y

— Matthew Prince ? (@eastdakota) February 15, 2019

As noted in our earlier blog post, although we won the litigation as quickly and easily as possible, the federal litigation process still lasted nearly two years, involved combined legal filings of more than 1,500 pages, and ran up considerable legal expenses. Blackbird’s right to seek review of the decision by the US Supreme Court expired this summer, so the case is now officially over. As we’ve said from the start, we only intended to pursue Project Jengo as long as the case remained active.  

Even though we won decisively in court, that alone is not enough to change the incentive structure around patent troll suits. Patent trolls are repeat players who don’t have significant operations, so the costs of litigation and discovery are much less for them.

Funding Crowdsourced Prior Art to Invalidate Blackbird Patents

Prior Art

An integral part of our strategy against Blackbird was to engage our community to help us locate prior art that we could use to invalidate all of Blackbird’s patents. One of the most powerful legal arguments against the validity of a patent is that the invention claimed in the patent was already known or made public somewhere else (“prior art”). A collection of prior art on all the Blackbird patents could be used by anyone facing a lawsuit from Blackbird to defend themselves. The existence of an organized and accessible library of prior art would diminish the overall value of the Blackbird patent portfolio. That sort of risk to the patent portfolio was the kind of thing that would nudge the incentive structure in the other direction. Although the financial incentives made possible by the US legal system may support patent trolls, we knew our secret weapon was a very smart, very motivated community that loathed the extortionary activities of patent trolls and wanted to fight back.

And boy, were we right! We established a prior art bounty to pay cash rewards for prior art submissions that read on the patent Blackbird asserted against Cloudflare, as well as any of Blackbird’s other patents.  

We received hundreds of submissions across Blackbird’s portfolio of patents. We were very impressed with the quality of those submissions and think they call the validity of a number of those patents into question. All the relevant submissions we collected can be found here sorted by patent number, and we hope they are put to good use by other parties sued by Blackbird. Additionally, we’ve already forwarded prior art from the collection to a handful of companies and organizations that reached out to us because they were facing cases from Blackbird.

A high-level breakdown of the submissions:

  • We received 275 total unique submissions from 155 individuals on 49 separate patents, and we received multiple submissions on 26 patents.
  • 40.1% of the total submissions related to the ’335 patent asserted against Cloudflare.
  • The second highest concentration of prior art submissions (14.9% of total) relate to PUB20140200078 titled “Video Game Including User Determined Location Information.” The vast majority of these submissions note the similarity between the patent’s claims and the Niantic game Ingress.

A few interesting examples of prior art that were submitted that we think are particularly damaging to some of the Blackbird patents:

  • Internet based resource retrieval system (No. 8996546)

    The first two sentences of this 2004 patent’s abstract summarize the patent as a “resource retrieval system compris[ing] a server having a searchable database wherein users can readily access region-based publications similar to, but not necessarily limited to, printed telephone directories. The resource retrieval system communicates with at least one user system, preferably via the Internet.”

    The Project Jengo community reviewed the incredibly broad language in the patent claims and submitted a reference to an online phone book that allowed for the searching of local results from an online AT&T database. The submission is a link to an archive of a webpage from the year 2000, potentially calling into question the Blackbird patent on eligibility grounds.

  • Illuminated product packaging (No. 7086751)

    This patent seeks protection for packaging “intended to hold a product for sale. The product package includes one or more light sources disposed therein and configured to direct light through one or more openings in the exterior of the product package, in order to entice customers to purchase the product.”

    In one of the more interesting Project Jengo submissions we received, the following information was provided: The CD packaging for Pink Floyd’s ‘Pulse’ included a blinking LED within the cardboard box that was active and visible on store shelves. We felt that this also spoke to the heart of this broad and seemingly obvious patented product.

  • Sports Bra (No. 7867058)

    This Blackbird patent involves a “sports bra having an integral storage pouch.”

    The Project Jengo community found that a submission on a public discussion forum that pre-dates the ’058 patent and disclosed an idea of modifying a bra by creating an incision in the inner lining and applying a velcro strip so as to form a resealable pocket within the bra… Or essentially the same invention.  

As a Bonus – an Ex Parte Victory

Almost immediately after we announced Jengo, we received an anonymous donation from someone who shared our frustration with patent trolls. As we announced, this gift allowed us to expand Jengo by using some of the prior art to directly challenge other Blackbird patents in administrative proceedings.

We initiated an administrative challenge against Blackbird Patent 7,797,448 (“GPS-internet Linkage”). The patent describes in broad and generic terms “[a]n integrated system comprising the Global Positioning System and the Internet wherein the integrated system can identify the precise geographic location of both sender and receiver communicating computer terminals.” You don’t have to be particularly technical to realize how largely obvious and widely applicable such a concept would be, as many modern Internet applications attempt to integrate some sort of location services using GPS. This was a dangerous patent in the hands of a patent troll.

Based on the strength of the prior art we received from the Project Jengo community and the number of times Blackbird had asserted the ’448 Patent to elicit a settlement from startups, we filed for an ex parte reexamination (EPR) of the ’448 Patent by the US Patent & Trademark Office (USPTO). The EPR is an administrative proceeding that can be used to challenge obviously deficient patents in a less complex, lengthy, or costly exercise than federal litigation.

We submitted our EPR challenge in November 2017. Blackbird responded to the ex parte by attempting to amend their patent’s claims to make them more narrow in an effort to make their patent more defensible and avoid the challenge. In March 2018, the USPTO issued a Non-Final Office Action that proposed rejecting the ’448 Patent’s claims altogether because the claims were found to be preempted by prior art submitted by Project Jengo. Blackbird did not respond to the Office Action. And a few months later, in August 2018, the USPTO issued a final order in line with the office action, which cancelled the ’448 Patent’s claims. The USPTO’s decision means the ‘448 patent is invalid and no one can assert the incredibly broad terms of the ‘448 patent again.

Rewarding the Crowd

As promised, Cloudflare distributed more than $50,000 in cash awards to eighteen people who submitted prior art as part of the crowdsourced effort. We gave out more than $25,000 to people in support of their submissions related to the ’335 patent asserted against Cloudflare. Additionally we awarded more than $30,000 to submitters in support of our efforts to invalidate the other patents in Blackbird’s portfolio.

In general, we awarded bounties based on whether we incorporated the art found by the community into our legal filings, the analysis of the art as provided in the submission, whether someone else had previously submitted the art, and the strength and number of claims the art challenged in the specified Blackbird patent.

We asked many of the recent bounty winners why they decided to submit prior art to Project Jengo and received some of the following responses:  


“Over the years I’ve been disappointed and angered by a number of patent cases where I feel that the patent system has been abused by so-called ‘patent trolls’ in order to stifle innovation and profit from litigation. With Jengo in particular, I was a fan of what Cloudflare had done previously with Universal SSL. When the opportunity arose to potentially make a difference with a real patent troll case, I was happy to try and help.”

Adam, Security Engineer


“I read the ’335 patent and thought it basically described a fundamental design principle of the world wide web (proxy servers). I was pretty sure such software was in widespread use by the priority date of the patent (1998). At that point I was curious if that was true so I did some Googling.”

David, Software Developer


“Personally, I believe the vast majority of software patents are obvious and trivial. They should have never been granted. At the same time, fighting a patent claim is costly and time consuming regardless of the patent’s merit, while filing the claim is relatively cheap. Patent trolls exploit this imbalance and, in turn, they stifle innovation. Project Jengo was a great opportunity to use my knowledge of prior academic work for a good cause.”

Kevin, Postdoctoral Research Scientist


“I’m pretty excited, I’ve never won a single thing in my life before. And to do it in service of taking down evil patent trolls? This is one of the best days of my life, no joke. I submitted because software patents are garbage and clearly designed to extort money from productive innovators for vague and obvious claims. Also, I was homeless at the time I submitted and was spending all day at the library anyway.”

Garrett, San Francisco


What was the Impact?

The whole point of Project Jengo was to flip the incentive structure around patent trolls, who assume they can buy broad patents, spend a little money to initiate litigation, and then sit back and expect that a great percentage of defendants will send them a check. Under a proper incentive structure, they should have to expend some effort to prove their claims have merit, and we wanted to make available information that would support other potential defendants who may want to push back against claims under Blackbird patents.

One very simple measure of the impact is to review the number of new lawsuits Blackbird is bringing with its patent portfolio, which is a public record. So what does Blackbird’s activity look like on that point?

In the one-year period immediately preceding Project Jengo, (Q2’16-Q2’17) Blackbird filed more than 65 cases. Since Project Jengo launched more than 2.5 years ago, the number of cases Blackbird has filed has fallen to an average rate of 10 per year.  

Not only are they filing fewer cases, but Blackbird as an organization seems to be operating with fewer resources than they did at their peak. When we launched Project Jengo in May 2017, the Blackbird website identified a total team of 12: six lawyers, including two co-founders, four litigation counsel, as well as a patent analysis group of 6. Today, based on a review of the website and LinkedIn, it appears only three staff remain: one co-founder, one litigation counsel, and one member of the patent analysis group.  

Ethics Complaints (section submitted by Cloudflare’s General Counsel, Doug Kramer)

We filed ethics complaints against both of Blackbird’s co-founders before the bar associations in Massachusetts, Illinois, and the USPTO based on their self-described “new model” of pursuing intellectual property claims. Our complaints were based on rules of professional conduct prohibiting lawyers from acquiring a cause of action to assert on their own behalf, or in the alternative, rules prohibiting attorneys to split contingency fees with a non-attorney.

We did not file such complaints lightly, as we take ethical standards seriously and don’t think such proceedings should be used merely to harass. In this case, we think the public perception of patent trolls, who are seen as lawyers chasing an easy buck by taking advantage of distortions in the litigation process, has damaged the public perception of attorneys and respect for the legal profession–the exact sort of values the ethical rules and bar associations are meant to protect.

We based our complaints on the assignment agreement we found filed with the USPTO, where Blackbird purchased the ’335 patent from an inventor in October 2016 for $1. It seemed apparent that the actual but undisclosed compensation between the parties was considerably more than $1, so Blackbird may have simply acquired the cause of action or the agreement involved an arrangement where Blackbird would split a portion of any recovered fees with the inventor. Such agreements are generally prohibited by the ethical rules.

In public statements, Blackbird’s defense to these allegations was that it (i) was not a law firm (despite the fact it is led exclusively by lawyers who are actively engaged in the litigation it pursues) and (ii) does not use contingency fee arrangements for the patents it acquires, but does use something “similar.” Both defenses were rather surprising to us. Isn’t an organization led and staffed exclusively by lawyers who are drafting complaints, filing papers with courts, and arguing before judges amount to a “law firm”? In fact, we found pleadings in other Blackbird cases where the Blackbird leadership asked to be treated as lawyers so they could have access to sensitive technical evidence in those cases that is usually off-limits to anyone but the lawyers. And what does it mean for an agreement to be merely “similar” to a contingency agreement?

The disciplinary proceedings in front of bar associations are generally confidential, so we are limited in our ability to report out developments in those cases. But regardless of the outcome, we’ve only approached bar associations in two states. Getting this back on the right track will require more than successful adjudications in front of such committees. Instead, it will take a broader change in orientation by these professional associations across the country to view such matters as more than mere political disputes or arguments between active litigants.  

Our questions go to the very heart of ensuring an ethical legal profession, they are meant to determine what safeguards should be put in place to make sure that attorneys who take the oath are held to a standard beyond mere greed or base opportunism. They go to the question of whether being an attorney is merely a job or if there are higher standards they should be held to, making sure their monopoly over the ability to bring lawsuits as officers of the court (and all the implications, costs, and power that represents) is only wielded by people who can be trusted to do so responsibly. Otherwise, what’s the point of ethical standards?

That’s all … for now

We’ve said from the beginning that Project Jengo was a response to the patent troll litigation and we would end it as soon as the case was over. And now it is. Although we are proud of our work on this issue, we need to turn our focus back to the company’s mission — to help build a better Internet. But we may be back at some point. Patent trolls remain a risk to growing companies like Cloudflare and nothing in this experience has persuaded us that settling a patent lawsuit is ever the right answer. We don’t plan to settle, and if brought into such litigation again at some point in the future, we think we have a pretty good blueprint for how to respond.

The Blackbird prior art will remain available here, and we remain available to consult with our colleagues at other companies who face these issues, as we have done many times over the past few years.

Finally, we would like to express our sincere gratitude to the community who researched the Blackbird patent portfolio and helped us fight this troll. It was our confidence in all of you that inspired the idea of Project Jengo in the first place, so its success belongs to you.

Thank you.  

Legal
Jengo
Community

118 comments

  1. It is appropriate time to make some plans for the longer term and it
    is time to be happy. I’ve read this post and if I could I desire to recommend
    you some interesting things or suggestions.
    Perhaps you could write subsequent articles referring to this article.
    I want to learn even more things about it!

  2. I was curious if you ever thought of changing the
    page layout of your blog? Its very well written; I love what youve got to say.
    But maybe you could a little more in the way of content so people could connect with it better.
    Youve got an awful lot of text for only having 1 or two
    images. Maybe you could space it out better?

  3. Remarkable things here. I am very glad to see your article.

    Thank you a lot and I’m looking forward to touch you.
    Will you please drop me a e-mail?

  4. whoah this blog is great i like studying your articles.
    Stay up the great work! You recognize, a lot of persons are looking round for
    this info, you could help them greatly.

  5. Thanks for your personal marvelous posting! I genuinely enjoyed reading
    it, you could be a great author.I will be
    sure to bookmark your blog and definitely will come back later in life.
    I want to encourage continue your great posts, have a nice morning!

  6. With havin so much written content do you ever run into any issues of plagorism or copyright infringement?
    My blog has a lot of completely unique content
    I’ve either written myself or outsourced but it looks like
    a lot of it is popping it up all over the web without my permission. Do you know any solutions to help reduce content from being ripped off?
    I’d certainly appreciate it.

  7. Интернет-платформа Джойказино возникла на
    российском рынке в две тысячи четырнадцатом году.
    Пользователям ресурса доступен топовый программный продукт от популярных компаний.
    В коллекцию лицензионных продуктов
    вошли слоты с барабанами и линиями,
    лайв-игры и ставки на спортивные события.

  8. Excellent post. I was checking constantly this weblog and I’m inspired!
    Very useful information specially the remaining part 🙂 I deal with such info a lot.
    I was looking for this certain info for a very lengthy time.
    Thank you and best of luck.

  9. Good web site you have got here.. It’s difficult to find high quality writing like yours these days.
    I seriously appreciate people like you! Take care!!

  10. I used to be recommended this blog by my cousin. I am now not positive whether this
    put up is written by means of him as no one else recognize
    such exact approximately my difficulty. You’re amazing!
    Thanks!

  11. When someone writes an paragraph he/she keeps the thought of a user in his/her brain that
    how a user can know it. Therefore that’s why this article is
    outstdanding. Thanks!

  12. First of all I want to say great blog! I had a quick question that I’d like to ask if you do not mind.
    I was curious to find out how you center yourself and clear your
    thoughts before writing. I’ve had difficulty clearing my thoughts in getting my ideas out
    there. I do take pleasure in writing but it just seems like the first 10 to 15 minutes tend to be
    wasted simply just trying to figure out how to
    begin. Any ideas or tips? Appreciate it!

  13. Just want to say your article is as astonishing. The clarity in your post is just
    cool and i could assume you’re an expert on this subject.
    Fine with your permission allow me to grab your feed to keep up
    to date with forthcoming post. Thanks a million and please
    continue the rewarding work.

  14. Howdy, i read your blog from time to time and i own a similar one and i was just curious if you get a lot of spam
    responses? If so how do you prevent it, any plugin or
    anything you can suggest? I get so much lately it’s driving
    me crazy so any assistance is very much appreciated.

  15. Greetings from Idaho! I’m bored to death at work so I
    decided to browse your blog on my iphone during lunch
    break. I love the knowledge you present here and can’t wait
    to take a look when I get home. I’m surprised at how fast your blog loaded on my cell phone ..
    I’m not even using WIFI, just 3G .. Anyways, good site!

  16. Hey! I know this is somewhat off topic but I was wondering which blog platform are
    you using for this website? I’m getting fed up of WordPress
    because I’ve had problems with hackers and I’m looking at
    alternatives for another platform. I would be fantastic if you
    could point me in the direction of a good platform.

  17. Hello there, I discovered your web site via Google whilst looking for a comparable subject, your web site got here up, it looks great.
    I’ve bookmarked it in my google bookmarks.
    Hi there, just changed into alert to your blog thru Google, and found that
    it is truly informative. I am gonna be careful for brussels.

    I’ll be grateful if you happen to proceed this in future.
    Many other folks can be benefited from your writing.
    Cheers!

  18. I am now not certain the place you are getting your information, however
    good topic. I must spend some time learning much more or working out more.

    Thanks for magnificent info I used to be in search of this info for my
    mission.

  19. I enjoy what you guys tend to be up too. Such clever work and
    exposure! Keep up the amazing works guys I’ve incorporated
    you guys to my blogroll.

  20. I think this is one of the most vital info for me.
    And i’m glad reading your article. But wanna remark on few general things, The site style
    is ideal, the articles is really excellent : D. Good job, cheers

  21. I was suggested this web site by my cousin. I am not sure whether this post is
    written by him as no one else know such detailed
    about my difficulty. You’re wonderful! Thanks!

  22. We stumbled over here different web address and thought I might as well check things out.
    I like what I see so now i’m following you. Look forward to
    looking over your web page yet again.

  23. We are a group of volunteers and opening a new scheme in our community.

    Your web site provided us with valuable information to work
    on. You have done a formidable job and our entire community will
    be thankful to you.

  24. That is a good tip especially to those new to the blogosphere.
    Short but very accurate info… Appreciate your sharing this one.
    A must read post!

  25. Hey there I am so delighted I found your blog page, I really found you
    by error, while I was researching on Askjeeve for something else, Anyhow I am here
    now and would just like to say kudos for a remarkable
    post and a all round exciting blog (I also love the theme/design), I don’t have time to
    browse it all at the moment but I have bookmarked it and also included
    your RSS feeds, so when I have time I will be back to read
    much more, Please do keep up the great work.

  26. Heya i’m for the first time here. I came across this board and I find It really useful & it helped me out much.
    I hope to give something back and help others like you aided me.

  27. My partner and I absolutely love your blog and find most of your post’s
    to be just what I’m looking for. Would you offer guest writers to
    write content to suit your needs? I wouldn’t mind publishing a
    post or elaborating on many of the subjects you write concerning here.
    Again, awesome site!

  28. I enjoy what you guys are up too. This sort of clever work and reporting!

    Keep up the great works guys I’ve incorporated you guys to our blogroll.

  29. Hello, Neat post. There’s an issue with your site in web explorer, could test this?
    IE nonetheless is the market leader and a big section of people will
    leave out your excellent writing due to this problem.

  30. Hello! This post couldn’t be written any better! Reading through this post reminds me of my
    good old room mate! He always kept chatting about this. I will forward this page to him.
    Fairly certain he will have a good read. Thanks for sharing!

  31. Hi my friend! I want to say that this article is awesome, great written and include almost all important infos.
    I would like to peer extra posts like this .

  32. Amazing! This blog looks just like my old one! It’s on a completely different topic but it has pretty much the same layout and
    design. Great choice of colors!

  33. If some one needs expert view on the topic of blogging and site-building afterward
    i advise him/her to pay a visit this website, Keep up the pleasant work.

  34. I know this if off topic but I’m looking into starting my own weblog and was wondering what all is needed to get setup?
    I’m assuming having a blog like yours would cost a pretty
    penny? I’m not very web smart so I’m not 100% positive.
    Any tips or advice would be greatly appreciated. Thanks

  35. Hello would you mind stating which blog platform you’re working
    with? I’m looking to start my own blog in the near future but I’m
    having a hard time making a decision between BlogEngine/Wordpress/B2evolution and Drupal.

    The reason I ask is because your layout seems different then most blogs and I’m
    looking for something unique. P.S My
    apologies for getting off-topic but I had to ask!

  36. Hi, I do believe this is an excellent blog. I stumbledupon it 😉
    I’m going to return yet again since I book-marked it.
    Money and freedom is the best way to change, may you be rich and continue to help others.

  37. An intriguing discussion is definitely worth comment.
    There’s no doubt that that you need to write more about this subject
    matter, it might not be a taboo subject
    but usually people do not talk about these issues.

    To the next! All the best!!

  38. That is a really good tip particularly to those new
    to the blogosphere. Short but very precise info… Appreciate your sharing this one.

    A must read article!

  39. Its like you read my mind! You seem to know a lot about this, like you wrote the book in it or something.
    I think that you can do with some pics to drive the message home a little bit, but other than that,
    this is great blog. A great read. I’ll definitely be back.

  40. Fascinating blog! Is your theme custom made or did you download it from somewhere?

    A theme like yours with a few simple adjustements would really make my blog jump out.
    Please let me know where you got your theme. Thanks

  41. Fantastic web site. A lot of helpful information here. I am sending it to several pals ans additionally sharing in delicious.

    And of course, thank you in your effort!

  42. Can I simply say what a relief to find an individual who really understands what they are talking about on the web.
    You certainly understand how to bring a problem to light and make it important.
    More people must look at this and understand this side of the story.
    I was surprised you aren’t more popular because you surely have the gift.

  43. It’s a shame you don’t have a donate button! I’d certainly donate to this
    fantastic blog! I guess for now i’ll settle for bookmarking and
    adding your RSS feed to my Google account. I look forward to fresh
    updates and will share this blog with my Facebook group.

    Talk soon!

  44. I’ve been exploring for a bit for any high-quality articles or weblog posts on this kind of area .
    Exploring in Yahoo I finally stumbled upon this
    web site. Studying this information So i am happy to convey that I have an incredibly just right uncanny feeling I discovered just what I needed.
    I most surely will make sure to don?t forget this site and
    provides it a look on a continuing basis.

  45. Hello, i believe that i noticed you visited my weblog thus i got here to return the desire?.I’m trying to in finding things to enhance my
    website!I suppose its adequate to make use of some of your concepts!!

  46. Every weekend i used to pay a visit this web page, because i want enjoyment, since this this web page conations
    in fact fastidious funny information too.

Leave a Reply

Your email address will not be published.