19Sjkh GNU GENERAL PUBLIC LICENSE 29Sjkh Version 2, June 1991 39Sjkh 49Sjkh Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59Sjkh 675 Mass Ave, Cambridge, MA 02139, USA 69Sjkh Everyone is permitted to copy and distribute verbatim copies 79Sjkh of this license document, but changing it is not allowed. 89Sjkh 99Sjkh Preamble 109Sjkh 119Sjkh The licenses for most software are designed to take away your 129Sjkhfreedom to share and change it. By contrast, the GNU General Public 139SjkhLicense is intended to guarantee your freedom to share and change free 149Sjkhsoftware--to make sure the software is free for all its users. This 159SjkhGeneral Public License applies to most of the Free Software 169SjkhFoundation's software and to any other program whose authors commit to 179Sjkhusing it. (Some other Free Software Foundation software is covered by 189Sjkhthe GNU Library General Public License instead.) You can apply it to 199Sjkhyour programs, too. 209Sjkh 219Sjkh When we speak of free software, we are referring to freedom, not 229Sjkhprice. Our General Public Licenses are designed to make sure that you 239Sjkhhave the freedom to distribute copies of free software (and charge for 249Sjkhthis service if you wish), that you receive source code or can get it 259Sjkhif you want it, that you can change the software or use pieces of it 269Sjkhin new free programs; and that you know you can do these things. 279Sjkh 289Sjkh To protect your rights, we need to make restrictions that forbid 299Sjkhanyone to deny you these rights or to ask you to surrender the rights. 309SjkhThese restrictions translate to certain responsibilities for you if you 319Sjkhdistribute copies of the software, or if you modify it. 329Sjkh 339Sjkh For example, if you distribute copies of such a program, whether 349Sjkhgratis or for a fee, you must give the recipients all the rights that 359Sjkhyou have. You must make sure that they, too, receive or can get the 369Sjkhsource code. And you must show them these terms so they know their 379Sjkhrights. 389Sjkh 399Sjkh We protect your rights with two steps: (1) copyright the software, and 409Sjkh(2) offer you this license which gives you legal permission to copy, 419Sjkhdistribute and/or modify the software. 429Sjkh 439Sjkh Also, for each author's protection and ours, we want to make certain 449Sjkhthat everyone understands that there is no warranty for this free 459Sjkhsoftware. If the software is modified by someone else and passed on, we 469Sjkhwant its recipients to know that what they have is not the original, so 479Sjkhthat any problems introduced by others will not reflect on the original 489Sjkhauthors' reputations. 499Sjkh 509Sjkh Finally, any free program is threatened constantly by software 519Sjkhpatents. We wish to avoid the danger that redistributors of a free 529Sjkhprogram will individually obtain patent licenses, in effect making the 539Sjkhprogram proprietary. To prevent this, we have made it clear that any 549Sjkhpatent must be licensed for everyone's free use or not licensed at all. 559Sjkh 569Sjkh The precise terms and conditions for copying, distribution and 579Sjkhmodification follow. 589Sjkh 599Sjkh GNU GENERAL PUBLIC LICENSE 609Sjkh TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 619Sjkh 629Sjkh 0. This License applies to any program or other work which contains 639Sjkha notice placed by the copyright holder saying it may be distributed 649Sjkhunder the terms of this General Public License. The "Program", below, 659Sjkhrefers to any such program or work, and a "work based on the Program" 669Sjkhmeans either the Program or any derivative work under copyright law: 679Sjkhthat is to say, a work containing the Program or a portion of it, 689Sjkheither verbatim or with modifications and/or translated into another 699Sjkhlanguage. (Hereinafter, translation is included without limitation in 709Sjkhthe term "modification".) Each licensee is addressed as "you". 719Sjkh 729SjkhActivities other than copying, distribution and modification are not 739Sjkhcovered by this License; they are outside its scope. The act of 749Sjkhrunning the Program is not restricted, and the output from the Program 759Sjkhis covered only if its contents constitute a work based on the 769SjkhProgram (independent of having been made by running the Program). 779SjkhWhether that is true depends on what the Program does. 789Sjkh 799Sjkh 1. You may copy and distribute verbatim copies of the Program's 809Sjkhsource code as you receive it, in any medium, provided that you 819Sjkhconspicuously and appropriately publish on each copy an appropriate 829Sjkhcopyright notice and disclaimer of warranty; keep intact all the 839Sjkhnotices that refer to this License and to the absence of any warranty; 849Sjkhand give any other recipients of the Program a copy of this License 859Sjkhalong with the Program. 869Sjkh 879SjkhYou may charge a fee for the physical act of transferring a copy, and 889Sjkhyou may at your option offer warranty protection in exchange for a fee. 899Sjkh 909Sjkh 2. You may modify your copy or copies of the Program or any portion 919Sjkhof it, thus forming a work based on the Program, and copy and 929Sjkhdistribute such modifications or work under the terms of Section 1 939Sjkhabove, provided that you also meet all of these conditions: 949Sjkh 959Sjkh a) You must cause the modified files to carry prominent notices 969Sjkh stating that you changed the files and the date of any change. 979Sjkh 989Sjkh b) You must cause any work that you distribute or publish, that in 999Sjkh whole or in part contains or is derived from the Program or any 1009Sjkh part thereof, to be licensed as a whole at no charge to all third 1019Sjkh parties under the terms of this License. 1029Sjkh 1039Sjkh c) If the modified program normally reads commands interactively 1049Sjkh when run, you must cause it, when started running for such 1059Sjkh interactive use in the most ordinary way, to print or display an 1069Sjkh announcement including an appropriate copyright notice and a 1079Sjkh notice that there is no warranty (or else, saying that you provide 1089Sjkh a warranty) and that users may redistribute the program under 1099Sjkh these conditions, and telling the user how to view a copy of this 1109Sjkh License. (Exception: if the Program itself is interactive but 1119Sjkh does not normally print such an announcement, your work based on 1129Sjkh the Program is not required to print an announcement.) 1139Sjkh 1149SjkhThese requirements apply to the modified work as a whole. If 1159Sjkhidentifiable sections of that work are not derived from the Program, 1169Sjkhand can be reasonably considered independent and separate works in 1179Sjkhthemselves, then this License, and its terms, do not apply to those 1189Sjkhsections when you distribute them as separate works. But when you 1199Sjkhdistribute the same sections as part of a whole which is a work based 1209Sjkhon the Program, the distribution of the whole must be on the terms of 1219Sjkhthis License, whose permissions for other licensees extend to the 1229Sjkhentire whole, and thus to each and every part regardless of who wrote it. 1239Sjkh 1249SjkhThus, it is not the intent of this section to claim rights or contest 1259Sjkhyour rights to work written entirely by you; rather, the intent is to 1269Sjkhexercise the right to control the distribution of derivative or 1279Sjkhcollective works based on the Program. 1289Sjkh 1299SjkhIn addition, mere aggregation of another work not based on the Program 1309Sjkhwith the Program (or with a work based on the Program) on a volume of 1319Sjkha storage or distribution medium does not bring the other work under 1329Sjkhthe scope of this License. 1339Sjkh 1349Sjkh 3. You may copy and distribute the Program (or a work based on it, 1359Sjkhunder Section 2) in object code or executable form under the terms of 1369SjkhSections 1 and 2 above provided that you also do one of the following: 1379Sjkh 1389Sjkh a) Accompany it with the complete corresponding machine-readable 1399Sjkh source code, which must be distributed under the terms of Sections 1409Sjkh 1 and 2 above on a medium customarily used for software interchange; or, 1419Sjkh 1429Sjkh b) Accompany it with a written offer, valid for at least three 1439Sjkh years, to give any third party, for a charge no more than your 1449Sjkh cost of physically performing source distribution, a complete 1459Sjkh machine-readable copy of the corresponding source code, to be 1469Sjkh distributed under the terms of Sections 1 and 2 above on a medium 1479Sjkh customarily used for software interchange; or, 1489Sjkh 1499Sjkh c) Accompany it with the information you received as to the offer 1509Sjkh to distribute corresponding source code. (This alternative is 1519Sjkh allowed only for noncommercial distribution and only if you 1529Sjkh received the program in object code or executable form with such 1539Sjkh an offer, in accord with Subsection b above.) 1549Sjkh 1559SjkhThe source code for a work means the preferred form of the work for 1569Sjkhmaking modifications to it. For an executable work, complete source 1579Sjkhcode means all the source code for all modules it contains, plus any 1589Sjkhassociated interface definition files, plus the scripts used to 1599Sjkhcontrol compilation and installation of the executable. However, as a 1609Sjkhspecial exception, the source code distributed need not include 1619Sjkhanything that is normally distributed (in either source or binary 1629Sjkhform) with the major components (compiler, kernel, and so on) of the 1639Sjkhoperating system on which the executable runs, unless that component 1649Sjkhitself accompanies the executable. 1659Sjkh 1669SjkhIf distribution of executable or object code is made by offering 1679Sjkhaccess to copy from a designated place, then offering equivalent 1689Sjkhaccess to copy the source code from the same place counts as 1699Sjkhdistribution of the source code, even though third parties are not 1709Sjkhcompelled to copy the source along with the object code. 1719Sjkh 1729Sjkh 4. You may not copy, modify, sublicense, or distribute the Program 1739Sjkhexcept as expressly provided under this License. Any attempt 1749Sjkhotherwise to copy, modify, sublicense or distribute the Program is 1759Sjkhvoid, and will automatically terminate your rights under this License. 1769SjkhHowever, parties who have received copies, or rights, from you under 1779Sjkhthis License will not have their licenses terminated so long as such 1789Sjkhparties remain in full compliance. 1799Sjkh 1809Sjkh 5. You are not required to accept this License, since you have not 1819Sjkhsigned it. However, nothing else grants you permission to modify or 1829Sjkhdistribute the Program or its derivative works. These actions are 1839Sjkhprohibited by law if you do not accept this License. Therefore, by 1849Sjkhmodifying or distributing the Program (or any work based on the 1859SjkhProgram), you indicate your acceptance of this License to do so, and 1869Sjkhall its terms and conditions for copying, distributing or modifying 1879Sjkhthe Program or works based on it. 1889Sjkh 1899Sjkh 6. Each time you redistribute the Program (or any work based on the 1909SjkhProgram), the recipient automatically receives a license from the 1919Sjkhoriginal licensor to copy, distribute or modify the Program subject to 1929Sjkhthese terms and conditions. You may not impose any further 1939Sjkhrestrictions on the recipients' exercise of the rights granted herein. 1949SjkhYou are not responsible for enforcing compliance by third parties to 1959Sjkhthis License. 1969Sjkh 1979Sjkh 7. If, as a consequence of a court judgment or allegation of patent 1989Sjkhinfringement or for any other reason (not limited to patent issues), 1999Sjkhconditions are imposed on you (whether by court order, agreement or 2009Sjkhotherwise) that contradict the conditions of this License, they do not 2019Sjkhexcuse you from the conditions of this License. If you cannot 2029Sjkhdistribute so as to satisfy simultaneously your obligations under this 2039SjkhLicense and any other pertinent obligations, then as a consequence you 2049Sjkhmay not distribute the Program at all. For example, if a patent 2059Sjkhlicense would not permit royalty-free redistribution of the Program by 2069Sjkhall those who receive copies directly or indirectly through you, then 2079Sjkhthe only way you could satisfy both it and this License would be to 2089Sjkhrefrain entirely from distribution of the Program. 2099Sjkh 2109SjkhIf any portion of this section is held invalid or unenforceable under 2119Sjkhany particular circumstance, the balance of the section is intended to 2129Sjkhapply and the section as a whole is intended to apply in other 2139Sjkhcircumstances. 2149Sjkh 2159SjkhIt is not the purpose of this section to induce you to infringe any 2169Sjkhpatents or other property right claims or to contest validity of any 2179Sjkhsuch claims; this section has the sole purpose of protecting the 2189Sjkhintegrity of the free software distribution system, which is 2199Sjkhimplemented by public license practices. Many people have made 2209Sjkhgenerous contributions to the wide range of software distributed 2219Sjkhthrough that system in reliance on consistent application of that 2229Sjkhsystem; it is up to the author/donor to decide if he or she is willing 2239Sjkhto distribute software through any other system and a licensee cannot 2249Sjkhimpose that choice. 2259Sjkh 2269SjkhThis section is intended to make thoroughly clear what is believed to 2279Sjkhbe a consequence of the rest of this License. 2289Sjkh 2299Sjkh 8. If the distribution and/or use of the Program is restricted in 2309Sjkhcertain countries either by patents or by copyrighted interfaces, the 2319Sjkhoriginal copyright holder who places the Program under this License 2329Sjkhmay add an explicit geographical distribution limitation excluding 2339Sjkhthose countries, so that distribution is permitted only in or among 2349Sjkhcountries not thus excluded. In such case, this License incorporates 2359Sjkhthe limitation as if written in the body of this License. 2369Sjkh 2379Sjkh 9. The Free Software Foundation may publish revised and/or new versions 2389Sjkhof the General Public License from time to time. Such new versions will 2399Sjkhbe similar in spirit to the present version, but may differ in detail to 2409Sjkhaddress new problems or concerns. 2419Sjkh 2429SjkhEach version is given a distinguishing version number. If the Program 2439Sjkhspecifies a version number of this License which applies to it and "any 2449Sjkhlater version", you have the option of following the terms and conditions 2459Sjkheither of that version or of any later version published by the Free 2469SjkhSoftware Foundation. If the Program does not specify a version number of 2479Sjkhthis License, you may choose any version ever published by the Free Software 2489SjkhFoundation. 2499Sjkh 2509Sjkh 10. If you wish to incorporate parts of the Program into other free 2519Sjkhprograms whose distribution conditions are different, write to the author 2529Sjkhto ask for permission. For software which is copyrighted by the Free 2539SjkhSoftware Foundation, write to the Free Software Foundation; we sometimes 2549Sjkhmake exceptions for this. Our decision will be guided by the two goals 2559Sjkhof preserving the free status of all derivatives of our free software and 2569Sjkhof promoting the sharing and reuse of software generally. 2579Sjkh 2589Sjkh NO WARRANTY 2599Sjkh 2609Sjkh 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY 2619SjkhFOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN 2629SjkhOTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES 2639SjkhPROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED 2649SjkhOR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 2659SjkhMERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS 2669SjkhTO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE 2679SjkhPROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 2689SjkhREPAIR OR CORRECTION. 2699Sjkh 2709Sjkh 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 2719SjkhWILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 2729SjkhREDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, 2739SjkhINCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING 2749SjkhOUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED 2759SjkhTO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY 2769SjkhYOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER 2779SjkhPROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE 2789SjkhPOSSIBILITY OF SUCH DAMAGES. 2799Sjkh 2809Sjkh END OF TERMS AND CONDITIONS 2819Sjkh 2829Sjkh Appendix: How to Apply These Terms to Your New Programs 2839Sjkh 2849Sjkh If you develop a new program, and you want it to be of the greatest 2859Sjkhpossible use to the public, the best way to achieve this is to make it 2869Sjkhfree software which everyone can redistribute and change under these terms. 2879Sjkh 2889Sjkh To do so, attach the following notices to the program. It is safest 2899Sjkhto attach them to the start of each source file to most effectively 2909Sjkhconvey the exclusion of warranty; and each file should have at least 2919Sjkhthe "copyright" line and a pointer to where the full notice is found. 2929Sjkh 2939Sjkh <one line to give the program's name and a brief idea of what it does.> 2949Sjkh Copyright (C) 19yy <name of author> 2959Sjkh 2969Sjkh This program is free software; you can redistribute it and/or modify 2979Sjkh it under the terms of the GNU General Public License as published by 2989Sjkh the Free Software Foundation; either version 2 of the License, or 2999Sjkh (at your option) any later version. 3009Sjkh 3019Sjkh This program is distributed in the hope that it will be useful, 3029Sjkh but WITHOUT ANY WARRANTY; without even the implied warranty of 3039Sjkh MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 3049Sjkh GNU General Public License for more details. 3059Sjkh 3069Sjkh You should have received a copy of the GNU General Public License 3079Sjkh along with this program; if not, write to the Free Software 3089Sjkh Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 3099Sjkh 3109SjkhAlso add information on how to contact you by electronic and paper mail. 3119Sjkh 3129SjkhIf the program is interactive, make it output a short notice like this 3139Sjkhwhen it starts in an interactive mode: 3149Sjkh 3159Sjkh Gnomovision version 69, Copyright (C) 19yy name of author 3169Sjkh Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. 3179Sjkh This is free software, and you are welcome to redistribute it 3189Sjkh under certain conditions; type `show c' for details. 3199Sjkh 3209SjkhThe hypothetical commands `show w' and `show c' should show the appropriate 3219Sjkhparts of the General Public License. Of course, the commands you use may 3229Sjkhbe called something other than `show w' and `show c'; they could even be 3239Sjkhmouse-clicks or menu items--whatever suits your program. 3249Sjkh 3259SjkhYou should also get your employer (if you work as a programmer) or your 3269Sjkhschool, if any, to sign a "copyright disclaimer" for the program, if 3279Sjkhnecessary. Here is a sample; alter the names: 3289Sjkh 3299Sjkh Yoyodyne, Inc., hereby disclaims all copyright interest in the program 3309Sjkh `Gnomovision' (which makes passes at compilers) written by James Hacker. 3319Sjkh 3329Sjkh <signature of Ty Coon>, 1 April 1989 3339Sjkh Ty Coon, President of Vice 3349Sjkh 3359SjkhThis General Public License does not permit incorporating your program into 3369Sjkhproprietary programs. If your program is a subroutine library, you may 3379Sjkhconsider it more useful to permit linking proprietary applications with the 3389Sjkhlibrary. If this is what you want to do, use the GNU Library General 3399SjkhPublic License instead of this License. 340