1*b8beabc4Snetali GNU GENERAL PUBLIC LICENSE 2*b8beabc4Snetali Version 2, June 1991 36c4546e5SNetali 4*b8beabc4Snetali Copyright (C) 1989, 1991 Free Software Foundation, Inc., 5*b8beabc4Snetali 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 66c4546e5SNetali Everyone is permitted to copy and distribute verbatim copies 76c4546e5SNetali of this license document, but changing it is not allowed. 86c4546e5SNetali 96c4546e5SNetali Preamble 106c4546e5SNetali 11*b8beabc4Snetali The licenses for most software are designed to take away your 12*b8beabc4Snetalifreedom to share and change it. By contrast, the GNU General Public 13*b8beabc4SnetaliLicense is intended to guarantee your freedom to share and change free 14*b8beabc4Snetalisoftware--to make sure the software is free for all its users. This 15*b8beabc4SnetaliGeneral Public License applies to most of the Free Software 16*b8beabc4SnetaliFoundation's software and to any other program whose authors commit to 17*b8beabc4Snetaliusing it. (Some other Free Software Foundation software is covered by 18*b8beabc4Snetalithe GNU Lesser General Public License instead.) You can apply it to 19*b8beabc4Snetaliyour programs, too. 206c4546e5SNetali 216c4546e5SNetali When we speak of free software, we are referring to freedom, not 226c4546e5SNetaliprice. Our General Public Licenses are designed to make sure that you 236c4546e5SNetalihave the freedom to distribute copies of free software (and charge for 24*b8beabc4Snetalithis service if you wish), that you receive source code or can get it 25*b8beabc4Snetaliif you want it, that you can change the software or use pieces of it 26*b8beabc4Snetaliin new free programs; and that you know you can do these things. 276c4546e5SNetali 28*b8beabc4Snetali To protect your rights, we need to make restrictions that forbid 29*b8beabc4Snetalianyone to deny you these rights or to ask you to surrender the rights. 30*b8beabc4SnetaliThese restrictions translate to certain responsibilities for you if you 31*b8beabc4Snetalidistribute copies of the software, or if you modify it. 326c4546e5SNetali 33*b8beabc4Snetali For example, if you distribute copies of such a program, whether 34*b8beabc4Snetaligratis or for a fee, you must give the recipients all the rights that 35*b8beabc4Snetaliyou have. You must make sure that they, too, receive or can get the 36*b8beabc4Snetalisource code. And you must show them these terms so they know their 37*b8beabc4Snetalirights. 386c4546e5SNetali 39*b8beabc4Snetali We protect your rights with two steps: (1) copyright the software, and 40*b8beabc4Snetali(2) offer you this license which gives you legal permission to copy, 41*b8beabc4Snetalidistribute and/or modify the software. 426c4546e5SNetali 43*b8beabc4Snetali Also, for each author's protection and ours, we want to make certain 44*b8beabc4Snetalithat everyone understands that there is no warranty for this free 45*b8beabc4Snetalisoftware. If the software is modified by someone else and passed on, we 46*b8beabc4Snetaliwant its recipients to know that what they have is not the original, so 47*b8beabc4Snetalithat any problems introduced by others will not reflect on the original 48*b8beabc4Snetaliauthors' reputations. 49*b8beabc4Snetali 50*b8beabc4Snetali Finally, any free program is threatened constantly by software 51*b8beabc4Snetalipatents. We wish to avoid the danger that redistributors of a free 52*b8beabc4Snetaliprogram will individually obtain patent licenses, in effect making the 53*b8beabc4Snetaliprogram proprietary. To prevent this, we have made it clear that any 54*b8beabc4Snetalipatent must be licensed for everyone's free use or not licensed at all. 556c4546e5SNetali 566c4546e5SNetali The precise terms and conditions for copying, distribution and 576c4546e5SNetalimodification follow. 586c4546e5SNetali 59*b8beabc4Snetali GNU GENERAL PUBLIC LICENSE 60*b8beabc4Snetali TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 616c4546e5SNetali 62*b8beabc4Snetali 0. This License applies to any program or other work which contains 63*b8beabc4Snetalia notice placed by the copyright holder saying it may be distributed 64*b8beabc4Snetaliunder the terms of this General Public License. The "Program", below, 65*b8beabc4Snetalirefers to any such program or work, and a "work based on the Program" 66*b8beabc4Snetalimeans either the Program or any derivative work under copyright law: 67*b8beabc4Snetalithat is to say, a work containing the Program or a portion of it, 68*b8beabc4Snetalieither verbatim or with modifications and/or translated into another 69*b8beabc4Snetalilanguage. (Hereinafter, translation is included without limitation in 70*b8beabc4Snetalithe term "modification".) Each licensee is addressed as "you". 716c4546e5SNetali 72*b8beabc4SnetaliActivities other than copying, distribution and modification are not 73*b8beabc4Snetalicovered by this License; they are outside its scope. The act of 74*b8beabc4Snetalirunning the Program is not restricted, and the output from the Program 75*b8beabc4Snetaliis covered only if its contents constitute a work based on the 76*b8beabc4SnetaliProgram (independent of having been made by running the Program). 77*b8beabc4SnetaliWhether that is true depends on what the Program does. 786c4546e5SNetali 79*b8beabc4Snetali 1. You may copy and distribute verbatim copies of the Program's 80*b8beabc4Snetalisource code as you receive it, in any medium, provided that you 81*b8beabc4Snetaliconspicuously and appropriately publish on each copy an appropriate 82*b8beabc4Snetalicopyright notice and disclaimer of warranty; keep intact all the 83*b8beabc4Snetalinotices that refer to this License and to the absence of any warranty; 84*b8beabc4Snetaliand give any other recipients of the Program a copy of this License 85*b8beabc4Snetalialong with the Program. 866c4546e5SNetali 87*b8beabc4SnetaliYou may charge a fee for the physical act of transferring a copy, and 88*b8beabc4Snetaliyou may at your option offer warranty protection in exchange for a fee. 896c4546e5SNetali 90*b8beabc4Snetali 2. You may modify your copy or copies of the Program or any portion 91*b8beabc4Snetaliof it, thus forming a work based on the Program, and copy and 92*b8beabc4Snetalidistribute such modifications or work under the terms of Section 1 93*b8beabc4Snetaliabove, provided that you also meet all of these conditions: 946c4546e5SNetali 95*b8beabc4Snetali a) You must cause the modified files to carry prominent notices 96*b8beabc4Snetali stating that you changed the files and the date of any change. 976c4546e5SNetali 98*b8beabc4Snetali b) You must cause any work that you distribute or publish, that in 99*b8beabc4Snetali whole or in part contains or is derived from the Program or any 100*b8beabc4Snetali part thereof, to be licensed as a whole at no charge to all third 101*b8beabc4Snetali parties under the terms of this License. 1026c4546e5SNetali 103*b8beabc4Snetali c) If the modified program normally reads commands interactively 104*b8beabc4Snetali when run, you must cause it, when started running for such 105*b8beabc4Snetali interactive use in the most ordinary way, to print or display an 106*b8beabc4Snetali announcement including an appropriate copyright notice and a 107*b8beabc4Snetali notice that there is no warranty (or else, saying that you provide 108*b8beabc4Snetali a warranty) and that users may redistribute the program under 109*b8beabc4Snetali these conditions, and telling the user how to view a copy of this 110*b8beabc4Snetali License. (Exception: if the Program itself is interactive but 111*b8beabc4Snetali does not normally print such an announcement, your work based on 112*b8beabc4Snetali the Program is not required to print an announcement.) 1136c4546e5SNetali 114*b8beabc4SnetaliThese requirements apply to the modified work as a whole. If 115*b8beabc4Snetaliidentifiable sections of that work are not derived from the Program, 116*b8beabc4Snetaliand can be reasonably considered independent and separate works in 117*b8beabc4Snetalithemselves, then this License, and its terms, do not apply to those 118*b8beabc4Snetalisections when you distribute them as separate works. But when you 119*b8beabc4Snetalidistribute the same sections as part of a whole which is a work based 120*b8beabc4Snetalion the Program, the distribution of the whole must be on the terms of 121*b8beabc4Snetalithis License, whose permissions for other licensees extend to the 122*b8beabc4Snetalientire whole, and thus to each and every part regardless of who wrote it. 1236c4546e5SNetali 124*b8beabc4SnetaliThus, it is not the intent of this section to claim rights or contest 125*b8beabc4Snetaliyour rights to work written entirely by you; rather, the intent is to 126*b8beabc4Snetaliexercise the right to control the distribution of derivative or 127*b8beabc4Snetalicollective works based on the Program. 1286c4546e5SNetali 129*b8beabc4SnetaliIn addition, mere aggregation of another work not based on the Program 130*b8beabc4Snetaliwith the Program (or with a work based on the Program) on a volume of 131*b8beabc4Snetalia storage or distribution medium does not bring the other work under 132*b8beabc4Snetalithe scope of this License. 1336c4546e5SNetali 134*b8beabc4Snetali 3. You may copy and distribute the Program (or a work based on it, 135*b8beabc4Snetaliunder Section 2) in object code or executable form under the terms of 136*b8beabc4SnetaliSections 1 and 2 above provided that you also do one of the following: 1376c4546e5SNetali 138*b8beabc4Snetali a) Accompany it with the complete corresponding machine-readable 139*b8beabc4Snetali source code, which must be distributed under the terms of Sections 140*b8beabc4Snetali 1 and 2 above on a medium customarily used for software interchange; or, 1416c4546e5SNetali 142*b8beabc4Snetali b) Accompany it with a written offer, valid for at least three 143*b8beabc4Snetali years, to give any third party, for a charge no more than your 144*b8beabc4Snetali cost of physically performing source distribution, a complete 145*b8beabc4Snetali machine-readable copy of the corresponding source code, to be 146*b8beabc4Snetali distributed under the terms of Sections 1 and 2 above on a medium 147*b8beabc4Snetali customarily used for software interchange; or, 1486c4546e5SNetali 149*b8beabc4Snetali c) Accompany it with the information you received as to the offer 150*b8beabc4Snetali to distribute corresponding source code. (This alternative is 151*b8beabc4Snetali allowed only for noncommercial distribution and only if you 152*b8beabc4Snetali received the program in object code or executable form with such 153*b8beabc4Snetali an offer, in accord with Subsection b above.) 1546c4546e5SNetali 155*b8beabc4SnetaliThe source code for a work means the preferred form of the work for 156*b8beabc4Snetalimaking modifications to it. For an executable work, complete source 157*b8beabc4Snetalicode means all the source code for all modules it contains, plus any 158*b8beabc4Snetaliassociated interface definition files, plus the scripts used to 159*b8beabc4Snetalicontrol compilation and installation of the executable. However, as a 160*b8beabc4Snetalispecial exception, the source code distributed need not include 161*b8beabc4Snetalianything that is normally distributed (in either source or binary 162*b8beabc4Snetaliform) with the major components (compiler, kernel, and so on) of the 163*b8beabc4Snetalioperating system on which the executable runs, unless that component 164*b8beabc4Snetaliitself accompanies the executable. 1656c4546e5SNetali 166*b8beabc4SnetaliIf distribution of executable or object code is made by offering 167*b8beabc4Snetaliaccess to copy from a designated place, then offering equivalent 168*b8beabc4Snetaliaccess to copy the source code from the same place counts as 169*b8beabc4Snetalidistribution of the source code, even though third parties are not 170*b8beabc4Snetalicompelled to copy the source along with the object code. 1716c4546e5SNetali 172*b8beabc4Snetali 4. You may not copy, modify, sublicense, or distribute the Program 173*b8beabc4Snetaliexcept as expressly provided under this License. Any attempt 174*b8beabc4Snetaliotherwise to copy, modify, sublicense or distribute the Program is 175*b8beabc4Snetalivoid, and will automatically terminate your rights under this License. 176*b8beabc4SnetaliHowever, parties who have received copies, or rights, from you under 177*b8beabc4Snetalithis License will not have their licenses terminated so long as such 178*b8beabc4Snetaliparties remain in full compliance. 1796c4546e5SNetali 180*b8beabc4Snetali 5. You are not required to accept this License, since you have not 181*b8beabc4Snetalisigned it. However, nothing else grants you permission to modify or 182*b8beabc4Snetalidistribute the Program or its derivative works. These actions are 183*b8beabc4Snetaliprohibited by law if you do not accept this License. Therefore, by 184*b8beabc4Snetalimodifying or distributing the Program (or any work based on the 185*b8beabc4SnetaliProgram), you indicate your acceptance of this License to do so, and 186*b8beabc4Snetaliall its terms and conditions for copying, distributing or modifying 187*b8beabc4Snetalithe Program or works based on it. 1886c4546e5SNetali 189*b8beabc4Snetali 6. Each time you redistribute the Program (or any work based on the 190*b8beabc4SnetaliProgram), the recipient automatically receives a license from the 191*b8beabc4Snetalioriginal licensor to copy, distribute or modify the Program subject to 192*b8beabc4Snetalithese terms and conditions. You may not impose any further 193*b8beabc4Snetalirestrictions on the recipients' exercise of the rights granted herein. 194*b8beabc4SnetaliYou are not responsible for enforcing compliance by third parties to 1956c4546e5SNetalithis License. 1966c4546e5SNetali 197*b8beabc4Snetali 7. If, as a consequence of a court judgment or allegation of patent 198*b8beabc4Snetaliinfringement or for any other reason (not limited to patent issues), 199*b8beabc4Snetaliconditions are imposed on you (whether by court order, agreement or 2006c4546e5SNetaliotherwise) that contradict the conditions of this License, they do not 201*b8beabc4Snetaliexcuse you from the conditions of this License. If you cannot 202*b8beabc4Snetalidistribute so as to satisfy simultaneously your obligations under this 203*b8beabc4SnetaliLicense and any other pertinent obligations, then as a consequence you 204*b8beabc4Snetalimay not distribute the Program at all. For example, if a patent 205*b8beabc4Snetalilicense would not permit royalty-free redistribution of the Program by 206*b8beabc4Snetaliall those who receive copies directly or indirectly through you, then 207*b8beabc4Snetalithe only way you could satisfy both it and this License would be to 208*b8beabc4Snetalirefrain entirely from distribution of the Program. 2096c4546e5SNetali 210*b8beabc4SnetaliIf any portion of this section is held invalid or unenforceable under 211*b8beabc4Snetaliany particular circumstance, the balance of the section is intended to 212*b8beabc4Snetaliapply and the section as a whole is intended to apply in other 213*b8beabc4Snetalicircumstances. 2146c4546e5SNetali 215*b8beabc4SnetaliIt is not the purpose of this section to induce you to infringe any 216*b8beabc4Snetalipatents or other property right claims or to contest validity of any 217*b8beabc4Snetalisuch claims; this section has the sole purpose of protecting the 218*b8beabc4Snetaliintegrity of the free software distribution system, which is 219*b8beabc4Snetaliimplemented by public license practices. Many people have made 220*b8beabc4Snetaligenerous contributions to the wide range of software distributed 221*b8beabc4Snetalithrough that system in reliance on consistent application of that 222*b8beabc4Snetalisystem; it is up to the author/donor to decide if he or she is willing 223*b8beabc4Snetalito distribute software through any other system and a licensee cannot 224*b8beabc4Snetaliimpose that choice. 2256c4546e5SNetali 226*b8beabc4SnetaliThis section is intended to make thoroughly clear what is believed to 227*b8beabc4Snetalibe a consequence of the rest of this License. 2286c4546e5SNetali 229*b8beabc4Snetali 8. If the distribution and/or use of the Program is restricted in 230*b8beabc4Snetalicertain countries either by patents or by copyrighted interfaces, the 231*b8beabc4Snetalioriginal copyright holder who places the Program under this License 232*b8beabc4Snetalimay add an explicit geographical distribution limitation excluding 233*b8beabc4Snetalithose countries, so that distribution is permitted only in or among 234*b8beabc4Snetalicountries not thus excluded. In such case, this License incorporates 235*b8beabc4Snetalithe limitation as if written in the body of this License. 2366c4546e5SNetali 237*b8beabc4Snetali 9. The Free Software Foundation may publish revised and/or new versions 238*b8beabc4Snetaliof the General Public License from time to time. Such new versions will 239*b8beabc4Snetalibe similar in spirit to the present version, but may differ in detail to 2406c4546e5SNetaliaddress new problems or concerns. 2416c4546e5SNetali 242*b8beabc4SnetaliEach version is given a distinguishing version number. If the Program 243*b8beabc4Snetalispecifies a version number of this License which applies to it and "any 244*b8beabc4Snetalilater version", you have the option of following the terms and conditions 245*b8beabc4Snetalieither of that version or of any later version published by the Free 246*b8beabc4SnetaliSoftware Foundation. If the Program does not specify a version number of 247*b8beabc4Snetalithis License, you may choose any version ever published by the Free Software 248*b8beabc4SnetaliFoundation. 2496c4546e5SNetali 250*b8beabc4Snetali 10. If you wish to incorporate parts of the Program into other free 251*b8beabc4Snetaliprograms whose distribution conditions are different, write to the author 252*b8beabc4Snetalito ask for permission. For software which is copyrighted by the Free 253*b8beabc4SnetaliSoftware Foundation, write to the Free Software Foundation; we sometimes 254*b8beabc4Snetalimake exceptions for this. Our decision will be guided by the two goals 255*b8beabc4Snetaliof preserving the free status of all derivatives of our free software and 256*b8beabc4Snetaliof promoting the sharing and reuse of software generally. 2576c4546e5SNetali 258*b8beabc4Snetali NO WARRANTY 2596c4546e5SNetali 260*b8beabc4Snetali 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 261*b8beabc4SnetaliFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 262*b8beabc4SnetaliOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 263*b8beabc4SnetaliPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 264*b8beabc4SnetaliOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 265*b8beabc4SnetaliMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 266*b8beabc4SnetaliTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 267*b8beabc4SnetaliPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 268*b8beabc4SnetaliREPAIR OR CORRECTION. 2696c4546e5SNetali 270*b8beabc4Snetali 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 271*b8beabc4SnetaliWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 272*b8beabc4SnetaliREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 273*b8beabc4SnetaliINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 274*b8beabc4SnetaliOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 275*b8beabc4SnetaliTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 276*b8beabc4SnetaliYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 277*b8beabc4SnetaliPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 278*b8beabc4SnetaliPOSSIBILITY OF SUCH DAMAGES. 2796c4546e5SNetali 2806c4546e5SNetali END OF TERMS AND CONDITIONS 2816c4546e5SNetali 2826c4546e5SNetali How to Apply These Terms to Your New Programs 2836c4546e5SNetali 2846c4546e5SNetali If you develop a new program, and you want it to be of the greatest 2856c4546e5SNetalipossible use to the public, the best way to achieve this is to make it 2866c4546e5SNetalifree software which everyone can redistribute and change under these terms. 2876c4546e5SNetali 2886c4546e5SNetali To do so, attach the following notices to the program. It is safest 2896c4546e5SNetalito attach them to the start of each source file to most effectively 290*b8beabc4Snetaliconvey the exclusion of warranty; and each file should have at least 2916c4546e5SNetalithe "copyright" line and a pointer to where the full notice is found. 2926c4546e5SNetali 2936c4546e5SNetali <one line to give the program's name and a brief idea of what it does.> 2946c4546e5SNetali Copyright (C) <year> <name of author> 2956c4546e5SNetali 296*b8beabc4Snetali This program is free software; you can redistribute it and/or modify 297*b8beabc4Snetali it under the terms of the GNU General Public License as published by 298*b8beabc4Snetali the Free Software Foundation; either version 2 of the License, or 2996c4546e5SNetali (at your option) any later version. 3006c4546e5SNetali 3016c4546e5SNetali This program is distributed in the hope that it will be useful, 3026c4546e5SNetali but WITHOUT ANY WARRANTY; without even the implied warranty of 3036c4546e5SNetali MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 304*b8beabc4Snetali GNU General Public License for more details. 3056c4546e5SNetali 306*b8beabc4Snetali You should have received a copy of the GNU General Public License along 307*b8beabc4Snetali with this program; if not, write to the Free Software Foundation, Inc., 308*b8beabc4Snetali 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 3096c4546e5SNetali 3106c4546e5SNetaliAlso add information on how to contact you by electronic and paper mail. 3116c4546e5SNetali 312*b8beabc4SnetaliIf the program is interactive, make it output a short notice like this 313*b8beabc4Snetaliwhen it starts in an interactive mode: 3146c4546e5SNetali 315*b8beabc4Snetali Gnomovision version 69, Copyright (C) year name of author 316*b8beabc4Snetali Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 317*b8beabc4Snetali This is free software, and you are welcome to redistribute it 318*b8beabc4Snetali under certain conditions; type `show c' for details. 319*b8beabc4Snetali 320*b8beabc4SnetaliThe hypothetical commands `show w' and `show c' should show the appropriate 321*b8beabc4Snetaliparts of the General Public License. Of course, the commands you use may 322*b8beabc4Snetalibe called something other than `show w' and `show c'; they could even be 323*b8beabc4Snetalimouse-clicks or menu items--whatever suits your program. 324*b8beabc4Snetali 325*b8beabc4SnetaliYou should also get your employer (if you work as a programmer) or your 326*b8beabc4Snetalischool, if any, to sign a "copyright disclaimer" for the program, if 327*b8beabc4Snetalinecessary. Here is a sample; alter the names: 328*b8beabc4Snetali 329*b8beabc4Snetali Yoyodyne, Inc., hereby disclaims all copyright interest in the program 330*b8beabc4Snetali `Gnomovision' (which makes passes at compilers) written by James Hacker. 331*b8beabc4Snetali 332*b8beabc4Snetali <signature of Ty Coon>, 1 April 1989 333*b8beabc4Snetali Ty Coon, President of Vice 334*b8beabc4Snetali 335*b8beabc4SnetaliThis General Public License does not permit incorporating your program into 336*b8beabc4Snetaliproprietary programs. If your program is a subroutine library, you may 337*b8beabc4Snetaliconsider it more useful to permit linking proprietary applications with the 338*b8beabc4Snetalilibrary. If this is what you want to do, use the GNU Lesser General 339*b8beabc4SnetaliPublic License instead of this License. 340