The GNU General Public License (GPL)
Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share 
and change it. By contrast, the GNU General Public License is intended to 
guarantee your freedom to share and change free software--to make sure the 
software is free for all its users. This General Public License applies to most 
of the Free Software Foundation's software and to any other program whose authors 
commit to using it. (Some other Free Software Foundation software is covered by 
the GNU Library General Public License instead.) You can apply it to your 
programs, too.

When we speak of free software, we are referring to freedom, not price. Our 
General Public Licenses are designed to make sure that you have the freedom to 
distribute copies of free software (and charge for this service if you wish), 
that you receive source code or can get it if you want it, that you can change 
the software or use pieces of it in new free programs; and that you know you can 
do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny 
you these rights or to ask you to surrender the rights. These restrictions 
translate to certain responsibilities for you if you distribute copies of the 
software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a 
fee, you must give the recipients all the rights that you have. You must make 
sure that they, too, receive or can get the source code. And you must show them 
these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer 
you this license which gives you legal permission to copy, distribute and/or 
modify the software.

Also, for each author's protection and ours, we want to make certain that 
everyone understands that there is no warranty for this free software. If the 
software is modified by someone else and passed on, we want its recipients to 
know that what they have is not the original, so that any problems introduced by 
others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish 
to avoid the danger that redistributors of a free program will individually 
obtain patent licenses, in effect making the program proprietary. To prevent 
this, we have made it clear that any patent must be licensed for everyone's free 
use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice 
placed by the copyright holder saying it may be distributed under the terms of 
this General Public License. The "Program", below, refers to any such program or 
work, and a "work based on the Program" means either the Program or any derivative 
work under copyright law: that is to say, a work containing the Program or a 
portion of it, either verbatim or with modifications and/or translated into 
another language. (Hereinafter, translation is included without limitation in 
the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not covered by 
this License; they are outside its scope. The act of running the Program is not 
restricted, and the output from the Program is covered only if its contents 
constitute a work based on the Program (independent of having been made by 
running the Program). Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as 
you receive it, in any medium, provided that you conspicuously and appropriately 
publish on each copy an appropriate copyright notice and disclaimer of warranty; 
keep intact all the notices that refer to this License and to the absence of any 
warranty; and give any other recipients of the Program a copy of this License 
along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may at 
your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus 
forming a work based on the Program, and copy and distribute such modifications 
or work under the terms of Section 1 above, provided that you also meet all of 
these conditions:

    a) You must cause the modified files to carry prominent notices stating that 
    you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in whole or 
    in part contains or is derived from the Program or any part thereof, to be 
    licensed as a whole at no charge to all third parties under the terms of this 
    License.

    c) If the modified program normally reads commands interactively when run, 
    you must cause it, when started running for such interactive use in the most 
    ordinary way, to print or display an announcement including an appropriate 
    copyright notice and a notice that there is no warranty (or else, saying that 
    you provide a warranty) and that users may redistribute the program under 
    these conditions, and telling the user how to view a copy of this License. 
    (Exception: if the Program itself is interactive but does not normally print 
    such an announcement, your work based on the Program is not required to print 
    an announcement.)

These requirements apply to the modified work as a whole. If identifiable sections 
of that work are not derived from the Program, and can be reasonably considered 
independent and separate works in themselves, then this License, and its terms, 
do not apply to those sections when you distribute them as separate works. But 
when you distribute the same sections as part of a whole which is a work based 
on the Program, the distribution of the whole must be on the terms of this License, 
whose permissions for other licensees extend to the entire whole, and thus to 
each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your rights 
to work written entirely by you; rather, the intent is to exercise the right to 
control the distribution of derivative or collective works based on the Program.

In addition, mere aggregation of another work not based on the Program with the 
Program (or with a work based on the Program) on a volume of a storage or 
distribution medium does not bring the other work under the scope of this License.

3. You may copy and distribute the Program (or a work based on it, under Section 
2) in object code or executable form under the terms of Sections 1 and 2 above 
provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable source code, 
    which must be distributed under the terms of Sections 1 and 2 above on a 
    medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three years, to give 
    any third party, for a charge no more than your cost of physically performing 
    source distribution, a complete machine-readable copy of the corresponding 
    source code, to be distributed under the terms of Sections 1 and 2 above on 
    a medium customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer to distribute 
    corresponding source code. (This alternative is allowed only for noncommercial
    distribution and only if you received the program in object code or executable 
    form with such an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for making 
modifications to it. For an executable work, complete source code means all the 
source code for all modules it contains, plus any associated interface definition 
files, plus the scripts used to control compilation and installation of the 
executable. However, as a special exception, the source code distributed need 
not include anything that is normally distributed (in either source or binary 
form) with the major components (compiler, kernel, and so on) of the operating 
system on which the executable runs, unless that component itself accompanies 
the executable.

If distribution of executable or object code is made by offering access to copy 
from a designated place, then offering equivalent access to copy the source code 
from the same place counts as distribution of the source code, even though third 
parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as 
expressly provided under this License. Any attempt otherwise to copy, modify, 
sublicense or distribute the Program is void, and will automatically terminate 
your rights under this License. However, parties who have received copies, or 
rights, from you under this License will not have their licenses terminated so 
long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it. 
However, nothing else grants you permission to modify or distribute the Program 
or its derivative works. These actions are prohibited by law if you do not accept 
this License. Therefore, by modifying or distributing the Program (or any work 
based on the Program), you indicate your acceptance of this License to do so, 
and all its terms and conditions for copying, distributing or modifying the 
Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program), 
the recipient automatically receives a license from the original licensor to copy, 
distribute or modify the Program subject to these terms and conditions. You may 
not impose any further restrictions on the recipients' exercise of the rights 
granted herein. You are not responsible for enforcing compliance by third parties 
to this License.

7. If, as a consequence of a court judgment or allegation of patent infringement 
or for any other reason (not limited to patent issues), conditions are imposed on 
you (whether by court order, agreement or otherwise) that contradict the conditions 
of this License, they do not excuse you from the conditions of this License. If 
you cannot distribute so as to satisfy simultaneously your obligations under this 
License and any other pertinent obligations, then as a consequence you may not 
distribute the Program at all. For example, if a patent license would not permit 
royalty-free redistribution of the Program by all those who receive copies 
directly or indirectly through you, then the only way you could satisfy both it 
and this License would be to refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under any 
particular circumstance, the balance of the section is intended to apply and the 
section as a whole is intended to apply in other circumstances.

It is not the purpose of this section to induce you to infringe any patents or 
other property right claims or to contest validity of any such claims; this 
section has the sole purpose of protecting the integrity of the free software 
distribution system, which is implemented by public license practices. Many 
people have made generous contributions to the wide range of software distributed 
through that system in reliance on consistent application of that system; it is 
up to the author/donor to decide if he or she is willing to distribute software 
through any other system and a licensee cannot impose that choice.

This section is intended to make thoroughly clear what is believed to be a 
consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain 
countries either by patents or by copyrighted interfaces, the original copyright 
holder who places the Program under this License may add an explicit geographical 
distribution limitation excluding those countries, so that distribution is 
permitted only in or among countries not thus excluded. In such case, this 
License incorporates the limitation as if written in the body of this License.

9. The Free Software Foundation may publish revised and/or new versions of the 
General Public License from time to time. Such new versions will be similar in 
spirit to the present version, but may differ in detail to address new problems 
or concerns.

Each version is given a distinguishing version number. If the Program specifies 
a version number of this License which applies to it and "any later version", 
you have the option of following the terms and conditions either of that version 
or of any later version published by the Free Software Foundation. If the Program 
does not specify a version number of this License, you may choose any version 
ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs 
whose distribution conditions are different, write to the author to ask for 
permission. For software which is copyrighted by the Free Software Foundation, 
write to the Free Software Foundation; we sometimes make exceptions for this. 
Our decision will be guided by the two goals of preserving the free status of 
all derivatives of our free software and of promoting the sharing and reuse of 
software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE 
PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED 
IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "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 PROGRAM IS WITH 
YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY 
SERVICING, REPAIR OR CORRECTION.

12. 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 
PROGRAM 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 PROGRAM (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 
THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER 
PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

END OF TERMS AND CONDITIONS

How to Apply These Terms to Your New Programs

If you develop a new program, and you want it to be of the greatest possible use 
to the public, the best way to achieve this is to make it free software which 
everyone can redistribute and change under these terms.

To do so, attach the following notices to the program. It is safest to attach 
them to the start of each source file to most effectively convey the exclusion 
of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.

    One line to give the program's name and a brief idea of what it does.
    Copyright (C) <year> <name of author>

    This program is free software; you can redistribute it and/or modify it under 
    the terms of the GNU General Public License as published by the Free Software 
    Foundation; either version 2 of the License, or (at your option) any later 
    version.

    This program is distributed in the hope that it will be useful, but WITHOUT 
    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS 
    FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along with 
    this program; if not, write to the Free Software Foundation, Inc., 59 Temple 
    Place, Suite 330, Boston, MA 02111-1307 USA

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this when it 
starts in an interactive mode:

    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes 
    with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, 
    and you are welcome to redistribute it under certain conditions; type `show 
    c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate parts 
of the General Public License. Of course, the commands you use may be called 
something other than `show w' and `show c'; they could even be mouse-clicks or 
menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your school, 
if any, to sign a "copyright disclaimer" for the program, if necessary. Here is 
a sample; alter the names:

    Yoyodyne, Inc., hereby disclaims all copyright interest in the program 
    `Gnomovision' (which makes passes at compilers) written by James Hacker.

    signature of Ty Coon, 1 April 1989
    Ty Coon, President of Vice

This General Public License does not permit incorporating your program into 
proprietary programs. If your program is a subroutine library, you may consider 
it more useful to permit linking proprietary applications with the library. If 
this is what you want to do, use the GNU Library General Public License instead 
of this License.