The GNU General Public License (GPL)&#xA;&#xA;Version 2, June 1991&#xA;&#xA;Copyright (C) 1989, 1991 Free Software Foundation, Inc.&#xA;51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA&#xA;&#xA;Everyone is permitted to copy and distribute verbatim copies of this license&#xA;document, but changing it is not allowed.&#xA;&#xA;Preamble&#xA;&#xA;The licenses for most software are designed to take away your freedom to share&#xA;and change it.  By contrast, the GNU General Public License is intended to&#xA;guarantee your freedom to share and change free software--to make sure the&#xA;software is free for all its users.  This General Public License applies to&#xA;most of the Free Software Foundation&#39;s software and to any other program whose&#xA;authors commit to using it.  (Some other Free Software Foundation software is&#xA;covered by the GNU Library General Public License instead.) You can apply it to&#xA;your programs, too.&#xA;&#xA;When we speak of free software, we are referring to freedom, not price.  Our&#xA;General Public Licenses are designed to make sure that you have the freedom to&#xA;distribute copies of free software (and charge for this service if you wish),&#xA;that you receive source code or can get it if you want it, that you can change&#xA;the software or use pieces of it in new free programs; and that you know you&#xA;can do these things.&#xA;&#xA;To protect your rights, we need to make restrictions that forbid anyone to deny&#xA;you these rights or to ask you to surrender the rights.  These restrictions&#xA;translate to certain responsibilities for you if you distribute copies of the&#xA;software, or if you modify it.&#xA;&#xA;For example, if you distribute copies of such a program, whether gratis or for&#xA;a fee, you must give the recipients all the rights that you have.  You must&#xA;make sure that they, too, receive or can get the source code.  And you must&#xA;show them these terms so they know their rights.&#xA;&#xA;We protect your rights with two steps: (1) copyright the software, and (2)&#xA;offer you this license which gives you legal permission to copy, distribute&#xA;and/or modify the software.&#xA;&#xA;Also, for each author&#39;s protection and ours, we want to make certain that&#xA;everyone understands that there is no warranty for this free software.  If the&#xA;software is modified by someone else and passed on, we want its recipients to&#xA;know that what they have is not the original, so that any problems introduced&#xA;by others will not reflect on the original authors&#39; reputations.&#xA;&#xA;Finally, any free program is threatened constantly by software patents.  We&#xA;wish to avoid the danger that redistributors of a free program will&#xA;individually obtain patent licenses, in effect making the program proprietary.&#xA;To prevent this, we have made it clear that any patent must be licensed for&#xA;everyone&#39;s free use or not licensed at all.&#xA;&#xA;The precise terms and conditions for copying, distribution and modification&#xA;follow.&#xA;&#xA;TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION&#xA;&#xA;0. This License applies to any program or other work which contains a notice&#xA;placed by the copyright holder saying it may be distributed under the terms of&#xA;this General Public License.  The &#34;Program&#34;, below, refers to any such program&#xA;or work, and a &#34;work based on the Program&#34; means either the Program or any&#xA;derivative work under copyright law: that is to say, a work containing the&#xA;Program or a portion of it, either verbatim or with modifications and/or&#xA;translated into another language.  (Hereinafter, translation is included&#xA;without limitation in the term &#34;modification&#34;.) Each licensee is addressed as&#xA;&#34;you&#34;.&#xA;&#xA;Activities other than copying, distribution and modification are not covered by&#xA;this License; they are outside its scope.  The act of running the Program is&#xA;not restricted, and the output from the Program is covered only if its contents&#xA;constitute a work based on the Program (independent of having been made by&#xA;running the Program).  Whether that is true depends on what the Program does.&#xA;&#xA;1. You may copy and distribute verbatim copies of the Program&#39;s source code as&#xA;you receive it, in any medium, provided that you conspicuously and&#xA;appropriately publish on each copy an appropriate copyright notice and&#xA;disclaimer of warranty; keep intact all the notices that refer to this License&#xA;and to the absence of any warranty; and give any other recipients of the&#xA;Program a copy of this License along with the Program.&#xA;&#xA;You may charge a fee for the physical act of transferring a copy, and you may&#xA;at your option offer warranty protection in exchange for a fee.&#xA;&#xA;2. You may modify your copy or copies of the Program or any portion of it, thus&#xA;forming a work based on the Program, and copy and distribute such modifications&#xA;or work under the terms of Section 1 above, provided that you also meet all of&#xA;these conditions:&#xA;&#xA;    a) You must cause the modified files to carry prominent notices stating&#xA;    that you changed the files and the date of any change.&#xA;&#xA;    b) You must cause any work that you distribute or publish, that in whole or&#xA;    in part contains or is derived from the Program or any part thereof, to be&#xA;    licensed as a whole at no charge to all third parties under the terms of&#xA;    this License.&#xA;&#xA;    c) If the modified program normally reads commands interactively when run,&#xA;    you must cause it, when started running for such interactive use in the&#xA;    most ordinary way, to print or display an announcement including an&#xA;    appropriate copyright notice and a notice that there is no warranty (or&#xA;    else, saying that you provide a warranty) and that users may redistribute&#xA;    the program under these conditions, and telling the user how to view a copy&#xA;    of this License.  (Exception: if the Program itself is interactive but does&#xA;    not normally print such an announcement, your work based on the Program is&#xA;    not required to print an announcement.)&#xA;&#xA;These requirements apply to the modified work as a whole.  If identifiable&#xA;sections of that work are not derived from the Program, and can be reasonably&#xA;considered independent and separate works in themselves, then this License, and&#xA;its terms, do not apply to those sections when you distribute them as separate&#xA;works.  But when you distribute the same sections as part of a whole which is a&#xA;work based on the Program, the distribution of the whole must be on the terms&#xA;of this License, whose permissions for other licensees extend to the entire&#xA;whole, and thus to each and every part regardless of who wrote it.&#xA;&#xA;Thus, it is not the intent of this section to claim rights or contest your&#xA;rights to work written entirely by you; rather, the intent is to exercise the&#xA;right to control the distribution of derivative or collective works based on&#xA;the Program.&#xA;&#xA;In addition, mere aggregation of another work not based on the Program with the&#xA;Program (or with a work based on the Program) on a volume of a storage or&#xA;distribution medium does not bring the other work under the scope of this&#xA;License.&#xA;&#xA;3. You may copy and distribute the Program (or a work based on it, under&#xA;Section 2) in object code or executable form under the terms of Sections 1 and&#xA;2 above provided that you also do one of the following:&#xA;&#xA;    a) Accompany it with the complete corresponding machine-readable source&#xA;    code, which must be distributed under the terms of Sections 1 and 2 above&#xA;    on a medium customarily used for software interchange; or,&#xA;&#xA;    b) Accompany it with a written offer, valid for at least three years, to&#xA;    give any third party, for a charge no more than your cost of physically&#xA;    performing source distribution, a complete machine-readable copy of the&#xA;    corresponding source code, to be distributed under the terms of Sections 1&#xA;    and 2 above on a medium customarily used for software interchange; or,&#xA;&#xA;    c) Accompany it with the information you received as to the offer to&#xA;    distribute corresponding source code.  (This alternative is allowed only&#xA;    for noncommercial distribution and only if you received the program in&#xA;    object code or executable form with such an offer, in accord with&#xA;    Subsection b above.)&#xA;&#xA;The source code for a work means the preferred form of the work for making&#xA;modifications to it.  For an executable work, complete source code means all&#xA;the source code for all modules it contains, plus any associated interface&#xA;definition files, plus the scripts used to control compilation and installation&#xA;of the executable.  However, as a special exception, the source code&#xA;distributed need not include anything that is normally distributed (in either&#xA;source or binary form) with the major components (compiler, kernel, and so on)&#xA;of the operating system on which the executable runs, unless that component&#xA;itself accompanies the executable.&#xA;&#xA;If distribution of executable or object code is made by offering access to copy&#xA;from a designated place, then offering equivalent access to copy the source&#xA;code from the same place counts as distribution of the source code, even though&#xA;third parties are not compelled to copy the source along with the object code.&#xA;&#xA;4. You may not copy, modify, sublicense, or distribute the Program except as&#xA;expressly provided under this License.  Any attempt otherwise to copy, modify,&#xA;sublicense or distribute the Program is void, and will automatically terminate&#xA;your rights under this License.  However, parties who have received copies, or&#xA;rights, from you under this License will not have their licenses terminated so&#xA;long as such parties remain in full compliance.&#xA;&#xA;5. You are not required to accept this License, since you have not signed it.&#xA;However, nothing else grants you permission to modify or distribute the Program&#xA;or its derivative works.  These actions are prohibited by law if you do not&#xA;accept this License.  Therefore, by modifying or distributing the Program (or&#xA;any work based on the Program), you indicate your acceptance of this License to&#xA;do so, and all its terms and conditions for copying, distributing or modifying&#xA;the Program or works based on it.&#xA;&#xA;6. Each time you redistribute the Program (or any work based on the Program),&#xA;the recipient automatically receives a license from the original licensor to&#xA;copy, distribute or modify the Program subject to these terms and conditions.&#xA;You may not impose any further restrictions on the recipients&#39; exercise of the&#xA;rights granted herein.  You are not responsible for enforcing compliance by&#xA;third parties to this License.&#xA;&#xA;7. If, as a consequence of a court judgment or allegation of patent&#xA;infringement or for any other reason (not limited to patent issues), conditions&#xA;are imposed on you (whether by court order, agreement or otherwise) that&#xA;contradict the conditions of this License, they do not excuse you from the&#xA;conditions of this License.  If you cannot distribute so as to satisfy&#xA;simultaneously your obligations under this License and any other pertinent&#xA;obligations, then as a consequence you may not distribute the Program at all.&#xA;For example, if a patent license would not permit royalty-free redistribution&#xA;of the Program by all those who receive copies directly or indirectly through&#xA;you, then the only way you could satisfy both it and this License would be to&#xA;refrain entirely from distribution of the Program.&#xA;&#xA;If any portion of this section is held invalid or unenforceable under any&#xA;particular circumstance, the balance of the section is intended to apply and&#xA;the section as a whole is intended to apply in other circumstances.&#xA;&#xA;It is not the purpose of this section to induce you to infringe any patents or&#xA;other property right claims or to contest validity of any such claims; this&#xA;section has the sole purpose of protecting the integrity of the free software&#xA;distribution system, which is implemented by public license practices.  Many&#xA;people have made generous contributions to the wide range of software&#xA;distributed through that system in reliance on consistent application of that&#xA;system; it is up to the author/donor to decide if he or she is willing to&#xA;distribute software through any other system and a licensee cannot impose that&#xA;choice.&#xA;&#xA;This section is intended to make thoroughly clear what is believed to be a&#xA;consequence of the rest of this License.&#xA;&#xA;8. If the distribution and/or use of the Program is restricted in certain&#xA;countries either by patents or by copyrighted interfaces, the original&#xA;copyright holder who places the Program under this License may add an explicit&#xA;geographical distribution limitation excluding those countries, so that&#xA;distribution is permitted only in or among countries not thus excluded.  In&#xA;such case, this License incorporates the limitation as if written in the body&#xA;of this License.&#xA;&#xA;9. The Free Software Foundation may publish revised and/or new versions of the&#xA;General Public License from time to time.  Such new versions will be similar in&#xA;spirit to the present version, but may differ in detail to address new problems&#xA;or concerns.&#xA;&#xA;Each version is given a distinguishing version number.  If the Program&#xA;specifies a version number of this License which applies to it and &#34;any later&#xA;version&#34;, you have the option of following the terms and conditions either of&#xA;that version or of any later version published by the Free Software Foundation.&#xA;If the Program does not specify a version number of this License, you may&#xA;choose any version ever published by the Free Software Foundation.&#xA;&#xA;10. If you wish to incorporate parts of the Program into other free programs&#xA;whose distribution conditions are different, write to the author to ask for&#xA;permission.  For software which is copyrighted by the Free Software Foundation,&#xA;write to the Free Software Foundation; we sometimes make exceptions for this.&#xA;Our decision will be guided by the two goals of preserving the free status of&#xA;all derivatives of our free software and of promoting the sharing and reuse of&#xA;software generally.&#xA;&#xA;NO WARRANTY&#xA;&#xA;11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR&#xA;THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE&#xA;STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE&#xA;PROGRAM &#34;AS IS&#34; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,&#xA;INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND&#xA;FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND&#xA;PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,&#xA;YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.&#xA;&#xA;12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL&#xA;ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE&#xA;PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY&#xA;GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR&#xA;INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA&#xA;BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A&#xA;FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER&#xA;OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.&#xA;&#xA;END OF TERMS AND CONDITIONS&#xA;&#xA;How to Apply These Terms to Your New Programs&#xA;&#xA;If you develop a new program, and you want it to be of the greatest possible&#xA;use to the public, the best way to achieve this is to make it free software&#xA;which everyone can redistribute and change under these terms.&#xA;&#xA;To do so, attach the following notices to the program.  It is safest to attach&#xA;them to the start of each source file to most effectively convey the exclusion&#xA;of warranty; and each file should have at least the &#34;copyright&#34; line and a&#xA;pointer to where the full notice is found.&#xA;&#xA;    One line to give the program&#39;s name and a brief idea of what it does.&#xA;&#xA;    Copyright (C) &lt;year&gt; &lt;name of author&gt;&#xA;&#xA;    This program is free software; you can redistribute it and/or modify it&#xA;    under the terms of the GNU General Public License as published by the Free&#xA;    Software Foundation; either version 2 of the License, or (at your option)&#xA;    any later version.&#xA;&#xA;    This program is distributed in the hope that it will be useful, but WITHOUT&#xA;    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or&#xA;    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for&#xA;    more details.&#xA;&#xA;    You should have received a copy of the GNU General Public License along&#xA;    with this program; if not, write to the Free Software Foundation, Inc.,&#xA;    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.&#xA;&#xA;Also add information on how to contact you by electronic and paper mail.&#xA;&#xA;If the program is interactive, make it output a short notice like this when it&#xA;starts in an interactive mode:&#xA;&#xA;    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes&#xA;    with ABSOLUTELY NO WARRANTY; for details type &#39;show w&#39;.  This is free&#xA;    software, and you are welcome to redistribute it under certain conditions;&#xA;    type &#39;show c&#39; for details.&#xA;&#xA;The hypothetical commands &#39;show w&#39; and &#39;show c&#39; should show the appropriate&#xA;parts of the General Public License.  Of course, the commands you use may be&#xA;called something other than &#39;show w&#39; and &#39;show c&#39;; they could even be&#xA;mouse-clicks or menu items--whatever suits your program.&#xA;&#xA;You should also get your employer (if you work as a programmer) or your school,&#xA;if any, to sign a &#34;copyright disclaimer&#34; for the program, if necessary.  Here&#xA;is a sample; alter the names:&#xA;&#xA;    Yoyodyne, Inc., hereby disclaims all copyright interest in the program&#xA;    &#39;Gnomovision&#39; (which makes passes at compilers) written by James Hacker.&#xA;&#xA;    signature of Ty Coon, 1 April 1989&#xA;&#xA;    Ty Coon, President of Vice&#xA;&#xA;This General Public License does not permit incorporating your program into&#xA;proprietary programs.  If your program is a subroutine library, you may&#xA;consider it more useful to permit linking proprietary applications with the&#xA;library.  If this is what you want to do, use the GNU Library General Public&#xA;License instead of this License.&#xA;&#xA;&#xA;&#34;CLASSPATH&#34; EXCEPTION TO THE GPL&#xA;&#xA;Certain source files distributed by Oracle America and/or its affiliates are&#xA;subject to the following clarification and special exception to the GPL, but&#xA;only where Oracle has expressly included in the particular source file&#39;s header&#xA;the words &#34;Oracle designates this particular file as subject to the &#34;Classpath&#34;&#xA;exception as provided by Oracle in the LICENSE file that accompanied this code.&#34;&#xA;&#xA;    Linking this library statically or dynamically with other modules is making&#xA;    a combined work based on this library.  Thus, the terms and conditions of&#xA;    the GNU General Public License cover the whole combination.&#xA;&#xA;    As a special exception, the copyright holders of this library give you&#xA;    permission to link this library with independent modules to produce an&#xA;    executable, regardless of the license terms of these independent modules,&#xA;    and to copy and distribute the resulting executable under terms of your&#xA;    choice, provided that you also meet, for each linked independent module,&#xA;    the terms and conditions of the license of that module.  An independent&#xA;    module is a module which is not derived from or based on this library.  If&#xA;    you modify this library, you may extend this exception to your version of&#xA;    the library, but you are not obligated to do so.  If you do not wish to do&#xA;    so, delete this exception statement from your version.&#xA;