                KiCad Free Documentation Licence
                ================================

  Copyright (c) jean-pierre Charras
  Copyright (C) KiCad Developers

  Everyone is permitted to copy and distribute verbatim copies
  of this licence document, but changing it is not allowed.

                   KICAD FREE DOCUMENTATION LICENCE
     TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  1. Permission is granted to make and distribute verbatim copies of this
  manual or piece of documentation provided any copyright notice and this
  permission notice are preserved on all copies.

  2. Permission is granted to process this file or document through a
  document processing system and, at your option and the option of any third
  party, print the results, provided a printed document carries a copying
  permission notice identical to this one.

  3. Permission is granted to copy and distribute modified versions of this
  manual or piece of documentation under the conditions for verbatim
  copying, provided also that any sections describing licensing conditions
  for this manual, such as, in particular, the GNU General Public Licence,
  the GNU Library General Public Licence, and any wxWindows Licence are
  included exactly as in the original, and provided that the entire
  resulting derived work is distributed under the terms of a permission
  notice identical to this one.

  4. Permission is granted to copy and distribute translations of this
  manual or piece of documentation into another language, under the above
  conditions for modified versions, except that sections related to
  licensing, including this paragraph, may also be included in translations
  approved by the copyright holders of the respective licence documents in
  addition to the original French or English.

                            WARRANTY DISCLAIMER

  5. BECAUSE THIS MANUAL OR PIECE OF DOCUMENTATION IS LICENSED FREE OF CHARGE,
  THERE IS NO WARRANTY FOR IT, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER
  PARTIES PROVIDE THIS MANUAL OR PIECE OF DOCUMENTATION "AS IS" WITHOUT
  WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
  PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF
  THE MANUAL OR PIECE OF DOCUMENTATION IS WITH YOU.  SHOULD THE MANUAL OR
  PIECE OF DOCUMENTATION PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
  NECESSARY SERVICING, REPAIR OR CORRECTION.

  6. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
  ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
  REDISTRIBUTE THE MANUAL OR PIECE OF DOCUMENTATION AS PERMITTED ABOVE, BE
  LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
  CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
  MANUAL OR PIECE OF DOCUMENTATION (INCLUDING BUT NOT LIMITED TO LOSS OF
  DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
  PARTIES OR A FAILURE OF A PROGRAM BASED ON THE MANUAL OR PIECE OF
  DOCUMENTATION TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR
  OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

