      Apache Allura
      Copyright 2012-2013 The Apache Software Foundation

      This product includes software developed at
      The Apache Software Foundation (http://www.apache.org/).

      This software contains library for converting various
      characters to ASCII encoding, written by Leonard Richardson
      and placed into public domain.
      
      This software contains library for checking maximum length
      of text area's content, written by Keith Wood.
      
      This software contains lightbox plugin for jQuery, written by
      Buck Wilson.
      
      Canvas functionality in Internet Explorer(r) is provided
      by code developed at Google Inc.
